Make StrainProductAssembler use lambdas
Also extend the StVenantKirchhoffAssembler to heterogeneous materials. In the world of viscosity, we previously had two classes for this purpose:
- ViscosityAssembler
- VariableCoefficientViscosityAssembler
The former can now also perform the job of the latter.
This is a replacement for !3 (closed). I'm much happier with the way this has turned out. The VariableCoefficientViscosityAssembler is now entirely obsolete.
I had to add a set()
method, making the strain-to-stress translation something you can change at run-time. Maybe that's actually even desirable. But I did it because I did not want to have the entire class parametrised after the functions that you pass to set().
PS: This also gets rid of CRTP. Yay.
PPS: And ctype
is now properly used (instead of double
, the default)