|asinghvi17 33e80f0703 work||1 week ago|
|example||1 week ago|
|src||1 week ago|
|test||2 weeks ago|
|.gitignore||2 weeks ago|
|LICENSE||2 weeks ago|
|README.md||1 week ago|
Explore heat diffusion
Examine them for stability (or not)
Implement a diffusion animator
∂Ψ/∂t = D⋅∇²Ψ
Ψ = cos(ax)⋅eᵇᵗ
∂Ψ/∂t = D⋅∂²Ψ/∂x² + ℽ (where ℽ is the noise term)
We solve the one-dimensional case numerically, using a backward-time centered-space ‘implicit’ method of solving a system. Currently, both Dirichlet and Neumann methods have been implemented.
An example of the Dirichlet is shown in the following animation, where a system in which the ends have been set to 10 K and the rest of the points are at 0 K is evolved over a timespan of a few seconds. Due to the high differential in temperature, as well as the constant influx of heat, this happens relatively fast.
Another example of Dirichlet boundary conditions is this, a system in which the boundary temperatures are lower than the interior temperatures, so the system goes into a pseudostable state.
Below is an example of the Neumann boundary condition, with a flux of 0.1 temperature per timestep out of the system.
Below is an example of a mixed boundary condition - the flux on the left is constant, and the temperature on the right is fixed.
The two-dimensional case, using an alternating-direction implicit solver scheme, is planned for the ω release, but since we are currently on version
0.1, it is being neglected. The method, however, is simple - it is an extension, in fact, of the one-dimensional case - as is the three-dimensional case, although this has vast memory requirements.
As for plotting, it is planned to store the plots in the
.hdf5 format to allow for easy replotting.
A Dirichlet boundary condition is a boundary condition that forces the temperature on the edges of a system to be a certain value.
A Neumann boundary condition is a boundary condition that forces the flux on the edges of a system to be a certain value, i.e., that there is a constant flow of heat outwards.
See Julia homepage