Applications, Examples and Libraries

Share your work here

We have just released a new version of the Multivariate Calculus Study Guide.  It provides a new section on Vector Calculus, with over 100 additional worked problems, and makes extensive use of Maple’s Clickable Math tools as well as commands.

Existing study guide customers can get the new content via a free update, available through the Check for Updates system or from our website. See Multivariate Calculus Study Guide 2016 Update for details.

For more information about this guide, including a full table of contents, visit Multivariate Calculus Study Guide.

 

eithne

Hi,
The latest update to the differential equations Maple libraries (this week, can be downloaded from the Maplesoft R&D webpage for Differential Equations and Mathematical functions) includes new functionality in pdsolve, regarding whether the solution for a PDE or PDE system is or not a general solution.

In brief, a general solution of a PDE in 1 unknown, that has differential order N, and where the unknown depends on M independent variables, involves N arbitrary functions of M-1 arguments. It is not entirely evident how to extend this definition in the case of a coupled, possibly nonlinear PDE system. However, using differential algebra techniques (automatically used by pdsolve when tackling a PDE system), that extension to define a general solution for a DE system is possible, and also when the system involves ODEs and PDEs, and/or algebraic (that is, non-differential) equations, and/or inequations of the form algebraic*expression <> 0 involving the unknowns, and all of this in the presence of mathematical functions (based on the use of Maple's PDEtools:-dpolyform). This is a very nice case were many different advanced developments come together to naturally solve a problem that otherwise would be rather difficult.

The issues at the center of this Maple development/post are then:

        a) How do you know whether a PDE or PDE system solution returned is a general solution?

        b) How could you indicate to pdsolve that you are only interested in a general PDE or PDE system solution?

The answer to a) is now always present in the last line of the userinfo. So input infolevel[pdsolve] := 3 before calling pdsolve, and check what the last line of the userinfo displayed tells.


The answer to b) is a new option, generalsolution, implemented in pdsolve so that it either returns a general solution or otherwise it returns NULL. If you do not use this new option, then pdsolve works as always: first it tries to compute a general solution and if it fails in doing that it tries to compute a particular solution by separating the variables in different ways, or computing a traveling wave solution or etc. (a number of other well known methods).

 

The examples that follow are from the help page pdsolve,system, and show both the new userinfo telling whether the solution returned is a general one and the option generalsolution at work.The examples are all of differential equation systems but the same userinfos and generalsolution option work as well in the case of a single PDE.

 

 

Example 1.

Solve the determining PDE system for the infinitesimals of the symmetry generator of example 11 from Kamke's book . Tell whether the solution computed is or not a general solution.

infolevel[pdsolve] := 3

3

(1.1)

The PDE system satisfied by the symmetries of Kamke's ODE example number 11 is

sys__1 := [diff(xi(x, y), y, y) = 0, diff(eta(x, y), y, y)-2*(diff(xi(x, y), y, x)) = 0, 3*x^r*y^n*(diff(xi(x, y), y))*a+2*(diff(eta(x, y), y, x))-(diff(xi(x, y), x, x)) = 0, 2*(diff(xi(x, y), x))*x^r*y^n*a-x^r*y^n*(diff(eta(x, y), y))*a+eta(x, y)*a*x^r*y^n*n/y+xi(x, y)*a*x^r*r*y^n/x+diff(eta(x, y), x, x) = 0]

This is a second order linear PDE system, with two unknowns {eta(x, y), xi(x, y)} and four equations. Its general solution is given by the following, where we now can tell that the solution is a general one by reading the last line of the userinfo. Note that because the system is overdetermined, a general solution in this case does not involve any arbitrary function

sol__1 := pdsolve(sys__1)

-> Solving ordering for the dependent variables of the PDE system: [xi(x,y), eta(x,y)]

-> Solving ordering for the independent variables (can be changed using the ivars option): [x, y]
tackling triangularized subsystem with respect to xi(x,y)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to eta(x,y)
<- Returning a *general* solution

 

{eta(x, y) = -_C1*y*(r+2)/(n-1), xi(x, y) = _C1*x}

(1.2)

Next we indicate to pdsolve that n and r are parameters of the problem, and that we want a solution for n <> 1, making more difficult to identify by eye whether the solution returned is or not a general one. Again the last line of the userinfo tells that pdsolve's solution is indeed a general one

`sys__1.1` := [op(sys__1), n <> 1]

[diff(diff(xi(x, y), y), y) = 0, diff(diff(eta(x, y), y), y)-2*(diff(diff(xi(x, y), x), y)) = 0, 3*x^r*y^n*(diff(xi(x, y), y))*a+2*(diff(diff(eta(x, y), x), y))-(diff(diff(xi(x, y), x), x)) = 0, 2*(diff(xi(x, y), x))*x^r*y^n*a-x^r*y^n*(diff(eta(x, y), y))*a+eta(x, y)*a*x^r*y^n*n/y+xi(x, y)*a*x^r*r*y^n/x+diff(diff(eta(x, y), x), x) = 0, n <> 1]

(1.3)

`sol__1.1` := pdsolve(`sys__1.1`, parameters = {n, r})

-> Solving ordering for the dependent variables of the PDE system: [r, n, xi(x,y), eta(x,y)]

-> Solving ordering for the independent variables (can be changed using the ivars option): [x, y]
tackling triangularized subsystem with respect to r
tackling triangularized subsystem with respect to n
tackling triangularized subsystem with respect to xi(x,y)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to eta(x,y)
tackling triangularized subsystem with respect to r
tackling triangularized subsystem with respect to n
tackling triangularized subsystem with respect to xi(x,y)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to eta(x,y)
tackling triangularized subsystem with respect to r
tackling triangularized subsystem with respect to n
tackling triangularized subsystem with respect to xi(x,y)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to eta(x,y)
tackling triangularized subsystem with respect to n
tackling triangularized subsystem with respect to xi(x,y)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to eta(x,y)
tackling triangularized subsystem with respect to n
tackling triangularized subsystem with respect to xi(x,y)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to eta(x,y)
tackling triangularized subsystem with respect to xi(x,y)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to eta(x,y)
<- Returning a *general* solution

 

{n = 2, r = -5, eta(x, y) = y*(_C1*x+3*_C2), xi(x, y) = x*(_C1*x+_C2)}, {n = 2, r = -20/7, eta(x, y) = -(2/343)*(-6*_C1*x^2-98*x^(8/7)*_C1*a*y-147*_C2*a*x*y)/(x*a), xi(x, y) = _C1*x^(8/7)+_C2*x}, {n = 2, r = -15/7, eta(x, y) = -(1/343)*(-49*_C2*a*x*y-147*x^(6/7)*_C1*a*y+12*_C1*x)/(x*a), xi(x, y) = _C1*x^(6/7)+_C2*x}, {n = 2, r = r, eta(x, y) = -_C1*y*(r+2), xi(x, y) = _C1*x}, {n = -r-3, r = r, eta(x, y) = ((_C1*x+_C2)*r+4*_C1*x+2*_C2)*y/(r+4), xi(x, y) = x*(_C1*x+_C2)}, {n = n, r = r, eta(x, y) = -_C1*y*(r+2)/(n-1), xi(x, y) = _C1*x}

(1.4)

map(pdetest, [`sol__1.1`], `sys__1.1`)

[[0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0], [0, 0, 0, 0]]

(1.5)

 

Example 2.

Compute the solution of the following (linear) overdetermined system involving two PDEs, three unknown functions, one of which depends on 2 variables and the other two depend on only 1 variable.

sys__2 := [-(diff(F(r, s), r, r))+diff(F(r, s), s, s)+diff(H(r), r)+diff(G(s), s)+s = 0, diff(F(r, s), r, r)+2*(diff(F(r, s), r, s))+diff(F(r, s), s, s)-(diff(H(r), r))+diff(G(s), s)-r = 0]

The solution for the unknowns G, H, is given by the following expression, were again determining whether this solution, that depends on 3 arbitrary functions, _F1(s), _F2(r), _F3(s-r), is or not a general solution, is non-obvious.

sol__2 := pdsolve(sys__2)

-> Solving ordering for the dependent variables of the PDE system: [F(r,s), H(r), G(s)]

-> Solving ordering for the independent variables (can be changed using the ivars option): [r, s]
tackling triangularized subsystem with respect to F(r,s)
First set of solution methods (general or quasi general solution)
Trying differential factorization for linear PDEs ...
differential factorization successful.
First set of solution methods successful
tackling triangularized subsystem with respect to H(r)
tackling triangularized subsystem with respect to G(s)
<- Returning a *general* solution

 

{F(r, s) = _F1(s)+_F2(r)+_F3(s-r)-(1/12)*r^2*(r-3*s), G(s) = -(diff(_F1(s), s))-(1/4)*s^2+_C2, H(r) = diff(_F2(r), r)-(1/4)*r^2+_C1}

(1.6)

pdetest(sol__2, sys__2)

[0, 0]

(1.7)

Example 3.

Compute the solution of the following nonlinear system, consisting of Burger's equation and a possible potential.

sys__3 := [diff(u(x, t), t)+2*u(x, t)*(diff(u(x, t), x))-(diff(u(x, t), x, x)) = 0, diff(v(x, t), t) = -v(x, t)*(diff(u(x, t), x))+v(x, t)*u(x, t)^2, diff(v(x, t), x) = -u(x, t)*v(x, t)]

We see that in this case the solution returned is not a general solution but two particular ones; again the information is in the last line of the userinfo displayed

sol__3 := pdsolve(sys__3, [u, v])

-> Solving ordering for the dependent variables of the PDE system: [v(x,t), u(x,t)]

-> Solving ordering for the independent variables (can be changed using the ivars option): [x, t]
tackling triangularized subsystem with respect to v(x,t)
tackling triangularized subsystem with respect to u(x,t)
First set of solution methods (general or quasi general solution)
Second set of solution methods (complete solutions)
Trying methods for second order PDEs
Third set of solution methods (simple HINTs for separating variables)
PDE linear in highest derivatives - trying a separation of variables by *
HINT = *
Fourth set of solution methods
Trying methods for second order linear PDEs
Preparing a solution HINT ...
Trying HINT = _F1(x)*_F2(t)
Fourth set of solution methods
Preparing a solution HINT ...
Trying HINT = _F1(x)+_F2(t)
Trying travelling wave solutions as power series in tanh ...
* Using tau = tanh(t*C[2]+x*C[1]+C[0])
* Equivalent ODE system: {C[1]^2*(tau^2-1)^2*diff(diff(u(tau),tau),tau)+(2*C[1]^2*(tau^2-1)*tau+2*u(tau)*C[1]*(tau^2-1)+C[2]*(tau^2-1))*diff(u(tau),tau)}
* Ordering for functions: [u(tau)]
* Cases for the upper bounds: [[n[1] = 1]]
* Power series solution [1]: {u(tau) = tau*A[1,1]+A[1,0]}
* Solution [1] for {A[i, j], C[k]}: [[A[1,1] = 0], [A[1,0] = -1/2*C[2]/C[1], A[1,1] = -C[1]]]
travelling wave solutions successful.
tackling triangularized subsystem with respect to v(x,t)
First set of solution methods (general or quasi general solution)
Trying differential factorization for linear PDEs ...
Trying methods for PDEs "missing the dependent variable" ...
Second set of solution methods (complete solutions)
Trying methods for second order PDEs
Third set of solution methods (simple HINTs for separating variables)
PDE linear in highest derivatives - trying a separation of variables by *
HINT = *
Fourth set of solution methods
Trying methods for second order linear PDEs
Preparing a solution HINT ...
Trying HINT = _F1(x)*_F2(t)
Third set of solution methods successful
tackling triangularized subsystem with respect to u(x,t)
<- Returning a solution that *is not the most general one*

 

{u(x, t) = -_C2*tanh(_C2*x+_C3*t+_C1)-(1/2)*_C3/_C2, v(x, t) = 0}, {u(x, t) = -_c[1]^(1/2)*((exp(_c[1]^(1/2)*x))^2*_C1-_C2)/((exp(_c[1]^(1/2)*x))^2*_C1+_C2), v(x, t) = _C3*exp(_c[1]*t)*_C1*exp(_c[1]^(1/2)*x)+_C3*exp(_c[1]*t)*_C2/exp(_c[1]^(1/2)*x)}

(1.8)

pdetest(sol__3, sys__3)

[0, 0, 0]

(1.9)

This example is also good for illustrating the other related new feature: one can now request to pdsolve to only compute a general solution (it will return NULL if it cannot achieve that). Turn OFF userinfos and try with this example

infolevel[pdsolve] := 1

This returns NULL:

pdsolve(sys__3, [u, v], generalsolution)

Example 4.

Another where the solution returned is particular, this time for a linear system, conformed by 38 PDEs, also from differential equation symmetry analysis

sys__4 := [diff(xi[1](x, y, z, t, u), u) = 0, diff(xi[1](x, y, z, t, u), x)-(diff(xi[2](x, y, z, t, u), y)) = 0, diff(xi[2](x, y, z, t, u), u) = 0, -(diff(xi[1](x, y, z, t, u), y))-(diff(xi[2](x, y, z, t, u), x)) = 0, diff(xi[3](x, y, z, t, u), u) = 0, diff(xi[1](x, y, z, t, u), x)-(diff(xi[3](x, y, z, t, u), z)) = 0, -(diff(xi[3](x, y, z, t, u), y))-(diff(xi[2](x, y, z, t, u), z)) = 0, -(diff(xi[1](x, y, z, t, u), z))-(diff(xi[3](x, y, z, t, u), x)) = 0, diff(xi[4](x, y, z, t, u), u) = 0, diff(xi[3](x, y, z, t, u), t)-(diff(xi[4](x, y, z, t, u), z)) = 0, diff(xi[2](x, y, z, t, u), t)-(diff(xi[4](x, y, z, t, u), y)) = 0, diff(xi[1](x, y, z, t, u), t)-(diff(xi[4](x, y, z, t, u), x)) = 0, -(diff(xi[1](x, y, z, t, u), x))+diff(xi[4](x, y, z, t, u), t) = 0, diff(eta[1](x, y, z, t, u), y, y)+diff(eta[1](x, y, z, t, u), z, z)-(diff(eta[1](x, y, z, t, u), t, t))+diff(eta[1](x, y, z, t, u), x, x) = 0, diff(eta[1](x, y, z, t, u), u, u) = 0, diff(eta[1](x, y, z, t, u), u, x)+diff(xi[1](x, y, z, t, u), x, x) = 0, diff(xi[1](x, y, z, t, u), x, y)+diff(eta[1](x, y, z, t, u), u, y) = 0, -(diff(xi[1](x, y, z, t, u), y, y))+diff(eta[1](x, y, z, t, u), u, x) = 0, diff(xi[1](x, y, z, t, u), x, z)+diff(eta[1](x, y, z, t, u), u, z) = 0, diff(xi[1](x, y, z, t, u), y, z) = 0, -(diff(xi[1](x, y, z, t, u), z, z))+diff(eta[1](x, y, z, t, u), u, x) = 0, -(diff(eta[1](x, y, z, t, u), t, u))-(diff(xi[1](x, y, z, t, u), t, x)) = 0, diff(xi[1](x, y, z, t, u), t, y) = 0, diff(xi[1](x, y, z, t, u), t, z) = 0, diff(xi[1](x, y, z, t, u), t, t)+diff(eta[1](x, y, z, t, u), u, x) = 0, -(diff(xi[2](x, y, z, t, u), z, z))+diff(eta[1](x, y, z, t, u), u, y) = 0, diff(xi[2](x, y, z, t, u), t, z) = 0, diff(xi[2](x, y, z, t, u), t, t)+diff(eta[1](x, y, z, t, u), u, y) = 0, diff(xi[3](x, y, z, t, u), t, t)+diff(eta[1](x, y, z, t, u), u, z) = 0, diff(eta[1](x, y, z, t, u), u, x, x) = 0, diff(eta[1](x, y, z, t, u), u, x, y) = 0, diff(eta[1](x, y, z, t, u), u, y, y) = 0, diff(eta[1](x, y, z, t, u), u, x, z) = 0, diff(eta[1](x, y, z, t, u), u, y, z) = 0, diff(eta[1](x, y, z, t, u), u, z, z) = 0, diff(eta[1](x, y, z, t, u), t, u, x) = 0, diff(eta[1](x, y, z, t, u), t, u, y) = 0, diff(eta[1](x, y, z, t, u), t, u, z) = 0]

There are 38 coupled equations

nops(sys__4)

38

(1.10)

When requesting a general solution pdsolve returns NULL:

pdsolve(sys__4, generalsolution)

A solution that is not a general one, is however computed by default if calling pdsolve without the generalsolution option. In this case again the last line of the userinfo tells that the solution returned is not a general solution

infolevel[pdsolve] := 3

3

(1.11)

sol__4 := pdsolve(sys__4)

-> Solving ordering for the dependent variables of the PDE system: [eta[1](x,y,z,t,u), xi[1](x,y,z,t,u), xi[2](x,y,z,t,u), xi[3](x,y,z,t,u), xi[4](x,y,z,t,u)]

-> Solving ordering for the independent variables (can be changed using the ivars option): [t, x, y, z, u]
tackling triangularized subsystem with respect to eta[1](x,y,z,t,u)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
-> Solving ordering for the dependent variables of the PDE system: [_F1(x,y,z,t), _F2(x,y,z,t)]
-> Solving ordering for the independent variables (can be changed using the ivars option): [t, x, y, z, u]
tackling triangularized subsystem with respect to _F1(x,y,z,t)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
-> Solving ordering for the dependent variables of the PDE system: [_F3(x,y,z), _F4(x,y,z)]
-> Solving ordering for the independent variables (can be changed using the ivars option): [x, y, z, t]
tackling triangularized subsystem with respect to _F3(x,y,z)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to _F4(x,y,z)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
-> Solving ordering for the dependent variables of the PDE system: [_F5(y,z), _F6(y,z)]
-> Solving ordering for the independent variables (can be changed using the ivars option): [y, z, x]
tackling triangularized subsystem with respect to _F5(y,z)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to _F6(y,z)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
-> Solving ordering for the dependent variables of the PDE system: [_F7(z), _F8(z)]
-> Solving ordering for the independent variables (can be changed using the ivars option): [z, y]
tackling triangularized subsystem with respect to _F7(z)
tackling triangularized subsystem with respect to _F8(z)
tackling triangularized subsystem with respect to _F2(x,y,z,t)
First set of solution methods (general or quasi general solution)
Trying differential factorization for linear PDEs ...
Trying methods for PDEs "missing the dependent variable" ...
Second set of solution methods (complete solutions)
Third set of solution methods (simple HINTs for separating variables)
PDE linear in highest derivatives - trying a separation of variables by *
HINT = *
Fourth set of solution methods
Preparing a solution HINT ...
Trying HINT = _F3(x)*_F4(y)*_F5(z)*_F6(t)
Third set of solution methods successful

tackling triangularized subsystem with respect to xi[1](x,y,z,t,u)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
-> Solving ordering for the dependent variables of the PDE system: [_F1(x,z,t), _F2(x,z,t)]
-> Solving ordering for the independent variables (can be changed using the ivars option): [t, x, z, y]
tackling triangularized subsystem with respect to _F1(x,z,t)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to _F2(x,z,t)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful

-> Solving ordering for the dependent variables of the PDE system: [_F3(x,t), _F4(x,t)]
-> Solving ordering for the independent variables (can be changed using the ivars option): [t, x, z]
tackling triangularized subsystem with respect to _F3(x,t)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to _F4(x,t)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
-> Solving ordering for the dependent variables of the PDE system: [_F5(x), _F6(x)]
-> Solving ordering for the independent variables (can be changed using the ivars option): [x, t]
tackling triangularized subsystem with respect to _F5(x)
tackling triangularized subsystem with respect to _F6(x)
tackling triangularized subsystem with respect to xi[2](x,y,z,t,u)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
-> Solving ordering for the dependent variables of the PDE system: [_F1(t), _F2(t)]
-> Solving ordering for the independent variables (can be changed using the ivars option): [t, z]
tackling triangularized subsystem with respect to _F1(t)
tackling triangularized subsystem with respect to _F2(t)
tackling triangularized subsystem with respect to xi[3](x,y,z,t,u)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
tackling triangularized subsystem with respect to xi[4](x,y,z,t,u)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
First set of solution methods successful
<- Returning a solution that *is not the most general one*

 

{eta[1](x, y, z, t, u) = (_C13*(_C10*(exp(_c[3]^(1/2)*z))^2+_C11)*(_C8*(exp(_c[2]^(1/2)*y))^2+_C9)*(_C6*(exp(_c[1]^(1/2)*x))^2+_C7)*cos((-_c[1]-_c[2]-_c[3])^(1/2)*t)+_C12*(_C10*(exp(_c[3]^(1/2)*z))^2+_C11)*(_C8*(exp(_c[2]^(1/2)*y))^2+_C9)*(_C6*(exp(_c[1]^(1/2)*x))^2+_C7)*sin((-_c[1]-_c[2]-_c[3])^(1/2)*t)+u*exp(_c[1]^(1/2)*x)*exp(_c[2]^(1/2)*y)*exp(_c[3]^(1/2)*z)*(_C1*t+_C2*x+_C3*y+_C4*z+_C5))/(exp(_c[1]^(1/2)*x)*exp(_c[2]^(1/2)*y)*exp(_c[3]^(1/2)*z)), xi[1](x, y, z, t, u) = -(1/2)*_C2*x^2+(1/2)*(-2*_C1*t-2*_C3*y-2*_C4*z+2*_C17)*x+(1/2)*(-t^2+y^2+z^2)*_C2+_C16*t+_C15*z+_C14*y+_C18, xi[2](x, y, z, t, u) = -(1/2)*_C3*y^2+(1/2)*(-2*_C1*t-2*_C2*x-2*_C4*z+2*_C17)*y+(1/2)*(-t^2+x^2+z^2)*_C3+_C20*t+_C19*z-_C14*x+_C21, xi[3](x, y, z, t, u) = -(1/2)*_C4*z^2+(1/2)*(-2*_C1*t-2*_C2*x-2*_C3*y+2*_C17)*z+(1/2)*(-t^2+x^2+y^2)*_C4+_C22*t-_C19*y-_C15*x+_C23, xi[4](x, y, z, t, u) = -(1/2)*_C1*t^2+(1/2)*(-2*_C2*x-2*_C3*y-2*_C4*z+2*_C17)*t+(1/2)*(-x^2-y^2-z^2)*_C1+_C20*y+_C22*z+_C16*x+_C24}

(1.12)

pdetest(sol__4, sys__4)

[0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

(1.13)

Example 5.

Finally, the new userinfos also tell whether a solution is or not a general solution when working with PDEs that involve anticommutative variables  set using the Physics  package

with(Physics, Setup)

[Setup]

(1.14)

Set first theta and Q as suffixes for variables of type/anticommutative  (see Setup )

Setup(anticommutativepre = {Q, theta})

`* Partial match of  'anticommutativepre' against keyword 'anticommutativeprefix'`

 

[anticommutativeprefix = {Q, _lambda, theta}]

(1.15)

A PDE system example with two unknown anticommutative functions of four variables, two commutative and two anticommutative; to avoid redundant typing in the input that follows and redundant display of information on the screen let's use PDEtools:-diff_table   PDEtools:-declare

PDEtools:-declare(Q(x, y, theta[1], theta[2]))

Q(x, y, theta[1], theta[2])*`will now be displayed as`*Q

(1.16)

q := PDEtools:-diff_table(Q(x, y, theta[1], theta[2]))

table( [(  ) = Q(x, y, theta[1], theta[2]) ] )

(1.17)

Consider the system formed by these two PDEs (because of the q diff_table just defined, we can enter derivatives directly using the function's name indexed by the differentiation variables)

pde[1] := q[x, y, theta[1]]+q[x, y, theta[2]]-q[y, theta[1], theta[2]] = 0

Physics:-diff(diff(diff(Q(x, y, theta[1], theta[2]), x), y), theta[1])+Physics:-diff(diff(diff(Q(x, y, theta[1], theta[2]), x), y), theta[2])-Physics:-diff(Physics:-diff(diff(Q(x, y, theta[1], theta[2]), y), theta[1]), theta[2]) = 0

(1.18)

pde[2] := q[theta[1]] = 0

Physics:-diff(Q(x, y, theta[1], theta[2]), theta[1]) = 0

(1.19)

The solution returned for this system is indeed a general solution

pdsolve([pde[1], pde[2]])

-> Solving ordering for the dependent variables of the PDE system: [_F4(x,y), _F2(x,y), _F3(x,y)]

-> Solving ordering for the independent variables (can be changed using the ivars option): [x, y]
tackling triangularized subsystem with respect to _F4(x,y)
tackling triangularized subsystem with respect to _F2(x,y)
tackling triangularized subsystem with respect to _F3(x,y)
First set of solution methods (general or quasi general solution)
Trying simple case of a single derivative.
HINT = _F6(x)+_F5(y)
Trying HINT = _F6(x)+_F5(y)
HINT is successful
First set of solution methods successful
<- Returning a *general* solution

 

Q(x, y, theta[1], theta[2]) = _F1(x, y)*_lambda1+(_F6(x)+_F5(y))*theta[2]

(1.20)

NULL

This solution involves an anticommutative constant `_&lambda;2`, analogous to the commutative constants _Cn where n is an integer.

 

Download PDE_general_solutions.mw

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


Hi

New developments (after the release of Maple 2016) happened in the project on exact solutions for "Partial Differential Equations & Boundary Conditions". This is work in collaboration with Katherina von Bulow and the improvements are of wide range, representing a noticeable step forward in the capabilities of the Maple system for this kind of problem. As usual, these improvements can be installed in current Maple 2016 by downloading the updated library from the Maplesoft R&D webpage for Differential Equations and Mathematical functions (the update is distributed merged with the updates of the Physics package)

 

The improvements cover:

 

• 

PDE&BC in semi-infinite domains for which a bounded solution is sought

• 

PDE & BC problems in bounded spatial domains via eigenfunction (Fourier) expansions

• 

Implementation of another algebraic method for tackling linear PDE & BC

• 

Improvements in solving PDE & BC solutions by first finding the PDE's general solution.

• 

Improvements in solving PDE & BC problems by using a Fourier transform.

• 

PDE & BC problems that used to require the option HINT = `+` are now solved automatically

 

What follows is a set of examples solved now with these new developments, organized in sections according to the kind of problem. Where relevant, the sections include a subsection on "How it works step by step".

PDE&BC in semi-infinite domains for which a bounded solution is sought can now also be solved via Laplace transforms

 

Maple is now able to solve more PDE&BC problems via Laplace transforms.

 

How it works: Laplace transforms act to change derivatives with respect to one of the independent variables of the domain into multiplication operations in the transformed domain. After applying a Laplace transform to the original problem, we can simplify the problem using the transformed BC, then solve the problem in the transformed domain, and finally apply the inverse Laplace transform to arrive at the final solution. It is important to remember to give pdsolve any necessary restrictions on the variables and constants of the problem, by means of the "assuming" command.

 

A new feature is that we can now tell pdsolve that the dependent variable is bounded, by means of the optional argument HINT = boundedseries.

 

restart

 

Consider the problem of a falling cable lying on a table that is suddenly removed (cf. David J. Logan's Applied Partial Differential Equations p.115).

pde[1] := diff(u(x, t), t, t) = c^2*(diff(u(x, t), x, x))-g
iv[1] := u(x, 0) = 0, u(0, t) = 0, (D[2](u))(x, 0) = 0

 

If we ask pdsolve to solve this problem without the condition of boundedness of the solution, we obtain:

`assuming`([pdsolve([pde[1], iv[1]])], [0 < t, 0 < x, 0 < c])

u(x, t) = -invlaplace(exp(s*x/c)*_F1(s), s, t)+invlaplace(exp(-s*x/c)*_F1(s), s, t)-(1/2)*g*t^2+invlaplace(exp(s*x/c)/s^3, s, t)*g

(1.1)

New: If we now ask for a bounded solution, by means of the option HINT = boundedseries, pdsolve simplifies the problem accordingly.

ans[1] := `assuming`([pdsolve([pde[1], iv[1]], HINT = boundedseries)], [0 < t, 0 < x, 0 < c])

u(x, t) = (1/2)*g*(Heaviside(t-x/c)*(c*t-x)^2-c^2*t^2)/c^2

(1.2)

 

And we can check this answer against the original problem, if desired:

`assuming`([pdetest(ans[1], [pde[1], iv[1]])], [0 < t, 0 < x, 0 < c])

[0, 0, 0, 0]

(1.3)

How it works, step by step

 

 Let us see the process this problem undergoes to be solved by pdsolve, step by step.

 

First, the Laplace transform is applied to the PDE:

with(inttrans)

transformed_PDE := laplace((lhs-rhs)(pde[1]), t, s)

s^2*laplace(u(x, t), t, s)-(D[2](u))(x, 0)-s*u(x, 0)-c^2*(diff(diff(laplace(u(x, t), t, s), x), x))+g/s

(1.1.1)

and the result is simplified using the initial conditions:

simplified_transformed_PDE := eval(transformed_PDE, {iv[1]})

s^2*laplace(u(x, t), t, s)-c^2*(diff(diff(laplace(u(x, t), t, s), x), x))+g/s

(1.1.2)

Next, we call the function "laplace(u(x,t),t,s)" by the new name U:

eq_U := subs(laplace(u(x, t), t, s) = U(x, s), simplified_transformed_PDE)

s^2*U(x, s)-c^2*(diff(diff(U(x, s), x), x))+g/s

(1.1.3)

And this equation, which is really an ODE, is solved:

solution_U := dsolve(eq_U, U(x, s))

U(x, s) = exp(-s*x/c)*_F2(s)+exp(s*x/c)*_F1(s)-g/s^3

(1.1.4)

Now, since we want a BOUNDED solution, the term with the positive exponential must be zero, and we are left with:

bounded_solution_U := subs(coeff(rhs(solution_U), exp(s*x/c)) = 0, solution_U)

U(x, s) = exp(-s*x/c)*_F2(s)-g/s^3

(1.1.5)

Now, the initial solution must also be satisfied. Here it is, in the transformed domain:

Laplace_BC := laplace(u(0, t), t, s) = 0

laplace(u(0, t), t, s) = 0

(1.1.6)

Or, in the new variable U,

Laplace_BC_U := U(0, s) = 0

U(0, s) = 0

(1.1.7)

And by applying it to bounded_solution_U, we find the relationship

simplify(subs(x = 0, rhs(bounded_solution_U))) = 0

(_F2(s)*s^3-g)/s^3 = 0

(1.1.8)

isolate((_F2(s)*s^3-g)/s^3 = 0, indets((_F2(s)*s^3-g)/s^3 = 0, unknown)[1])

_F2(s) = g/s^3

(1.1.9)

so that our solution now becomes

bounded_solution_U := subs(_F2(s) = g/s^3, bounded_solution_U)

U(x, s) = exp(-s*x/c)*g/s^3-g/s^3

(1.1.10)

to which we now apply the inverse Laplace transform to obtain the solution to the problem:

`assuming`([u(x, t) = invlaplace(rhs(bounded_solution_U), s, t)], [0 < x, 0 < t, 0 < c])

u(x, t) = (1/2)*g*(-t^2+Heaviside(t-x/c)*(c*t-x)^2/c^2)

(1.1.11)

Four other related examples

 

A few other examples:

pde[2] := diff(u(x, t), t, t) = c^2*(diff(u(x, t), x, x))
iv[2] := u(x, 0) = 0, u(0, t) = g(t), (D[2](u))(x, 0) = 0

ans[2] := `assuming`([pdsolve([pde[2], iv[2]], HINT = boundedseries)], [0 < t, 0 < x, 0 < c])

u(x, t) = Heaviside(t-x/c)*g((c*t-x)/c)

(1.2.1)

`assuming`([pdetest(ans[2], [pde[2], iv[2]])], [0 < t, 0 < x, 0 < c])

[0, 0, 0, 0]

(1.2.2)

pde[3] := diff(u(x, t), t) = k*(diff(u(x, t), x, x)); iv[3] := u(x, 0) = 0, u(0, t) = 1

ans[3] := `assuming`([pdsolve([pde[3], iv[3]], HINT = boundedseries)], [0 < t, 0 < x, 0 < k])

u(x, t) = 1-erf((1/2)*x/(t^(1/2)*k^(1/2)))

(1.2.3)

pdetest(ans[3], [pde[3], iv[3][2]])

[0, 0]

(1.2.4)

pde[4] := diff(u(x, t), t) = k*(diff(u(x, t), x, x)); iv[4] := u(x, 0) = mu, u(0, t) = lambda

ans[4] := `assuming`([pdsolve([pde[4], iv[4]], HINT = boundedseries)], [0 < t, 0 < x, 0 < k])

u(x, t) = (-lambda+mu)*erf((1/2)*x/(t^(1/2)*k^(1/2)))+lambda

(1.2.5)

pdetest(ans[4], [pde[4], iv[4][2]])

[0, 0]

(1.2.6)

 

The following is an example from page 76 in Logan's book:

pde[5] := diff(u(x, t), t) = diff(u(x, t), x, x)
iv[5] := u(x, 0) = 0, u(0, t) = f(t)

ans[5] := `assuming`([pdsolve([pde[5], iv[5]], HINT = boundedseries)], [0 < t, 0 < x])

u(x, t) = (1/2)*x*(int(f(_U1)*exp(-x^2/(4*t-4*_U1))/(t-_U1)^(3/2), _U1 = 0 .. t))/Pi^(1/2)

(1.2.7)

More PDE&BC problems in bounded spatial domains can now be solved via eigenfunction (Fourier) expansions

 

The code for solving PDE&BC problems in bounded spatial domains has been expanded. The method works by separating the variables by product, so that the problem is transformed into an ODE system (with initial and/or boundary conditions) problem, one of which is a Sturm-Liouville problem (a type of eigenvalue problem) which has infinitely many solutions - hence the infinite series representation of the solutions.

restart

 

Here is a simple example for the heat equation:

pde__6 := diff(u(x, t), t) = k*(diff(u(x, t), x, x)); iv__6 := u(0, t) = 0, u(l, t) = 0

ans__6 := `assuming`([pdsolve([pde__6, iv__6])], [0 < l])

u(x, t) = Sum(_C1*sin(_Z1*Pi*x/l)*exp(-k*Pi^2*_Z1^2*t/l^2), _Z1 = 1 .. infinity)

(2.1)

pdetest(ans__6, [pde__6, iv__6])

[0, 0, 0]

(2.2)

 

Now, consider the displacements of a string governed by the wave equation, where c is a constant (cf. Logan p.28).

pde__7 := diff(u(x, t), t, t) = c^2*(diff(u(x, t), x, x))
iv__7 := u(0, t) = 0, u(l, t) = 0

ans__7 := `assuming`([pdsolve([pde__7, iv__7])], [0 < l])

u(x, t) = Sum(sin(_Z2*Pi*x/l)*(sin(c*_Z2*Pi*t/l)*_C1+cos(c*_Z2*Pi*t/l)*_C5), _Z2 = 1 .. infinity)

(2.3)

pdetest(ans__7, [pde__7, iv__7])

[0, 0, 0]

(2.4)

Another wave equation problem (cf. Logan p.130):

pde__8 := diff(u(x, t), t, t)-c^2*(diff(u(x, t), x, x)) = 0; iv__8 := u(0, t) = 0, (D[2](u))(x, 0) = 0, (D[1](u))(l, t) = 0, u(x, 0) = f(x)

ans__8 := `assuming`([pdsolve([pde__8, iv__8], u(x, t))], [0 <= x, x <= l])

u(x, t) = Sum(2*(Int(f(x)*sin((1/2)*Pi*(2*_Z3+1)*x/l), x = 0 .. l))*sin((1/2)*Pi*(2*_Z3+1)*x/l)*cos((1/2)*c*Pi*(2*_Z3+1)*t/l)/l, _Z3 = 1 .. infinity)

(2.5)

pdetest(ans__8, [pde__8, iv__8[1 .. 3]])

[0, 0, 0, 0]

(2.6)

 

Here is a problem with periodic boundary conditions (cf. Logan p.131). The function u(x, t) stands for the concentration of a chemical dissolved in water within a tubular ring of circumference 2*l. The initial concentration is given by f(x), and the variable x is the arc-length parameter that varies from 0 to 2*l.

pde__9 := diff(u(x, t), t) = M*(diff(u(x, t), x, x))
iv__9 := u(0, t) = u(2*l, t), (D[1](u))(0, t) = (D[1](u))(2*l, t), u(x, 0) = f(x)

ans__9 := `assuming`([pdsolve([pde__9, iv__9], u(x, t))], [0 <= x, x <= 2*l])

u(x, t) = (1/2)*_C8+Sum(((Int(f(x)*sin(_Z4*Pi*x/l), x = 0 .. 2*l))*sin(_Z4*Pi*x/l)+(Int(f(x)*cos(_Z4*Pi*x/l), x = 0 .. 2*l))*cos(_Z4*Pi*x/l))*exp(-M*Pi^2*_Z4^2*t/l^2)/l, _Z4 = 1 .. infinity)

(2.7)

pdetest(ans__9, [pde__9, iv__9[1 .. 2]])

[0, 0, 0]

(2.8)

 

The following problem is for heat flow with both boundaries insulated (cf. Logan p.166, 3rd edition)

pde__10 := diff(u(x, t), t) = k*(diff(u(x, t), x, x))
iv__10 := (D[1](u))(0, t) = 0, (D[1](u))(l, t) = 0, u(x, 0) = f(x)

ans__10 := `assuming`([pdsolve([pde__10, iv__10], u(x, t))], [0 <= x, x <= l])

u(x, t) = Sum(2*(Int(f(x)*cos(_Z6*Pi*x/l), x = 0 .. l))*cos(_Z6*Pi*x/l)*exp(-k*Pi^2*_Z6^2*t/l^2)/l, _Z6 = 1 .. infinity)

(2.9)

pdetest(ans__10, [pde__10, iv__10[1 .. 2]])

[0, 0, 0]

(2.10)

 

This is a problem in a bounded domain with the presence of a source. A source term represents an outside influence in the system and leads to an inhomogeneous PDE (cf. Logan p.149):

pde__11 := diff(u(x, t), t, t)-c^2*(diff(u(x, t), x, x)) = p(x, t)
iv__11 := u(0, t) = 0, u(Pi, t) = 0, u(x, 0) = 0, (D[2](u))(x, 0) = 0

ans__11 := pdsolve([pde__11, iv__11], u(x, t))

u(x, t) = Int(Sum(2*(Int(p(x, tau1)*sin(_Z7*x), x = 0 .. Pi))*sin(_Z7*x)*sin(c*_Z7*(t-tau1))/(Pi*_Z7*c), _Z7 = 1 .. infinity), tau1 = 0 .. t)

(2.11)

Current pdetest is unable to verify that this solution cancells the pde__11 mainly because it currently fails in identifying that there is a fourier expansion in it, but its subroutines for testing the boundary conditions work well with this problem

pdetest_BC := `pdetest/BC`

pdetest_BC({ans__11}, [iv__11], [u(x, t)])

[0, 0, 0, 0]

(2.12)

 

 

Consider a heat absorption-radiation problem in the bounded domain 0 <= x and x <= 2, t >= 0:

pde__12 := diff(u(x, t), t) = diff(u(x, t), x, x)
iv__12 := u(x, 0) = f(x), (D[1](u))(0, t)+u(0, t) = 0, (D[1](u))(2, t)+u(2, t) = 0

ans__12 := `assuming`([pdsolve([pde__12, iv__12], u(x, t))], [0 <= x and x <= 2, 0 <= t])

u(x, t) = (1/2)*_C8+Sum(((Int(f(x)*cos((1/2)*_Z8*Pi*x), x = 0 .. 2))*cos((1/2)*_Z8*Pi*x)+(Int(f(x)*sin((1/2)*_Z8*Pi*x), x = 0 .. 2))*sin((1/2)*_Z8*Pi*x))*exp(-(1/4)*Pi^2*_Z8^2*t), _Z8 = 1 .. infinity)

(2.13)

pdetest(ans__12, pde__12)

0

(2.14)

Consider the nonhomogeneous wave equation problem (cf. Logan p.213, 3rd edition):

pde__13 := diff(u(x, t), t, t) = A*x+diff(u(x, t), x, x)
iv__13 := u(0, t) = 0, u(1, t) = 0, u(x, 0) = 0, (D[2](u))(x, 0) = 0

ans__13 := pdsolve([pde__13, iv__13])

u(x, t) = Int(Sum(2*A*(Int(x*sin(Pi*_Z9*x), x = 0 .. 1))*sin(Pi*_Z9*x)*sin(Pi*_Z9*(t-tau1))/(Pi*_Z9), _Z9 = 1 .. infinity), tau1 = 0 .. t)

(2.15)

pdetest_BC({ans__13}, [iv__13], [u(x, t)])

[0, 0, 0, 0]

(2.16)

 

Consider the following Schrödinger equation with zero potential energy (cf. Logan p.30):

pde__14 := I*h*(diff(f(x, t), t)) = -h^2*(diff(f(x, t), x, x))/(2*m)
iv__14 := f(0, t) = 0, f(d, t) = 0

ans__14 := `assuming`([pdsolve([pde__14, iv__14])], [0 < d])

f(x, t) = Sum(_C1*sin(_Z10*Pi*x/d)*exp(-((1/2)*I)*h*Pi^2*_Z10^2*t/(d^2*m)), _Z10 = 1 .. infinity)

(2.17)

pdetest(ans__14, [pde__14, iv__14])

[0, 0, 0]

(2.18)

Another method has been implemented for linear PDE&BC

 

This method is for problems of the form

 

 "(&PartialD;w)/(&PartialD;t)=M[w]"", w(`x__i`,0) = f(`x__i`)" or

 

"((&PartialD;)^2w)/((&PartialD;)^( )t^2)="M[w]", w(`x__i`,0) = f(`x__i`), (&PartialD;w)/(&PartialD;t)() ? ()|() ? (t=0) =g(`x__i`)"

 

where M is an arbitrary linear differential operator of any order which only depends on the spatial variables x__i.

 

Here are some examples:

pde__15 := diff(w(x1, x2, x3, t), t)-(diff(w(x1, x2, x3, t), x2, x1))-(diff(w(x1, x2, x3, t), x3, x1))-(diff(w(x1, x2, x3, t), x3, x3))+diff(w(x1, x2, x3, t), x3, x2) = 0
iv__15 := w(x1, x2, x3, 0) = x1^5*x2*x3NULL

pdsolve([pde__15, iv__15])

w(x1, x2, x3, t) = 20*(((1/20)*x2*x3-(1/20)*t)*x1^2+(1/4)*t*(x2+x3)*x1+t^2)*x1^3

(3.1)

pdetest(%, [pde__15, iv__15])

[0, 0]

(3.2)

 

Here are two examples for which the derivative with respect to t is of the second order, and two initial conditions are given:

pde__16 := diff(w(x1, x2, x3, t), t, t) = diff(w(x1, x2, x3, t), x2, x1)+diff(w(x1, x2, x3, t), x3, x1)+diff(w(x1, x2, x3, t), x3, x3)-(diff(w(x1, x2, x3, t), x3, x2))
iv__16 := w(x1, x2, x3, 0) = x1^3*x2^2+x3, (D[4](w))(x1, x2, x3, 0) = -x2*x3+x1

pdsolve([pde__16, iv__16])

w(x1, x2, x3, t) = x1^3*x2^2+x3-t*x2*x3+t*x1+3*t^2*x2*x1^2+(1/6)*t^3+(1/2)*t^4*x1

(3.3)

pdetest(%, [pde__16, iv__16])

[0, 0, 0]

(3.4)

pde__17 := diff(w(x1, x2, x3, t), t, t) = diff(w(x1, x2, x3, t), x2, x1)+diff(w(x1, x2, x3, t), x3, x1)+diff(w(x1, x2, x3, t), x3, x3)-(diff(w(x1, x2, x3, t), x3, x2))
iv__17 := w(x1, x2, x3, 0) = x1^3*x3^2+sin(x1), (D[4](w))(x1, x2, x3, 0) = cos(x1)-x2*x3

pdsolve([pde__17, iv__17])

w(x1, x2, x3, t) = (1/2)*t^4*x1+t^2*x1^3+3*t^2*x1^2*x3+x1^3*x3^2+(1/6)*t^3-t*x2*x3+cos(x1)*t+sin(x1)

(3.5)

pdetest(%, [pde__17, iv__17])

[0, 0, 0]

(3.6)

More PDE&BC problems are now solved via first finding the PDE's general solution.

 

The following are examples of PDE&BC problems for which pdsolve is successful in first calculating the PDE's general solution, and then fitting the initial or boundary condition to it.

pde__18 := diff(u(x, y), x, x)+diff(u(x, y), y, y) = 0
iv__18 := u(0, y) = sin(y)/y

If we ask pdsolve to solve the problem, we get:

ans__18 := pdsolve([pde__18, iv__18])

u(x, y) = (sin(-y+I*x)+_F2(y-I*x)*(y-I*x)+(-y+I*x)*_F2(y+I*x))/(-y+I*x)

(4.1)

and we can check this answer by using pdetest:

pdetest(ans__18, [pde__18, iv__18])

[0, 0]

(4.2)

How it works, step by step:

 

The general solution for just the PDE is:

gensol := pdsolve(pde__18)

u(x, y) = _F1(y-I*x)+_F2(y+I*x)

(4.1.1)

Substituting in the condition iv__18, we get:

u(0, y) = sin(y)/y

(4.1.2)

gensol_with_condition := eval(rhs(gensol), x = 0) = rhs(iv__18)

_F1(y)+_F2(y) = sin(y)/y

(4.1.3)

We then isolate one of the functions above (we can choose either one, in this case), convert it into a function operator, and then apply it to gensol

_F1 = unapply(solve(_F1(y)+_F2(y) = sin(y)/y, _F1(y)), y)

_F1 = (proc (y) options operator, arrow; (-_F2(y)*y+sin(y))/y end proc)

(4.1.4)

eval(gensol, _F1 = (proc (y) options operator, arrow; (-_F2(y)*y+sin(y))/y end proc))

u(x, y) = (-_F2(y-I*x)*(y-I*x)-sin(-y+I*x))/(y-I*x)+_F2(y+I*x)

(4.1.5)

 

 

Three other related examples

 

pde__19 := diff(u(x, y), x, x)+(1/2)*(diff(u(x, y), y, y)) = 0
iv__19 := u(0, y) = sin(y)/y

pdsolve([pde__19, iv__19])

u(x, y) = (2*sin(-y+((1/2)*I)*2^(1/2)*x)+(-I*2^(1/2)*x+2*y)*_F2(y-((1/2)*I)*2^(1/2)*x)+(I*2^(1/2)*x-2*y)*_F2(y+((1/2)*I)*2^(1/2)*x))/(I*2^(1/2)*x-2*y)

(4.2.1)

pdetest(%, [pde__19, iv__19])

[0, 0]

(4.2.2)

pde__20 := diff(u(x, y), x, x)+(1/2)*(diff(u(x, y), y, y)) = 0
iv__20 := u(x, 0) = sin(x)/x

pdsolve([pde__20, iv__20])

u(x, y) = (sinh((1/2)*(I*2^(1/2)*x-2*y)*2^(1/2))*2^(1/2)-(I*2^(1/2)*x-2*y)*(_F2(-y+((1/2)*I)*2^(1/2)*x)-_F2(y+((1/2)*I)*2^(1/2)*x)))/(I*2^(1/2)*x-2*y)

(4.2.3)

pdetest(%, [pde__20, iv__20])

[0, 0]

(4.2.4)

pde__21 := diff(u(r, t), r, r)+(diff(u(r, t), r))/r+(diff(u(r, t), t, t))/r^2 = 0
iv__21 := u(3, t) = sin(6*t)

ans__21 := pdsolve([pde__21, iv__21])

u(r, t) = -_F2(-(2*I)*ln(3)+I*ln(r)+t)+sin(-(6*I)*ln(3)+(6*I)*ln(r)+6*t)+_F2(-I*ln(r)+t)

(4.2.5)

pdetest(ans__21, [pde__21, iv__21])

[0, 0]

(4.2.6)

More PDE&BC problems are now solved by using a Fourier transform.

 

restart

Consider the following problem with an initial condition:

pde__22 := diff(u(x, t), t) = diff(u(x, t), x, x)+m
iv__22 := u(x, 0) = sin(x)

 

pdsolve can solve this problem directly:

ans__22 := pdsolve([pde__22, iv__22])

u(x, t) = sin(x)*exp(-t)+m*t

(5.1)

And we can check this answer against the original problem, if desired:

pdetest(ans__22, [pde__22, iv__22])

[0, 0]

(5.2)

How it works, step by step

 

Similarly to the Laplace transform method, we start the solution process by first applying the Fourier transform to the PDE:

with(inttrans)

transformed_PDE := fourier((lhs-rhs)(pde__22) = 0, x, s)

-2*m*Pi*Dirac(s)+s^2*fourier(u(x, t), x, s)+diff(fourier(u(x, t), x, s), t) = 0

(5.1.1)

Next, we call the function "fourier(u(x,t),x,s1)" by the new name U:

transformed_PDE_U := subs(fourier(u(x, t), x, s) = U(t, s), transformed_PDE)

-2*m*Pi*Dirac(s)+s^2*U(t, s)+diff(U(t, s), t) = 0

(5.1.2)

And this equation, which is really an ODE, is solved:

solution_U := dsolve(transformed_PDE_U, U(t, s))

U(t, s) = (2*m*Pi*Dirac(s)*t+_F1(s))*exp(-s^2*t)

(5.1.3)

Now, we apply the Fourier transform to the initial condition iv__22:

u(x, 0) = sin(x)

(5.1.4)

transformed_IC := fourier(iv__22, x, s)

fourier(u(x, 0), x, s) = I*Pi*(Dirac(s+1)-Dirac(s-1))

(5.1.5)

Or, in the new variable U,

trasnformed_IC_U := U(0, s) = rhs(transformed_IC)

U(0, s) = I*Pi*(Dirac(s+1)-Dirac(s-1))

(5.1.6)

Now, we evaluate solution_U at t = 0:

solution_U_at_IC := eval(solution_U, t = 0)

U(0, s) = _F1(s)

(5.1.7)

and substitute the transformed initial condition into it:

eval(solution_U_at_IC, {trasnformed_IC_U})

I*Pi*(Dirac(s+1)-Dirac(s-1)) = _F1(s)

(5.1.8)

Putting this into our solution_U, we get

eval(solution_U, {(rhs = lhs)(I*Pi*(Dirac(s+1)-Dirac(s-1)) = _F1(s))})

U(t, s) = (2*m*Pi*Dirac(s)*t+I*Pi*(Dirac(s+1)-Dirac(s-1)))*exp(-s^2*t)

(5.1.9)

Finally, we apply the inverse Fourier transformation to this,

solution := u(x, t) = invfourier(rhs(U(t, s) = (2*m*Pi*Dirac(s)*t+I*Pi*(Dirac(s+1)-Dirac(s-1)))*exp(-s^2*t)), s, x)

u(x, t) = sin(x)*exp(-t)+m*t

(5.1.10)

PDE&BC problems that used to require the option HINT = `+` to be solved are now solved automatically

 

The following two PDE&BC problems used to require the option HINT = `+` in order to be solved. This is now done automatically within pdsolve.

pde__23 := diff(u(r, t), r, r)+(diff(u(r, t), r))/r+(diff(u(r, t), t, t))/r^2 = 0
iv__23 := u(1, t) = 0, u(2, t) = 5

ans__23 := pdsolve([pde__23, iv__23])

u(r, t) = 5*ln(r)/ln(2)

(6.1)

pdetest(ans__23, [pde__23, iv__23])

[0, 0, 0]

(6.2)

pde__24 := diff(u(x, y), y, y)+diff(u(x, y), x, x) = 6*x-6*y

iv__24 := u(x, 0) = x^3+11*x+1, u(x, 2) = x^3+11*x-7, u(0, y) = -y^3+1, u(4, y) = -y^3+109

ans__24 := pdsolve([pde__24, iv__24])

u(x, y) = x^3-y^3+11*x+1

(6.3)

pdetest(ans__24, [pde__24, iv__24])

[0, 0, 0, 0, 0]

(6.4)

``



Download PDE_and_BC_update.mw

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

We've added a collection of thermal engineering applications to the Application Center. You could think of it as an e-book.

This collection has a few features that I think are pretty neat

  • The applications are collected together in a Workbook; a single file gives you access to 30 applications
  • You can navigate the contents using the Navigator or a hyperlinked table of contents
  • You can change working fluids and operating conditions, while still using accurate thermophysical data

If you don't have Maple 2016, you can view and navigate the applications (and interactive with a few) using the free Player.

The collection includes these applications.

  • Psychrometric Modeling
    • Swamp Cooler
    • Adiabatic Mixing of Air
    • Human Comfort Zone
    • Dew Point and Wet Bulb Temperature
    • Interactive Psychrometric Chart
  • Thermodynamic Cycles
    • Ideal Brayton Cycle
    • Optimize a Rankine Cycle
    • Efficiency of a Rankine Cycle
    • Turbine Analysis
    • Organic Rankine Cycle
    • Isothermal Compression of Methane
    • Adiabatic Compression of Methane
  • Refrigeration
    • COP of a Refrigeration Cycle
    • Flow Through an Expansion Valve
    • Food Refrigeration
    • Rate of Refrigerant Boiling
    • Refrigeration Cycle Analysis 1
    • Refrigeration Cycle Analysis 2
  • Miscellaneous
    • Measurement Error in a Manometer
    • Particle Falling Through Air
    • Saturation Temperature of Fluids
    • Water Fountain
    • Water in Piston
  • Heat Transfer
    • Dittus-Boelter Correlation
    • Double Pipe Heat Exchanger
    • Energy Needed to Vaporize Ethanol
    • Heat Transfer Coefficient Across a Flat Plate
  • Vapor-Liquid Equilibria
    • Water-Ethanol

I have a few ideas for more themed Maple application collections. Data analysis, anyone?

equidistant_curve_MP.mw  Equidistant curves to the curves on the surface. (Without any sense, but real.)







 

Dasayeva Diana, 6th form

кит_Аним_Диана.mws

 

 

Dasayeva Diana, 6th form

кит_Аним_Диана.mws

 

Russian children work with Maple - view

http://geodromchik.blogspot.ru

//sites.google.com/site/geodromchic

POSSIBILITIES OF USING OF COMPUTER IN MATHEMATICS

AND OTHER APPLICATIONS IN INCLUSIVE EDUCATION

 

Alsu Gibadullina, math teacher

Secondary and high school # 57, Kazan, Russia

 

In recent years Russia actively promoted and implemented the so-called inclusive education (IE). According to the materials of Alliance of human rights organizations “Save the children”: "Inclusive or included education is the term used to describe the process of teaching children with special needs in General (mass) schools. In the base of inclusive education is the ideology that ensures equal treatment for everybody, but creates special conditions for children with special educational needs. Experience shows that any of the rigid educational system some part of the children is eliminated because the system is not ready to meet the individual needs of these children in education. This ratio is 15 % of the total number of children in schools and so retired children become separated and excluded from the overall system. You need to understand that children do not fail but the system excludes children. Inclusive approaches can support such children in learning and achieving success. Inclusive education seeks to develop a methodology that recognizes that all children have different learning needs tries to develop a more flexible approach to teaching. If teaching and learning will become more effective as a result of the changes that introduces Inclusive Education, all children will win (not only children with special needs)."

There are many examples of schools that have developed their strategy implementation of IE, published many theoretical and practical benefits of inclusion today. All of them have common, immaterial character. There is no description of specific techniques implementing the principles of IO in the teaching of certain disciplines, particularly mathematics. In this paper we propose a methodology that can be successfully used as in “mathematical education for everyone", also for the development of scientific creativity of children at all age levels of the school in any discipline.

According to the author, one of the most effective methodological tools for education is a computer mathematics (SCM, SSM). Despite the fact that the SCM were created for solving problems of higher mathematics, their ability can successfully implement them in the school system. This opinion is confirmed by more than 10–year-old author's experience of using the package Maple in teaching mathematics. At first it was just learning the system and primitive using its. Then author’s interactive demonstrations, e-books, programs of analytical testing were created by the tools packages. The experience of using the system Maple in teaching inevitably led to the necessity to teach children to work with it. At first worked a club who has studied  the principles of the package’s work, which eventually turned into a research laboratory for the use of computer technology. Later on its basis there was created the scientific student society (SSS) “GEODROMhic" which operates to this day. The main idea and the ultimate goal of SSS – individual research activities on their interests with the creation of the author electronic scientific journals through the use of computer mathematics Maple. The field of application of the package was very diverse: from mathematics to psychology and cultural phenomena. SSS’s activity is very high: they are constantly and successfully participate in intellectual high-level activities (up to international). Obviously, not every SSS’s member reaches high end result. However, even basic experience in scientific analysis, modeling, intelligent  using of the computer teaches the critical thinking skills, evokes interest to new knowledge, allows you to experience their practical value, gives rise to the development of creative abilities. As a result, the research activity improves intellectual culture, self-esteem and confidence, resistance to external negative influence. It should be noted, however, that members of the scientific societies are not largely the so-called "gifted", than ordinary teenagers with different level of intellectual development and mathematical training. With all this especially valuable is that the student is dealing with mathematical signs and mathematical models, which contributes to the development of mathematical thinking.

From 2007 to 2012. our school (№. 57 of Kazan) was the experimental platform of the Republican study SKM (Maple) and other application software in the system of school mathematical education under the scientific management of Professor Yu. G. Ignatyev of Kazan state University (KF(P)U).

Practical adaptation of computer mathematics and other useful information technologies to the educational process of secondary schools passed and continues to work in the following areas:

  1. The creation of a demonstration support of different types of the lessons;
  2. The embedding of computing to the structure of practical trainings;
  3. In the form of additional courses - studying of computer applications through which you can conduct a research of the mathematical model and create animated presentation videos, web-pages, auto-run menu;
  4. Students’ working on individual creative projects:
  • construction of computer mathematical models;
  • creating author's programs with elements of scientific researches;
  • students create interactive computer-based tutorials;
  • creation of an electronic library of creative projects;
  1. The participation of students  in the annual competitions and scientific conferences for students;
  2. The accumulation and dissemination of new methodological experience.

Traditionally, the training system has the structure: explanation of a new →  the solution of tasks→ check, self-test and control → planning of the new unit  with using analysis. However, the main task types: 1) elementary, 2) basic, 3) combined, 4) integrated, 5) custom. With the increasing the level of training a number of basic tasks are growing and some integrated tasks become a class of basic. Thus, the library for basic operations is generated. The decision of the educational task occurs on the way of mastering the theoretical knowledge of mathematical modeling: 1) analysis of conditions (and construction drawing), 2) the search for methods of solution, 3) computation, 4) the researching.

To introduce computer mathematics in this training system, you can:

  • At demonstrations. For example, with Maplе facilities you can create a step-by-step interactive and animated images, which are essentially the exact graphic interpretation of mathematical models.
  • If we have centralized collective control.
  • If students have individual self-control.
  • In the analysis of the conditions of the problem, for the construction and visualization of its model, the study of this model.
  • In the computations.
  • In practical training of different forms.
  • In individual projects with elements of research.

In the learning process with the use of computer mathematics in the school a library of themed demonstrations, tasks of different levels and purpose, programs, analytical testing, research projects is generated. With all this especially valuable is that the student is dealing with mathematical signs and mathematical models. Addiction to them processed in the course of working with them it’s unobtrusive, naturally, organically.

Mathematical modelling (MM) is increasingly becoming an important component of scientific research. Today's powerful engineering tools allow to carry out numerous computer experiments, deep and full enough of exploring the object, without significant cost painless. Thus provided the advantages of theoretical approach, and experiment. The integration of information technology and      MM method is effective, safe and economical. This explains its wide distribution and makes unavoidable component of scientific and technical progress.

Modeling is a natural process for people, it is present in any activity. The introduction with nature by man occurs through constant  modeling of situation, comparing with the basic models and past experience by them. Method for modeling, abstraction as a method of understanding the world is therefore  an effective method of learning. Training activities associated with the creative transformation of the subject. The main feature of educational training activities is the systematic solution of the educational problems. The connection of the principles of developmental education, mathematical modeling, neurophysiological mechanisms of the brain and experience with Maple leads to the following conclusions: the method of mathematical modeling is not only scientific research but also the way of development of thinking in general; computer and mathematical environment (Maple), which is a powerful tool for scientific simulation can be considered as the elementary analogue of the brain. These qualities of computer mathematics led to the idea of using it not only as an effective methodological tool but as a means of nurturing the thinking and development of mental functions of the brain. To study this effect the school psychologist conducted a test, which confirm the observations: the dynamics of intellectual options students  who working with Maple compares favorably with peers. In the process of doing computer math, in particular Maple, are involved in complex different mental functions. It is in the inclusion of all mental functions is the essence of integration of learning, its educational character. And this, in turn, contributes to the solution of moral problems.

Long-term work with computer mathematics led to the idea to use it as a tool for psychological testing. One of the projects focuses on the psychology and contains authors Maple–tests to identify the degree of development of different mental functions. Interactive mathematical environment  gives a wide variability and creative testing capabilities. Moreover, Maple–test can be used not only as diagnostic but also as educational, and corrective. This technology was tested in one of psycho neurological dispensaries a few years ago.

Currently, one of the author's students, the so-called "homeworkers", the second year is a young man with a diagnosis, categories F20, who does not speak and does not write independently. It was         impossible to get feedback from him and have basic training until then author have begun to apply computer-based tools, including system Maple. Working with the computer tests and mathematical objects helps to see not only the mental and even the simplest thinking movement, but also emotional movement!

In general, the effectiveness of the implementation in the structure of educational process of secondary school of new organizational forms of the use of computers, based on the application of the symbolic mathematics package Maple, computer modeling and information technology, has many aspects, here are some of them:

  • goals of education and math in particular;
  • additional education;
  • methodical and professional opportunities;
  • theoretical education;
  • modeling;
  • scientific creativity;
  • logical language;
  • spatial thinking, the development of the imagination;
  • programming skills;
  • the specificity of technical translation;
  • differentiation and individualization of educational process;
  • prospective teaching, the continuity of higher and secondary mathematics education;
  • development of creative abilities, research skills;
  • analytical thinking;
  • mathematical thinking;
  • mental diagnosis;
  • mental correction.

       According to the author, the unique experience of the Kazan 57–th school suggests that computer mathematics (Maple) is the most effective also universal tool of new methods of inclusion. In recent decades, there are more children with a specific behavior, with a specific perception, not able to focus, with a poor memory, poor thinking processes. There are children, emotionally and intellectually healthy, or even ahead of their peers in one team together with them. High school should provide all the common core learning standards. It needed a variety of programs and techniques, as well as specialists who use them. Due to its remarkable features, computer mathematics, in particular Maple, can be used or be the basis of the variation of methods of physico-mathematical disciplines of inclusive education.

 

Now in English   KozlovaAV.PDF

 

In Russian

Авторский опыт использования математической системы Maple и других компьютерных инструментов в школьном научном обществе

 Арина Козлова

E-mail: k_arina99@mail.ru; МБОУ «Школа  № 57» Кировского района г.Казани, 10 класс

 Научный руководитель –

Гибадуллина Алсу, учитель математики МБОУ «Школа  № 57» Кировского района г.Казани;

е-mail: gialid@mail.ru

 Аннотация. Рассмотрен авторский опыт использования математической системы Maple и других компьютерных инструментов для создания научно-популярных проектов физико-математического направления в рамках школьного научного общества.

 

На протяжении более 10 лет наша школа наряду с различными информационными технологиями работает с системой компьютерной математики Maple. Один из аспектов этой деятельности  –  научное общество учащихся «ГЕОДРОМчик», научным руководителем которого является учитель математики Гибадуллина А.И. Направления деятельности ученического научного общества – знакомство с пакетом Maple; освоение компьютерных инструментов, позволяющих работать с графикой, видео, создавать интерактивные меню; работа над индивидуальными научно-популярными проектами и создание авторских тематических электронных журналов, содержащих элементы научного исследования и математического моделирования. Компьютерная математика находит все более широкое применение – от научных исследований до продукции масскультур. Математическое моделирование проникло и в сферу создания рисунка, и в киноиндустрию. Изучение и использование учащимися нашего школьного общества символьных систем, в частности Maple, – это попытка приобщиться к современной мировой культуре компьютерного математического моделирования.

В данной статье описывается личный опыт автора, как одного из членов школьного НОУ.  

Знакомство с математической системой Maple началось с работы над проектом «Построение анимированной математической 3D-модели открывающейся книги» в 6-ом классе. Этот проект представляет собой создание пространственного анимированного изображения открывающейся книги средствами аналитической геометрии. В среде Maple была построена поэтапная программа получения этого изображения (таблицы 1 и 2). 

Таблица 1. Фрагмент программы получения анимированного изображения. 

> restart:

Подключение к дополнительным библиотекам

> with(plots):

> with(plottools):

Построение одной из страниц:

s1:= polygon([[0,0.01,0],[1,0.01,0],[1,1,0],[0,1,0]], thickness=1,color=orange):

Визуализация совокупных элементов книги:

display(k11,s1,s2,s3,s4,s5,s6,s7,s8,s9,s10,k0,k27, title="KNIGA",scaling=constrained);

Поворот и анимация открывания обложки:

r_k11:=rotate(k11,10*Pi/9,[[0,0,0.29],[1,0,0.29]]):

plots[display](r_k11,kn_1,k0,scaling=constrained);

> anm:=seq(rotate(k11,t*Pi/9,[[0,0,0.29],[1,0,0.29]]),t=0..10):

> anim:=plots[display](anm,insequence=true):

> plots[display](kn_1,anim,scaling=constrained);

 

a)    

c)   

 

e)   

b)   

d)   

f)   

 Рис. 1. Кадры анимации книги

Следующий проект, выполненный в среде Maple совместно с Нигометзяновой Эльзой в 7-ом классе, – короткометражный мультфильм «Колобок в лесу».

a)      b)   

 Рис. 2. Кадры анимации мультфильма

В 8-ом классе велась работа по техническому переводу сайта компании Waterloo Maple Inc. [3]. Как известно, такой перевод имеет свои особенности, которые не предусмотрены в школьной программе по изучению английского языка, поэтому опыт такой работы способствует совершенствованию владения английским языком.

В 9-ом классе началась работа над электронным журналом по космологии «Вселенная: теория и факты». Черные дыры Вселенной – один из самых загадочных и любопытных для человека объектов. Их изучение привело к интересу к астрофизике вообще. Знакомство с понятием черной дыры неизбежно вынудило изучать строение Вселенной и ее геометрии [9, 10, 11, 12]. Пришлось осмысливать сложнейшие фундаментальные понятия, теории, а также элементы высшей математики [1, 5, 6, 7, 8]. Чтобы хотя бы попытаться понять огромный объем, казалось бы, беспорядочной информации, нужно было ее анализировать и систематизировать. И тогда возникла идея проекта – авторского электронного журнала. Тем более складывается парадоксальная ситуация: астрофизика бурно развивается, проникая практически во все сферы нашей жизни, а предмета астрономии в школе нет. Поэтому такой проект мог бы восполнить этот досадный пробел и помочь школьникам – и не только – в познании Вселенной. Журнал имеет следующие разделы: Вселенная, черные дыры, белые дыры, глоссарий, теории, неевклидовы геометрии, видео-опыты, интересные факты, ссылки, использованные ресурсы. Один из разделов журнала составляют Maple-разработки, в частности, визуализированная модель искривления пространства.

Далее приводится Maple-программа (табл. 2) построения визуализации деформации плоскости под шаром определенного размера. Используются библиотеки <plots> и <plottools> пакета.

 Таблица 2.  Maple–программа визуализации деформации плоскости. 

Комментарий

Команда и результат

Функция глубины "ямы"

( a - ширина "ямы", b - глубина )

f:=(x,a,b)->(-b*exp(-x^2/a^2));

 

Вводим параметры:

h - влияет на размеры тела-шарика и связывает их с шириной "ямы" ;

 k - влияет на диапазон площади вокруг "ямы"

h:=1:  k:=1:

 

Задание параметрическое прямой на поверхности (плоскости)

L0:=(m,n)->plot3d([0,r,f(r,m,n)], phi = -2*Pi ..2*Pi, r = -10k*h..10+k*h, scaling=CONSTRAINED,

numpoints=10000, color=blue,thickness=4):

Задание параметрическое поверхности (плоскости) путем кручения прямой

P0:=(m,n)->plot3d([r*cos(phi),r*sin(phi),f(r,m,n)], phi= 0..2*Pi,r=-8k*h..8+k*h, scaling=CONSTRAINED, numpoints=3000, style=POINT, color=blue):

Задание анимации искривления прямой

L:=plots[display](seq(L0(h,i),i=0..10+k*h), insequence=true):                    l:=plots[display](L,insequence=true):

Задание анимации искривления плоскости

p:=plots[display](seq(P0(h,i),i=0..10+k*h), insequence=true):

 p:=plots[display](P,insequence=true):

Задание анимация шарика ( тела, обладающего массой )

 

with(plottools):sp:=seq(sphere([0,0,-i-1.5*f(h,h,h)], f(h,h,h), style=HIDDEN,color=red),i=0..10+k*h):     

s:=plots[display](sp,insequence=true,

scaling=CONSTRAINED):

Совмещение всех компонентов модели визуализации

plots[display](p,s,l,scaling=CONSTRAINED);

 При h:=1:  k:=1:

 1)      2)      3)   

4)      5)      6)   

 

При h:=5:  k:=1:

7)      8)      9)   

Рис. 3. Кадры анимации при заданных параметрах.

Долго подбиралась функция глубины "ямы". Наконец, была найдена – это стало понятно после просмотра лекции А.Линде, где говорится об экспоненциальных процессах [13].

Меняя только параметры h и k (задающие размеры шара и ширины «ямы») и прокручивая программу снова, меняется и визуализация. Надо заметить, что построена всего лишь математическая модель визуализации, а не самого процесса.

Этот раздел предполагается пополнять новыми разработками, выполненными в среде Maple.

Журнал имеет удобную систему ссылок и организован так, что его можно оперативно обновлять. Астрофизика бурно развивается, поэтому журнал не потеряет своей актуальности.

 Заключение.

В течение 4-х лет занятий в научном обществе авторские проекты были представлены на различных сайтах, конкурсах, конференциях, форумах федерального и международного уровней:

  • сайт еxponenta.ru в разделе студенческих работ [4];
  • Конкурс исследовательских и творческих работ «Нобелевские надежды КНИТУ»
  • Республиканский конкурс «Арт-дебют»
  • V Международная ассамблея школьников (участие и публикация) [2]
  • Всероссийский Горчаковский форум в г.Санкт-Петербург
  • Поволжская научной конференция учащихся им. Н.И.Лобачевского
  • Всероссийский фестиваль «Нескучная наука» в г.Санкт-Петербург
  • Пост н.р. Гибадуллиной А.И. на сайте компании Maplesoft  http://www.mapleprimes.com/users/Alsu

  Использованная литература

 [1] Матросов А.В. Maple 6: Решение задач высшей математики и механики: Практическое руководство. – СПб.: БХВ – Петербург, 2001 г. – 528 с.

[2] V Международная Интеллектуальная Ассамблея школьников: сборник научно-исследовательских работ / Отв. ред. М. В. Волкова – Чебоксары: НИИ педагогики и психологии, 2012 – 136с. (с. 44–45)

[3] Сайт компании Maplesoft. – Режим доступа:  http://www.maplesoft.com

[4] Сайт <exponenta.ru> / Архив студенческих работ – Режим доступа:

http://www.exponenta.ru/educat/referat/XXIVkonkurs/5/index.asp

[5] Высшая математика: Учеб. Пособие для студентов пед. ин-тов по спец. 2120 «Общетехн. дисциплины и труд» / Г. Луканкин, Н. Мартынов, Г. Шадрин, Г. Яковлев; Под. ред. Г.Н. Яковлева. – М.: Просвещение, 1988. – 431 с.: ил.

[6] Справочник по высшей математике / М. Я. Выгодский. – М.: ООО «Издательство Астрель»: ООО «Издательство АСТ», 2002. – 992 с.: ил.

[7] Математический словарь высшей школы: Общ. часть/В. Т. Воднев, А. Ф. Наумович, Н.Ф. Наумович; Под ред. Ю.С. Богданова. – 2-е изд. – М.:Изд-во МПИ, 1988 – 527 с., ил.

[8] Толковый математический словарь. Основные термины: около 2500 терминов. – М.: Рус. яз., 1989. – 244 с., 186 ил.

[9] Открываем неевклидову геометрию. Кн. для внеклас. чтения учащихся 9-10 кл. сред. шк. – М.: Просвещение, 1988. – 126 с.: ил. – (Мир Знаний).

[10] Геометрия: Учебник для вузов. – СПб.: Издательство «Лань», 2003. – 416 с., ил. – (Учебники для вузов. Специальная литература)

[11] Основания геометрии: Учебн. пособие для вузов. – М.: Наука. Гл. ред. физ.-мат. лит., 1987. – 288 с.

[12] Обзорные лекции по геометрии к государственному экзамену по математике, Х семестр, курс лекций с примерами решений задач (в помощь выпускнику), проф. Ю.Г. Игнатьева. Программный продукт BIBLIO профессора Ю.Г. Игнатьева, Казань 2002 г.

[13] Видеозапись лекции Андрея Дмитриевича Линде, Стэнфордский университет (США), профессор «Многоликая Вселенная», прямая ссылка: http://elementy.ru/lib/430484

Ibragimova Evelina, 6 class,
school № 57, Kazan

The manual with examples
( templates for the solution of )

The solution of problems on simple interest

 

> restart:
> with(finance);

[amortization, annuity, blackscholes, cashflows, effectiverate,

futurevalue, growingannuity, growingperpetuity, levelcoupon,

perpetuity, presentvalue, yieldtomaturity]

Team futurevalue (the first installment, rate, period) - the total calculation for a given down payment, interest rate, payments and number of periods.

Example 1. To the Bank account, the income of which is 15% per annum, has made 24 thousand rubles. How many thousands of rubles will be in this account after a year if no transactions on the account will not be carried out? (The answer: 27.60 thousand rubles.)

> futurevalue(260,0.40,1);

364.00

> evalf(1000/216);

> 364*3;

1092

> u:=fsolve(presentvalue(1e6,x,1250)=950,x)*950;

u := 5.303626495

>

Team presentvalue (future amount, rate, period) - the calculation of the initial input to obtain a specified final amount at an interest rate of charges and the number of periods.

Example 2. How much you need to put money in the Bank today, so that when the rate of 27% per annum have in the account after 10 years 100000 thousand rubles? (The answer: 9161.419934 rubles.)

> presentvalue(680,-0.20,1);

850.0000000

 

The solution of problems in compound interest

The solution of problems 
Using commands <futurevalue> и <presentvalue >
> restart;
> with(finance):
Direct task
> futurevalue(,0.,);
`,` unexpected
The inverse problem
> presentvalue(,0.,);
`,` unexpected

I. Case with the same interest rate every period

Using the universal formula F = P*(1+r)^n; , where:
F - the future value (final amount).
P - the initial payment (current amount).
r - the interest rate period.
n - the number of periods.
This formula for the case with the same interest rate every period

> restart:
The task of the formula
> y:=F=P*((1+r)^n):
> y;

n
F = P (1 + r)

The job parameters are known quantities
The interest rate

> r:=;
`;` unexpected
The number of years (periods)
> n:=3;

n := 3

The initial payment (present value)
> P:=;
`;` unexpected
The final amount
> F:=2.16;

F := 2.16

The solution of the equation - the calculation of unknown values (in decimal form)
> `Unknown`;fsolve(y);

Unknown


0

>


II. The case of different interest rates for each period

Formula An = A*(1+1/100*p1)*(1+1/100*p2)*(1+1/100*p3); ... %?(1+1/100*pn); , where
An - the final amount
A - the initial payment (current amount at the moment)
p1, p2, p3, .... pn - interest rate periods
n - the number of periods

> restart:
The task of the formula (need to be adjusted based on the number of periods)
> y:=An=A*(1+1/100*p1)*(1+1/100*p2)*(1+1/100*p3):
> y;

An = A (1 + 1/100 p1) (1 + 1/100 p2) (1 + 1/100 p3)

The task of the parameters of the known values
The initial payment (present value)
> A:=;
`;` unexpected
Interest rate periods
p1:=0.30;
p2:=0.10;
p3:=0.15;


p1 := .30


p2 := .10


p3 := .15

The final amount
> An:=;
`;` unexpected
The solution of the equation - the calculation of unknown values (in decimal form)
> `Unknown`;fsolve(y);

Unknown


0

>

 angl.FINANCE.mws

Ibragimova Evelina, 6th form,
school № 57, Kazan

 

     Matreshka.mws 

 

 

 

 Ibragimova Evelina, the 6th form

 school # 57, Kazan, Russia

The Units Converter

restart:
`Conversion formula`;
d:=l=n*m:
d;

                    Conversion formula
                    l = n m

m - shows how many minor units in one major one (coefficient)
`Coefficient`;
m:=1000;
                   Coefficient
                   m:=1000

n - the number of major units
n:=7/3;
                   n := 7/3

l - the number of minor units
l:=;

The result (the desired value)
solve(d);
                   7000/3
evalf(solve(d));
                   2333.333333

That is : there are 2333.3 (or 7000/3 ) minor units in 7/3 major units .

 

Other example

m - shows how many minor units in one major one (coefficient) 
`Coefficient`;
m:=4200;
                   Coefficient
                   m:=4200

n - the number of major units 
n:=;
                 
l - the number of minor units
l:=100;

                  l:=100

The result (the desired value)
solve(d);
                   1/42
evalf(solve(d));
                   0.02380952381

That is : there are 0.02 (or 1/42) major units in 100 minor units .

 

Another example

m - shows how many minor units in one major one (coefficient) 
`Coefficient`;
m:=;
                   Coefficient

n - the number of major units 
n:=2;

                    n := 2
                 
l - the number of minor units
l:=200;

                  l:=200

The result (the desired value)
solve(d);
                   100
evalf(solve(d));
                  100

That is : Coefficient is 100 .

First 26 27 28 29 30 31 32 Last Page 28 of 65