Open mscroggs opened 4 months ago
Is Firedrake (or FEniCSx for that matter) using ConstantValue
?
As discussed earlier, Constant
with an associated domain is motivated by differentiation (i.e. the derivative of a Constant-value maps to the real-element).
Yes, we are using ConstantValue. As soon as you start doing multiple domain calculations, having to associate a domain with a constant is a pain. We concede the differentiation point. For the moment, differentiation WRT to a Parameter
won't be possible. In theory in the future it could be made so but that is a much bigger change.
I think AbstractParameter should have a dtype as input, as it could be: Float32,float64,complex64, complex128 etc, which should change the representation of it.
As discussed at SysGenX meeting, we should:
ConstantValue
toAbstractParameter
. This is the base class for parameters (previously constants) without a domainParameter
class that inherits fromAbstractParameter
to represent a parameter with an unknown valueConstant
as it is: representing a constant over a domain