Since you mention physics and engineering, I'd say it is, at least in some cases, a defacto requirement that you will have to learn in one form or another anyway.
Also even if you don't actually end up writing hundreds of lines of C++ code, doing simulations in something like MATLAB, or trying to take say a custom database format and hook that into something like MATLAB to get results requires a good enough knowledge about basic procedural programming.
The other thing is that if you know how procedural programming works and you move to some other platform that uses procedural constructs in its own language, then the migration will be fairly straightforward in comparison to if you didn't know and understanding these things.