ecterrab

14540 Reputation

24 Badges

20 years, 21 days

MaplePrimes Activity


These are answers submitted by ecterrab

NOTE:  with matrix you can also use all the commands of the linalg package.

symbolic_matrices.mw

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft.

Steve

The three vectors _r, _theta and _phi are orthogonal. Their direction depends on the point of space you are considering, but not their orthogonality. So the results (1.3) and (2.3) are correct, not "Cartesian". What is what you were expecting?

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

If in the two hangs you use the optional argument 'useInt' you see the output appears right away. So we have an issue in int, or below it (may be solve or the is/assume/coulditbe set of commands), apparently introduced at the time of 2019.2. For the other two examples, not hanging but returning NULL right away, I'd need to give a further look, they are solved in Maple 2018 using Lie symmetry methods for higher degree equations, a tricky application of symmetries. But today and this week I'm rather busy preparing a presentation. I'll do my best to have a solution before the end of this week.

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

I gave a look at your worksheet, Deniscr. What I see: this is not a math issue but a typesetting one. I use 2D Math input, but type things as in 1D math input. Sometimes, in addition, I right-click and convert to 2D Math input to have nice typeset math already in the input. This is then a picture of what I see, the derivative is computed right away (first input) instead of the error message (second input, that I kept there for comparison).

 

Once the problem is understood, it remains to know what did you type to get this input that results in invalid derivative?

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

Hi

The practical dynamics is one where you post the formulation of the problem in a workshseet, up to what you think is the correct way to formulate it (do your best, taking advantage of the help pages) and use the green arrow to upload the worksheet here. From there, intercalating comments and input/output in that worksheet we take the question to a resolution - no doubt.

In advance to your worksheet: yes, you need to specify the functions vs and f(rs) explicitly in terms of the coordinates x, y, z, t. Otherwise, the symbols vs or rs are just some symbols not dependent on the coordinates, and therefore the metric is constant and so the Christoffel symbols are naturally equal to 0.

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

Addition_of_vectors_(reviewed).mw

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

Perpendicular_Vectors_(reviewed).mw

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

It is surprising how this problem went below the radar for so long. It is fixed. The fix, by people working with the simplifier, is available to everybody withing the Maplesoft Physics Updates v.643 or higher. Note that, as it's been the case for the last 5 years, these Updates only work with the current Maple release, Maple 2020, not retroactively with older releases.

Attached is your worksheet, reviewed, with the output after installing the Physics Updates v.643.

That said, I'd like to comment on the Title of this Question. Behind this software, there are people, proud of their work, happy to participate in this great forum and willing to help. But Titles like the one of this Question do not help, are not minimally polite and are not respectful. Please revise the communication style.

simplify_(reviewed).mw

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions.

Enter ?libname to understand what that is. Then please enter libname at the Maple prompt and reply here showing the output. What the message you show is telling is that

  • the package is installed, typically in Physics Updates below the Maple/toolbox directory, that exists below the directory shown by kernelopts(homedir);
  • that in you libname some other directory (D:\\Program Files\\Maple 2020\\lib\\maple.mla) contains the Physics package and appears in libname before the directory Physics Updates below Maple/toolbox.

Because D:\\Program Files\\Maple 2020\\lib\\maple.mla comes first in libname and contains Physics, that is the active version of Physics you are using, not the one that you installed with the Physics Updates.

That may happen for several reasons. For example if you manually set the value of libname or manually install the Physics Updates somewhere else (not that you have done any of that - just as examples).

In summary, what is the output when you input libname?

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

 

 

There is this command, PDEtools:-dcoeffs, give a look at its help page, I imagine this is what you want. You also have DifferentialAlgebra:-Tools:-Coeffs, but that is a more advanced command - not sure that is what you need.

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

@digerdiga 

Besides Pascal4QM worksheets, there is something new in Maple 2020 that you may want to take advantage: the SU(2) tensor space has dimension 3 and is Euclidean. So, in Maple 2020, instead of changing the dimension of spacetime using Setup(dimension = 3, metric = Euclidean, spacetimeindices = lowercaselatin) as you did, just use Setup(su2indices = lowercaselatin). Then set the algebra rule using KroneckerDelta, that in Maple 2020 works as a tensor for su2, su3, spinor and gauge indices (not for spacetime, space or tetrad indices for which you already have metric commands available, g_, gamma_ and Tetrads:-eta_).

Regarding your other question, on Why the sum of two terms that cancel each other are not cancelling when I called Simplify? The answer is: these expressions involve not just tensors but noncommutative objects subject to commutator rules, and in that case, when the two things are taken at the same time, up to what I know, there is no fully systematic algorithm to get all the cases. In those situations, the two commands that help are Library:-SortProducts and SubstituteTensor. You can see several examples of how that is done in the post The hidden SO(4) symmetry of the Hydrogen Atom.

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft


In what follows I work with a fully arbitrary metric, in Maple 2020 (it is probably the same in previous Maples). You can adapt the lines below to any specific form of the metric - see Sec II, subsection "Setting the space time metric"  of the Physics,Tensors  help page. In case adapting the lines below looks complicated, you may want to post again with a more specific question about that.

 

with(Physics)

Setup(coordinates = cartesian, g_ = arbitrary)

`Default differentiation variables for d_, D_ and dAlembertian are:`*{X = (x, y, z, t)}

 

`Systems of spacetime coordinates are:`*{X = (x, y, z, t)}

 

_______________________________________________________

 

`Setting `*lowercaselatin_is*` letters to represent `*space*` indices`

 

`The arbitrary metric in coordinates `*[x, y, z, t]

 

`Signature: `(`- - - +`)

 

_______________________________________________________

 

Physics:-g_[mu, nu] = Matrix(%id = 18446744078432550774)

 

_______________________________________________________

 

[coordinatesystems = {X}, metric = {(1, 1) = _F1(X), (1, 2) = _F2(X), (1, 3) = _F3(X), (1, 4) = _F4(X), (2, 2) = _F5(X), (2, 3) = _F6(X), (2, 4) = _F7(X), (3, 3) = _F8(X), (3, 4) = _F9(X), (4, 4) = _F10(X)}, spaceindices = lowercaselatin_is]

(1)

This next input line is not necessary, but to make the display more compact (see at the end) let's do it here:

CompactDisplay([coordinatesystems = {X}, metric = {(1, 1) = _F1(X), (1, 2) = _F2(X), (1, 3) = _F3(X), (1, 4) = _F4(X), (2, 2) = _F5(X), (2, 3) = _F6(X), (2, 4) = _F7(X), (3, 3) = _F8(X), (3, 4) = _F9(X), (4, 4) = _F10(X)}, spaceindices = lowercaselatin_is])

` _F1`(X)*`will now be displayed as`*_F1

 

` _F10`(X)*`will now be displayed as`*_F10

 

` _F2`(X)*`will now be displayed as`*_F2

 

` _F3`(X)*`will now be displayed as`*_F3

 

` _F4`(X)*`will now be displayed as`*_F4

 

` _F5`(X)*`will now be displayed as`*_F5

 

` _F6`(X)*`will now be displayed as`*_F6

 

` _F7`(X)*`will now be displayed as`*_F7

 

` _F8`(X)*`will now be displayed as`*_F8

 

` _F9`(X)*`will now be displayed as`*_F9

(2)

All the covariant components of the Riemann tensor:

Riemann[]

Riemann[alpha, beta, mu, nu] = _rtable[18446744078390560638]

(3)

As the message tells, above there is only a slice of the 4x4x4x4 Array. In Maple 2020 you may want to explore the Array using TensorArray(R[alpha, beta, mu, nu], explore).

 

Get all the nonzero at once

NonZero := ArrayElems(rhs(Riemann[alpha, beta, mu, nu] = _rtable[18446744078390560638]))

 

There are as many as:

nops(NonZero)

144

(4)

Show the values of the indices for which you have a nonzero component

map(proc (u) options operator, arrow; [lhs(u)] end proc, NonZero)

{[1, 2, 1, 2], [1, 2, 1, 3], [1, 2, 1, 4], [1, 2, 2, 1], [1, 2, 2, 3], [1, 2, 2, 4], [1, 2, 3, 1], [1, 2, 3, 2], [1, 2, 3, 4], [1, 2, 4, 1], [1, 2, 4, 2], [1, 2, 4, 3], [1, 3, 1, 2], [1, 3, 1, 3], [1, 3, 1, 4], [1, 3, 2, 1], [1, 3, 2, 3], [1, 3, 2, 4], [1, 3, 3, 1], [1, 3, 3, 2], [1, 3, 3, 4], [1, 3, 4, 1], [1, 3, 4, 2], [1, 3, 4, 3], [1, 4, 1, 2], [1, 4, 1, 3], [1, 4, 1, 4], [1, 4, 2, 1], [1, 4, 2, 3], [1, 4, 2, 4], [1, 4, 3, 1], [1, 4, 3, 2], [1, 4, 3, 4], [1, 4, 4, 1], [1, 4, 4, 2], [1, 4, 4, 3], [2, 1, 1, 2], [2, 1, 1, 3], [2, 1, 1, 4], [2, 1, 2, 1], [2, 1, 2, 3], [2, 1, 2, 4], [2, 1, 3, 1], [2, 1, 3, 2], [2, 1, 3, 4], [2, 1, 4, 1], [2, 1, 4, 2], [2, 1, 4, 3], [2, 3, 1, 2], [2, 3, 1, 3], [2, 3, 1, 4], [2, 3, 2, 1], [2, 3, 2, 3], [2, 3, 2, 4], [2, 3, 3, 1], [2, 3, 3, 2], [2, 3, 3, 4], [2, 3, 4, 1], [2, 3, 4, 2], [2, 3, 4, 3], [2, 4, 1, 2], [2, 4, 1, 3], [2, 4, 1, 4], [2, 4, 2, 1], [2, 4, 2, 3], [2, 4, 2, 4], [2, 4, 3, 1], [2, 4, 3, 2], [2, 4, 3, 4], [2, 4, 4, 1], [2, 4, 4, 2], [2, 4, 4, 3], [3, 1, 1, 2], [3, 1, 1, 3], [3, 1, 1, 4], [3, 1, 2, 1], [3, 1, 2, 3], [3, 1, 2, 4], [3, 1, 3, 1], [3, 1, 3, 2], [3, 1, 3, 4], [3, 1, 4, 1], [3, 1, 4, 2], [3, 1, 4, 3], [3, 2, 1, 2], [3, 2, 1, 3], [3, 2, 1, 4], [3, 2, 2, 1], [3, 2, 2, 3], [3, 2, 2, 4], [3, 2, 3, 1], [3, 2, 3, 2], [3, 2, 3, 4], [3, 2, 4, 1], [3, 2, 4, 2], [3, 2, 4, 3], [3, 4, 1, 2], [3, 4, 1, 3], [3, 4, 1, 4], [3, 4, 2, 1], [3, 4, 2, 3], [3, 4, 2, 4], [3, 4, 3, 1], [3, 4, 3, 2], [3, 4, 3, 4], [3, 4, 4, 1], [3, 4, 4, 2], [3, 4, 4, 3], [4, 1, 1, 2], [4, 1, 1, 3], [4, 1, 1, 4], [4, 1, 2, 1], [4, 1, 2, 3], [4, 1, 2, 4], [4, 1, 3, 1], [4, 1, 3, 2], [4, 1, 3, 4], [4, 1, 4, 1], [4, 1, 4, 2], [4, 1, 4, 3], [4, 2, 1, 2], [4, 2, 1, 3], [4, 2, 1, 4], [4, 2, 2, 1], [4, 2, 2, 3], [4, 2, 2, 4], [4, 2, 3, 1], [4, 2, 3, 2], [4, 2, 3, 4], [4, 2, 4, 1], [4, 2, 4, 2], [4, 2, 4, 3], [4, 3, 1, 2], [4, 3, 1, 3], [4, 3, 1, 4], [4, 3, 2, 1], [4, 3, 2, 3], [4, 3, 2, 4], [4, 3, 3, 1], [4, 3, 3, 2], [4, 3, 3, 4], [4, 3, 4, 1], [4, 3, 4, 2], [4, 3, 4, 3]}

(5)

Each of these nonzero component, for instance Riemann[1,2,1,2] is large in size

length(Riemann[1, 2, 1, 2])

58299

(6)

A simplification in size can reduce some of them by approx 1/2

length(simplify(Riemann[1, 2, 1, 2], size))

31007

(7)

Simplify all of them by size and sort them by length

sorted_NonZero := sort([op(map(proc (u) options operator, arrow; %Riemann[lhs(u)] = simplify(rhs(u), size) end proc, NonZero))], length)

 

Show the first one, i.e. the smallest one

length(sorted_NonZero[1])

28044

(8)

sorted_NonZero[1]

%Riemann[2, 4, 2, 4] = ((((-_F8(X)*_F4(X)+_F3(X)*_F9(X))*_F2(X)+(_F8(X)*_F1(X)-_F3(X)^2)*_F7(X)-(_F9(X)*_F1(X)-_F4(X)*_F3(X))*_F6(X))*(diff(_F5(X), t))+((2*_F3(X)*_F6(X)-2*_F8(X)*_F2(X))*_F7(X)+2*_F9(X)*_F6(X)*_F2(X)+(-2*_F6(X)^2+2*_F8(X)*_F5(X))*_F4(X)-2*_F5(X)*_F9(X)*_F3(X))*(diff(_F2(X), t))+((2*_F3(X)*_F6(X)-2*_F8(X)*_F2(X))*_F7(X)+2*_F9(X)*_F6(X)*_F2(X)+(-2*_F6(X)^2+2*_F8(X)*_F5(X))*_F4(X)-2*_F5(X)*_F9(X)*_F3(X))*(diff(_F4(X), y))+((-2*_F6(X)*_F1(X)+2*_F3(X)*_F2(X))*_F7(X)-2*_F9(X)*_F2(X)^2+2*_F6(X)*_F2(X)*_F4(X)+2*_F5(X)*(_F9(X)*_F1(X)-_F4(X)*_F3(X)))*(diff(_F6(X), t))+((-2*_F3(X)*_F6(X)+2*_F8(X)*_F2(X))*_F7(X)-2*_F9(X)*_F6(X)*_F2(X)+(2*_F6(X)^2-2*_F8(X)*_F5(X))*_F4(X)+2*_F5(X)*_F9(X)*_F3(X))*(diff(_F7(X), x))+((2*_F6(X)*_F1(X)-2*_F3(X)*_F2(X))*_F7(X)+2*_F9(X)*_F2(X)^2-2*_F6(X)*_F2(X)*_F4(X)-2*_F5(X)*(_F9(X)*_F1(X)-_F4(X)*_F3(X)))*(diff(_F7(X), z))+((-2*_F6(X)*_F1(X)+2*_F3(X)*_F2(X))*_F7(X)-2*_F9(X)*_F2(X)^2+2*_F6(X)*_F2(X)*_F4(X)+2*_F5(X)*(_F9(X)*_F1(X)-_F4(X)*_F3(X)))*(diff(_F9(X), y))+((-2*_F8(X)*_F4(X)+2*_F3(X)*_F9(X))*_F2(X)+(2*_F8(X)*_F1(X)-2*_F3(X)^2)*_F7(X)-2*(_F9(X)*_F1(X)-_F4(X)*_F3(X))*_F6(X))*(diff(_F7(X), y))+((2*_F8(X)*_F10(X)-2*_F9(X)^2)*_F2(X)+(-2*_F8(X)*_F4(X)+2*_F3(X)*_F9(X))*_F7(X)+2*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F6(X))*(diff(_F2(X), y))+((-_F8(X)*_F10(X)+_F9(X)^2)*_F2(X)+_F7(X)*(_F8(X)*_F4(X)-_F3(X)*_F9(X))-(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F6(X))*(diff(_F5(X), x))+(_F8(X)*_F4(X)^2-2*_F4(X)*_F9(X)*_F3(X)+_F1(X)*_F9(X)^2-_F10(X)*(_F8(X)*_F1(X)-_F3(X)^2))*(diff(_F5(X), y))-((_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F2(X)+(-_F9(X)*_F1(X)+_F4(X)*_F3(X))*_F7(X)+(_F10(X)*_F1(X)-_F4(X)^2)*_F6(X))*(diff(_F5(X), z)-2*(diff(_F6(X), y))))*(diff(_F10(X), y))+((-2*_F8(X)*_F1(X)+2*_F3(X)^2)*_F7(X)^2+((4*_F8(X)*_F4(X)-4*_F3(X)*_F9(X))*_F2(X)+4*(_F9(X)*_F1(X)-_F4(X)*_F3(X))*_F6(X))*_F7(X)+(-2*_F8(X)*_F10(X)+2*_F9(X)^2)*_F2(X)^2-4*_F6(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F2(X)+(2*_F6(X)^2-2*_F8(X)*_F5(X))*_F4(X)^2+4*_F5(X)*_F9(X)*_F3(X)*_F4(X)-2*_F10(X)*_F6(X)^2*_F1(X)+2*_F5(X)*(-_F1(X)*_F9(X)^2+_F10(X)*(_F8(X)*_F1(X)-_F3(X)^2)))*(diff(diff(_F10(X), y), y))+((-2*_F8(X)*_F1(X)+2*_F3(X)^2)*_F7(X)^2+((4*_F8(X)*_F4(X)-4*_F3(X)*_F9(X))*_F2(X)+4*(_F9(X)*_F1(X)-_F4(X)*_F3(X))*_F6(X))*_F7(X)+(-2*_F8(X)*_F10(X)+2*_F9(X)^2)*_F2(X)^2-4*_F6(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F2(X)+(2*_F6(X)^2-2*_F8(X)*_F5(X))*_F4(X)^2+4*_F5(X)*_F9(X)*_F3(X)*_F4(X)-2*_F10(X)*_F6(X)^2*_F1(X)+2*_F5(X)*(-_F1(X)*_F9(X)^2+_F10(X)*(_F8(X)*_F1(X)-_F3(X)^2)))*(diff(diff(_F5(X), t), t))+((4*_F8(X)*_F1(X)-4*_F3(X)^2)*_F7(X)^2+((-8*_F8(X)*_F4(X)+8*_F3(X)*_F9(X))*_F2(X)-8*(_F9(X)*_F1(X)-_F4(X)*_F3(X))*_F6(X))*_F7(X)+(4*_F8(X)*_F10(X)-4*_F9(X)^2)*_F2(X)^2+8*_F6(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F2(X)+(-4*_F6(X)^2+4*_F8(X)*_F5(X))*_F4(X)^2-8*_F5(X)*_F9(X)*_F3(X)*_F4(X)+4*_F10(X)*_F6(X)^2*_F1(X)-4*_F5(X)*(-_F1(X)*_F9(X)^2+_F10(X)*(_F8(X)*_F1(X)-_F3(X)^2)))*(diff(diff(_F7(X), t), y))+(_F8(X)*_F2(X)^2-2*_F6(X)*_F2(X)*_F3(X)+_F6(X)^2*_F1(X)-_F5(X)*(_F8(X)*_F1(X)-_F3(X)^2))*(diff(_F10(X), y))^2+(((-4*_F8(X)*_F1(X)+4*_F3(X)^2)*_F7(X)+(4*_F8(X)*_F4(X)-4*_F3(X)*_F9(X))*_F2(X)+4*(_F9(X)*_F1(X)-_F4(X)*_F3(X))*_F6(X))*(diff(_F7(X), y))+((4*_F8(X)*_F4(X)-4*_F3(X)*_F9(X))*_F7(X)+(-4*_F8(X)*_F10(X)+4*_F9(X)^2)*_F2(X)-4*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F6(X))*(diff(_F2(X), y))+((2*_F8(X)*_F10(X)-2*_F9(X)^2)*_F2(X)+(-2*_F8(X)*_F4(X)+2*_F3(X)*_F9(X))*_F7(X)+2*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F6(X))*(diff(_F5(X), x))+(-2*_F8(X)*_F4(X)^2+4*_F4(X)*_F9(X)*_F3(X)-2*_F1(X)*_F9(X)^2+2*_F10(X)*(_F8(X)*_F1(X)-_F3(X)^2))*(diff(_F5(X), y))+2*((_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F2(X)+(-_F9(X)*_F1(X)+_F4(X)*_F3(X))*_F7(X)+(_F10(X)*_F1(X)-_F4(X)^2)*_F6(X))*(diff(_F5(X), z)-2*(diff(_F6(X), y))))*(diff(_F7(X), t))+(_F2(X)^2*_F10(X)-2*_F7(X)*_F2(X)*_F4(X)+_F7(X)^2*_F1(X)-_F5(X)*(_F10(X)*_F1(X)-_F4(X)^2))*(diff(_F9(X), y))^2+(_F2(X)^2*_F10(X)-2*_F7(X)*_F2(X)*_F4(X)+_F7(X)^2*_F1(X)-_F5(X)*(_F10(X)*_F1(X)-_F4(X)^2))*(diff(_F7(X), z))^2+2*((-_F7(X)^2*_F3(X)+(_F6(X)*_F4(X)+_F9(X)*_F2(X))*_F7(X)-_F2(X)*_F6(X)*_F10(X)-_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F5(X), x))+((-_F9(X)*_F4(X)+_F10(X)*_F3(X))*_F2(X)+_F7(X)*(_F9(X)*_F1(X)-_F4(X)*_F3(X))-(_F10(X)*_F1(X)-_F4(X)^2)*_F6(X))*(diff(_F5(X), y))+(_F2(X)^2*_F10(X)-2*_F7(X)*_F2(X)*_F4(X)+_F7(X)^2*_F1(X)-_F5(X)*(_F10(X)*_F1(X)-_F4(X)^2))*(diff(_F5(X), z)-2*(diff(_F6(X), y))))*(diff(_F9(X), t))+(_F2(X)^2*_F10(X)-2*_F7(X)*_F2(X)*_F4(X)+_F7(X)^2*_F1(X)-_F5(X)*(_F10(X)*_F1(X)-_F4(X)^2))*(diff(_F6(X), t))^2+(_F8(X)*_F4(X)^2-2*_F4(X)*_F9(X)*_F3(X)+_F1(X)*_F9(X)^2-_F10(X)*(_F8(X)*_F1(X)-_F3(X)^2))*(diff(_F5(X), t))^2+((-4*_F10(X)*_F6(X)^2+8*_F9(X)*_F6(X)*_F7(X)-4*_F8(X)*_F7(X)^2+4*_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F4(X), t))-4*(-_F7(X)^2*_F3(X)+(_F6(X)*_F4(X)+_F9(X)*_F2(X))*_F7(X)-_F2(X)*_F6(X)*_F10(X)-_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F9(X), t)))*(diff(_F2(X), y))+((-2*_F7(X)^2*_F3(X)+(2*_F6(X)*_F4(X)+2*_F9(X)*_F2(X))*_F7(X)-2*_F2(X)*_F6(X)*_F10(X)-2*_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F2(X), y))+(_F7(X)^2*_F3(X)+(-_F6(X)*_F4(X)-_F9(X)*_F2(X))*_F7(X)+_F2(X)*_F6(X)*_F10(X)+_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F5(X), x))+((_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F2(X)+(-_F9(X)*_F1(X)+_F4(X)*_F3(X))*_F7(X)+(_F10(X)*_F1(X)-_F4(X)^2)*_F6(X))*(diff(_F5(X), y))-(_F2(X)^2*_F10(X)-2*_F7(X)*_F2(X)*_F4(X)+_F7(X)^2*_F1(X)-_F5(X)*(_F10(X)*_F1(X)-_F4(X)^2))*(diff(_F5(X), z)-2*(diff(_F6(X), y))))*(diff(_F10(X), z))+((2*_F10(X)*_F6(X)^2-4*_F9(X)*_F6(X)*_F7(X)+2*_F8(X)*_F7(X)^2-2*_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F5(X), x))+((-2*_F8(X)*_F10(X)+2*_F9(X)^2)*_F2(X)+(2*_F8(X)*_F4(X)-2*_F3(X)*_F9(X))*_F7(X)-2*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F6(X))*(diff(_F5(X), y))+2*(-_F7(X)^2*_F3(X)+(_F6(X)*_F4(X)+_F9(X)*_F2(X))*_F7(X)-_F2(X)*_F6(X)*_F10(X)-_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F5(X), z)-2*(diff(_F6(X), y))))*(diff(_F4(X), t))+((2*_F10(X)*_F6(X)^2-4*_F9(X)*_F6(X)*_F7(X)+2*_F8(X)*_F7(X)^2-2*_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F2(X), y))+(-_F10(X)*_F6(X)^2+2*_F9(X)*_F6(X)*_F7(X)-_F8(X)*_F7(X)^2+_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F5(X), x))+((_F8(X)*_F10(X)-_F9(X)^2)*_F2(X)+(-_F8(X)*_F4(X)+_F3(X)*_F9(X))*_F7(X)+(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F6(X))*(diff(_F5(X), y))-(-_F7(X)^2*_F3(X)+(_F6(X)*_F4(X)+_F9(X)*_F2(X))*_F7(X)-_F2(X)*_F6(X)*_F10(X)-_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F5(X), z)-2*(diff(_F6(X), y))))*(diff(_F10(X), x))+(((-2*_F3(X)*_F6(X)+2*_F8(X)*_F2(X))*_F7(X)-2*_F9(X)*_F6(X)*_F2(X)+(2*_F6(X)^2-2*_F8(X)*_F5(X))*_F4(X)+2*_F5(X)*_F9(X)*_F3(X))*(diff(_F2(X), y))+((_F3(X)*_F6(X)-_F8(X)*_F2(X))*_F7(X)+_F9(X)*_F6(X)*_F2(X)+(-_F6(X)^2+_F8(X)*_F5(X))*_F4(X)-_F5(X)*_F9(X)*_F3(X))*(diff(_F5(X), x))+((_F8(X)*_F4(X)-_F3(X)*_F9(X))*_F2(X)+(-_F8(X)*_F1(X)+_F3(X)^2)*_F7(X)+(_F9(X)*_F1(X)-_F4(X)*_F3(X))*_F6(X))*(diff(_F5(X), y))-((_F6(X)*_F1(X)-_F3(X)*_F2(X))*_F7(X)+_F9(X)*_F2(X)^2-_F6(X)*_F2(X)*_F4(X)-_F5(X)*(_F9(X)*_F1(X)-_F4(X)*_F3(X)))*(diff(_F5(X), z)-2*(diff(_F6(X), y))))*(diff(_F10(X), t))+(_F10(X)*_F6(X)^2-2*_F9(X)*_F6(X)*_F7(X)+_F8(X)*_F7(X)^2-_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F2(X), t))^2+(((2*_F8(X)*_F10(X)-2*_F9(X)^2)*_F2(X)+(-2*_F8(X)*_F4(X)+2*_F3(X)*_F9(X))*_F7(X)+2*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F6(X))*(diff(_F2(X), t))+((2*_F8(X)*_F10(X)-2*_F9(X)^2)*_F2(X)+(-2*_F8(X)*_F4(X)+2*_F3(X)*_F9(X))*_F7(X)+2*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F6(X))*(diff(_F4(X), y))+((2*_F9(X)*_F4(X)-2*_F10(X)*_F3(X))*_F2(X)+(-2*_F9(X)*_F1(X)+2*_F4(X)*_F3(X))*_F7(X)+2*(_F10(X)*_F1(X)-_F4(X)^2)*_F6(X))*(diff(_F6(X), t))+((-2*_F8(X)*_F10(X)+2*_F9(X)^2)*_F2(X)+(2*_F8(X)*_F4(X)-2*_F3(X)*_F9(X))*_F7(X)-2*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F6(X))*(diff(_F7(X), x))+((-2*_F9(X)*_F4(X)+2*_F10(X)*_F3(X))*_F2(X)+(2*_F9(X)*_F1(X)-2*_F4(X)*_F3(X))*_F7(X)-2*(_F10(X)*_F1(X)-_F4(X)^2)*_F6(X))*(diff(_F7(X), z))+((2*_F9(X)*_F4(X)-2*_F10(X)*_F3(X))*_F2(X)+(-2*_F9(X)*_F1(X)+2*_F4(X)*_F3(X))*_F7(X)+2*(_F10(X)*_F1(X)-_F4(X)^2)*_F6(X))*(diff(_F9(X), y))+((-2*_F8(X)*_F4(X)+2*_F3(X)*_F9(X))*_F2(X)+(2*_F8(X)*_F1(X)-2*_F3(X)^2)*_F7(X)-2*(_F9(X)*_F1(X)-_F4(X)*_F3(X))*_F6(X))*(diff(_F7(X), t))+(_F8(X)*_F2(X)^2-2*_F6(X)*_F2(X)*_F3(X)+_F6(X)^2*_F1(X)-_F5(X)*(_F8(X)*_F1(X)-_F3(X)^2))*(diff(_F10(X), t))+((-_F3(X)*_F6(X)+_F8(X)*_F2(X))*_F7(X)-_F9(X)*_F6(X)*_F2(X)+_F4(X)*(_F6(X)^2-_F8(X)*_F5(X))+_F5(X)*_F9(X)*_F3(X))*(diff(_F10(X), x))+((_F6(X)*_F1(X)-_F3(X)*_F2(X))*_F7(X)+_F9(X)*_F2(X)^2-_F6(X)*_F2(X)*_F4(X)-_F5(X)*(_F9(X)*_F1(X)-_F4(X)*_F3(X)))*(diff(_F10(X), z))+((2*_F3(X)*_F6(X)-2*_F8(X)*_F2(X))*_F7(X)+2*_F9(X)*_F6(X)*_F2(X)+(-2*_F6(X)^2+2*_F8(X)*_F5(X))*_F4(X)-2*_F5(X)*_F9(X)*_F3(X))*(diff(_F4(X), t))-2*((_F6(X)*_F1(X)-_F3(X)*_F2(X))*_F7(X)+_F9(X)*_F2(X)^2-_F6(X)*_F2(X)*_F4(X)-_F5(X)*(_F9(X)*_F1(X)-_F4(X)*_F3(X)))*(diff(_F9(X), t)))*(diff(_F5(X), t))+((-2*_F8(X)*_F2(X)^2+4*_F6(X)*_F2(X)*_F3(X)-2*_F6(X)^2*_F1(X)+2*_F5(X)*(_F8(X)*_F1(X)-_F3(X)^2))*(diff(_F10(X), t))+((2*_F3(X)*_F6(X)-2*_F8(X)*_F2(X))*_F7(X)+2*_F9(X)*_F6(X)*_F2(X)+(-2*_F6(X)^2+2*_F8(X)*_F5(X))*_F4(X)-2*_F5(X)*_F9(X)*_F3(X))*(diff(_F10(X), x))+((-2*_F6(X)*_F1(X)+2*_F3(X)*_F2(X))*_F7(X)-2*_F9(X)*_F2(X)^2+2*_F6(X)*_F2(X)*_F4(X)+2*_F5(X)*(_F9(X)*_F1(X)-_F4(X)*_F3(X)))*(diff(_F10(X), z))+((-4*_F3(X)*_F6(X)+4*_F8(X)*_F2(X))*_F7(X)-4*_F9(X)*_F6(X)*_F2(X)+(4*_F6(X)^2-4*_F8(X)*_F5(X))*_F4(X)+4*_F5(X)*_F9(X)*_F3(X))*(diff(_F4(X), t))+4*((_F6(X)*_F1(X)-_F3(X)*_F2(X))*_F7(X)+_F9(X)*_F2(X)^2-_F6(X)*_F2(X)*_F4(X)-_F5(X)*(_F9(X)*_F1(X)-_F4(X)*_F3(X)))*(diff(_F9(X), t)))*(diff(_F7(X), y))+(_F10(X)*_F6(X)^2-2*_F9(X)*_F6(X)*_F7(X)+_F8(X)*_F7(X)^2-_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F4(X), y))^2+((-2*_F7(X)^2*_F3(X)+(2*_F6(X)*_F4(X)+2*_F9(X)*_F2(X))*_F7(X)-2*_F2(X)*_F6(X)*_F10(X)-2*_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F6(X), t))+(-2*_F10(X)*_F6(X)^2+4*_F9(X)*_F6(X)*_F7(X)-2*_F8(X)*_F7(X)^2+2*_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F7(X), x))-2*(-_F7(X)^2*_F3(X)+(_F6(X)*_F4(X)+_F9(X)*_F2(X))*_F7(X)-_F2(X)*_F6(X)*_F10(X)-_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F7(X), z)-(diff(_F9(X), y))))*(diff(_F4(X), y))+((2*_F10(X)*_F6(X)^2-4*_F9(X)*_F6(X)*_F7(X)+2*_F8(X)*_F7(X)^2-2*_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F4(X), y))+(-2*_F7(X)^2*_F3(X)+(2*_F6(X)*_F4(X)+2*_F9(X)*_F2(X))*_F7(X)-2*_F2(X)*_F6(X)*_F10(X)-2*_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F6(X), t))+(-2*_F10(X)*_F6(X)^2+4*_F9(X)*_F6(X)*_F7(X)-2*_F8(X)*_F7(X)^2+2*_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F7(X), x))-2*(-_F7(X)^2*_F3(X)+(_F6(X)*_F4(X)+_F9(X)*_F2(X))*_F7(X)-_F2(X)*_F6(X)*_F10(X)-_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F7(X), z)-(diff(_F9(X), y))))*(diff(_F2(X), t))+(_F10(X)*_F6(X)^2-2*_F9(X)*_F6(X)*_F7(X)+_F8(X)*_F7(X)^2-_F5(X)*(_F8(X)*_F10(X)-_F9(X)^2))*(diff(_F7(X), x))^2+((2*_F7(X)^2*_F3(X)+(-2*_F6(X)*_F4(X)-2*_F9(X)*_F2(X))*_F7(X)+2*_F2(X)*_F6(X)*_F10(X)+2*_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F7(X), x))-2*(diff(_F7(X), z)-(diff(_F9(X), y)))*(_F2(X)^2*_F10(X)-2*_F7(X)*_F2(X)*_F4(X)+_F7(X)^2*_F1(X)-_F5(X)*(_F10(X)*_F1(X)-_F4(X)^2)))*(diff(_F6(X), t))+2*(-_F7(X)^2*_F3(X)+(_F6(X)*_F4(X)+_F9(X)*_F2(X))*_F7(X)-_F2(X)*_F6(X)*_F10(X)-_F5(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X)))*(diff(_F7(X), z)-(diff(_F9(X), y)))*(diff(_F7(X), x))-2*(diff(_F9(X), y))*(_F2(X)^2*_F10(X)-2*_F7(X)*_F2(X)*_F4(X)+_F7(X)^2*_F1(X)-_F5(X)*(_F10(X)*_F1(X)-_F4(X)^2))*(diff(_F7(X), z)))/((4*_F8(X)*_F1(X)-4*_F3(X)^2)*_F7(X)^2+((-8*_F8(X)*_F4(X)+8*_F3(X)*_F9(X))*_F2(X)-8*(_F9(X)*_F1(X)-_F4(X)*_F3(X))*_F6(X))*_F7(X)+(4*_F8(X)*_F10(X)-4*_F9(X)^2)*_F2(X)^2+8*_F6(X)*(_F9(X)*_F4(X)-_F10(X)*_F3(X))*_F2(X)+(-4*_F6(X)^2+4*_F8(X)*_F5(X))*_F4(X)^2-8*_F5(X)*_F9(X)*_F3(X)*_F4(X)+4*_F10(X)*_F6(X)^2*_F1(X)-4*_F5(X)*(-_F1(X)*_F9(X)^2+_F10(X)*(_F8(X)*_F1(X)-_F3(X)^2)))

(9)

``

 Note in the above: the functionality of the arbitrary functions is not shown because of that call to CompactDisplay; and for the same reason, derivatives are displayed using indexation (with the differentiation variables as indices).


 

Download The_Riemann_tensor_for_an_arbitrary_metric.mw

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

I can't tell why it hangs; I'd guess it has to do with some operations that moved into kernel extensions for performance ... but I am not sure in this case. What I can tell is that this is a problem in the handling of trig expressions that should not be happening. I am not working in the simplifier these days but will forward the example to the appropriate people.

Meantime, the place where the computational flow hits this problem is when trying to solve an intermediate ODE of the characteristic strip related to your PDE. I added some 'look closer' before jumping into a generic combination of trig functions (where the problem is currently hanging, in the presence of non-constant powers of trig functions). The change is distributed for everybody as usual within the Maplesoft Physics Updates (for Maple 2020), v.627 and higher, and with that, the flow doesn't hit the problem anymore. Your timelimit then works as expected.

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

Hi nm,
The first version of the Physics Updates for Maple 2020, with number 620, is there. It includes some improvements in assumingunapply (using intats when unapplying integrals) and improvements in Physics (displaying metric and signature now by default), things requested by Beta testers during the testing of the version of Maple released today. The Maplesoft R&D Physics webpage, however, still needs to be updated telling this version is for Maple 2020, not Maple 2019. 

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

Right before your equation (4.3), instead of subs(Maxwell_2, %) use subs(diff(Maxwell_2, t), %), where `%` represents equation (4.2). That results in what you are asking, ie "replace Curl of H with an expression in D."

Alternatively, you can formulate the same using noncommutative products of differential operators (using * as multiplication, representing application) but that is a more advanced (unnecesary, I'd say) use of the package. For details on how to do that, see the help page ?Physics,Tensors, Sec I.6.

Edgardo S. Cheb-Terrab
Physics, Differential Equations and Mathematical Functions, Maplesoft

First 21 22 23 24 25 26 27 Last Page 23 of 59