I'm a high-schooler building a small vehicle for an independent study. I've had finite element modelling recommended to me as a way to save time during the design process, and I'd like to try it out. Unfortunately, the person who recommended FEM to me claims his knowledge is quite outdated. I have some coding experience and I'm a quick learner. How should I get started with FEM?

Note: I have a budget of zero dollars.

  • 3
    $\begingroup$ For a design project, you'd probably be better off using some professional FE software like ANSYS and modeling your problem with that instead of writing your own code. There's some minimal pre-reqs in things like vector calculus and differential equations that you need to begin to understand Finite Element material at the most basic level so you can write a basic code, and that only scratches the surface. Might be a bit much for a HS project on top of designing the vehicle. $\endgroup$
    – spektr
    Commented May 27, 2018 at 22:49
  • $\begingroup$ There are some pretty amazing open source finite element libraries nowadays, but they are generally pretty complex to use. You can take a look at FEniCS and deal.ii . But if you go these routes, you will have to learn the whole pipeline (mesh generation, pre-processing, simulation, post-processing), which might be a lot if what you want to achieve is design... $\endgroup$
    – BlaB
    Commented May 28, 2018 at 13:55
  • 2
    $\begingroup$ I have some experience from large corporations employing FEA. Savings in money are usually only obtained if the creation of a prototype is very expensive. In your case you are trying to save time. If your use case is simple and well defined, it is indeed possible to save time, but this would probably require you already knowing the fundamentals, tools and material models. If your only motivation to learn FEM is to save time, I think you should just build the prototypes. $\endgroup$
    – knl
    Commented May 29, 2018 at 11:19

2 Answers 2


I would suggest that you start with FreeCAD. It is a CAD software and you can do Finite Element Analysis using the graphic interface pretty straightforward. FreeCAD provides you all the stages needed in a Finite Element Analysis.

In general, you would need the following:

  • A CAD for the geometries, FreeCAD is a good option.
  • Besides FreeCAD, I can suggest you Gmsh.
  • FEM solvers. Two good options are:
  • A software for visualization, ParaView is a good option.

In my experience, learning FEM is less about coding and more about learning the math that constitutes the foundation of the method. Essentially coding FEM simulations boils down to physics and calculus, and you didn't mention your background in either of those.

Another option for you would be to use a software package that has some prebuilt models included. I saw some comments suggesting dealii and FEniCS - I'll add some more free tools to the list: Onelab (a gui/solver package built on top of gmsh), and OpenCASCADE, an open-source CAE/CAD simulation tool. These two are both very friendly to new CAD/FEM users relative to other open-source FEM software packages.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

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