To be honest I avoided this topic for quite some time. Every now and then someone asks me about it, so clearly I should write a post. But the fact that I do my own online FEA course means that this may be received as an advertisement rather than advice.
To “deal with it” I figured I won’t compare products, but rather tell you what I think about learning FEA and what I consider to be important. This way you will be able to compare different courses on your own, and also you will know what to ask organizers about. I think we can start with that actually!
Ask if the course is for you!
I know this should be the last advice after I’ve already told you what I would put my attention to. However, I’ve put it here to point out that below is the list of things I would wonder about. I think it’s a good idea to ask organizers about details. I was disappointed before! In the very worst case you will test if the “people on the other side” are responsive at all : )
Finite Element Method or Finite Element Analysis?
I think there are two approaches to teaching Finite Elements. You can either approach it as a set of mathematical procedures and discuss them, or as a tool engineers use to design stuff.
First of all, you need to decide yourself what do you want to do. You can either write your own FEM solver or learn how to use FEA to solve practical problems.
It’s good to note that both goals are great! I’m not sure if that was a rule, but when I was searching for courses I wanted to take, the mathematical ones were about FEM (Finite Element Method) and the design ones were about FEA (Finite Element Analysis). This is however not the case right now, as apparently practical courses are becoming more and more “popular”, and organizers realized that FEA is just a better acronym to advertise : )
I want to write a FEM solver!
Writing your own commercial software gives you a lot of great opportunities. I don’t really know the market here, but I suspect if you would do a nice solver doing something “special” big fishes of FEA would gladly buy you out and for good money. You can even aim at SaaS solution (Software as a Service) etc.
This being said this what not the choice I’ve made, and I never learned the things needed to write my own solver. Some of the advice below still will be useful, but I feel comfortable giving advice in the “design space” – simply because I know my way around it and I have actual experience here.
I want to design stuff using FEA
This was the answer I’ve picked at the start of my career. The rest of this guide will be more or less geared toward this initial choice. So… read on!
I want both!
Ach… this is a very common thing I guess. Who knows, maybe you can learn so much faster than I can and you will be able to pull this off. I don’t think I will be able to achieve that. Even as I work with FEA for 10+ years now, I still know far less than I should. I do my best to learn new things at least 1h a day… and still, I don’t think I will ever feel that I “know enough”.
And that is the thing. Whichever field you will choose, there is so much to learn you will never finish! Attempting to learn both things at the same time may frustrate and discourage you. Even if you think to do both I would advise you to select any one approach first (they are completely different so go with one that excites you more!). Then if you will ever feel you know “enough” you can always start learning the second as well!
In my experience courses on “both” at the same time are the worts. You know the very basics of both words without anything “really useful” in them. It’s better to take a course from any of those that go “deep” into the subject. At least you will learn something useful!
How many practical things are in the course?
Regardless which thing you want to use practical things are the most important part. It’s not a “practical” as “based on designs we really did” but rather practical as “you will do stuff yourself”.
Even the best lecturer will only teach you so much. Unless you will start to implement stuff as you go, you will forget a lot about what you learned. There is also a good motivation for doing stuff on your own, that will push you forward!
It is also good if the teacher has actual working experience in the field of the examples… I’ve seen some really bad simplifications in my time, and at the same time, I would never teach certain subjects in FEA simply because I know too little about them!
It is also great when you can have feedback from a teacher of your work – otherwise, you may get stuck somewhere along the way…
Is the course fun?
I don’t expect my teachers to be stand up comedians (even though I try to be funny on live events). However, if your teacher is a genius but speaks in a boring way… you won’t learn a thing. I’m pretty sure you remember someone like that from your Uni – I know I do : )
We live in the world full of distractions – if you have to force yourself to go to the course or watch it… your discipline won’t last long. You should at least be able to enjoy the time, otherwise, it will be really hard to finish the course. I think that I’ve read the statistic that around 95% of online courses are unfinished even if they are paid ones. Something to think about for sure O.o
How are things explained?
My father is an academic teacher as well. I remember once (I was in a high school) he went back from a lecture angry and said “I forgot my pencil and a rubber-band. How could I explain stability without them!”. That’s the thing:
If you can’t explain it simply, you don’t understand it well enough!
(this is not an Einstein quote BTW, but it’s still true)
FEA is an incredibly complex thing… but it’s also simple in some way. Especially if you want to use it in design (I don’t know if this holds with mathematics). Sure, there are a lot of “weird” parameters and such, but most can be simply explained as to what they do and why, without going deep into math!
I would say this is what you are searching for – or at least this is what I search for. Fact is, I don’t care if my teacher did the biggest thing in his field in the world. I expect that he will be able to describe stuff in a simple enough way so I can understand that. This comes with experience for sure, but there is also some talent (or at least effort) involved. I think stories (especially the funny ones) are the best way to teach something. This is why I have so many funny stories on my blog… they simply work!
If you haven’t seen stories in complex problem explanation you should really read those:
- Gummy bears… or structural rigidity
- Cavemen Vs Moment of Inertia
- People carrying a rock or plastic strain
- Hooke’s law and a cat
Don’t use defaults unless there is a reason to do so!
There is another way of learning FEA I haven’t mentioned before. And that is “software courses”. Those are great (I myself took some), but I wouldn’t necessarily call them “FEA courses”. If you want to be a proficient software user, this is a completely different skillset. I’m well aware there are thousands of people that click in Femap that I use so much better than I that I would stare at their screen in disbelief. Bach, I even have the luck to employ folks like that!
And while “speed-clicking” is a great skill, it doesn’t help you with the solution of your problems. If you ever took a course like that, you know that usually very simple examples are solved and most options are kept at default. And this is a good thing in a way. The goal of the course is to teach you how to use software – wasting time on each parameter and what it does would be counterproductive.
But if you want to use FEA, especially in a more advanced way you need to pay attention to such things. Simplified boundary conditions are great if you want to show how different functions in the software works. But if you really want to design stuff “simplified” or “default” is not a solution anymore!
You need to go deep into those things! And usually, teachers start with complex math. I’m more a “story guy” myself, but I don’t know how popular such an approach is. Let me know what you would like better!
Expert in a narrow field!
This is also funny. If you are just starting out this is not a bit issue. But if you aim at “nonlinear stuff” or something more advanced we really need to talk about what does it means to be an expert.
I have a Ph.D. in shell stability. Naturally, I gravitate toward thin and slender elements in FEA – this is what I’m great at (stability4life!). At this stage, I’m willing to call myself an expert in nonlinear FEA. On another hand, I know a guy who specializes in geotechnics. He does nonlinear stuff with soils in FEA that blows my head out. He is definitely a nonlinear FEA expert.
Imagine now that I and he are teaching you nonlinear FEA. You would basically learn a different thing! Sure we both do nonlinear stuff, and some overlap will be there. But there would be so many differences as well!
And this is it:
The more advanced stuff you want to learn the more careful you need to be in the selection of experts that teach you.
The fact someone is an expert in nonlinear FEA doesn’t mean that he knows what you want to learn!
Don’t expect courses on a Ph.D. level!
This happens so often. Someone read my blog and emails me with questions about his/her Ph.D. The short answer is:
Nobody knows the answer… this is why you do a Ph.D. about it!
And even if there are people with ready solutions think about the effort. How many people will be interested in 10+ hours course on imperfections in support regions of very particular shell structure? There would be so few people that preparing a course for them (lots of work trust me!) would make no economic sense.
This means that at some point you need to be realistic. If the course you are searching for is very very specialized a chance that you would find a proper teacher is relatively small. Then, be extra careful about who does the course and what he/she offers. If you won’t check that, you will be disappointed!
All right, let’s try to sum this up!
Choosing a FEA course:
- Decide what you want to learn: coding a solver or practical design stuff!
- Even if you want both pick one (just for now!)
- Search for courses that allow you to do stuff yourself!
- Course must (or at least should) be fun!
- Things should be explained in a simple way. For me stories are best!
- If you are interested in designing stuff using “default” values is not ok. Course should discuss settings and what they mean/do!
- If you are after a course in a very specyfic field check extremely well who the teacher is and if he/she has the needed expertise!
- Do your Ph.D. yourself : P
Wow… this turned out to be rather long – I haven’t seen that coming : )
I would love to know what you think about it!
All the best