detools::charSolve
-- solves
partial differential equation with the method of characteristicsdetools::charSolve
(ldf,init,pars)
solves
the linear differential equation ldf
by the method of
characteristics. The initial conditions init
should depend
on n-1 parameters (listed in pars
), if there
are n independent variables.
detools::charSolve(ldf, init, pars)
ldf |
- | the differential equation: an element of a domain
generated with the constructor
Dom::LinearDifferentialFunction . |
init |
- | the initial conditions: a list of equations. |
pars |
- | the parameters: a list of identifiers. |
a list of expressions representing the parametric solution of the differential equation for the given initial conditions.
detools::characteristics
,
detools::charODESystem
,
detools::pdesolve
,
solve
detools::charSolve
(ldf,init,pars)
tries
to solve the differential equation ldf
subject to the
parametric initial conditions init
. The list
pars
contains the names of the parameters. The solution
will again be in parametric form. It will be found only, if the
characteristic system can be solved.With the following input one can solve the linear differential equation 2 diff(u,x)+diff(u,y)+3 diff(u,z)-2 u=0 for the following parametrized initial condition x=2*sigma,y=3*tau,z=sigma+tau,u=sigma-tau.
>> LDF := Dom::LinearDifferentialFunction( Vars = [[x, y, z], u], Rest = [Types = "Indep"]): ldf := LDF( 2*u([x]) + u([y]) + 3*u([z]) - 2*u ): detools::charSolve(ldf, {x = 2*sigma, y = 3*tau, z = sigma + tau, u = sigma - tau}, {sigma, tau})
/ 7 x y 2 z \ / 6 z 2 y 3 x \ u = | --- - - - --- | exp| --- - --- - --- | \ 10 5 5 / \ 5 5 5 /