Displaying a matrix with scalar fields
I have some scalar fields and a matrix whose elements are these scalar fields. A sample code is the following:
reset()
M=Manifold(4, 'M', r'\mathcal{M}')
BL.<t,r,th,ph> = M.chart(r't r:(0,+oo) th:(0,pi):\theta ph:(0,2*pi):\phi')
f=M.scalar_field(function('f')(*BL))
g=M.scalar_field(function('g')(*BL))
h=M.scalar_field(function('h')(*BL))
h=0
mymatrix=matrix([[f+g,g,h],[f,h,g],[h,g,f]])
f
, g
, or h
can be zero or nonzero (according to some calculations).
When I try to display my matrix with show(mymatrix)
or print(mymatrix)
, I see Scalar field on the 4-dimensional differentiable manifold M
instead of the non-zero elements.
What should I do to display my matrix as
[f+g g 0]
[f 0 g]
[0 g f]
preferably without using loops, etc?
If you accept arguments, then try
Thank you @achrzesz. This is a solution to my problem.