When we use software to numerically solve differential equation, for example, using finite difference, finite element or finite volume methods, etc., is it possible that people input differential equation , and then the software can automatically transfer the mathematical equation to something that the software can recognize? The background of my question is that there is a kind of language for expressing variational form of PDE, called Unified Form Language (UFL) used in FEniCS, an excellent software for solving differential equations using Finite Element Method, there are some form complier which can generate C++ code based on the UFL inputed, then solve them using finite element method. So I was wondering if there are something even more close to mathematical particial differential equation that we just input these then the software can solve them, because this is more human-friendly. And is there any relationship of my question to Symbolic Computing, or what is the principle underlying in Symbolic Computing?


For example, in Maple:

PDE := diff(u(x,t),t)=1/10*diff(u(x,t),x,x);

IBC := {u(x,0)=1, u(0,t)=0, D[1] (u)(1,t)=0};

pds := pdsolve(PDE,IBC,numeric);


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.