What is NDSolve`FEM`*?

Version 8 does not have a built-in finite element method. If you want to use the finite element method, you may want to look at the following packages:

  1. ACEFem
  2. IMTEK Mathematica Supplement (IMS) and here and here

To the question: NDSolve`FEM` is an internal context to NDSolve that currently does not do anything much. It's only use is as a container in the unstructured interpolation.

Hope this helps.


In answer to David's question in the comments to the answer, I examine the contents of

Names["*`*"]

with every release. You can find all sorts of goodies this way. In addition to the FEM stuff, you'll also find some Mesh functionality. Stephen Wolfram dropped a hint that PDEs were under development here in this talk: http://blog.wolfram.com/2009/11/12/the-rd-pipeline-for-mathematica/

Based on these observations, I'd guess that PDEs have been under development for some time but didn't quite make it in to V8. The answer to the original question is that this context is probably preparation for that but that you'll probably have to wait for V9 to really use it.


Mathematica 10 now supports the Finite Element Method for certain classes of PDEs.

Documentation:

  • Reference

  • Detailed user guide

  • Advanced documentation on FEM programming

The FEM related functions are in NDSolve`FEM` and can be made directly accessible using

Needs["NDSolve`FEM`"]