Items tagged with differential differential Tagged Items Feed

Hi,

I'm trying to solve the following non-linear ODE numerically:

by ececuting

but maple gives me this error-message:

"Error, (in dsolve/numeric/make_proc) Could not convert to an explicit first order system due to 'RootOf'"

I couldnt find any useful information in the manual. What does this error mean? Is there something wrong with my maple code or is there just no solution for this particulare differential equation?

 

Thanks in advance

The ability of Maple to solve differential equations is unsurpassed, but when the solutions appear in terms of Heun functions that result is disappointing because it is either difficult or impossible to convert those functions to other functions more commonly used and for which plots are readily generated.

Specifically, does any reader have a suggestion what to do with Heun C and Heun G functions?  In principle, they seem to be related to 1F1 and 2F1 hypergeometric functions, but the conversion seems not to succeed, and it is not obvious how to make it succeed.  In both cases of interest, the literature contains hints of solutions in other functions.

It seems that a solution of a differential equation in terms of Heun functions is not a solution at all.

I'm trying to substitute one Differential equation into another differential equation.

 

eq1:=d*n(t)/dt = (rho(t)-beta)*n(t)/Lambda+lambda*C(t)+q

eq2:=diff(eq1, t)

resulting in -> eq2 := d*(diff(n(t), t))/dt = (diff(rho(t), t))*n(t)/Lambda+(rho(t)-beta)*(diff(n(t), t))/Lambda+lambda*(diff(C(t), t))

then I'm given that (diff(C(t), t)) is given by another equation: 

eq3:=d*C(t)/dt = beta*n(t)/Lambda-lambda*C(t)

 

At this point I'm trying to substitute equation 3 into equation 2 for diff(C(t),t)

eq4 := subs(diff(C(t), t) = rhs(eq2), eq5)

 

however no matter what way's I try this I get an error: 

Error, (in simpl/reloprod) invalid terms in product: (d*(diff(n(t), t))/dt = (diff(rho(t), t))*n(t)/Lambda+(rho(t)-beta)*(diff(n(t), t))/Lambda+lambda*(diff(C(t), t)))^-1

 

I then tried to map it but again i got an error specifically about the first parameter: 

Error, invalid operator parameter name

eq5:=map((d/dt C(t))->beta/Lambda*n(t)-lambda*C(t),eq2)

 

I'm just wondering if what I am trying to do is even possible in Maple? 

If anyone can help I would greatly appreciate it! 

Dear Maple enthusiasts,

I am unable to find a working method to solve a system of 8 equations, of which 4 are differential equations. The system contains 8 unknown variables and the goal is to find an expression for each of these variables as a function of the time t. I have attached the code of my project at the bottom of this message.

I have tried the following:

  1. Using solve/dsolve to solve all 8 equations at once. This results in Maple eating up all of my memory and never finishing its calculations.
  2. First using solve to solve the 4 non-differential equations so that I get 4 out of 8 variables as a function of the 4 remaining variables. This results in an expression containing RootOf() for each of the 4 veriables I'm solving for, which prevents me from using these expressions in the 4 remaining differential equations.
  3. First using dsolve to solve the differential equations, which gives once again an expression for 4 variables as a function of the 4 remaining variables. I then use solve to solve the 4 remaining equations with the new found expressions. This results in an extremely long solution for each of the variables.

The code below contains the 3rd option I tried.

Any help or suggestions would be greatly appreciated. I have been scratching my head so much that I'm getting bald and whatever I search for on google or in the Maple help, I can't find a good reference to a system of differential equations together with other equations.

 

 

restart:

PARK - Mixed control

 

 

Input parameters

 

 

Projected interface area (m²)

A_int:=0.025^2*Pi:

 

Temperature of the process (K)

T_proc:=1873:

 

Densities (kg/m³)

Rho_m:=7000: metal

Rho_s:=2850: slag

 

Masses (kg)

W_m:=0.5: metal

W_s:=0.075: slag

 

Mass transfer coefficients (m/s)

m_Al:=3*10^(-4):

m_Si:=3*10^(-4):

m_SiO2:=3*10^(-5):

m_Al2O3:=3*10^(-5):

 

Weight percentages in bulk at t=0 (%)

Pct_Al_b0:=0.3:

Pct_Si_b0:=0:

Pct_SiO2_b0:=5:

Pct_Al2O3_b0:=50:

 

Weight percentages in bulk at equilibrium (%)

Pct_Al_beq:=0.132:

Pct_Si_beq:=0.131:

Pct_SiO2_beq:=3.13:

Pct_Al2O3_beq:=52.12:

 

Weight percentages at the interface (%)

Constants

 

 

Atomic weights (g/mol)

AW_Al:=26.9815385:

AW_Si:=28.085:

AW_O:=15.999:

AW_Mg:=24.305:

AW_Ca:=40.078:

 

Molecular weights (g/mol)

MW_SiO2:=AW_Si+2*AW_O:

MW_Al2O3:=2*AW_Al+3*AW_O:

MW_MgO:=AW_Mg+AW_O:

MW_CaO:=AW_Ca+AW_O:

 

Gas constant (m³*Pa/[K*mol])

R_cst:=8.3144621:

 

Variables

 

 

with(PDEtools):
declare((Pct_Al_b(t),Pct_Al_i(t),Pct_Si_b(t),Pct_Si_i(t),Pct_SiO2_b(t),Pct_SiO2_i(t),Pct_Al2O3_b(t),Pct_Al2O3_i(t))(t),prime=t):

Equations

 

4 rate equations

 

 

Rate_eq1:=diff(Pct_Al_b(t),t)=-A_int*Rho_m*m_Al/W_m*(Pct_Al_b(t)-Pct_Al_i(t));

 

Rate_eq2:=diff(Pct_Si_b(t),t)=-A_int*Rho_m*m_Si/W_m*(Pct_Si_b(t)-Pct_Si_i(t));

 

Rate_eq3:=diff(Pct_SiO2_b(t),t)=-A_int*Rho_s*m_SiO2/W_s*(Pct_SiO2_b(t)-Pct_SiO2_i(t));

 

Rate_eq4:=diff(Pct_Al2O3_b(t),t)=-A_int*Rho_s*m_Al2O3/W_s*(Pct_Al2O3_b(t)-Pct_Al2O3_i(t));

 

3 mass balance equations

 

 

Mass_eq1:=0=(Pct_Al_b(t)-Pct_Al_i(t))+4*AW_Al/(3*AW_Si)*(Pct_Si_b(t)-Pct_Si_i(t));

 

Mass_eq2:=0=(Pct_Al_b(t)-Pct_Al_i(t))+4*Rho_s*m_SiO2*W_m*AW_Al/(3*Rho_m*m_Al*W_s*MW_SiO2)*(Pct_SiO2_b(t)-Pct_SiO2_i(t));

 

Mass_eq3:=0=(Pct_Al_b(t)-Pct_Al_i(t))+2*Rho_s*m_Al2O3*W_m*AW_Al/(Rho_m*m_Al*W_s*MW_Al2O3)*(Pct_Al2O3_b(t)-Pct_Al2O3_i(t));

 

1 local equilibrium equation

 

 

Gibbs free energy of the reaction when all of the reactants and products are in their standard states (J/mol). Al and Si activities are in 1 wt pct standard state in liquid Fe. SiO2 and Al2O3 activities are in respect to pure solid state.

 

delta_G0:=-720680+133*T_proc:

 

Expression of mole fractions as a function of weight percentages (whereby MgO is not taken into account, but instead replaced by CaO ?)

x_Al2O3_i(t):=(Pct_Al2O3_i(t)/MW_Al2O3)/(Pct_Al2O3_i(t)/MW_Al2O3 + Pct_SiO2_i(t)/MW_SiO2 + (100-Pct_SiO2_i(t)-Pct_Al2O3_i(t))/MW_CaO);
x_SiO2_i(t):=(Pct_SiO2_i(t)/MW_SiO2)/(Pct_Al2O3_i(t)/MW_Al2O3 + Pct_SiO2_i(t)/MW_SiO2 + (100-Pct_SiO2_i(t)-Pct_Al2O3_i(t))/MW_CaO);

 

Activity coefficients

Gamma_Al_Hry:=1: because very low percentage present  during the process (~Henry's law)

Gamma_Si_Hry:=1: because very low percentage present  during the process (~Henry's law)

Gamma_Al2O3_Ra:=1: temporary value!

Gamma_SiO2_Ra:=10^(-4.85279678314968+0.457486603678622*Pct_SiO2_b(t)); very small activity coefficient?
plot(10^(-4.85279678314968+0.457486603678622*Pct_SiO2_b),Pct_SiO2_b=3..7);

 

Activities of components

a_Al_Hry:=Gamma_Al_Hry*Pct_Al_i(t);
a_Si_Hry:=Gamma_Si_Hry*Pct_Si_i(t);
a_Al2O3_Ra:=Gamma_Al2O3_Ra*x_Al2O3_i(t);
a_SiO2_Ra:=Gamma_SiO2_Ra*x_SiO2_i(t);

 

Expressions for the equilibrium constant K

K_cst:=exp(-delta_G0/(R_cst*T_proc));

Equil_eq:=0=K_cst*a_Al_Hry^4*a_SiO2_Ra^3-a_Si_Hry^3*a_Al2O3_Ra^2;

 

Output

 

 

with(ListTools):
dsys:=Rate_eq1,Rate_eq2,Rate_eq3,Rate_eq4:
dvars:={Pct_Al2O3_b(t),Pct_SiO2_b(t),Pct_Al_b(t),Pct_Si_b(t)}:
dconds:=Pct_Al2O3_b(0)=Pct_Al2O3_b0,Pct_SiO2_b(0)=Pct_SiO2_b0,Pct_Si_b(0)=Pct_Si_b0,Pct_Al_b(0)=Pct_Al_b0:
dsol:=dsolve({dsys,dconds},dvars):

Pct_Al2O3_b(t):=rhs(select(has,dsol,Pct_Al2O3_b)[1]);
Pct_Al_b(t):=rhs(select(has,dsol,Pct_Al_b)[1]);
Pct_SiO2_b(t):=rhs(select(has,dsol,Pct_SiO2_b)[1]);
Pct_Si_b(t):=rhs(select(has,dsol,Pct_Si_b)[1]);

sys:={Equil_eq,Mass_eq1,Mass_eq2,Mass_eq3}:
vars:={Pct_Al2O3_i(t),Pct_SiO2_i(t),Pct_Al_i(t),Pct_Si_i(t)}:
sol:=solve(sys,vars);

,


Download Park_-_mixed_control_model.mw

Dear all,

It's very convenient to define a DE or PDE through Differential Operator D, for example,

((D[1, 1]+D[1, 2]+D[2, 2])(z))(x, y) = exp(x)*sin(y)

Is it possible to realize Inverse Operator Method of Operator D? How to solve the following equation if we rewrite the pde through inverse operator method?

(z)(x, y)=((D[1, 1]+D[1, 2]+D[2, 2])^(-1))exp(x)*sin(y)

 

Thanks a lot.

I am a problem with solve differential equation, please help me: THANKS 

g := (y^2-1)^2; I4 := int(g^4, y = -1 .. 1); I5 := 2*(int(g^3*(diff(g, y, y)), y = -1 .. 1)); I6 := int(g^3*(diff(g, y, y, y, y)), y = -1 .. 1); with(Student[Calculus1]); I10 := ApproximateInt(6/(1-f(x)*g)^2, y = -1 .. 1, method = simpson);

dsys3 := {I4*f(x)^2*(diff(f(x), x, x, x, x))+I5*f(x)^2*(diff(f(x), x, x))+I6*f(x)^3 = I10, f(-1) = 0, f(1) = 0, ((D@@1)(f))(-1) = 0, ((D@@1)(f))(1) = 0};

dsol5 := dsolve(dsys3, numeric, output = array([0.]));

              Error, (in dsolve/numeric/bvp) system is singular at left endpoint, use midpoint method instead

****************FORMAT TWO ********************************************************

g := (y^2-1)^2; I4 := int(g^4, y = -1 .. 1); I5 := 2*(int(g^3*(diff(g, y, y)), y = -1 .. 1)); I6 := int(g^3*(diff(g, y, y, y, y)), y = -1 .. 1); with(Student[Calculus1]); I10 := ApproximateInt(6/(1-f(x)*g)^2, y = -1 .. 1, method = simpson);
dsys3 := {I4*f(x)^2*(diff(f(x), x, x, x, x))+I5*f(x)^2*(diff(f(x), x, x))+I6*f(x)^3 = I10, f(-1) = 0, f(1) = 0, ((D@@1)(f))(-1) = 0, ((D@@1)(f))(1) = 0};

dsol5 := dsolve(dsys3, method = bvp[midrich], output = array([0.]));
%;
                                   Error, (in dsolve) too many levels of recursion

I DONT KNOW ABOUT THIS ERROR

PLEASE HELP ME

THANKS A LOT

 

Is it possible to solve piecewise differential equations directly instead of separating the pieces and solving them separately.

like for example if i have a two dimensional function f(t,x) whose dynamics is as follows:

dynamics:= piecewise((t,x) in D1, pde1, pde2); where D1 is some region in (t,x)-plane

now is it possible to solve this system with one pde call numerically?

pde(dynamics, boundary conditions, numeric); doesnot work

******************************************where d1 to d45 -kappa and chi are constant**********

dsys4 := {d1*h1(theta)+d2*(diff(h1(theta), theta, theta))+d3*(diff(h2(theta), theta))+d4*(diff(h2(theta), theta, theta, theta))+d5*h3(theta)+d6*(diff(h3(theta), theta, theta))+d7*(diff(h1(theta), theta, theta, theta, theta)) = 0, d8*h2(theta)+d9*(diff(h2(theta), theta, theta, theta, theta))+d10*(diff(h2(theta), theta, theta))+d11*(diff(h1(theta), theta))+d12*(diff(h1(theta), theta, theta, theta))+d13*(diff(h3(theta), theta))+d14*(diff(h3(theta), theta, theta, theta)) = 0, h3(theta)^5*(d16+ln(h3(theta))^2*d15+2*ln(h3(theta))*d17)+(diff(h3(theta), theta, theta))*h3(theta)^4*(d19+ln(h3(theta))^2*d18+2*ln(h3(theta))*d20)+(diff(h3(theta), theta, theta, theta, theta))*h3(theta)^4*(d22+ln(h3(theta))^2*d21+2*ln(h3(theta))*d23)+h1(theta)*h3(theta)^4*(d25+ln(h3(theta))^2*d24+2*ln(h3(theta))*d26)+(diff(h1(theta), theta, theta))*h3(theta)^4*(d28+ln(h3(theta))^2*d27+2*ln(h3(theta))*d29)+(diff(h2(theta), theta))*h3(theta)^4*(d31+ln(h3(theta))^2*d30+2*ln(h3(theta))*d32)+(diff(h2(theta), theta, theta, theta))*h3(theta)^4*(d34+ln(h3(theta))^2*d33+2*ln(h3(theta))*d35)+h3(theta)^4*(d37+ln(h3(theta))^2*d36+2*ln(h3(theta))*d38)+h3(theta)^4*(diff(h2(theta), theta, theta, theta, theta, theta, theta))*(d40+ln(h3(theta))^2*d39+2*ln(h3(theta))*d41)-beta*h3(theta)^3*d42-chi*ln(h3(theta))^2*d43/kappa-chi*d45/kappa-2*chi*ln(h3(theta))*d44/kappa = 0, h1(0) = 0, h1(1) = 0, h2(0) = 0, h2(1) = 0, h3(0) = 1, h3(1) = 1, ((D@@1)(h1))(0) = 0, ((D@@1)(h1))(1) = 0, ((D@@1)(h2))(0) = 0, ((D@@1)(h2))(1) = 0, ((D@@1)(h3))(0) = 0, ((D@@1)(h3))(1) = 0, ((D@@2)(h3))(0) = 0, ((D@@2)(h3))(1) = 0}; dsol6 := dsolve(dsys4, 'maxmesh' = 600, numeric, output = listprocedure)

Hi,

I would like a plot of the solution of this differential equation : diff(phi(x),x,x)=phi(x)*(Ep(x)-E) with for example Ep(x)=(1-exp-(x-2))^2 and E=0.5

 

So :

>restart;with(plots); xith(DEtools);

>Ep:=x->(1-exp-(x-2))^2;E:=0.5;

>sol:=dsolve({eq,phi(o)=0,D(phi)(0)=0},type=numeric,range=0..10);

>odeplot(sol);

but nothing appear in the plot except axes

Thanks for answer

 

hi.i encountered this erroe  [Error, (in dsolve/numeric/bvp/convertsys) unable to convert to an explicit first-order system] with solving set of differential equation.please help me.thanks a lot  

dsys3 := {`1`*h1(theta)+`1`*(diff(h1(theta), theta, theta))+`1`*(diff(h2(theta), theta))+`1`*(diff(h2(theta), theta, theta, theta))+`1`*h3(theta)+`1`*(diff(h3(theta), theta, theta))+`1`*(diff(h1(theta), theta, theta, theta, theta)) = 0, `1`*h2(theta)+`1`*(diff(h2(theta), theta, theta, theta, theta))+`1`*(diff(h2(theta), theta, theta))+`1`*(diff(h1(theta), theta))+`1`*(diff(h1(theta), theta, theta, theta))+`1`*(diff(h3(theta), theta))+`1`*(diff(h3(theta), theta, theta, theta)) = 0, h3(theta)^5*(`1`+ln(h3(theta))^2*`1`+2*ln(h3(theta))*`1`)+(diff(h3(theta), theta, theta))*h3(theta)^4*(`1`+ln(h3(theta))^2*`1`+2*ln(h3(theta))*`1`)+(diff(h3(theta), theta, theta, theta, theta))*h3(theta)^4*(`1`+ln(h3(theta))^2*`1`+2*ln(h3(theta))*`1`)+h1(theta)*h3(theta)^4*(`1`+ln(h3(theta))^2*`1`+2*ln(h3(theta))*`1`)+(diff(h1(theta), theta, theta))*h3(theta)^4*(`1`+ln(h3(theta))^2*`1`+2*ln(h3(theta))*`1`)+(diff(h2(theta), theta))*h3(theta)^4*(`1`+ln(h3(theta))^2*`1`+2*ln(h3(theta))*`1`)+(diff(h2(theta), theta, theta, theta))*h3(theta)^4*(`1`+ln(h3(theta))^2*`1`+2*ln(h3(theta))*`1`)+h3(theta)^4*(`1`+ln(h3(theta))^2*`1`+2*ln(h3(theta))*`1`)+h3(theta)^4*(diff(h2(theta), theta, theta, theta, theta, theta, theta))*(`1`+ln(h3(theta))^2*`1`+2*ln(h3(theta))*`1`)-beta*h3(theta)^3*`1`-chi*ln(h3(theta))^2*`1`/kappa-chi*`1`/kappa-2*chi*ln(h3(theta))*`1`/kappa = 0, h1(0) = 0, h1(1) = 0, h2(0) = 0, h2(1) = 0, h3(0) = 1, h3(1) = 1, ((D@@1)(h1))(0) = 0, ((D@@1)(h1))(1) = 0, ((D@@1)(h2))(0) = 0, ((D@@1)(h2))(1) = 0, ((D@@1)(h3))(0) = 0, ((D@@1)(h3))(1) = 0, ((D@@2)(h3))(0) = 0, ((D@@2)(h3))(1) = 0}; dsol5 := dsolve(dsys3, 'maxmesh' = 600, numeric, output = listprocedure);
%;
Error, (in dsolve/numeric/bvp/convertsys) unable to convert to an explicit first-order system

 

 Hi all,

i want to solve a system of differential equations in maple with "dsolve, numeric",

i got th error message: "Error, (in f) unable to store in Matrix ..."

what is the problem?

thanks a lot

Hello fellow maple users,im new to the software,im trying to solve a differential system but it dosent work

 

This is the system :

DE1 := diff(Y(t), t) = 5*Y(t)*ln(b(t)/Y(t))-5*Y(t)

DE2 := diff(b(t), t) = 5*b(t)*Y(t)^(3/2)-5*Y(t)

 

Thank you for your help !

hi everyone,i have two questions,
1. i have a problem with select command? 

restart:

eq[1]:=diff(a[1](x),x$2)+diff(a[1](x),x$1)*diff(a[2](x),x$1)+diff(a[1](x),x$2)*diff(a[2](x),x$2)+diff(a[3](x),x$1)+diff(a[1](x),x$1)*diff(a[2](x),x$2)+diff(a[1](x),x$2)*diff(a[3](x),x$1);

diff(diff(a[1](x), x), x)+(diff(a[1](x), x))*(diff(a[2](x), x))+(diff(diff(a[1](x), x), x))*(diff(diff(a[2](x), x), x))+diff(a[3](x), x)+(diff(a[1](x), x))*(diff(diff(a[2](x), x), x))+(diff(diff(a[1](x), x), x))*(diff(a[3](x), x))

(1)

# how can i select the differentials which are of second order ? without using the function names , for example i do not want to use this :

select(has,eq[1],[seq](diff(a[i](x),x$2),i=1..3));

diff(diff(a[1](x), x), x)+(diff(diff(a[1](x), x), x))*(diff(diff(a[2](x), x), x))+(diff(a[1](x), x))*(diff(diff(a[2](x), x), x))+(diff(diff(a[1](x), x), x))*(diff(a[3](x), x))

(2)

#i just want maple to select the second order differentials,without knowing its name # just beacuse it is of second order,how can i do this !?

2. how i can select the parts which their addition of differential oreder,are the same ? for example,the second expression in eq[1] has the addition order of 2,third has 4 and ... how can isolate addition order ? tnx in advance . 

Download select.mw

Hi,

how can I solve a set of first order, coupled, non-linear and inhomogeneous differential equations using MAPLE 12.

1 2 3 4 5 6 Page 1 of 6