File:Fourier heat in a plate.png

From formulasearchengine
Jump to navigation Jump to search

Original file(2,960 × 2,960 pixels, file size: 487 KB, MIME type: image/png)

This file is from Wikimedia Commons and may be used by other projects. The description on its file description page there is shown below.

Summary

Description
English: Heat distribution in a metal plate, using Fourier's method.
Bahasa Melayu: Pengedaran panas di sebuah plat logam, menggunakan kaedah Fourier.
Sunda: Distribusi panas dina hiji pelat métal, ngagunakeun métoda Fourier.
Date 15 February 2008 (original upload date)
Source Own work
Author Loisel at English Wikipedia

Licensing

Public domain This work has been released into the public domain by its author, Loisel at English Wikipedia. This applies worldwide.
In some countries this may not be legally possible; if so:
Loisel grants anyone the right to use this work for any purpose, without any conditions, unless such conditions are required by law.

Creation

This file was created with Python

import numpy as np
import matplotlib.pyplot as plt

x = y = np.linspace(0, np.pi, 2**12)
X, Y = np.meshgrid(x, y)

T = 0
N = 200
for n in np.arange(1,N):
    term = 2*(-1)**(n+1)/n*np.sinc(n/(N+1))*np.sin(n*X) * np.sinh(n * Y)/np.sinh(n*np.pi)
    T += term

fig = plt.figure(dpi=800)
ax = fig.add_subplot(111)
ax.set_aspect('equal')
ax.set_facecolor('none')
plt.axis('off')
plt.pcolormesh(X, Y, T, cmap=black_body)
plt.tight_layout()
plt.savefig("Fourier heat plate.png", bbox_inches='tight', pad_inches=0)

The Black Body color map was obtained here. The sinc function in the code arises in order to eliminate ringing.

A previous version of this file was created with MATLAB

f = @(x,y,n) 2*(((-1).^(2:n+1))./((1:n).*sinh((1:n).*pi))) ...
    * (sin((1:n)'*x).*sinh((1:n)'*y));
ys = 0:0.01:pi;
g = [];
for y = ys
    n = max(20,min(100,-10*log(pi-y)/(pi-y)));
    g = [g; f(ys, repmat(y, 1, length(ys)), n)];
end
g(end, :) = ys';
imagesc(ys,ys,g(end:-1:1,:));
colormap hot
axis square
axis off
print('-dpng',  '-r600', 'Fourier heat in a plate')

Original upload log

The original description page was here. All following user names refer to en.wikipedia.
  • 2010-01-02 10:24 Fastily 409×410× (20774 bytes) Crop out whitespace
  • 2008-02-15 22:32 Loisel 672×504× (12407 bytes) Had to flip MATLAB's silly y coordinates.
  • 2008-02-15 22:24 Loisel 875×672× (13817 bytes) {{Information |Description= |Source=self-made |Date= |Location= |Author=~~~ |Permission= |other_versions= }} MATLAB snippet: f=@(x,y,n) 2*(((-1).^(2:n+1))./((1:n).*sinh((1:n).*pi))) ... * (sin((1:n)'*x).*sinh((1:n)'*y)); ys=0:0.01:pi; g=[]; for y=ys

Captions

Add a one-line explanation of what this file represents

Items portrayed in this file

depicts

15 February 2008

image/png

File history

Click on a date/time to view the file as it appeared at that time.

Date/TimeThumbnailDimensionsUserComment
current02:58, 5 November 2020Thumbnail for version as of 02:58, 5 November 20202,960 × 2,960 (487 KB)wikimediacommons>AkanoToEAdded more terms for sum and removed Gibbs ringing in upper right corner

There are no pages that use this file.