Ex

85 Reputation

7 Badges

11 years, 149 days

MaplePrimes Activity


These are replies submitted by Ex

refer to http://www.maplesoft.com/support/help/Maple/view.aspx?path=dsolve/details

i expect solution represent in terms of integration

like using [linear],useInt)  <- but this seems not work

refer to http://www.maplesoft.com/support/help/Maple/view.aspx?path=dsolve/details

i expect solution represent in terms of integration

like using [linear],useInt)  <- but this seems not work

@Preben Alsholm 

According to the file's example, lambda is (solution of characteristic equation)^2

too much variables and the ways of expression, it may need much time to find a simple result

because when you solve characteristic equation, it can solve with t or n, i am not sure which one is main variable.

restart;
sol := dsolve(t*diff(phi(x),x$2)-x*diff(phi(x),x)+n*phi(x),phi(x));
phi := unapply(rhs(sol),x);
odetest(sol,ode);
eq1:=limit(rhs(sol),x=0,right)=0;
eq2:=eval(rhs(sol),x=1)=0;
Ccoef := LinearAlgebra:-GenerateMatrix([eq1,eq2],[_C1,_C2]);
CharEqn:=LinearAlgebra:-Determinant(%[1])=0;
sol1 := solve(CharEqn,t);
step1 := map(xi->simplify(subs(t=RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))),xi)),Ccoef);
with(linalg):
NN := nullspace(step1);
subs(_C1=NN[1][1],_C2=NN[1][2],t=RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))),phi(x));
phi := (n,x) -> KummerM(1/2-(1/2)*n, 3/2, (1/2)*x^2/RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))))*x;
lambda := j->RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z)));
assume(j,posint):
interface(showassumed=0):
Gterm := unapply(-phi(n,x)*phi(n,x)*exp(-lambda(j)*t)/int(phi(n,x)^2,x=0..1),(j,n,x,y,t)):
G:=Sum(Gterm(j,n,x,y,t),j=1..infinity);
G:=int(Gterm(j,n,x,y,t),j=1..infinity);
G:=eval(int(Gterm(j,n,x,y,t),j=1..infinity));
vterm := int(D[2](Gterm)(j,n,1,x,t-tau),tau=0..t);
vv := sum(Sum(op(n,vterm),j=1..infinity),n=1..2);

@Preben Alsholm 

According to the file's example, lambda is (solution of characteristic equation)^2

too much variables and the ways of expression, it may need much time to find a simple result

because when you solve characteristic equation, it can solve with t or n, i am not sure which one is main variable.

restart;
sol := dsolve(t*diff(phi(x),x$2)-x*diff(phi(x),x)+n*phi(x),phi(x));
phi := unapply(rhs(sol),x);
odetest(sol,ode);
eq1:=limit(rhs(sol),x=0,right)=0;
eq2:=eval(rhs(sol),x=1)=0;
Ccoef := LinearAlgebra:-GenerateMatrix([eq1,eq2],[_C1,_C2]);
CharEqn:=LinearAlgebra:-Determinant(%[1])=0;
sol1 := solve(CharEqn,t);
step1 := map(xi->simplify(subs(t=RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))),xi)),Ccoef);
with(linalg):
NN := nullspace(step1);
subs(_C1=NN[1][1],_C2=NN[1][2],t=RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))),phi(x));
phi := (n,x) -> KummerM(1/2-(1/2)*n, 3/2, (1/2)*x^2/RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))))*x;
lambda := j->RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z)));
assume(j,posint):
interface(showassumed=0):
Gterm := unapply(-phi(n,x)*phi(n,x)*exp(-lambda(j)*t)/int(phi(n,x)^2,x=0..1),(j,n,x,y,t)):
G:=Sum(Gterm(j,n,x,y,t),j=1..infinity);
G:=int(Gterm(j,n,x,y,t),j=1..infinity);
G:=eval(int(Gterm(j,n,x,y,t),j=1..infinity));
vterm := int(D[2](Gterm)(j,n,1,x,t-tau),tau=0..t);
vv := sum(Sum(op(n,vterm),j=1..infinity),n=1..2);

@Preben Alsholm 

even add back j to it, it remain sum or integration, without evaluated result, i guess that it is the concept problem,

have you ever been calculated this?

i insist in this because i believe that it is the only direct way to calculate generating function

@Preben Alsholm 

even add back j to it, it remain sum or integration, without evaluated result, i guess that it is the concept problem,

have you ever been calculated this?

i insist in this because i believe that it is the only direct way to calculate generating function

@Preben Alsholm 

Originally i expect to find Hermit H(x) and then use sum(H*z^m/m!, m=0..infinity) to
find a A*exp(B) where B is in term of z and t and it is just a simple formula
now following the steps, i guess the H is the solution of green function about the expansion

it become more compicated for H(x), and i find there is a D[2] but do not know where it come from.
then do not know which step is H(x), i just guess vterm or vv

sol := dsolve(t*diff(phi(x),x$2)-x*diff(phi(x),x)+n*phi(x),phi(x));
phi := unapply(rhs(sol),x);
odetest(sol,ode);
eq1:=limit(rhs(sol),x=0,right)=0;
eq2:=eval(rhs(sol),x=1)=0;
Ccoef := LinearAlgebra:-GenerateMatrix([eq1,eq2],[_C1,_C2]);
CharEqn:=LinearAlgebra:-Determinant(%[1])=0;
solve(CharEqn,t);
step1 := map(xi->simplify(subs(t=RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))),xi)),Ccoef);
with(linalg):
NN := nullspace(step1);
subs(_C1=NN[1][1],_C2=NN[1][2],t=RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))),phi(x));

phi := (n,t,x) -> KummerM(1/2-(1/2)*n, 3/2, (1/2)*x^2/RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))))*x;

assume(j,posint):
interface(showassumed=0):
Gterm := unapply(-phi(n,t,x)*phi(n,t,x)*exp(-lambda(j)*t)/int(phi(n,t,x)^2,x=0..1),(j,n,x,y,t)):
G:=Sum(Gterm(j,n,x,y,t),j=1..infinity);
vterm := int(D[2](Gterm)(n,1,x,t-tau),tau=0..t);
vv := sum(Sum(op(n,vterm),j=1..infinity),n=1..2);

@Preben Alsholm 

Originally i expect to find Hermit H(x) and then use sum(H*z^m/m!, m=0..infinity) to
find a A*exp(B) where B is in term of z and t and it is just a simple formula
now following the steps, i guess the H is the solution of green function about the expansion

it become more compicated for H(x), and i find there is a D[2] but do not know where it come from.
then do not know which step is H(x), i just guess vterm or vv

sol := dsolve(t*diff(phi(x),x$2)-x*diff(phi(x),x)+n*phi(x),phi(x));
phi := unapply(rhs(sol),x);
odetest(sol,ode);
eq1:=limit(rhs(sol),x=0,right)=0;
eq2:=eval(rhs(sol),x=1)=0;
Ccoef := LinearAlgebra:-GenerateMatrix([eq1,eq2],[_C1,_C2]);
CharEqn:=LinearAlgebra:-Determinant(%[1])=0;
solve(CharEqn,t);
step1 := map(xi->simplify(subs(t=RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))),xi)),Ccoef);
with(linalg):
NN := nullspace(step1);
subs(_C1=NN[1][1],_C2=NN[1][2],t=RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))),phi(x));

phi := (n,t,x) -> KummerM(1/2-(1/2)*n, 3/2, (1/2)*x^2/RootOf(KummerM(1/2-(1/2)*n, 3/2, 1/(2*_Z))))*x;

assume(j,posint):
interface(showassumed=0):
Gterm := unapply(-phi(n,t,x)*phi(n,t,x)*exp(-lambda(j)*t)/int(phi(n,t,x)^2,x=0..1),(j,n,x,y,t)):
G:=Sum(Gterm(j,n,x,y,t),j=1..infinity);
vterm := int(D[2](Gterm)(n,1,x,t-tau),tau=0..t);
vv := sum(Sum(op(n,vterm),j=1..infinity),n=1..2);

i am finding in

math.tut.fi/~piche/pde/pde.pdf

search with eigenfunction

in the file, example is simple, because it solve sin(miu) = 0, in our example, it is in terms of n and t, so which main

variable should it be solved, and after tried, no solution with solve function

actually do not understand why genmatrix and wronskian,

it seems using both have the same effect

one thing i would like to ask more about this method is

is simplify(dt0)=0 the characteristric equation?

i am finding in

math.tut.fi/~piche/pde/pde.pdf

search with eigenfunction

in the file, example is simple, because it solve sin(miu) = 0, in our example, it is in terms of n and t, so which main

variable should it be solved, and after tried, no solution with solve function

actually do not understand why genmatrix and wronskian,

it seems using both have the same effect

one thing i would like to ask more about this method is

is simplify(dt0)=0 the characteristric equation?

@marram 

all kinds of possibility tried, no one is equal to answer

if i compare with answer, does M2 = M2 tell us M2 = -1 ? but why M1 = M2,  M2 = M2, M2 = 0? and M1 = -1?

 

evalm(theta&*Matrix([[M1],[M2],[M3]]))
evalm(theta&*Matrix(3,3,symbol=m))

findM1 := evalm(Matrix([[theta[1,1][1], theta[1,2][1], theta[1,3][1]],[theta[2,1][1],theta[2,2][1],theta[2,3][1]],[theta[3,1][1],theta[3,2][1],theta[3,3][1]]])&*Matrix([[M1],[M2],[M3]]));
solve({findM1[1,1]=0, findM1[2,1]=0, findM1[3,1]=0}, {M1, M2, M3});
solve({subs(t=0,findM1[1,1])=0, subs(t=0,findM1[2,1])=0, subs(t=0,findM1[3,1])=0}, {M1, M2, M3});

findM2 := evalm(Matrix([[theta[1,1][2], theta[1,2][2], theta[1,3][2]],[theta[2,1][2],theta[2,2][2],theta[2,3][2]],[theta[3,1][2],theta[3,2][2],theta[3,3][2]]])&*Matrix([[M1],[M2],[M3]]));
solve({findM2[1,1]=0, findM2[2,1]=0, findM2[3,1]=0}, {M1, M2, M3});
solve({subs(t=0,findM2[1,1])=0, subs(t=0,findM2[2,1])=0, subs(t=0,findM2[3,1])=0}, {M1, M2, M3});

findM3 := evalm(Matrix([[theta[1,1][3], theta[1,2][3], theta[1,3][3]],[theta[2,1][3],theta[2,2][3],theta[2,3][3]],[theta[3,1][3],theta[3,2][3],theta[3,3][3]]])&*Matrix([[M1],[M2],[M3]]));
solve({findM3[1,1]=0, findM3[2,1]=0, findM3[3,1]=0}, {M1, M2, M3});

//**************************************************************
findM1 := Matrix([[theta[1,1][1], theta[1,2][1], theta[1,3][1]],[theta[2,1][1],theta[2,2][1],theta[2,3][1]],[theta[3,1][1],theta[3,2][1],theta[3,3][1]]]);
solve({findM1[1,1]=0, findM1[2,1]=0, findM1[3,1]=0}, {M1, M2, M3});

findM2 := Matrix([[theta[1,1][2], theta[1,2][2], theta[1,3][2]],[theta[2,1][2],theta[2,2][2],theta[2,3][2]],[theta[3,1][2],theta[3,2][2],theta[3,3][2]]]);
solve({findM2[1,1]=0, findM2[2,1]=0, findM2[3,1]=0}, {M1, M2, M3});

findM3 := Matrix([[theta[1,1][3], theta[1,2][3], theta[1,3][3]],[theta[2,1][3],theta[2,2][3],theta[2,3][3]],[theta[3,1][3],theta[3,2][3],theta[3,3][3]]]);
solve({findM3[1,1]=0, findM3[2,1]=0, findM3[3,1]=0}, {M1, M2, M3});

//**************************************************************
theta := Matrix([[findM1[1,1],findM1[2,1],findM1[3,1]],[findM2[1,1],findM2[2,1],findM2[3,1]],[findM3[1,1],findM3[2,1],findM3[3,1]]]);
LinearAlgebra:-LinearSolve(theta,,free=f);
solve(theta, {M1,M2,M3});
theta := Matrix([[findM1[1,1],findM2[1,1],findM3[1,1]],[findM1[2,1],findM2[2,1],findM3[2,1]],[findM1[3,1],findM2[3,1],findM3[3,1]]]);
LinearAlgebra:-LinearSolve(theta,,free=f);
solve(theta, {M1,M2,M3});

//******************************************
theta := Matrix([[findM1[1,1]=0,findM1[2,1]=0,findM1[3,1]=0],[findM2[1,1]=0,findM2[2,1]=0,findM2[3,1]=0],[findM3[1,1]=0,findM3[2,1]=0,findM3[3,1]=0]]);
theta := Matrix([[findM1[1,1]=0,findM1[2,1]=0,findM1[3,1]=0],[findM2[1,1]=0,findM2[2,1]=0,findM2[3,1]=0],[0,findM3[2,1]=0,findM3[3,1]=0]]);
solve(theta, {M1,M2,M3});

theta := {findM1[1,1]+findM2[1,1]+findM3[1,1]=0,findM1[2,1]+findM2[2,1]+findM3[2,1]=0,findM1[3,1]+findM2[3,1]+findM3[3,1]=0};
solve(theta, {M1,M2,M3});

//******************************************
theta := {findM1[1,1]=0,findM1[2,1]=0,findM1[3,1]=0};
solve(theta, {M1,M2,M3,t});

theta := {findM2[1,1]=0,findM2[2,1]=0,findM2[3,1]=0};
solve(theta, {M1,M2,M3});

theta := {findM3[1,1]=0,findM3[2,1]=0,findM3[3,1]=0};
solve(theta, {M1,M2,M3});
//******************************************
theta := {findM1[1,1]=0,findM2[1,1]=0,findM3[1,1]=0};
solve(theta, {M1,M2,M3});

@marram 

all kinds of possibility tried, no one is equal to answer

if i compare with answer, does M2 = M2 tell us M2 = -1 ? but why M1 = M2,  M2 = M2, M2 = 0? and M1 = -1?

 

evalm(theta&*Matrix([[M1],[M2],[M3]]))
evalm(theta&*Matrix(3,3,symbol=m))

findM1 := evalm(Matrix([[theta[1,1][1], theta[1,2][1], theta[1,3][1]],[theta[2,1][1],theta[2,2][1],theta[2,3][1]],[theta[3,1][1],theta[3,2][1],theta[3,3][1]]])&*Matrix([[M1],[M2],[M3]]));
solve({findM1[1,1]=0, findM1[2,1]=0, findM1[3,1]=0}, {M1, M2, M3});
solve({subs(t=0,findM1[1,1])=0, subs(t=0,findM1[2,1])=0, subs(t=0,findM1[3,1])=0}, {M1, M2, M3});

findM2 := evalm(Matrix([[theta[1,1][2], theta[1,2][2], theta[1,3][2]],[theta[2,1][2],theta[2,2][2],theta[2,3][2]],[theta[3,1][2],theta[3,2][2],theta[3,3][2]]])&*Matrix([[M1],[M2],[M3]]));
solve({findM2[1,1]=0, findM2[2,1]=0, findM2[3,1]=0}, {M1, M2, M3});
solve({subs(t=0,findM2[1,1])=0, subs(t=0,findM2[2,1])=0, subs(t=0,findM2[3,1])=0}, {M1, M2, M3});

findM3 := evalm(Matrix([[theta[1,1][3], theta[1,2][3], theta[1,3][3]],[theta[2,1][3],theta[2,2][3],theta[2,3][3]],[theta[3,1][3],theta[3,2][3],theta[3,3][3]]])&*Matrix([[M1],[M2],[M3]]));
solve({findM3[1,1]=0, findM3[2,1]=0, findM3[3,1]=0}, {M1, M2, M3});

//**************************************************************
findM1 := Matrix([[theta[1,1][1], theta[1,2][1], theta[1,3][1]],[theta[2,1][1],theta[2,2][1],theta[2,3][1]],[theta[3,1][1],theta[3,2][1],theta[3,3][1]]]);
solve({findM1[1,1]=0, findM1[2,1]=0, findM1[3,1]=0}, {M1, M2, M3});

findM2 := Matrix([[theta[1,1][2], theta[1,2][2], theta[1,3][2]],[theta[2,1][2],theta[2,2][2],theta[2,3][2]],[theta[3,1][2],theta[3,2][2],theta[3,3][2]]]);
solve({findM2[1,1]=0, findM2[2,1]=0, findM2[3,1]=0}, {M1, M2, M3});

findM3 := Matrix([[theta[1,1][3], theta[1,2][3], theta[1,3][3]],[theta[2,1][3],theta[2,2][3],theta[2,3][3]],[theta[3,1][3],theta[3,2][3],theta[3,3][3]]]);
solve({findM3[1,1]=0, findM3[2,1]=0, findM3[3,1]=0}, {M1, M2, M3});

//**************************************************************
theta := Matrix([[findM1[1,1],findM1[2,1],findM1[3,1]],[findM2[1,1],findM2[2,1],findM2[3,1]],[findM3[1,1],findM3[2,1],findM3[3,1]]]);
LinearAlgebra:-LinearSolve(theta,,free=f);
solve(theta, {M1,M2,M3});
theta := Matrix([[findM1[1,1],findM2[1,1],findM3[1,1]],[findM1[2,1],findM2[2,1],findM3[2,1]],[findM1[3,1],findM2[3,1],findM3[3,1]]]);
LinearAlgebra:-LinearSolve(theta,,free=f);
solve(theta, {M1,M2,M3});

//******************************************
theta := Matrix([[findM1[1,1]=0,findM1[2,1]=0,findM1[3,1]=0],[findM2[1,1]=0,findM2[2,1]=0,findM2[3,1]=0],[findM3[1,1]=0,findM3[2,1]=0,findM3[3,1]=0]]);
theta := Matrix([[findM1[1,1]=0,findM1[2,1]=0,findM1[3,1]=0],[findM2[1,1]=0,findM2[2,1]=0,findM2[3,1]=0],[0,findM3[2,1]=0,findM3[3,1]=0]]);
solve(theta, {M1,M2,M3});

theta := {findM1[1,1]+findM2[1,1]+findM3[1,1]=0,findM1[2,1]+findM2[2,1]+findM3[2,1]=0,findM1[3,1]+findM2[3,1]+findM3[3,1]=0};
solve(theta, {M1,M2,M3});

//******************************************
theta := {findM1[1,1]=0,findM1[2,1]=0,findM1[3,1]=0};
solve(theta, {M1,M2,M3,t});

theta := {findM2[1,1]=0,findM2[2,1]=0,findM2[3,1]=0};
solve(theta, {M1,M2,M3});

theta := {findM3[1,1]=0,findM3[2,1]=0,findM3[3,1]=0};
solve(theta, {M1,M2,M3});
//******************************************
theta := {findM1[1,1]=0,findM2[1,1]=0,findM3[1,1]=0};
solve(theta, {M1,M2,M3});

@Axel Vogt 

How to ignore N and compute to

res := abs(-1+a^2)*(signum(-1+a^2)^2+1)*csgn((a+1)/(a-1))*Pi/(-1+a^2)

any commands to do this?

@Axel Vogt 

How to ignore N and compute to

res := abs(-1+a^2)*(signum(-1+a^2)^2+1)*csgn((a+1)/(a-1))*Pi/(-1+a^2)

any commands to do this?

After running this code, it seems not the method to get the correct answer. as they are in terms of f1, f2...t ...

indeed,

evalm(theta&*Matrix([[M1],[M2],[M3]]));

is the original taste of my book. it is the most direct representation.

Any method to find the answer?

1 2 3 4 5 6 Page 1 of 6