MathOverflow is a question and answer site for professional mathematicians. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

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?

share|cite|improve this question
In Comsol, you can input PDEs and it solves them using FE as long as they are wellposed. – Piyush Grover Mar 22 '13 at 15:28

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);

share|cite|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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