# How to solve two-dimensional transient partial differential equations?

Dear Julia community,
I am beginner to Julia.
Kindly suggest me a suitable resource (packages) to solve coupled PDEs via Finite-difference method or any other numerical method? Please see the equations in shared image for detailed info (link of equations).

I have solved 1-D form of these equations via FDM based Crank-Nicolson scheme in MATLAB and C++ environment. For solving set of algebraic equations, we have used Thomas algorithm (TDMA).

Whatâ€™s stopping you from using the same methods in Julia?

Of course, there are tons of methods to choose from, from spectral methods (e.g. via ApproxFun.jl) to finite-element methods (e.g. via Gridap.jl) to hand-rolled finite-difference methods (which are relatively easy in Julia â€” you can just write loops, for example, or use automated finite-difference code like MethodOfLines.jl). For time evolution you can of course use a hand-rolled scheme like Crankâ€“Nicolson, or you could use Method of Lines (discretized space + time integration handled by ODE integration software).

PDE methods are complicated because there are so many good options, and the â€śbestâ€ť choice depends strongly on the problem and on the context. But if you have a method that is already debugged and works well for your problem, you should consider starting there.

6 Likes

thanks Sir, I will look into these resources. I will try Gridap and Method of Line packages to solve solute transport in the porous media

(Disclaimer: me being the author): VoronoiFVM.jl and VoronoiFVMDiffEq.jl probably can handle this.

3 Likes

Hello [abhayguleria92]
I want to solve the first equation in 1D form. Can you guide me how can I solve them?