I like to understand all the math I use, but that doesn't necessarily mean I remember it. I like the fact that my professors explained various proofs, algorithms, etc. when I was in university, so I understand how they work. I've forgotten most of that, though. I still have a lot of my old textbooks, so I'm comfortable knowing I can look something up if I need to, but if I don't use it on a day-to-day basis, it doesn't matter to me if it stays in my head or not. But being completely oblivious - not understanding, and therefore having to treat the math as if it's some kind of incomprehensible magic - is intolerable to me.
I prefer to understand all the math. I don't, of course. Who has the time to verify every equation, especially when you often have to first decipher the specialized symbols used in that particular discipline. But I'm a scientst, and an engineer. As an engineer, I have to be able to verify that the algorithm I coded or was given accurately models the actual mathematical equation. As a scientist, I question not only how the equation was derived (and with what assumptions), and for what range of values it accurately models a ;articular physical system. Besides, my most dominant trait is curiosity.
It depends. As long as you can tell whether the results of the simulations make sense, you should be OK. Sometimes it can be hard to tell, however, because the results can be counter-intuitive. Being good at math always helps, but I know many people with masters and PhDs who struggle with math but still manage to do good work. I only skimmed through the rest of the discussion, so I apologize in advance if I miss something someone said. I'd wager that well over 99% of people using software don't truly understand how it does the calculations. That's because it's not solving equations using the methods you see in a traditional math class. It uses approximation techniques that most people aren't familiar with. Furthermore, a computers are fairly stupid and can only do simple calculations. That's why it's important for the programmer to simplify equations in a way that the computer will understand. This is something I had a hard time dealing with. My job right now involves developing software that solves complex equations, and it's only now that I'm beginning to appreciate the work that goes into it.