Solving Diffusion PDE By Finite difference Method in fortran

Click For Summary
SUMMARY

This discussion focuses on solving a parabolic partial differential equation (PDE) related to diffusion using the Finite Difference Method (FDM) in Fortran. The specific boundary conditions include zero concentration gradient at the upper surface of the droplet and the leaf, as well as at the bottom layer. Key steps outlined include creating a mesh using matrices and arrays, inputting initial conditions, discretizing the equations, and employing a time-marching technique to solve the transient problem effectively.

PREREQUISITES
  • Understanding of Finite Difference Method (FDM)
  • Proficiency in Fortran programming
  • Knowledge of parabolic partial differential equations (PDEs)
  • Familiarity with boundary condition applications in numerical methods
NEXT STEPS
  • Learn how to create and manipulate arrays in Fortran for mesh generation
  • Study the discretization techniques for parabolic PDEs
  • Explore time-marching methods for solving transient problems
  • Investigate numerical stability and convergence criteria in FDM
USEFUL FOR

Researchers, engineers, and students working on computational fluid dynamics, particularly those focused on diffusion processes in materials or biological systems.

cool2shiv
Messages
5
Reaction score
0
Hey,
I want to solve a parabolic PDE with boundary conditions by using FINITE DIFFERENCE METHOD in fortran. (diffusion) See the attachment for the problem

The problem is that there is a droplet on a leaf and it is diffusing in the leaf
the boundary conditions are
dc/dn= 0 at the upper surface of drop as well as the leaf
and
dc/dz = 0
for the bottom most layer
and the width is taken very large

Can anyone help me please in making the grid for using FDM
the Droplet is not hemispherical in shape.
 

Attachments

  • problem_ figure1.jpg
    problem_ figure1.jpg
    41.4 KB · Views: 733
Physics news on Phys.org
I told you earlier

a) Make a Mesh via matrix, arrays, selecting regions, and inputting appriopriate zeros e.g. a zeros array
b) Input your initial conditions into that array
c) discretize your equations into finite difference (conditions for the top, bottom, and central part of the body)
d) solve via time-marching, or where you solve for the next time interval from the previous.. since this is a transient problem
e) make sure your answer is reasonable
 

Similar threads

  • · Replies 2 ·
Replies
2
Views
4K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 36 ·
2
Replies
36
Views
6K
  • · Replies 8 ·
Replies
8
Views
4K
  • · Replies 6 ·
Replies
6
Views
7K
  • · Replies 3 ·
Replies
3
Views
3K
  • · Replies 4 ·
Replies
4
Views
5K
  • · Replies 3 ·
Replies
3
Views
2K
  • · Replies 2 ·
Replies
2
Views
3K
  • · Replies 5 ·
Replies
5
Views
3K