ecterrab

13431 Reputation

24 Badges

19 years, 361 days

MaplePrimes Activity


These are answers submitted by ecterrab

See PDEtools:-dchange, it is the command for changing variables in PDEs and algebraic expressions in general.

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


 

Set the coordinates, type of letter to represent space indices and define h[i, j], omega[j] as space (3D) tensors

with(Physics); Setup(coordinates = cartesian, spaceindices = lowercaselatin, tensors = {h[i, j], omega[j]})

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

 

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

 

_______________________________________________________

 

[coordinatesystems = {X}, spaceindices = lowercaselatin, tensors = {Physics:-Dgamma[mu], Physics:-Psigma[mu], Physics:-d_[mu], Physics:-g_[mu, nu], Physics:-gamma_[a, b], h[i, j], omega[j], Physics:-LeviCivita[alpha, beta, mu, nu], Physics:-SpaceTimeVector[mu](X)}]

(1)


This is the expression you posted

f*(-omega[i]*d_(X[i])+d_(t))^2-h[i, j]*d_(X[i])*d_(X[j])/f

f*(-omega[i]*Physics:-d_(Physics:-SpaceTimeVector[`~i`](X))+Physics:-d_(t))*(-omega[a]*Physics:-d_(Physics:-SpaceTimeVector[`~a`](X))+Physics:-d_(t))-h[i, j]*Physics:-d_(Physics:-SpaceTimeVector[`~i`](X))*Physics:-d_(Physics:-SpaceTimeVector[`~j`](X))/f

(2)


For the line element to be in the way Setup understands you need to sum over the repeated indices

Parse:-ConvertTo1D, "first argument to _Inert_ASSIGN must be assignable"


Define now the metric:

Setup(metric = ds^2)

[metric = {(1, 1) = (f^2*omega[1]^2-h[1, 1])/f, (1, 2) = (1/2)*(2*f^2*omega[1]*omega[2]-h[1, 2]-h[2, 1])/f, (1, 3) = (1/2)*(2*f^2*omega[1]*omega[3]-h[1, 3]-h[3, 1])/f, (1, 4) = -f*omega[1], (2, 2) = (f^2*omega[2]^2-h[2, 2])/f, (2, 3) = (1/2)*(2*f^2*omega[2]*omega[3]-h[2, 3]-h[3, 2])/f, (2, 4) = -f*omega[2], (3, 3) = (f^2*omega[3]^2-h[3, 3])/f, (3, 4) = -f*omega[3], (4, 4) = f}]

(3)

Check it out

g_[]

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

(4)

``


 

Download metric_in_index_form.mw

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

Hi guru kido

Some things are not properly formulated, and if I execute the worksheet you posted, I do not see what you show as output. First, in (1) you input things like u11, u22 before having defined them (you define them in (2) -> (6)). But the output of (1) shows u11, u22, ... already defined as in (2) -> (6), so you are doing something else that is not shown here, the order of execution of your worksheet is not from top to bottom. Then, think about: if you input W[i, j, k, l, nonzero], what do you see? You do not show it, but you'd see an equation where the right-hand side is a set of equations. You cannot do arithmetics with such an object, so your Weyl[~i,j,k,l,nonzer] + W[~i,j,k,l,nonzero] has no meaning, it is a nonsensical operation. Your input "halfflatmetrics in 4 D" has no natural sense too. Guru kido, these commands are powerful but you need to read their help pages to understand how to use it. An approach merely looking for a result is of no help; some understanding is.

So answering your question skipping these problems I see in your worksheet: suppose you have two tensors J[a,b,c,d] and K[a,b,c,d] and you want to show that their addition or subtraction (cannot be both, of course) is equal to 0. How do you do that? It is easy: take one minus the other one and send the expression to TensorArray, as in TensorArray(J[a,b,c,d] - K[a,b,c,d], simplifier=simplify). Now you see these are tensors of 4 indices so you cannot see a "matrix" for output. But you can use ArrayElems (take a look at the help pages of these commands before proceeding), so your input will be ArrayElems(TensorArray (J[a,b,c,d] - K[a,b,c,d], simplifier=simplify)), and if J and K are equal then the output will be an empty set; and if the output is not an empty set then they are not equal. I hope this helps you.

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


 

restart

Hi Jjjones98,

 

The following is the worksheet you posted, with adjustments and comments.

First, n the DEs you have F(y) and F(Y). Maple is case sensitive. I suppose you know that, and it is a typographical mistake, so I am rewriting F(Y) as F(y). Also, don't take this wrongly but it is good practice to always look at the help of a command before using it. In the help page of dsolve it tells that the first argument is either a differential equation, or a set or list of them. In your worksheet it is neither: you wrote the two equations in sequence, that is: not a set nor a list of equations. Fixing that too, your system is

sys := [((2*d^2*F(y)/dy^2*F(y))*G(y)-(d*F(y)/dy*(d*G(y)/dy))*F(y)+(n-3)*(d*F(y)/dy)^2*G(y))/(4*F(y)*G(y)^2) = A, -(3*(2*d^2*F(y)/dy^2-(d*F(y)/dy)^2*G(y)-(d*F(y)/dy*(d*G(y)/dy))*F(y)))/(F(y)^2*G(y)) = B]

Yet, the syntax for derivatifes is wrong. Look at what is behind the input aboe, copied from your worksheet:

lprint(sys)

[1/4*(d^2*F(y)^2/dy^2*G(y)+(n-3)*d^2*F(y)^2/dy^2*G(y))/F(y)/G(y)^2 = A, -3*(2*d^2*F(y)/dy^2-2*d^2*F(y)^2/dy^2*G(y))/F(y)^2/G(y) = B]

 

There are no derivatives here. In Maple, you input derivatives using the diff command. So the input for your system should have been

sys := [2*(diff(F(y), y, y))*F(y)*G(y)-(diff(F(y), y))*(diff(G(y), y))*F(y)+(n-3)*(diff(F(y), y))^2 = A, (3*(2*(diff(F(y), y, y))-(diff(F(y), y))^2*G(y)-(diff(F(y), y))*(diff(G(y), y))*F(y)))/(F(y)^2*G(y)) = B]

[2*(diff(diff(F(y), y), y))*F(y)*G(y)-(diff(F(y), y))*(diff(G(y), y))*F(y)+(n-3)*(diff(F(y), y))^2 = A, 3*(2*(diff(diff(F(y), y), y))-(diff(F(y), y))^2*G(y)-(diff(F(y), y))*(diff(G(y), y))*F(y))/(F(y)^2*G(y)) = B]

(1)

So this is a system with two unknowns, nonlinear and coupled. Let's first use a more compact display for it

PDEtools:-declare(sys, prime = y)

` F`(y)*`will now be displayed as`*F

 

` G`(y)*`will now be displayed as`*G

 

`derivatives with respect to`*y*`of functions of one variable will now be displayed with '`

(2)

Now it looks like

sys

[2*(diff(diff(F(y), y), y))*F(y)*G(y)-(diff(F(y), y))*(diff(G(y), y))*F(y)+(n-3)*(diff(F(y), y))^2 = A, 3*(2*(diff(diff(F(y), y), y))-(diff(F(y), y))^2*G(y)-(diff(F(y), y))*(diff(G(y), y))*F(y))/(F(y)^2*G(y)) = B]

(3)

Decoupling this system is straightfoward

PDEtools:-casesplit(sys)

`casesplit/ans`([G(y) = (-3*(diff(F(y), y))^2*n+9*(diff(F(y), y))^2+3*A+6*(diff(diff(F(y), y), y)))/(B*F(y)^2+6*(diff(diff(F(y), y), y))*F(y)+3*(diff(F(y), y))^2), diff(diff(diff(F(y), y), y), y) = (n*F(y)^4*B^2*(diff(F(y), y))^2+12*n*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-3*F(y)^4*B^2*(diff(F(y), y))^2-A*F(y)^4*B^2+36*n*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2+9*n*(diff(F(y), y))^6-36*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-6*A*F(y)^3*B*(diff(diff(F(y), y), y))+12*F(y)^3*B*(diff(diff(F(y), y), y))^2+12*F(y)^2*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-108*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2-27*(diff(F(y), y))^6+18*A*F(y)*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-9*A*(diff(F(y), y))^4+72*F(y)^2*(diff(diff(F(y), y), y))^3+108*F(y)*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2)/(18*n*F(y)^2*(diff(F(y), y))^3+6*F(y)^3*B*(diff(F(y), y))-54*F(y)^2*(diff(F(y), y))^3-18*A*F(y)^2*(diff(F(y), y))+18*F(y)*(diff(F(y), y))^3)], [-(diff(F(y), y))^2*n+3*(diff(F(y), y))^2+A+2*(diff(diff(F(y), y), y)) <> 0, diff(F(y), y) <> 0, -3*n*F(y)*(diff(F(y), y))^2-B*F(y)^2+9*F(y)*(diff(F(y), y))^2+3*A*F(y)-3*(diff(F(y), y))^2 <> 0])

(4)

The above means: you need to solve only one third order equation, nonlinear, for F(y). If you can get that solution, substituting F(y) for that solution in the first equation gives you G(y).

So let's concentrate on the equation for F

ode_F := op([1, 2], `casesplit/ans`([G(y) = (-3*(diff(F(y), y))^2*n+9*(diff(F(y), y))^2+3*A+6*(diff(diff(F(y), y), y)))/(B*F(y)^2+6*(diff(diff(F(y), y), y))*F(y)+3*(diff(F(y), y))^2), diff(diff(diff(F(y), y), y), y) = (n*F(y)^4*B^2*(diff(F(y), y))^2+12*n*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-3*F(y)^4*B^2*(diff(F(y), y))^2-A*F(y)^4*B^2+36*n*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2+9*n*(diff(F(y), y))^6-36*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-6*A*F(y)^3*B*(diff(diff(F(y), y), y))+12*F(y)^3*B*(diff(diff(F(y), y), y))^2+12*F(y)^2*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-108*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2-27*(diff(F(y), y))^6+18*A*F(y)*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-9*A*(diff(F(y), y))^4+72*F(y)^2*(diff(diff(F(y), y), y))^3+108*F(y)*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2)/(18*n*F(y)^2*(diff(F(y), y))^3+6*F(y)^3*B*(diff(F(y), y))-54*F(y)^2*(diff(F(y), y))^3-18*A*F(y)^2*(diff(F(y), y))+18*F(y)*(diff(F(y), y))^3)], [-(diff(F(y), y))^2*n+3*(diff(F(y), y))^2+A+2*(diff(diff(F(y), y), y)) <> 0, diff(F(y), y) <> 0, -3*n*F(y)*(diff(F(y), y))^2-B*F(y)^2+9*F(y)*(diff(F(y), y))^2+3*A*F(y)-3*(diff(F(y), y))^2 <> 0]))

diff(diff(diff(F(y), y), y), y) = (n*F(y)^4*B^2*(diff(F(y), y))^2+12*n*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-3*F(y)^4*B^2*(diff(F(y), y))^2-A*F(y)^4*B^2+36*n*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2+9*n*(diff(F(y), y))^6-36*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-6*A*F(y)^3*B*(diff(diff(F(y), y), y))+12*F(y)^3*B*(diff(diff(F(y), y), y))^2+12*F(y)^2*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-108*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2-27*(diff(F(y), y))^6+18*A*F(y)*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-9*A*(diff(F(y), y))^4+72*F(y)^2*(diff(diff(F(y), y), y))^3+108*F(y)*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2)/(18*n*F(y)^2*(diff(F(y), y))^3+6*F(y)^3*B*(diff(F(y), y))-54*F(y)^2*(diff(F(y), y))^3-18*A*F(y)^2*(diff(F(y), y))+18*F(y)*(diff(F(y), y))^3)

(5)

This equation admits one easy symmetry with infinitesimals of degree 1

PDEtools:-Infinitesimals(ode_F, degree = 1)

[_xi[y](y, F) = 1, _eta[F](y, F) = 0]

(6)

Using that symmetry you can reduce the differential order by 1, obtaining a 2nd order equation as follows

DEtools[reduce_order](diff(diff(diff(F(y), y), y), y) = (n*F(y)^4*B^2*(diff(F(y), y))^2+12*n*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-3*F(y)^4*B^2*(diff(F(y), y))^2-A*F(y)^4*B^2+36*n*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2+9*n*(diff(F(y), y))^6-36*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-6*A*F(y)^3*B*(diff(diff(F(y), y), y))+12*F(y)^3*B*(diff(diff(F(y), y), y))^2+12*F(y)^2*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-108*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2-27*(diff(F(y), y))^6+18*A*F(y)*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-9*A*(diff(F(y), y))^4+72*F(y)^2*(diff(diff(F(y), y), y))^3+108*F(y)*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2)/(18*n*F(y)^2*(diff(F(y), y))^3+6*F(y)^3*B*(diff(F(y), y))-54*F(y)^2*(diff(F(y), y))^3-18*A*F(y)^2*(diff(F(y), y))+18*F(y)*(diff(F(y), y))^3), map(rhs, [_xi[y](y, F) = 1, _eta[F](y, F) = 0]))

F(y) = ODESolStruc(_a, [{diff(diff(_b(_a), _a), _a) = -12*_a*(diff(_b(_a), _a))^3/(_b(_a)^2*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*((6*B*_a^3-54*A*_a^2)*_b(_a)^3+(18*_a^2*n-54*_a^2-54*_a)*_b(_a))*(diff(_b(_a), _a))^2/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(-6*A*B*_b(_a)^6*_a^3+(12*B*_a^3*n-36*B*_a^3+12*B*_a^2+18*A*_a)*_b(_a)^4)*(diff(_b(_a), _a))/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(A*_a^4*B^2*_b(_a)^9+(-B^2*_a^4*n+3*B^2*_a^4)*_b(_a)^7+9*A*_b(_a)^5+(-9*n+27)*_b(_a)^3)/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))}, {_a = F(y), _b(_a) = 1/(diff(F(y), y))}, {y = Int(_b(_a), _a)+_C1, F(y) = _a}])

(7)

So you'd now need to solve the equation for _b(_a)

ode_b := op([2, 2, 1, 1], F(y) = ODESolStruc(_a, [{diff(diff(_b(_a), _a), _a) = -12*_a*(diff(_b(_a), _a))^3/(_b(_a)^2*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*((6*B*_a^3-54*A*_a^2)*_b(_a)^3+(18*_a^2*n-54*_a^2-54*_a)*_b(_a))*(diff(_b(_a), _a))^2/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(-6*A*B*_b(_a)^6*_a^3+(12*B*_a^3*n-36*B*_a^3+12*B*_a^2+18*A*_a)*_b(_a)^4)*(diff(_b(_a), _a))/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(A*_a^4*B^2*_b(_a)^9+(-B^2*_a^4*n+3*B^2*_a^4)*_b(_a)^7+9*A*_b(_a)^5+(-9*n+27)*_b(_a)^3)/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))}, {_a = F(y), _b(_a) = 1/(diff(F(y), y))}, {y = Int(_b(_a), _a)+_C1, F(y) = _a}]))

diff(diff(_b(_a), _a), _a) = -12*_a*(diff(_b(_a), _a))^3/(_b(_a)^2*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*((6*B*_a^3-54*A*_a^2)*_b(_a)^3+(18*_a^2*n-54*_a^2-54*_a)*_b(_a))*(diff(_b(_a), _a))^2/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(-6*A*B*_b(_a)^6*_a^3+(12*B*_a^3*n-36*B*_a^3+12*B*_a^2+18*A*_a)*_b(_a)^4)*(diff(_b(_a), _a))/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(A*_a^4*B^2*_b(_a)^9+(-B^2*_a^4*n+3*B^2*_a^4)*_b(_a)^7+9*A*_b(_a)^5+(-9*n+27)*_b(_a)^3)/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))

(8)

There is a constant solution that is not 0

PDEtools:-PolynomialSolutions(diff(diff(_b(_a), _a), _a) = -12*_a*(diff(_b(_a), _a))^3/(_b(_a)^2*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*((6*B*_a^3-54*A*_a^2)*_b(_a)^3+(18*_a^2*n-54*_a^2-54*_a)*_b(_a))*(diff(_b(_a), _a))^2/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(-6*A*B*_b(_a)^6*_a^3+(12*B*_a^3*n-36*B*_a^3+12*B*_a^2+18*A*_a)*_b(_a)^4)*(diff(_b(_a), _a))/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(A*_a^4*B^2*_b(_a)^9+(-B^2*_a^4*n+3*B^2*_a^4)*_b(_a)^7+9*A*_b(_a)^5+(-9*n+27)*_b(_a)^3)/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3)))

{_b(_a) = 0}, {_b(_a) = RootOf(A*_Z^2-n+3)}

(9)

With it you can construct a solution for ode_F

DEtools[buildsol](F(y) = ODESolStruc(_a, [{diff(diff(_b(_a), _a), _a) = -12*_a*(diff(_b(_a), _a))^3/(_b(_a)^2*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*((6*B*_a^3-54*A*_a^2)*_b(_a)^3+(18*_a^2*n-54*_a^2-54*_a)*_b(_a))*(diff(_b(_a), _a))^2/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(-6*A*B*_b(_a)^6*_a^3+(12*B*_a^3*n-36*B*_a^3+12*B*_a^2+18*A*_a)*_b(_a)^4)*(diff(_b(_a), _a))/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))-(1/6)*(A*_a^4*B^2*_b(_a)^9+(-B^2*_a^4*n+3*B^2*_a^4)*_b(_a)^7+9*A*_b(_a)^5+(-9*n+27)*_b(_a)^3)/(_b(_a)^2*_a*((-B*_a^2+3*A*_a)*_b(_a)^2-3*_a*n+9*_a-3))}, {_a = F(y), _b(_a) = 1/(diff(F(y), y))}, {y = Int(_b(_a), _a)+_C1, F(y) = _a}]), op(({_b(_a) = 0}, {_b(_a) = RootOf(A*_Z^2-n+3)})[2]))

F(y) = -(-y+_C1)/((n-3)/A)^(1/2)

(10)

However, this is solution involves only one integration constant, while ode_F is of third order - a general solution for it would involve three integration constants.  (10) is just a particular solution, and as we see next it is of no use (leads to G(y) = 0). For that purpose get the equation for G(y) as a function of F(y)

op([1, 1], `casesplit/ans`([G(y) = (-3*(diff(F(y), y))^2*n+9*(diff(F(y), y))^2+3*A+6*(diff(diff(F(y), y), y)))/(B*F(y)^2+6*(diff(diff(F(y), y), y))*F(y)+3*(diff(F(y), y))^2), diff(diff(diff(F(y), y), y), y) = (n*F(y)^4*B^2*(diff(F(y), y))^2+12*n*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-3*F(y)^4*B^2*(diff(F(y), y))^2-A*F(y)^4*B^2+36*n*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2+9*n*(diff(F(y), y))^6-36*F(y)^3*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-6*A*F(y)^3*B*(diff(diff(F(y), y), y))+12*F(y)^3*B*(diff(diff(F(y), y), y))^2+12*F(y)^2*B*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-108*F(y)^2*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2-27*(diff(F(y), y))^6+18*A*F(y)*(diff(diff(F(y), y), y))*(diff(F(y), y))^2-9*A*(diff(F(y), y))^4+72*F(y)^2*(diff(diff(F(y), y), y))^3+108*F(y)*(diff(diff(F(y), y), y))^2*(diff(F(y), y))^2)/(18*n*F(y)^2*(diff(F(y), y))^3+6*F(y)^3*B*(diff(F(y), y))-54*F(y)^2*(diff(F(y), y))^3-18*A*F(y)^2*(diff(F(y), y))+18*F(y)*(diff(F(y), y))^3)], [-(diff(F(y), y))^2*n+3*(diff(F(y), y))^2+A+2*(diff(diff(F(y), y), y)) <> 0, diff(F(y), y) <> 0, -3*n*F(y)*(diff(F(y), y))^2-B*F(y)^2+9*F(y)*(diff(F(y), y))^2+3*A*F(y)-3*(diff(F(y), y))^2 <> 0]))

G(y) = (-3*(diff(F(y), y))^2*n+9*(diff(F(y), y))^2+3*A+6*(diff(diff(F(y), y), y)))/(B*F(y)^2+6*(diff(diff(F(y), y), y))*F(y)+3*(diff(F(y), y))^2)

(11)

simplify(eval(G(y) = (-3*(diff(F(y), y))^2*n+9*(diff(F(y), y))^2+3*A+6*(diff(diff(F(y), y), y)))/(B*F(y)^2+6*(diff(diff(F(y), y), y))*F(y)+3*(diff(F(y), y))^2), F(y) = -(-y+_C1)/((n-3)/A)^(1/2)))

G(y) = 0

(12)

So what you need to do is to search for a more general solution to (8), the equation for _b(_a). The dsolve command along cannot find a solution for it. The way to go is to try different things using the commands in PDEtools and DEtools for symmetry and integrating factor methods, plus any idea you may have regarding changes of variables that may simplify the problem (PDEtools:-dchange is the command with which you perform those changes).

The first question is whether ode_b admits more point symmetries. Below I do not go further but show you what would be the first steps of such a human-guided search for a possible soution. First rewrite the equation using more readable variables

PDEtools:-declare(H(y))

` H`(y)*`will now be displayed as`*H

(13)

ode_H := subs(_b = H, _a = y, ode_b)

diff(diff(H(y), y), y) = -12*y*(diff(H(y), y))^3/(H(y)^2*((-B*y^2+3*A*y)*H(y)^2-3*y*n+9*y-3))-(1/6)*((6*B*y^3-54*A*y^2)*H(y)^3+(18*n*y^2-54*y^2-54*y)*H(y))*(diff(H(y), y))^2/(H(y)^2*y*((-B*y^2+3*A*y)*H(y)^2-3*y*n+9*y-3))-(1/6)*(-6*A*B*H(y)^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H(y)^4)*(diff(H(y), y))/(H(y)^2*y*((-B*y^2+3*A*y)*H(y)^2-3*y*n+9*y-3))-(1/6)*(A*y^4*B^2*H(y)^9+(-B^2*n*y^4+3*B^2*y^4)*H(y)^7+9*A*H(y)^5+(-9*n+27)*H(y)^3)/(H(y)^2*y*((-B*y^2+3*A*y)*H(y)^2-3*y*n+9*y-3))

(14)

The system of equations for for point symmetry infinitesimals is

PDEtools:-declare(([xi, eta])(y, H))

` eta`(y, H)*`will now be displayed as`*eta

 

` xi`(y, H)*`will now be displayed as`*xi

(15)

DEtools:-gensys(ode_H, ([xi, eta])(y, H))

72*H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*y^2-72*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*y^3-144*H^2*(-B*y^2+3*A*y)*eta(y, H)*y^3+144*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(eta(y, H), H))*y^3-144*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*eta(y, H)*y^3-72*H*xi(y, H)*((-2*B*y+3*A)*H^2-3*n+9)*y^3+H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*(diff(xi(y, H), H))*y-6*(diff(diff(xi(y, H), H), H))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2, -H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)+216*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(eta(y, H), y))*y^3-2*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*eta(y, H)*y+6*H^7*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*B*y^4*(diff(xi(y, H), H))-2*H^2*(-B*y^2+3*A*y)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*eta(y, H)*y+H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(3*(6*B*y^3-54*A*y^2)*H^2+18*n*y^2-54*y^2-54*y)*eta(y, H)*y+H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*(diff(eta(y, H), H))*y+3*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*(diff(xi(y, H), H))*y+H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((18*B*y^2-108*A*y)*H^3+(36*n*y-108*y-54)*H)*y-H*xi(y, H)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*((-2*B*y+3*A)*H^2-3*n+9)*y-H^5*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*(diff(xi(y, H), H))*y+6*(diff(diff(eta(y, H), H), H))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2-12*(diff(diff(xi(y, H), H), y))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2, -H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)-2*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*eta(y, H)*y+6*H^7*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*B*y^4*(diff(xi(y, H), y))-6*H^7*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*B*y^4*(diff(eta(y, H), H))+3*H^10*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*y^5*B^2*(diff(xi(y, H), H))-H^5*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*(diff(xi(y, H), y))*y+H^5*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*(diff(eta(y, H), H))*y-2*H^2*(-B*y^2+3*A*y)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*eta(y, H)*y+H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-36*A*B*H^5*y^3+4*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^3)*eta(y, H)*y+2*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*(diff(xi(y, H), y))*y-H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*(diff(eta(y, H), H))*y+3*H^8*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-B^2*n*y^4+3*B^2*y^4)*(diff(xi(y, H), H))*y+27*H^6*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*(diff(xi(y, H), H))*y+3*H^4*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-9*n+27)*(diff(xi(y, H), H))*y+H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-18*A*B*H^6*y^2+(36*B*n*y^2-108*B*y^2+24*B*y+18*A)*H^4)*y-H*xi(y, H)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*((-2*B*y+3*A)*H^2-3*n+9)*y+2*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*(diff(eta(y, H), y))*y+12*(diff(diff(eta(y, H), H), y))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2-6*(diff(diff(xi(y, H), y), y))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2, -(-9*A*y^4*B^2*H^8-7*(-B^2*n*y^4+3*B^2*y^4)*H^6-45*A*H^4-3*(-9*n+27)*H^2)*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*eta(y, H)*y-2*(A*y^4*B^2*H^9+(-B^2*n*y^4+3*B^2*y^4)*H^7+9*A*H^5+(-9*n+27)*H^3)*(-B*y^2+3*A*y)*H^2*eta(y, H)*y-H*xi(y, H)*(-4*A*y^3*B^2*H^9-(-4*B^2*n*y^3+12*B^2*y^3)*H^7)*y*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)-H*xi(y, H)*(A*y^4*B^2*H^9+(-B^2*n*y^4+3*B^2*y^4)*H^7+9*A*H^5+(-9*n+27)*H^3)*((-2*B*y+3*A)*H^2-3*n+9)*y+2*H^8*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*(-B^2*n*y^4+3*B^2*y^4)*y+H^5*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(eta(y, H), y))*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*y-2*(A*y^4*B^2*H^9+(-B^2*n*y^4+3*B^2*y^4)*H^7+9*A*H^5+(-9*n+27)*H^3)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*eta(y, H)*y-H*xi(y, H)*(A*y^4*B^2*H^9+(-B^2*n*y^4+3*B^2*y^4)*H^7+9*A*H^5+(-9*n+27)*H^3)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)+18*H^6*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*A*y+2*H^4*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*(-9*n+27)*y-H^8*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-B^2*n*y^4+3*B^2*y^4)*(diff(eta(y, H), H))*y-9*H^6*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*(diff(eta(y, H), H))*y-H^4*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-9*n+27)*(diff(eta(y, H), H))*y-H^10*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*y^5*B^2*(diff(eta(y, H), H))-6*H^7*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(eta(y, H), y))*A*B*y^4+2*H^10*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*A*y^5*B^2+6*(diff(diff(eta(y, H), y), y))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2

(16)

If this sytsem admits solutions other than xi = 0, eta = 0 then you can perform further reductions of order (from 2 to 1, the restart and from 1 to 0, ie the solution). To see if a solution of that sort exists the input is

PDEtools:-casesplit([72*H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*y^2-72*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*y^3-144*H^2*(-B*y^2+3*A*y)*eta(y, H)*y^3+144*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(eta(y, H), H))*y^3-144*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*eta(y, H)*y^3-72*H*xi(y, H)*((-2*B*y+3*A)*H^2-3*n+9)*y^3+H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*(diff(xi(y, H), H))*y-6*(diff(diff(xi(y, H), H), H))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2, -H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)+216*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(eta(y, H), y))*y^3-2*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*eta(y, H)*y+6*H^7*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*B*y^4*(diff(xi(y, H), H))-2*H^2*(-B*y^2+3*A*y)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*eta(y, H)*y+H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(3*(6*B*y^3-54*A*y^2)*H^2+18*n*y^2-54*y^2-54*y)*eta(y, H)*y+H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*(diff(eta(y, H), H))*y+3*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*(diff(xi(y, H), H))*y+H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((18*B*y^2-108*A*y)*H^3+(36*n*y-108*y-54)*H)*y-H*xi(y, H)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*((-2*B*y+3*A)*H^2-3*n+9)*y-H^5*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*(diff(xi(y, H), H))*y+6*(diff(diff(eta(y, H), H), H))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2-12*(diff(diff(xi(y, H), H), y))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2, -H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)-2*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*eta(y, H)*y+6*H^7*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*B*y^4*(diff(xi(y, H), y))-6*H^7*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*B*y^4*(diff(eta(y, H), H))+3*H^10*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*y^5*B^2*(diff(xi(y, H), H))-H^5*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*(diff(xi(y, H), y))*y+H^5*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*(diff(eta(y, H), H))*y-2*H^2*(-B*y^2+3*A*y)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*eta(y, H)*y+H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-36*A*B*H^5*y^3+4*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^3)*eta(y, H)*y+2*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*(diff(xi(y, H), y))*y-H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*(diff(eta(y, H), H))*y+3*H^8*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-B^2*n*y^4+3*B^2*y^4)*(diff(xi(y, H), H))*y+27*H^6*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*(diff(xi(y, H), H))*y+3*H^4*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-9*n+27)*(diff(xi(y, H), H))*y+H*xi(y, H)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-18*A*B*H^6*y^2+(36*B*n*y^2-108*B*y^2+24*B*y+18*A)*H^4)*y-H*xi(y, H)*(-6*A*B*H^6*y^3+(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*H^4)*((-2*B*y+3*A)*H^2-3*n+9)*y+2*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*((6*B*y^3-54*A*y^2)*H^3+(18*n*y^2-54*y^2-54*y)*H)*(diff(eta(y, H), y))*y+12*(diff(diff(eta(y, H), H), y))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2-6*(diff(diff(xi(y, H), y), y))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2, -(-9*A*y^4*B^2*H^8-7*(-B^2*n*y^4+3*B^2*y^4)*H^6-45*A*H^4-3*(-9*n+27)*H^2)*H*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*eta(y, H)*y-2*(A*y^4*B^2*H^9+(-B^2*n*y^4+3*B^2*y^4)*H^7+9*A*H^5+(-9*n+27)*H^3)*(-B*y^2+3*A*y)*H^2*eta(y, H)*y-H*xi(y, H)*(-4*A*y^3*B^2*H^9-(-4*B^2*n*y^3+12*B^2*y^3)*H^7)*y*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)-H*xi(y, H)*(A*y^4*B^2*H^9+(-B^2*n*y^4+3*B^2*y^4)*H^7+9*A*H^5+(-9*n+27)*H^3)*((-2*B*y+3*A)*H^2-3*n+9)*y+2*H^8*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*(-B^2*n*y^4+3*B^2*y^4)*y+H^5*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(eta(y, H), y))*(12*B*n*y^3-36*B*y^3+12*B*y^2+18*A*y)*y-2*(A*y^4*B^2*H^9+(-B^2*n*y^4+3*B^2*y^4)*H^7+9*A*H^5+(-9*n+27)*H^3)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*eta(y, H)*y-H*xi(y, H)*(A*y^4*B^2*H^9+(-B^2*n*y^4+3*B^2*y^4)*H^7+9*A*H^5+(-9*n+27)*H^3)*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)+18*H^6*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*A*y+2*H^4*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*(-9*n+27)*y-H^8*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-B^2*n*y^4+3*B^2*y^4)*(diff(eta(y, H), H))*y-9*H^6*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*(diff(eta(y, H), H))*y-H^4*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(-9*n+27)*(diff(eta(y, H), H))*y-H^10*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*A*y^5*B^2*(diff(eta(y, H), H))-6*H^7*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(eta(y, H), y))*A*B*y^4+2*H^10*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)*(diff(xi(y, H), y))*A*y^5*B^2+6*(diff(diff(eta(y, H), y), y))*H^3*(-B*H^2*y^2+3*A*H^2*y-3*n*y+9*y-3)^2*y^2], fast)

But the above took more than 2 minutes in my computer so I interrupted, I do not have more time for this. What I verified beyond the above is that there are no polynomial solutions to this system.

 

The commands that could help you, from PDEtools: Infinitesimals and InvariantSolutions with their various options - they require some understanding of the symmetry methods though, also ConservedCurrents (has to do with integrating factors).

 

From DEtools: the commands odepde and gensys, to generate systems of equations whose solution would help you solve ode_H, and symgen and intfactor to tackle either ode_H or any 1-equation intermediate step.

 

Hope this helps - concretely the above only reduces your system of two equations, two unknowns, differential order 2 to one equation in one unknown of differential order 2.

``


 

Download Ric_Equations_(reviewed).mw

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

Hi nm
Good catch, the issue is fixed and the fix available to everybody within the Maplesoft Physics Updates v.335 or higher, that only works with Maple 2019.

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

Hi nm,

The problem is fixed and the fix uploaded for everybody within the Maplesoft Physics Updates v.333 (or higher).

Regarding the problem itself, it was in int, not pdsolve, and unrelated to installing or not the Maplesoft Physics Updates.

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

Hi

The Physics package is developed by Maplesoft and is an integral part of the Maple system. It is not sold separately. 

On the other hand, for Maple 2018.2, there is the Physics Updates, also developed by Maplesoft, that is just the advanced version of the Physics package (the one to appear in the next release), that you can install from the MapleCloud (click that icon on the upper-right corner of your Maple worksheet) and includes a relevant part of the new functionality for tensors that appeared in Maple 2019.

These Physics Updates are produced along the year, with uploads several times per week, including bug fixes and new developments frequently following feedback by users (here in Mapleprimes, or sent directly to physics@maplesoft.com). That is important. If you have a computational request that has some generality and it is clearly and properly conveyed, it is considered as a candidate for extending the functionality already installed. You feedback is welcome, and you may have it working already in a day or a week within one of these Updates.

The current version of the Physics Updates for Maple 2018 is 329, so along the last 12 month the Updates where updated 329 times. Version 329 is also the last one for Maple 2018. I plan to upload on Monday the first version for Maple 2019 with new developments for the computation of exact solutions to partial differential equations with boundary conditions, as well as some further enhancements in tensor simplification, things that were not ready for Maple 2019.0. By the way tensor simplification is an area that will see more improvements along this year.

Regarding (2) and (3), I suggest you take a look at A Complete Guide for Tensor computations using Physics. At the end of that post there are two links, to a pdf version with all the sections open, and to a mw Maple worksheet with the same contents, that you can use to experiment yourself. If what you need is not there, then you can post here a worksheet showing what is what you intended to compute and couldn't.

Update March/17: The first Physics Updates for Maple 2019 is already available for installation via MapleCloud. In this moment, that also means that you cannot use the MapleCloud to install the last version for Maple 2018. So to install the Updates in Maple 2018 open Maple and enter PackageTools:-Install("5137472255164416", version = 329, overwrite)

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

Hi

I'm busy with a presentation tomorrow in India. The Physics Updates v.329 is the last one for Maple 2018. Note anyway that Maple 2019 already contains all the developments you see in the Physics Updates for Maple 2018

Hopefully, on Monday, we will have the first Physics Updates for Maple 2019. There are already developments post Maple 2019 for PDE & BC (more equations solved) and in the simplification of tensorial expressions.  I will write in this thread again.

Update March/17: The first Physics Updates for Maple 2019 is already available for installation through the MapleCloud. Also, at this moment you cannot use the MapleCloud to install the Physics Updates for Maple 2018. So, to install the last version of the Updates for Maple 2018, open Maple 2018 and enter PackageTools:-Install("5137472255164416", version = 329, overwrite)

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

In (7) you have a malformed equation, with two equal signs `=`. Try correcting that then if you could explain as bit better what do you mean by elimination qx,qy,qz in favor of T?

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

An alternative to having an operator that is a combination of operators (as you show in your post) but it is also not a combination of operators, is to set a generic differential operator.

For that purpose, in the Physics package you can set differential operators (see ?Physics:-Setup, you indicate the name of the operator and the differentiation variables related to it). The key observation is that you can set them without saying how these operators are defined, and then compute using then within algebraic expressions, with multiplication `*` representing also their application, as we do with paper and pencil. These differential operators are non-commutative, so no problem here: after you load Physics, the product operator understands noncommutative and anticommutative operands. When you want to have these generic operators applied you can use Physics:-Library:-ApplyProductsOfDifferentialOperators (see ?Physics,Library). And then, when it is convenient in your formulation, you can specify the form of the differential operators you set using Physics:-Setup, so that your definition is taken into account.

For examples of all the above, see ?updates,Maple2016,Physics (the section on "Operatorial Algebraic Expressions Involving the Differential Operators of the Physics package") and ?updates,Maple2018,Physics (the section "User-defined algebraic differential operators" - this is kinda new stuff introduced during 2017).

Some comments to the side: in Physics you also have ToFieldComponents and ToSuperfields, both relevant for working with superfunctions. Also, during 2018 significant improvements happened in Physics:-Gtaylor. This command, for computing series of superfunctions, got rewritten and now handles rather general cases.

I imagine that you may have more questions - if so, could you please post the question with a worksheet containing the formulation of what you want to do up to what you know how to do it. That helps to understand and so giving you feedback that is more specific.

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

 

DualOfTheWeylTensor.mw

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

 

This is using the Physics package, I find it simpler

with(Physics)

Coordinates(X)

`Default differentiation variables for d_, D_ and dAlembertian are:`*{X = (x1, x2, x3, x4)}

 

`Systems of spacetime coordinates are:`*{X = (x1, x2, x3, x4)}

 

{X}

(1)

From what you posted, this is your line element:

Parse:-ConvertTo1D, "first argument to _Inert_ASSIGN must be assignable"

-dx3^2*u22+2*dx3*dx4*u12-dx4^2*u11+dx1*dx3+dx2*dx4

(2)

To have everything GR related you only need to set the metric

Setup(g_ = ds^2)

[metric = {(1, 3) = 1/2, (2, 4) = 1/2, (3, 3) = -u22, (3, 4) = u12, (4, 4) = -u11}]

(3)

Check it out just to be sure this is what you wanted - and if it is not, change the line element (2)

g_[]

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

(4)

Now, you realize this is a metric in which all the components are constants, there is no curvature, the Christoffel symbols (proportional to derivatives o the metric with respect to the coordinates) are equal to zero. Are you sure that is what you want? ... I will assume here that the three ujk are actually functions of X

[u11, u12, u22]; `~`[`=`](%, %(X))

[u11 = u11(X), u12 = u12(X), u22 = u22(X)]

(5)

subs([u11 = u11(X), u12 = u12(X), u22 = u22(X)], -dx3^2*u22+2*dx3*dx4*u12-dx4^2*u11+dx1*dx3+dx2*dx4)

-u22(X)*dx3^2+2*u12(X)*dx3*dx4-u11(X)*dx4^2+dx1*dx3+dx2*dx4

(6)

Setup(g_ = -u22(X)*dx3^2+2*u12(X)*dx3*dx4-u11(X)*dx4^2+dx1*dx3+dx2*dx4)

[metric = {(1, 3) = 1/2, (2, 4) = 1/2, (3, 3) = -u22(X), (3, 4) = u12(X), (4, 4) = -u11(X)}]

(7)

g_[]

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

(8)

Now you have, for example,

Christoffel[1, mu, nu, matrix]

Physics:-Christoffel[1, mu, nu] = Matrix(%id = 18446744078538560926)

(9)

For a more compact notation avoiding the redundant display of the functionality (X) of the ujk, and displaying derivatives indexed, use

"CompactDisplay(?)"

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

 

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

 

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

(10)

Christoffel[1, mu, nu, matrix]

Physics:-Christoffel[1, mu, nu] = Matrix(%id = 18446744078538560926)

(11)

For the symbols of the second kind, when indicating the indices, write the first one contravariant

"Christoffel[~1,mu,nu,matrix]"

Physics:-Christoffel[`~1`, mu, nu] = Matrix(%id = 18446744078369100254)

(12)

All the nonzero at once

Christoffel[nonzero]

Physics:-Christoffel[alpha, mu, nu] = {(1, 3, 3) = (1/2)*(diff(u22(X), x1)), (1, 3, 4) = -(1/2)*(diff(u12(X), x1)), (1, 4, 3) = -(1/2)*(diff(u12(X), x1)), (1, 4, 4) = (1/2)*(diff(u11(X), x1)), (2, 3, 3) = (1/2)*(diff(u22(X), x2)), (2, 3, 4) = -(1/2)*(diff(u12(X), x2)), (2, 4, 3) = -(1/2)*(diff(u12(X), x2)), (2, 4, 4) = (1/2)*(diff(u11(X), x2)), (3, 1, 3) = -(1/2)*(diff(u22(X), x1)), (3, 1, 4) = (1/2)*(diff(u12(X), x1)), (3, 2, 3) = -(1/2)*(diff(u22(X), x2)), (3, 2, 4) = (1/2)*(diff(u12(X), x2)), (3, 3, 1) = -(1/2)*(diff(u22(X), x1)), (3, 3, 2) = -(1/2)*(diff(u22(X), x2)), (3, 3, 3) = -(1/2)*(diff(u22(X), x3)), (3, 3, 4) = -(1/2)*(diff(u22(X), x4)), (3, 4, 1) = (1/2)*(diff(u12(X), x1)), (3, 4, 2) = (1/2)*(diff(u12(X), x2)), (3, 4, 3) = -(1/2)*(diff(u22(X), x4)), (3, 4, 4) = diff(u12(X), x4)+(1/2)*(diff(u11(X), x3)), (4, 1, 3) = (1/2)*(diff(u12(X), x1)), (4, 1, 4) = -(1/2)*(diff(u11(X), x1)), (4, 2, 3) = (1/2)*(diff(u12(X), x2)), (4, 2, 4) = -(1/2)*(diff(u11(X), x2)), (4, 3, 1) = (1/2)*(diff(u12(X), x1)), (4, 3, 2) = (1/2)*(diff(u12(X), x2)), (4, 3, 3) = diff(u12(X), x3)+(1/2)*(diff(u22(X), x4)), (4, 3, 4) = -(1/2)*(diff(u11(X), x3)), (4, 4, 1) = -(1/2)*(diff(u11(X), x1)), (4, 4, 2) = -(1/2)*(diff(u11(X), x2)), (4, 4, 3) = -(1/2)*(diff(u11(X), x3)), (4, 4, 4) = -(1/2)*(diff(u11(X), x4))}

(13)

 

Christoffel[`~mu`, alpha, beta, nonzero]

Physics:-Christoffel[`~mu`, alpha, beta] = {(1, 1, 3) = -(diff(u22(X), x1)), (1, 1, 4) = diff(u12(X), x1), (1, 2, 3) = -(diff(u22(X), x2)), (1, 2, 4) = diff(u12(X), x2), (1, 3, 1) = -(diff(u22(X), x1)), (1, 3, 2) = -(diff(u22(X), x2)), (1, 3, 3) = 2*u22(X)*(diff(u22(X), x1))-2*u12(X)*(diff(u22(X), x2))-(diff(u22(X), x3)), (1, 3, 4) = -2*u22(X)*(diff(u12(X), x1))+2*u12(X)*(diff(u12(X), x2))-(diff(u22(X), x4)), (1, 4, 1) = diff(u12(X), x1), (1, 4, 2) = diff(u12(X), x2), (1, 4, 3) = -2*u22(X)*(diff(u12(X), x1))+2*u12(X)*(diff(u12(X), x2))-(diff(u22(X), x4)), (1, 4, 4) = 2*u22(X)*(diff(u11(X), x1))-2*u12(X)*(diff(u11(X), x2))+2*(diff(u12(X), x4))+diff(u11(X), x3), (2, 1, 3) = diff(u12(X), x1), (2, 1, 4) = -(diff(u11(X), x1)), (2, 2, 3) = diff(u12(X), x2), (2, 2, 4) = -(diff(u11(X), x2)), (2, 3, 1) = diff(u12(X), x1), (2, 3, 2) = diff(u12(X), x2), (2, 3, 3) = -2*u12(X)*(diff(u22(X), x1))+2*u11(X)*(diff(u22(X), x2))+2*(diff(u12(X), x3))+diff(u22(X), x4), (2, 3, 4) = 2*u12(X)*(diff(u12(X), x1))-2*u11(X)*(diff(u12(X), x2))-(diff(u11(X), x3)), (2, 4, 1) = -(diff(u11(X), x1)), (2, 4, 2) = -(diff(u11(X), x2)), (2, 4, 3) = 2*u12(X)*(diff(u12(X), x1))-2*u11(X)*(diff(u12(X), x2))-(diff(u11(X), x3)), (2, 4, 4) = -2*u12(X)*(diff(u11(X), x1))+2*u11(X)*(diff(u11(X), x2))-(diff(u11(X), x4)), (3, 3, 3) = diff(u22(X), x1), (3, 3, 4) = -(diff(u12(X), x1)), (3, 4, 3) = -(diff(u12(X), x1)), (3, 4, 4) = diff(u11(X), x1), (4, 3, 3) = diff(u22(X), x2), (4, 3, 4) = -(diff(u12(X), x2)), (4, 4, 3) = -(diff(u12(X), x2)), (4, 4, 4) = diff(u11(X), x2)}

(14)

The same applies to all the general relativity tensors (also to tensors you define), for example:

Christoffel[definition]

Physics:-Christoffel[alpha, mu, nu] = (1/2)*Physics:-d_[nu](Physics:-g_[alpha, mu], [X])+(1/2)*Physics:-d_[mu](Physics:-g_[alpha, nu], [X])-(1/2)*Physics:-d_[alpha](Physics:-g_[mu, nu], [X])

(15)

Ricci[definition]

Physics:-Ricci[mu, nu] = Physics:-d_[alpha](Physics:-Christoffel[`~alpha`, mu, nu], [X])-Physics:-d_[nu](Physics:-Christoffel[`~alpha`, mu, alpha], [X])+Physics:-Christoffel[`~beta`, mu, nu]*Physics:-Christoffel[`~alpha`, beta, alpha]-Physics:-Christoffel[`~beta`, mu, alpha]*Physics:-Christoffel[`~alpha`, nu, beta]

(16)

Ricci[]

Physics:-Ricci[mu, nu] = Matrix(%id = 18446744078579564406)

(17)

NULL


 

Download Christoffel_Symbols.mw

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

I understand that the issues you mentioned regarding differentiating tetrads, and also the spacetime metric, with respect to tetrads are all resolved in the Maplesoft Physics Updates v.321 or higher.  This worksheet is a review of that matter.

 

with(Physics)

 

Load a non-flat metric to be sure that no automatic simplifications related to flat spacetimes interfere with the results, or to check then using TensorArray.

g_[tol]

_______________________________________________________

 

`Systems of spacetime coordinates are:`*{X = (r, theta, phi, t)}

 

`Default differentiation variables for d_, D_ and dAlembertian are:`*{X = (r, theta, phi, t)}

 

`The Tolman metric in coordinates `*[r, theta, phi, t]

 

`Parameters: `[R(t, r), E(r)]

 

_______________________________________________________

 

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

(1)

CompactDisplay(%)

` E`(r)*`will now be displayed as`*E

 

` R`(t, r)*`will now be displayed as`*R

(2)

Load Tetrads

with(Tetrads)

_______________________________________________________

 

`Setting `*lowercaselatin_ah*` letters to represent `*tetrad*` indices`

 

((`Defined as tetrad tensors `(`see ?Physics,tetrads`)*`, `*`&efr;`[a, mu]*`, `)*eta[a, b]*`, `*gamma[a, b, c]*`, `)*lambda[a, b, c]

 

((`Defined as spacetime tensors representing the NP null vectors of the tetrad formalism `(`see ?Physics,tetrads`)*`: `(`see ?Physics,tetrads`)*`, `*l[mu]*`, `)*n[mu]*`, `*m[mu]*`, `)*conjugate(m[mu])

 

_______________________________________________________

(3)

The idea is to depart from these two definitions and reproduce the results differentiating with respect to a tetrad "`&efr;`[a]^(nu)" that you showed in private emails in LaTeX.
The two departure expressions are

e_[definition]

Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-e_[b, `~mu`] = Physics:-Tetrads:-eta_[a, b]

(4)

g_[alpha, beta] = e_[`~b`, alpha]*e_[`~b`, beta]

Physics:-g_[alpha, beta] = Physics:-Tetrads:-e_[b, alpha]*Physics:-Tetrads:-e_[`~b`, beta]

(5)

The first thing to note is that eta[a, b] is a constant, it is the Minkowski metric in a local system of references (orthonormal or null frame), so

"(`%diff` = diff)(eta_[b,c], e_[a,~nu])"

%diff(Physics:-Tetrads:-eta_[b, c], Physics:-Tetrads:-e_[a, `~nu`]) = 0

(6)

Regarding derivatives tetrads with respect to tetrads, the relevant thing is whether their indices, the first one tetradic the other spacetime, are equally covariant or equally contravariant, that is, whether we have "`&efr;`[a]^(mu)" and "`&efr;`[c]^(nu)" , or " `&efr;`[mu]^(a)"and "`&efr;`[c]^(nu)", and then there are the mixed cases `&efr;`[b, alpha]and "`&efr;`[a]^(nu)", or  "`&efr;`[]^(b,alpha)" and "`&efr;`[a]^(nu)".

The following is a derivation of results step by step, using inert functions, following mostly your LaTeX but using Maple. First the case where the indices match, this result is naturally correct

"(`%diff` = diff)(e_[b,~alpha], e_[a,~nu])"

%diff(Physics:-Tetrads:-e_[b, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = Physics:-Tetrads:-eta_[b, `~a`]*Physics:-g_[nu, `~alpha`]

(7)

Next there is the case where the indices mismatch, that you reported. After v.315 we have

"(`%diff` = diff)(e_[~b,alpha], e_[a,~nu])"

%diff(Physics:-Tetrads:-e_[`~b`, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[`~b`, nu]

(8)

The verification of the above can be done with a computer using different ways of computing the same thing. The following is as close as I can do to the steps shown in your LaTeX.

 

What we want to compute is

"`%diff`(Physics:-Tetrads:-e_[a,mu]*Physics:-Tetrads:-e_[b,~mu] = Physics:-Tetrads:-eta_[a,b],e_[c,~nu])"

%diff(Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-e_[b, `~mu`] = Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, `~nu`])

(9)

Since we are using inert functions, we can proceed with their properties but at the end not executing the operation

expand(%diff(Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-e_[b, `~mu`] = Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, `~nu`]))

%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, `~nu`])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, `~nu`]) = %diff(Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, `~nu`])

(10)

The second term on the left-hand side (operand [1, 2]) is the natural case (7), and the right-hand side actually is (6), so

subsop(2 = value(op(2, %diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, `~nu`])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, `~nu`]) = %diff(Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, `~nu`]))), [1, 2] = value(op([1, 2], %diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, `~nu`])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, `~nu`]) = %diff(Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, `~nu`]))), %diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, `~nu`])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, `~nu`]) = %diff(Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, `~nu`]))

%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, `~nu`])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-eta_[b, `~c`]*Physics:-g_[nu, `~mu`] = 0

(11)

To remove the factor "`&efr;`[b]^(mu)" multiply by another tetrad such that we get a constant "g_[nu]^(mu)" object that can go inside the inert derivation operation and contract indices with the derivand

(%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, `~nu`])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-eta_[b, `~c`]*Physics[g_][nu, `~mu`] = 0)*e_[`~b`, rho]

(%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, `~nu`])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-eta_[b, `~c`]*Physics:-g_[nu, `~mu`])*Physics:-Tetrads:-e_[`~b`, rho] = 0

(12)

Simplify((%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, `~nu`])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-eta_[b, `~c`]*Physics[g_][nu, `~mu`])*Physics:-Tetrads:-e_[`~b`, rho] = 0)

Physics:-Tetrads:-e_[a, nu]*Physics:-Tetrads:-e_[`~c`, rho]+%diff(Physics:-Tetrads:-e_[a, rho], Physics:-Tetrads:-e_[c, `~nu`]) = 0

(13)

and this is already the result we were looking for, (8).

 

Regarding the two mixed cases, %diff(e_[b, alpha], e_[a, `~nu`]) and %diff(e_[`~b`, `~alpha`], e_[a, `~nu`]), we have

"`%diff`(e_[b,alpha],eta_[a,~nu])"

%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`])

(14)

The idea is to transform the derivand into one of the previous cases, for instance

e_[b, alpha] = eta_[b, c]*e_[`~c`, alpha]

Physics:-Tetrads:-e_[b, alpha] = Physics:-Tetrads:-eta_[b, c]*Physics:-Tetrads:-e_[`~c`, alpha]

(15)

Check(%)

`The repeated and free indices in the given expression check ok.`

(16)

Substituting and expanding

%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = subs(Physics:-Tetrads:-e_[b, alpha] = Physics:-Tetrads:-eta_[b, c]*Physics:-Tetrads:-e_[`~c`, alpha], %diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]))

%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[b, c]*Physics:-Tetrads:-e_[`~c`, alpha], Physics:-Tetrads:-e_[a, `~nu`])

(17)

expand(%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[b, c]*Physics:-Tetrads:-e_[`~c`, alpha], Physics:-Tetrads:-e_[a, `~nu`]))

%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[b, c], Physics:-Tetrads:-e_[a, `~nu`])*Physics:-Tetrads:-e_[`~c`, alpha]+Physics:-Tetrads:-eta_[b, c]*%diff(Physics:-Tetrads:-e_[`~c`, alpha], Physics:-Tetrads:-e_[a, `~nu`])

(18)

The two derivatives on the right-hand side are of the forms (6) and (8), and these are already implemented in v.315, so we have

lhs(%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[b, c], Physics:-Tetrads:-e_[a, `~nu`])*Physics:-Tetrads:-e_[`~c`, alpha]+Physics:-Tetrads:-eta_[b, c]*%diff(Physics:-Tetrads:-e_[`~c`, alpha], Physics:-Tetrads:-e_[a, `~nu`])) = value(rhs(%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[b, c], Physics:-Tetrads:-e_[a, `~nu`])*Physics:-Tetrads:-e_[`~c`, alpha]+Physics:-Tetrads:-eta_[b, c]*%diff(Physics:-Tetrads:-e_[`~c`, alpha], Physics:-Tetrads:-e_[a, `~nu`])))

%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = -Physics:-Tetrads:-eta_[b, c]*Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[`~c`, nu]

(19)

Simplify(%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = -Physics:-Tetrads:-eta_[b, c]*Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[`~c`, nu])

%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[b, nu]

(20)

And that is the result for the first mixed case, also implemented, so here is the code computing it without guiding it

value(%diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`]) = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[b, nu])

-Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[b, nu] = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[b, nu]

(21)

For the other mixed case,

%diff(e_[`~b`, `~alpha`], e_[a, `~nu`])

%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`])

(22)

In this case, the substitution mapping into one of the previous cases (6), (8) or (14) is

"e_[~b,~alpha] = eta_[~b,~c] eta_[c,~alpha]"

Physics:-Tetrads:-e_[`~b`, `~alpha`] = Physics:-Tetrads:-eta_[`~b`, `~c`]*Physics:-Tetrads:-e_[c, `~alpha`]

(23)

Check(%)

`The repeated and free indices in the given expression check ok.`

(24)

Substitute and expand

%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = subs(Physics:-Tetrads:-e_[`~b`, `~alpha`] = Physics:-Tetrads:-eta_[`~b`, `~c`]*Physics:-Tetrads:-e_[c, `~alpha`], %diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]))

%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[`~b`, `~c`]*Physics:-Tetrads:-e_[c, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`])

(25)

expand(%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[`~b`, `~c`]*Physics:-Tetrads:-e_[c, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]))

%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[`~b`, `~c`], Physics:-Tetrads:-e_[a, `~nu`])*Physics:-Tetrads:-e_[c, `~alpha`]+Physics:-Tetrads:-eta_[`~b`, `~c`]*%diff(Physics:-Tetrads:-e_[c, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`])

(26)

and from (6) and (7),

lhs(%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[`~b`, `~c`], Physics:-Tetrads:-e_[a, `~nu`])*Physics:-Tetrads:-e_[c, `~alpha`]+Physics:-Tetrads:-eta_[`~b`, `~c`]*%diff(Physics:-Tetrads:-e_[c, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`])) = value(rhs(%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-eta_[`~b`, `~c`], Physics:-Tetrads:-e_[a, `~nu`])*Physics:-Tetrads:-e_[c, `~alpha`]+Physics:-Tetrads:-eta_[`~b`, `~c`]*%diff(Physics:-Tetrads:-e_[c, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`])))

%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = Physics:-Tetrads:-eta_[`~b`, `~c`]*Physics:-Tetrads:-eta_[c, `~a`]*Physics:-g_[nu, `~alpha`]

(27)

Simplify(%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = Physics:-Tetrads:-eta_[`~b`, `~c`]*Physics:-Tetrads:-eta_[c, `~a`]*Physics[g_][nu, `~alpha`])

%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = Physics:-g_[nu, `~alpha`]*Physics:-Tetrads:-eta_[`~a`, `~b`]

(28)

This second mixed case is also implemented

value(%diff(Physics:-Tetrads:-e_[`~b`, `~alpha`], Physics:-Tetrads:-e_[a, `~nu`]) = Physics[g_][nu, `~alpha`]*Physics:-Tetrads:-eta_[`~a`, `~b`])

Physics:-g_[nu, `~alpha`]*Physics:-Tetrads:-eta_[`~a`, `~b`] = Physics:-g_[nu, `~alpha`]*Physics:-Tetrads:-eta_[`~a`, `~b`]

(29)

Finally, regarding differentiating the spacetime metric with respect to a tetrad, implemented in v.321 of the Physics Updates, you have

Physics[g_][alpha, beta] = Physics:-Tetrads:-e_[b, alpha]*Physics:-Tetrads:-e_[`~b`, beta]

Physics:-g_[alpha, beta] = Physics:-Tetrads:-e_[b, alpha]*Physics:-Tetrads:-e_[`~b`, beta]

(30)

"`%diff`(Physics:-g_[alpha,beta] = Physics:-Tetrads:-e_[b,alpha]*Physics:-Tetrads:-e_[~b,beta], e_[a,~nu])"

%diff(Physics:-g_[alpha, beta] = Physics:-Tetrads:-e_[b, alpha]*Physics:-Tetrads:-e_[`~b`, beta], Physics:-Tetrads:-e_[a, `~nu`])

(31)

expand(%diff(Physics[g_][alpha, beta] = Physics:-Tetrads:-e_[b, alpha]*Physics:-Tetrads:-e_[`~b`, beta], Physics:-Tetrads:-e_[a, `~nu`]))

%diff(Physics:-g_[alpha, beta], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`])*Physics:-Tetrads:-e_[`~b`, beta]+Physics:-Tetrads:-e_[b, alpha]*%diff(Physics:-Tetrads:-e_[`~b`, beta], Physics:-Tetrads:-e_[a, `~nu`])

(32)

From (20) and (8), the value of the right-hand side is

lhs(%diff(Physics[g_][alpha, beta], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`])*Physics:-Tetrads:-e_[`~b`, beta]+Physics:-Tetrads:-e_[b, alpha]*%diff(Physics:-Tetrads:-e_[`~b`, beta], Physics:-Tetrads:-e_[a, `~nu`])) = value(rhs(%diff(Physics[g_][alpha, beta], Physics:-Tetrads:-e_[a, `~nu`]) = %diff(Physics:-Tetrads:-e_[b, alpha], Physics:-Tetrads:-e_[a, `~nu`])*Physics:-Tetrads:-e_[`~b`, beta]+Physics:-Tetrads:-e_[b, alpha]*%diff(Physics:-Tetrads:-e_[`~b`, beta], Physics:-Tetrads:-e_[a, `~nu`])))

%diff(Physics:-g_[alpha, beta], Physics:-Tetrads:-e_[a, `~nu`]) = -Physics:-Tetrads:-e_[b, alpha]*Physics:-Tetrads:-e_[`~a`, beta]*Physics:-Tetrads:-e_[`~b`, nu]-Physics:-Tetrads:-e_[b, nu]*Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[`~b`, beta]

(33)

Simplify(%diff(Physics[g_][alpha, beta], Physics:-Tetrads:-e_[a, `~nu`]) = -Physics:-Tetrads:-e_[b, alpha]*Physics:-Tetrads:-e_[`~a`, beta]*Physics:-Tetrads:-e_[`~b`, nu]-Physics:-Tetrads:-e_[b, nu]*Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[`~b`, beta])

%diff(Physics:-g_[alpha, beta], Physics:-Tetrads:-e_[a, `~nu`]) = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-g_[beta, nu]-Physics:-Tetrads:-e_[`~a`, beta]*Physics:-g_[alpha, nu]

(34)

Activating the left-hand side whe have the code doing this computation without being guided

value(%diff(Physics[g_][alpha, beta], Physics:-Tetrads:-e_[a, `~nu`]) = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics[g_][beta, nu]-Physics:-Tetrads:-e_[`~a`, beta]*Physics[g_][alpha, nu])

-Physics:-Tetrads:-e_[b, alpha]*Physics:-Tetrads:-e_[`~a`, beta]*Physics:-Tetrads:-e_[`~b`, nu]-Physics:-Tetrads:-e_[b, nu]*Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[`~b`, beta] = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-g_[beta, nu]-Physics:-Tetrads:-e_[`~a`, beta]*Physics:-g_[alpha, nu]

(35)

Simplify(-Physics:-Tetrads:-e_[b, alpha]*Physics:-Tetrads:-e_[`~a`, beta]*Physics:-Tetrads:-e_[`~b`, nu]-Physics:-Tetrads:-e_[b, nu]*Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-Tetrads:-e_[`~b`, beta] = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics[g_][beta, nu]-Physics:-Tetrads:-e_[`~a`, beta]*Physics[g_][alpha, nu])

-Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-g_[beta, nu]-Physics:-Tetrads:-e_[`~a`, beta]*Physics:-g_[alpha, nu] = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics:-g_[beta, nu]-Physics:-Tetrads:-e_[`~a`, beta]*Physics:-g_[alpha, nu]

(36)

evalb(-Physics:-Tetrads:-e_[`~a`, alpha]*Physics[g_][beta, nu]-Physics:-Tetrads:-e_[`~a`, beta]*Physics[g_][alpha, nu] = -Physics:-Tetrads:-e_[`~a`, alpha]*Physics[g_][beta, nu]-Physics:-Tetrads:-e_[`~a`, beta]*Physics[g_][alpha, nu])

true

(37)

Finally, derivatives with respect to the all-covariant `&efr;`[a, mu] or all contravaariant "`&efr;`[]^(a,mu)"can be derived in the same way, and are also implemented. Here I show only one case. Departing from

e_[definition]

Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-e_[b, `~mu`] = Physics:-Tetrads:-eta_[a, b]

(38)

%diff(e_[definition], e_[c, nu])

%diff(Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-e_[b, `~mu`] = Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, nu])

(39)

expand(%diff(Physics:-Tetrads:-e_[a, mu]*Physics:-Tetrads:-e_[b, `~mu`] = Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, nu]))

%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, nu])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, nu]) = %diff(Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, nu])

(40)

From (6)

lhs(%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, nu])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, nu]) = %diff(Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, nu])) = value(rhs(%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, nu])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, nu]) = %diff(Physics:-Tetrads:-eta_[a, b], Physics:-Tetrads:-e_[c, nu])))

%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, nu])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, nu]) = 0

(41)

The second derivative is in natural form, so

%diff(e_[a, mu], e_[c, nu]); % = value(%)

%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, nu]) = Physics:-Tetrads:-eta_[a, `~c`]*Physics:-g_[mu, `~nu`]

(42)

subs(%diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, nu]) = Physics:-Tetrads:-eta_[a, `~c`]*Physics[g_][mu, `~nu`], %diff(Physics:-Tetrads:-e_[a, mu], Physics:-Tetrads:-e_[c, nu])*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, nu]) = 0)

Physics:-Tetrads:-eta_[a, `~c`]*Physics:-g_[mu, `~nu`]*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, nu]) = 0

(43)

Transform the factor `&efr;`[a, mu] multiplying the derivative into a "g_[mu]^(rho)" by multiplying the whole expression by "`&efr;`[]^(a,rho)"

"e_[~a,~rho]* Physics:-Tetrads:-eta_[a,~c]*Physics:-g_[mu,~nu]*Physics:-Tetrads:-e_[b,~mu]+Physics:-Tetrads:-e_[a,mu]*%diff(Physics:-Tetrads:-e_[b,~mu],Physics:-Tetrads:-e_[c,nu]) = 0"

Physics:-Tetrads:-e_[`~a`, `~rho`]*(Physics:-Tetrads:-eta_[a, `~c`]*Physics:-g_[mu, `~nu`]*Physics:-Tetrads:-e_[b, `~mu`]+Physics:-Tetrads:-e_[a, mu]*%diff(Physics:-Tetrads:-e_[b, `~mu`], Physics:-Tetrads:-e_[c, nu])) = 0

(44)

Simplify(%)

Physics:-Tetrads:-e_[`~c`, `~rho`]*Physics:-Tetrads:-e_[b, `~nu`]+%diff(Physics:-Tetrads:-e_[b, `~rho`], Physics:-Tetrads:-e_[c, nu]) = 0

(45)

and this is already the result we were looking for, also implemented

value(Physics:-Tetrads:-e_[`~c`, `~rho`]*Physics:-Tetrads:-e_[b, `~nu`]+%diff(Physics:-Tetrads:-e_[b, `~rho`], Physics:-Tetrads:-e_[c, nu]) = 0)

0 = 0

(46)

 


 

Download differentiating_tetrads_with_respect_to_tetrads.mw

 

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

So, according to your update of your post, there is no problem. Still, on your original post, when you thought there was a problem, I read "... 

version installed in this 
    computer: the "Physics Updates" is not  installed.

So something was wrong there. Maybe you installed the updated but didn't restart? 

Regarding Tom Leslie comment on the 'ugly' aspect: use simplify and the results are not ugly. Assuming sin(lambda*x) > 0 also helps.

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

Hi

This one is fixed and the fix distributed within the Physics Updates v.316 or higher. It took some days, Juergen, we are finishing a new release, there is little time for everything else. Regarding the other issue you mentioned to me a few days ago, in private email together with this one now fixed, the relationship between the metric and the tetrad, or for the case between one tensor in GR and another one, is not automatically taken into account when differentiating - that is in the plans for the updates of this year.

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

First 22 23 24 25 26 27 28 Last Page 24 of 55