Open ratnania opened 8 months ago
I feel that we need to clarify what kind of entries are allowed in a Vector
or Matrix
.
If any expression of the spatial coordinates is allowed, then it behaves just like a Function
, but without specifying the arguments. In fact, it would seem natural to subclass Function
to get the classes ScalarFunction
, VectorFunction
, and MatrixFunction
. Of course this would create a conflict with the pre-exististing classes ScalarFunction
and VectorFunction
, which represent elements of a ScalarFunctionSpace
and VectorFunctionSpace
, respectively.
Yes, we should differentiate between a (Scalar/)Vector/Matrix
valued functions and other expressions.
This means that we need to check, at the construction, that Vector/Matrix
expressions do not contain the coordinates.
For the (Scalar/)Vector/Matrix
valued functions, we'll move the discussion to the associated issue.
This issue is closely related to #149
Up to now, we were relying on
sympy.Matrix
and its variants to handle our Linear Algebra operations. It is now time to have our own Linear Algebra building blocks, and it starts with theVector
andMatrix
objects. This issue aims to:Vector
andMatrix
Tuple
from all our examples (sympde and psydac)sympy.Matrix
-like objects appearing inside sympde, when possibleThe new objects should be used in two different ways:
in the which case, these variables will appear as free-variables in our expressions (linear, bilinear forms, etc)