Maple 2023 Questions and Posts

These are Posts and Questions associated with the product, Maple 2023

After my maple (2023) had a crash (froze) and i forc closed it all my files are opened and then changed. All equation fields are changed into "Maple Input" type equations. This completely ruins all my "document" type files where the appearance of the equations was important. More than that most of the changed equations give rise to errors. So the file is basically destroyed. The odd thing is that the file looks fine the first few seconds, but then it is changed completely.
I have uninstalled 2023, and installed Maple 2024 without success. 

Plz help!

How do I get Maple 2023 to simplify/combine units in results?  For example,

Quantity(3.3897859*Unit(km^2)/Unit(m^2), 0.2) ;

should simplify to

Quantity(3389785.9, 0.2) ;

The full example where the problem occurs is given below.

alias(l = log10, l100 = log[100], pi[0] = Pi, r = sqrt, S_ellipsoid = ellipsoid) :
with(ScientificErrorAnalysis) :
with(Units) :

_km := Unit(km) :
_lm := Unit(lm) :
_lx := Unit(lx) :
_m := Unit(m) :
_rev := Unit(rev) :
alias(Q = Quantity) :
AddUnit(astronomical_unit, context = astronomy, default = true, conversion = 149597870700*m) :
pi := pi[0] :
S_spheroid := (a, b) -> S_ellipsoid(a, a, b) :

_AU := Unit(AU) :
a_Mars := Q(227939366., 1.)*_km : ##
a_Terra := Q(149598023., 1.)*_km : ##
alpha_Phobos := Q(9517.58, 0.01)*_km : ##
B_Phobos := Q(0.071, 0.012) :
d_x_Phobos := Q(25.90, 0.08)*_km :
d_y_Phobos := Q(22.60, 0.08)*_km :
d_z_Phobos := Q(18.32, 0.06)*_km :
E_I := _lx :
H_Mars := -Q(1.5, 0.1) : ##
L_Sol := Q(3.75E28, 0.01E28)*_lm : ##
m_E := -Q(14.18, 0.01) : ##
pi_Phobos := Q(9234.42, 0.01)*_km : ##
r_e_Mars := Q(3396.2, 0.1)*_km :
r_e_Terra := Q(6378137.0, 0.1)*_m : ##
S_sphere := r -> S_spheroid(r, r) :
theta_rev := _rev :

a_Phobos := (alpha_Phobos + pi_Phobos)/2 :
Delta_Sol := a_Terra - r_e_Terra : 
l_A := _AU :
m := E -> m_E - 5*l100(E/E_I) :
r_x_Phobos := d_x_Phobos/2 :
r_y_Phobos := d_y_Phobos/2 :
r_z_Phobos := d_z_Phobos/2 :
theta_rev2 := theta_rev/2 :

Delta_Mars := r(a_Mars^2 + Delta_Sol^2) : 
q := theta -> 2*((sin(theta)/pi) + (1 - (theta/theta_rev2))*cos(theta))/3 :
r_e_Phobos := (r_x_Phobos + r_y_Phobos)/2 :
S_Phobos := S_ellipsoid(r_x_Phobos, r_y_Phobos, r_z_Phobos) :

Delta_Phobos := Delta_Mars : 
L_Phobos := B_Phobos*L_Sol*S_Phobos/(2*S_sphere(a_Mars)) :
mu_Mars := 5*l(a_Mars*Delta_Mars/l_A^2) : 
rho_e_Mars := arcsin(r_e_Mars/Delta_Mars) :
theta_Mars := arccos((a_Mars^2 + Delta_Mars^2 - Delta_Sol^2)/(2*a_Mars*Delta_Mars)) :

E_Phobos := L_Phobos/S_sphere(Delta_Phobos) :
m_Mars := H_Mars + mu_Mars - 5*l100(q(theta_Mars)) :
rho_e_Phobos := arcsin(r_e_Phobos/Delta_Phobos) :
rho_o_Phobos := arctan(a_Phobos/Delta_Phobos) :

Deltarho_Phobos := rho_o_Phobos - rho_e_Mars - rho_e_Phobos :
m_Phobos := m(E_Phobos) :

Deltam_Phobos := m_Phobos - m_Mars :

Deltarhostar_Phobos := Deltarho_Phobos/Deltam_Phobos :

"Phobos apparent logarithmic brightness in astronomical magnitudes" = combine(m_Phobos, errors) ;
"Mars-Phobos apparent angular separation in arcseconds" = combine(convert(Deltarhostar_Phobos, units, arcsec), errors) ;

(*
https://www.nicolesharp.net/wiki/Solar_System_data_for_Maple
https://en.wikipedia.org/wiki/astronomical_unit
https://en.wikipedia.org/wiki/Star_Sol
https://en.wikipedia.org/wiki/Planet_Terra
https://en.wikipedia.org/wiki/Terran_radius
https://en.wikipedia.org/wiki/WGS84
https://en.wikipedia.org/wiki/Planet_Mars
https://en.wikipedia.org/wiki/Satellite_Phobos
https://en.wikipedia.org/wiki/Solar_System_by_size
https://en.wikipedia.org/wiki/illuminance
*)

 

Hi,

Experiencing the following problem.  One of our servers was cloned, the GUID was replaced and then rejoined to the domain.  All applications are working exept Maple.  The application launches but then closes right away.  No error messages provided so not sure where else to look for possible fixes to this problem.  The application is runing on Server 2022.

Thank you.

I have a system of 4 nonlinear equations in 4 lambda variables. I cannot obtain a solution using solve():

4_nonlinear_equations.mw

I can sometimes simplify similar systems by rescaling equations to reduce parameters. With only 3 parameters (sigma_v, sigma_d, sigma_d3) in this case, complexity arises from the interactions of the 4 lambdas in the 4 equations. Upon examining the equations (highlighted in yellow), I suspect hidden symmetries. Is it possible to solve the system by rewriting the equations in terms of each other to find an equivalent system? I am exploring if a smarter and simpler reformulation could lead to a solution. Thank you.

Can someone tell me how to calculate the Christoffel symbols in spherical coordinates in Euclidean three dimensional space?

Thank you very much in advance!

Hi!

So I like to check that my manual integrations and/or maple integrations are equal with each other. I normally do this using the Test Relation function.

I was working on a problem and noticed that Maple didn't evaluate the integrals being the same, even though they presumedly are.

Could anyone shed some light on why I get this inequality?

Thanks in advance!

mapleintvsmanualint.mw

restartNULL

dn/dt = -r__S*V

 

We can define n as C*V 

dC*V/dt = -r__S*V

 

We can define the concentration C as S  

dS/dt = -r__S

 

where -r__S = V__max*[S]/(1+K__1*[S]+K__2*[S^2])

  

ds/dt = -V__max*[S]/(1+K__1*[S]+K__2*[S^2])=

 

1/dt = -V__max*[S]/((1+K__1*[S]+K__2*[S^2])*ds)

 

dt = (1+k__1*[S]+K__2*[S^2])*ds/(V__max*[S])

 

"ⅆt = 1/(`V__max`*[S])+`k__1`/(`V__max`)+(`K__2`*[S])/(`V__max`)*ⅆs"

 

int(1/(V__max*S)+K__1/V__max+K__2*S/V__max, S = S .. S__0)

 

`assuming`([simplify(combine*(int(1/(V__max*S)+K__1/V__max+K__2*S/V__max, S = S__ .. S__0)), size)], [S > 0, S__0 > S__])

combine*piecewise(And(0 < S__0, S__ < 0), undefined, (1/2)*(K__2*S__0^2-K__2*S__^2+2*S__0*K__1-2*K__1*S__+2*ln(S__0)-2*ln(S__))/V__max)

(1)

 

`assuming`([simplify(int(1/(V__max*S)+K__1/V__max+K__2*S/V__max, S = S__ .. S__0), size)], [S > 0, S__0 > S__])
  piecewise(And(0 < S__0, S__ < 0), undefined, (1/2)*(K__2*S__0^2-K__2*S__^2+2*S__0*K__1-2*K__1*S__+2*ln(S__0)-2*ln(S__))/V__max)NULL

 

 

maple*equation = manual*equation  NULL

(S__0^2*K__2-K__2*S^2+2*S__0*K__1-2*K__1*S+2*ln(S__0)-2*ln(S))/(2*V__max) = (ln(S__0/S)+K__1*(S__0-S)+(1/2)*(-S^2+S__0^2)*K__2)/V__max"(->)"false

   

eq1 := (S__0^2*K__2-K__2*S^2+2*S__0*K__1-2*K__1*S+2*ln(S__0)-2*ln(S))/(2*V__max)

 

eq2 := (ln(S__0/S)+K__1*(S__0-S)+(1/2)*(-S^2+S__0^2)*K__2)/V__max

 

eq1-eq2 = 0"(->)"false

 

(ln(S__0/S)+K__1*(S__0-S)+(1/2)*(-S^2+S__0^2)*K__2)/V__max = (ln(S__0/S)+K__1*(S__0-S)+(1/2)*(-S^2+S__0^2)*K__2)/V__max

 

Download mapleintvsmanualint.mw

Suppose I want to run several systems of equations as below, however, the processing time exceeds 45 thousand seconds (reaching hours of calculations)

  • What is better, buying a new processor (new notebook) or buying a new stick of RAM?
  • Or does none of this affect Maple? Therefore, it is just a computational disadvantage (the delay time), characterizing the slowness of the program for very large systems as an imminent characteristic.
  • Another question: The newer Maples (new versions) seem to be heavier to run. Is it just me? What seems to me is that the previous versions of Maple, because they contain fewer resources, are lighter and run certain calculations faster. Would this be correct?
  • Last question: Is it possible to do parallel processing in Maple? So that calculations on huge systems can be run faster

Thank you so much! :)

I have a 2-parameters quartic equation in n (where n>=2 and integer) and want to find for which parameter values it is zero, if any exists.

Here I am analyzing the signs of each coefficient, but is there a faster way to solve my problem?
Thanks.

quartic_equation_in_n.mw

I want to solve n nonlinear equations in n unknowns named lambda[1], lambda[2], ..., lambda[n]. For simplicity, I assume n=3. Each of the three equations includes matrices and dot products.

Running solve() takes forever...I assume this is because Maple is trying to find the explicit form. I am not sure, but I have reasons to believe that a solution exists.

Questions:

  1. Did I set up the three equations correctly? Is there a simpler or smarter way to set up my problem?
  2. Is it okay for Maple that lambda[i] sometimes appears isolated and sometimes as a component of a vector?  
  3. Is there a way to keep my quantities (except the lambda vector I guess, since it containts the lambda[i] component I need to solve for) undefined/implicit while making sure Maple correctly deals with matrices and dot products?
    e.g., the solution should display terms like p^%T.R.w as such, rather than the corresponding explicit computation...

Worksheet:

restart;

S:=Matrix([[Sigma[1,1],Sigma[1,2],Sigma[1,3]],[Sigma[2,1],Sigma[2,2],Sigma[2,3]],[Sigma[3,1],Sigma[3,2],Sigma[3,3]]]):

w:=Vector(3,symbol=omega):

r:=Vector([sqrt(S[1,1]/(w^%T.S.w)),sqrt(S[2,2]/(w^%T.S.w)),sqrt(S[3,3]/(w^%T.S.w))]):

R:=Matrix([[r[1],0,0],[0,r[2],0],[0,0,r[3]]]):

p:=Vector(3,symbol=rho):

l:=Vector(3,symbol=lambda):

e[1]:=Vector([1,0,0]):
e[2]:=Vector([0,1,0]):
e[3]:=Vector([0,0,1]):

f:=x->x^2:
w__sq:=f~(w):
l__sq:=f~(l):

 

eq1:='(w[1]*((p^%T.R.w)/(2*(l^%T.w__sq)))*(w^%T.S.e[1]))/(w[1]^2*((p^%T.R.w)^2/(4*(l^%T.w__sq)^2))*(w^%T.S.w)+sigma__delta^2*(w[1]^2*(((l__sq)^%T.w__sq)/(4*(l^%T.w__sq)^2)-lambda[1]/(l^%T.w__sq))+1))';

eq2:='(w[2]*((p^%T.R.w)/(2*(l^%T.w__sq)))*(w^%T.S.e[2]))/(w[2]^2*((p^%T.R.w)^2/(4*(l^%T.w__sq)^2))*(w^%T.S.w)+sigma__delta^2*(w[2]^2*(((l__sq)^%T.w__sq)/(4*(l^%T.w__sq)^2)-lambda[2]/(l^%T.w__sq))+1))';

eq3:='(w[3]*((p^%T.R.w)/(2*(l^%T.w__sq)))*(w^%T.S.e[3]))/(w[3]^2*((p^%T.R.w)^2/(4*(l^%T.w__sq)^2))*(w^%T.S.w)+sigma__delta^2*(w[3]^2*(((l__sq)^%T.w__sq)/(4*(l^%T.w__sq)^2)-lambda[3]/(l^%T.w__sq))+1))';

(1/2)*w[1]*(`.`(p^%T, R, w))*(`.`(w^%T, S, e[1]))/((l^%T.w__sq)*((1/4)*w[1]^2*(`.`(p^%T, R, w))^2*(`.`(w^%T, S, w))/(l^%T.w__sq)^2+sigma__delta^2*(w[1]^2*((1/4)*(l__sq^%T.w__sq)/(l^%T.w__sq)^2-lambda[1]/(l^%T.w__sq))+1)))

 

(1/2)*w[2]*(`.`(p^%T, R, w))*(`.`(w^%T, S, e[2]))/((l^%T.w__sq)*((1/4)*w[2]^2*(`.`(p^%T, R, w))^2*(`.`(w^%T, S, w))/(l^%T.w__sq)^2+sigma__delta^2*(w[2]^2*((1/4)*(l__sq^%T.w__sq)/(l^%T.w__sq)^2-lambda[2]/(l^%T.w__sq))+1)))

 

(1/2)*w[3]*(`.`(p^%T, R, w))*(`.`(w^%T, S, e[3]))/((l^%T.w__sq)*((1/4)*w[3]^2*(`.`(p^%T, R, w))^2*(`.`(w^%T, S, w))/(l^%T.w__sq)^2+sigma__delta^2*(w[3]^2*((1/4)*(l__sq^%T.w__sq)/(l^%T.w__sq)^2-lambda[3]/(l^%T.w__sq))+1)))

(1)

 

solve({eq1-lambda[1],eq2-lambda[2],eq3-lambda[3]},{lambda[1],lambda[2],lambda[3]});

Download dot_products.mw

 hello
 how to get curve fitting parameters right?  is that any stragey to get a good estimate.

restart;

with(Statistics):with(plots):with(Optimization):with(LinearAlgebra):


# given data from strain rate curve
E_0[theta] := 7.883352314*10^9;
alpha[theta]:= 0.982

7883352314.

 

.982

(1)


# experimental creep data under 44 at 100 degree celcius
c_strain := Vector ([<<0>,<0.0284698>,<0.0533808>,<0.0782918>,<0.0996441>,<0.124555>,<0.142349>,<0.156584>,<0.16726>,<0.177936>,<0.181495>,<0.188612>,<0.192171>,<0.19573>,<0.19573>,<0.202847>,<0.206406>,<0.206406>,<0.209964>,<0.209964>,<0.209964>,<0.206406>,<0.209964>>]):

c_time := Vector ([<<0>,<0>,<0.048>,<0.192>,<0.352>,<0.544>,<0.704>,<0.896>,<1.088>,<1.312>,<1.52>,<1.76>,<1.984>,<2.208>,<2.464>,<2.736>,<3.088>,<3.392>,<3.664>,<4.016>,<4.352>,<4.592>,<4.832>>]):
sigma[0] := 44*10^6;
epsilon[0] := sigma[0]/E_0[theta];

44000000

 

0.5581381911e-2

(2)


# change vector to list
c_strain := convert(c_strain,list):
c_time := convert(c_time,list):

# extract zero from list
c_strain := c_strain [2..-1];
c_time := c_time [2..-1];

[0.284698e-1, 0.533808e-1, 0.782918e-1, 0.996441e-1, .124555, .142349, .156584, .16726, .177936, .181495, .188612, .192171, .19573, .19573, .202847, .206406, .206406, .209964, .209964, .209964, .206406, .209964]

 

[0, 0.48e-1, .192, .352, .544, .704, .896, 1.088, 1.312, 1.52, 1.76, 1.984, 2.208, 2.464, 2.736, 3.088, 3.392, 3.664, 4.016, 4.352, 4.592, 4.832]

(3)


# for further calculation need to know how many elements are in the list
M := nops(c_strain);
N := nops(c_time);

22

 

22

(4)


# constitutive equation
creep_strain := proc(t)
local i;
options operator, arrow;
epsilon[0]*(1 + alpha[theta]*add(-(B[i]*(-beta[i]*t + exp(-beta[i] *t) -1))/beta[i],i=1..3))
end proc;

proc (t) local i; options operator, arrow; epsilon[0]*(1+alpha[theta]*add(-B[i]*(-beta[i]*t+exp(-beta[i]*t)-1)/beta[i], i = 1 .. 3)) end proc

(5)


#define objective function

Digits := 9:
obj := add(
         (
           creep_strain(c_time[j])
           -
           c_strain[j]
         )^2
         , j=1..N
       ):


# curve fitting
opt := NLPSolve(obj,
{
  beta[1] >= 0,
    beta[2] >= 0,
    beta[3] >= 0,
    B[1] >= 0, B[1]<= 0.2,
    B[2] >= 0, B[2] <= 0.3,
    B[3] >= 0, B[3] <= 0.4
}
);

[.467521159408790410, [B[1] = HFloat(0.19999999999999996), B[2] = HFloat(0.30000000000000004), B[3] = HFloat(0.4), beta[1] = HFloat(1.2600715880722035e-9), beta[2] = HFloat(5.152129055134073e-9), beta[3] = HFloat(5.057870561183067e-9)]]

(6)

# plot the result
display(
   ScatterPlot(c_time, c_strain, symbol=circle, color=blue),
 
  plot(eval(creep_strain(t), opt[2]), t=0.00..max(c_time), color=black)
)

Download at_44_Mpa_at_100C.mw

restart:

 

inte_eq := int(-(sum(B[i]*beta[i]* exp(-beta[i] * (t-tau)),i=1..n)),tau=0..t);

int(-(sum(B[i]*beta[i]*exp(-beta[i]*(t-tau)), i = 1 .. n)), tau = 0 .. t)

(1)

how to solve this ?

Download creep_integral_sol.mw

I want to compute the limit for a parameter (gamma) to infinity of an expression which includes summations over indexes. Below are two approaches. I believe that both should produce the same output, however:

  1. Approach A generates a signum, but I don't understand where this is coming from
  2. Approach B works smoothly once I fix the final value n of the index to some number but runs very slow if I leave n undefined (I had to interrupt the execution)

Maybe approach B is not wrong, and I just need to wait longer...

Any thoughts? 

Approach A: Compute infinity limit while keeping X and lambda undefined (since they are independent of gamma, see below), then define X and lambda
 

problem: what generates signum?

restart;

local gamma;

gamma

(1)

assume(0 < gamma, 0 < n, 0 < w, 0 < Delta, 0 < vo[i], -1 < rho and rho < 1, 0 < sigma__v, 0 < sigma__d, 0 < sigma__dr, delta[i]::real, delta[j]::real, delta[k]::real, delta__r::real, X[i]::real, X[j]::real, X__r::real);
interface(showassumed=0);

1

(2)

W:=sum(X[i]*(-lambda*X[i]-lambda*delta[i]-vo[i]),i=1..n)+X__r*(-lambda__r*X__r-lambda__r*delta__r-w*sum(vo[i],i=1..n))+sum((X[i]+w*X__r)*(vo[i]+(1/(w*n))*(Delta)),i=1..n)-gamma/2*sigma__v^2*(1-(1+rho*(n-1))/(n))*sum((X[i]+w*X__r)^2,i=1..n)-gamma/2*sigma__v^2*(rho-(1+rho*(n-1))/(n))*sum(sum((X[i]+w*X__r)*(X[j]+w*X__r),j=1..i-1)+sum((X[i]+w*X__r)*(X[j]+w*X__r),j=i+1..n),i=1..n);
 

sum(X[i]*(-lambda*X[i]-lambda*delta[i]-vo[i]), i = 1 .. n)+X__r*(-lambda__r*X__r-lambda__r*delta__r-w*(sum(vo[i], i = 1 .. n)))+Delta*X__r+sum(Delta*X[i]/(w*n)+vo[i]*X__r*w+X[i]*vo[i], i = 1 .. n)-(1/2)*gamma*sigma__v^2*(1-(1+rho*(n-1))/n)*(n*X__r^2*w^2+sum(2*X__r*w*X[i]+X[i]^2, i = 1 .. n))-(1/2)*gamma*sigma__v^2*(rho-(1+rho*(n-1))/n)*(n^2*X__r^2*w^2-n*X__r^2*w^2+sum(sum(X__r*w*X[j]+X[i]*X[j], j = i+1 .. n)+sum(X__r*w*X[j]+X[i]*X[j], j = 1 .. i-1)+X__r*w*X[i]*n-X__r*w*X[i], i = 1 .. n))

(3)

limit(W,gamma=infinity);

-signum(-(sum(sum(X[j]*(X__r*w+X[i]), j = i+1 .. n)+sum(X[j]*(X__r*w+X[i]), j = 1 .. i-1)+X__r*w*(n-1)*X[i], i = 1 .. n))+(n-1)*(sum(X[i]*(2*X__r*w+X[i]), i = 1 .. n)))*infinity

(4)

#convert(%, piecewise);

Approach B: Define X and lambda first, then compute infinity limit

problem: why last execution so slow?

restart;

local gamma;

gamma

(5)

assume(0 < gamma, 0 < n, 0 < w, 0 < Delta, 0 < vo[i], -1 < rho and rho < 1, 0 < sigma__v, 0 < sigma__d, 0 < sigma__dr, delta[i]::real, delta[j]::real, delta[k]::real, delta__r::real, X[i]::real, X[j]::real, X__r::real);
interface(showassumed=0);

1

(6)

X[i] := (1/(2*n*w))*sqrt((4*n-3)/(1+rho*(n-1)))*(sigma__d/sigma__v)*Delta-(1/(2*n))*delta[i]-(1/(2*n))*(sum(delta[j],j=1..i-1)+sum(delta[j],j=i+1..n));
X[j] := (1/(2*n*w))*sqrt((4*n-3)/(1+rho*(n-1)))*(sigma__d/sigma__v)*Delta-(1/(2*n))*delta[j]-(1/(2*n))*(sum(delta[k],k=1..j-1)+sum(delta[k],k=j+1..n));
X__r := (1/(2*w*sqrt(n*(1+rho*(n-1)))))*(sigma__dr/sigma__v)*Delta-(1/2)*delta__r;

lambda := sqrt((1+rho*(n-1))/(4*n-3))*(sigma__v/sigma__d);
lambda__r := w*sqrt(n*(1+rho*(n-1)))*(sigma__v/sigma__dr);
 

(1/2)*((4*n-3)/(1+rho*(n-1)))^(1/2)*sigma__d*Delta/(n*w*sigma__v)-(1/2)*delta[i]/n-(1/2)*(sum(delta[j], j = 1 .. i-1)+sum(delta[j], j = i+1 .. n))/n

 

(1/2)*((4*n-3)/(1+rho*(n-1)))^(1/2)*sigma__d*Delta/(n*w*sigma__v)-(1/2)*delta[j]/n-(1/2)*(sum(delta[k], k = 1 .. j-1)+sum(delta[k], k = j+1 .. n))/n

 

(1/2)*sigma__dr*Delta/(w*(n*(1+rho*(n-1)))^(1/2)*sigma__v)-(1/2)*delta__r

 

((1+rho*(n-1))/(4*n-3))^(1/2)*sigma__v/sigma__d

 

w*(n*(1+rho*(n-1)))^(1/2)*sigma__v/sigma__dr

(7)

W:=sum(X[i]*(-lambda*X[i]-lambda*delta[i]-vo[i]),i=1..n)+X__r*(-lambda__r*X__r-lambda__r*delta__r-w*sum(vo[i],i=1..n))+sum((X[i]+w*X__r)*(vo[i]+(1/(w*n))*(Delta)),i=1..n)-gamma/2*sigma__v^2*(1-(1+rho*(n-1))/(n))*sum((X[i]+w*X__r)^2,i=1..n)-gamma/2*sigma__v^2*(rho-(1+rho*(n-1))/(n))*sum(sum((X[i]+w*X__r)*(X[j]+w*X__r),j=1..i-1)+sum((X[i]+w*X__r)*(X[j]+w*X__r),j=i+1..n),i=1..n):
 

W limit for n=3

Winf := collect(expand(simplify(limit(eval(W,n=3),gamma=infinity))),[Delta,Delta^2]):

quad_term := collect(expand(simplify(coeff(Winf,Delta^2))),[sigma__d,sigma__dr]);
linear_term := expand(simplify(coeff(Winf,Delta)));
coeff_term := collect(expand(simplify(eval(Winf,Delta=0))),delta__r^2);

(-(1/4)/(sigma__v*(1+2*rho)^(1/2)*w^2)+(1/2)*(1/(1+2*rho))^(1/2)/(w^2*sigma__v))*sigma__d+(1/12)*3^(1/2)*sigma__dr/((1+2*rho)^(1/2)*sigma__v*w)

 

-(1/2)*delta__r-(1/6)*delta[1]/w-(1/6)*delta[2]/w-(1/6)*delta[3]/w

 

((1/4)*3^(1/2)*sigma__v*w/((1+2*rho)^(1/2)*sigma__dr)+(1/2)*3^(1/2)*sigma__v*w*rho/((1+2*rho)^(1/2)*sigma__dr))*delta__r^2+(1/36)*sigma__v*delta[1]^2/((1+2*rho)^(1/2)*sigma__d)+(1/36)*sigma__v*delta[2]^2/((1+2*rho)^(1/2)*sigma__d)+(1/36)*sigma__v*delta[3]^2/((1+2*rho)^(1/2)*sigma__d)+(1/18)*sigma__v*delta[1]^2*rho/((1+2*rho)^(1/2)*sigma__d)+(1/18)*sigma__v*delta[2]^2*rho/((1+2*rho)^(1/2)*sigma__d)+(1/18)*sigma__v*delta[3]^2*rho/((1+2*rho)^(1/2)*sigma__d)+(1/18)*sigma__v*delta[2]*delta[1]/((1+2*rho)^(1/2)*sigma__d)+(1/18)*sigma__v*delta[1]*delta[3]/((1+2*rho)^(1/2)*sigma__d)+(1/18)*sigma__v*delta[2]*delta[3]/((1+2*rho)^(1/2)*sigma__d)+(1/9)*sigma__v*delta[2]*delta[1]*rho/((1+2*rho)^(1/2)*sigma__d)+(1/9)*sigma__v*delta[1]*delta[3]*rho/((1+2*rho)^(1/2)*sigma__d)+(1/9)*sigma__v*delta[2]*delta[3]*rho/((1+2*rho)^(1/2)*sigma__d)

(8)

W limit for generic n

Winf := collect(expand(simplify(limit(W,gamma=infinity))),[Delta,Delta^2]):

quad_term := collect(expand(simplify(coeff(Winf,Delta^2))),[sigma__d,sigma__dr]);
linear_term := expand(simplify(coeff(Winf,Delta)));
coeff_term := collect(expand(simplify(eval(Winf,Delta=0))),delta__r^2);

 

NULL

Download Infinity_limit_and_summations.mw

I am trying to compute partial derivatives of some complicated expression which include summations. First, I noticed that sum behaves differently if I use 1D vs. 2D math. Why?

Questions:
  1. Partial derivative of a summation: why is it not just 2*X[i]?
  2. Partial derivative of a double summation: how to define the nested structure of a double summation with j<>i?
  3. System of n+1 equations: how to define and solve for it?

For 3., each i equation is the partial derivative of my complicated expression with summations with respect to X[i], where i ranges from 1 to n. The last equation is the partial derivative with respect to X_r (a fixed variable).

Thanks.

restart

A := sum(X[i]^2, i = 1 .. n); eq[1] := diff(A, X[i]) = 0

sum(X[i]^2, i = 1 .. n)

 

sum(2*X[i], i = 1 .. n) = 0

(1)

B__wrong := sum(sum((X__r*w+X[i])*(X__r*w+X[j]), j = 1 .. n), i = 1 .. n); B__correct := 'sum(sum((X__r*w+X[i])*(X__r*w+X[j]), j = 1 .. n), i = 1 .. n)'

n^2*X__r^2*w^2+sum(sum(X__r*w*X[j]+X[i]*X[j], j = 1 .. n)+n*X__r*w*X[i], i = 1 .. n)

 

sum(sum((X__r*w+X[i])*(X__r*w+X[j]), j = 1 .. n), i = 1 .. n)

(2)

eqs := seq(eq[i], i = 1 .. n); vars := seq(X[i], i = 1 .. n)

Error, range bounds in seq must be numeric or character

 

Error, range bounds in seq must be numeric or character

 
 

NULL

Download equations_with_summations.mw

I am studying linear operators that have vanishing Nijenhuis Torsion, that is a (1-1) tensor L whose corresponding (1-2) tensor N given by a tensor equation of L (see attached) is identically zero.

I am new to maple, i have used it to plot vector fields and solve systems of equations in the past but i am unfamiliar with the DifferentialGeometry and Physics packages.

Attached is my best effort at solving this problem directly for a simple 2d case without the use of any packages and i am wondering if it is possible to do it all in one line without having to define tensor components one by one.

nijenhuis_torsion.mw

Hi, I have a very concrete task, which is to find the singular vector associated with the largest singular matrix of the matrix M below. Here, a is an arbitrary complex number, l is of magnitude stritcly less than 1, and k>0. The command 'SingularValues' returns the 2 singular values of M. But when I search for the corresponding singular vectors, there is a bug. Those vectors are the eigenvectors of M*M. When I use the command Eigenvectors, the second argument returned is the 2 by 2 null matrix. And when I use the command eigenvects I have an error message (see below). Anyone could help me to fix this issue please?

Many thanks in advance. 

with(LinearAlgebra); assume(k > 0); assume(abs(l) < 1); M := Matrix(2, 2, {(1, 1) = l-(1-l*conjugate(l))*k, (1, 2) = -a*(1-l*conjugate(l))*k, (2, 1) = 0, (2, 2) = l+(1-l*conjugate(l))*k})

Matrix(%id = 36893488151898158132)

(1)

simplify(SingularValues(M)[1])

(1/2)*(2*(-abs(l)^2+1)*k*(k^2*(abs(l)-1)^2*(abs(l)+1)^2*abs(a)^4+(4*k^2*abs(l)^4+(-8*k^2+4)*abs(l)^2+4*k^2)*abs(a)^2+4*l^2+8*abs(l)^2+4*conjugate(l)^2)^(1/2)+2*k^2*(abs(a)^2+2)*abs(l)^4+4*(-abs(a)^2*k^2-2*k^2+1)*abs(l)^2+2*k^2*(abs(a)^2+2))^(1/2)

(2)

MatrixMatrixMultiply(HermitianTranspose(M), M)

Matrix(%id = 36893488151996380692)

(3)

Eigenvectors(MatrixMatrixMultiply(HermitianTranspose(M), M))

Vector[column](%id = 36893488151975984532), Matrix(%id = 36893488151975984652)

(4)

with(linalg)

eigenvectors(Matrix(2, 2, {(1, 1) = (l-(1-l*conjugate(l))*k)*conjugate(l-(1-l*conjugate(l))*k), (1, 2) = -conjugate(l-(1-l*conjugate(l))*k)*a*(1-l*conjugate(l))*k, (2, 1) = -k*conjugate(a*(1-l*conjugate(l)))*(l-(1-l*conjugate(l))*k), (2, 2) = a*(1-l*conjugate(l))*k^2*conjugate(a*(1-l*conjugate(l)))+(l+(1-l*conjugate(l))*k)*conjugate(l+(1-l*conjugate(l))*k)}))

Error, (in linalg:-eigenvectors) eigenvects only works for a matrix of rationals, rational functions, algebraic numbers, or algebraic functions at present

 
 

``

Download singular_vect_2_by_2_matrix.mwsingular_vect_2_by_2_matrix.mw

1 2 3 4 5 6 7 Last Page 1 of 30