PDEtools
IntegratingFactors
computes generalized integrating factors for a system of differential equations (DE)
IntegratingFactorTest
tests whether a given list of expressions is a list of generalized integrating factors for the given system of differential equations
Calling Sequence
Parameters
Description
Examples
References
IntegratingFactors(PDESYS, DepVars, _mu = ..., displayfunctionality = ..., jetnotation = ..., simplifier = ..., split = ...)
IntegratingFactorTest(Mu, PDESYS, DepVars)
PDESYS
-
a system consisting of an equation or a list of equations involving partial and/or ordinary (possibly not) differential equations
Mu
a generalized integrating factor returned by IntegratingFactors
DepVars
optional - a specification of the unknown(s) in PDESYS
_mu = ...
optional - indicates the functional form of the generalized integrating factors
displayfunctionality = ...
optional - can be true (default) or false, to display the functionality on the left-hand-side of the mu[k] (generalized integrating factors) functions
jetnotation = ...
(optional) can be false (default), jetvariables, jetvariableswithbrackets, jetnumbers or jetODE; to respectively return or not using the different jet notations available
order
optional - indicates the maximum differential order of the derivatives entering the dependence of the integrating factors
simplifier = ...
optional - indicates the simplifier to be used instead of the default simplify/size
split = ...
optional - can be true (default) or false, to split the DE system to be solved in order to compute the J[k] functions
typeofintegratingfactor = ...
optional - can be polynomial or functionfield.
Given a system Δ=0 consisting of N equations pden, n=1..N, where the independent variables are x1,x2,...=X, and the dependent variables are u1,u2,...=U, with dU denoting the set of partial derivatives of U, the generalized integrating factors are expressions μα,n⁡X,U,dU such that Σ⁢μα,n⁢pden=Divergence⁡Jα = 0, so Jα is a conserved current. These generalized integrating factors, also called characteristic functions of conserved currents (see reference [1]), coincide with the traditional integrating factors when there is only one independent variable, so that Δ is a system of ODEs.
The command IntegratingFactors computes these generalized integrating factors. The command IntegratingFactorTest verifies the result for correctness.
Given the system Δ=0 the output of IntegratingFactors is as a sequence of α lists, each one containing N μα,n, where n=1..N, satisfying Σ⁢μα,n⁢pden=Divergence⁡Jα = 0.
The μα,n⁡X,U,dU are computed constructing the PDE system they satisfy by applying Euler 's operator to Σ⁢μα,n⁢pden=0 , then solving this system for the μα,n using pdsolve .
By default, the integrating factors are searched as functions depending on the derivatives of the unknowns of the system (specified as DepVars or automatically detected) up to the order d-1, where d is the highest order of derivatives entering PDESYS. This default can be changed by optionally passing the argument order = m, where m is a nonnegative integer.
By default, the conserved currents are searched as functions with no pre-specified form, just with the dependency explained in the previous paragraph. This default can be changed with the option typeofconservedcurrent = ... where the right-hand-side can be polynomial or functionfield, respectively indicating a conserved current of polynomial type, or of a functionfield type with the meaning explained in FunctionField .
By default, the functionality of μα,n⁡X,U,dU, entering the left-hand-sides of each element in the returned lists, is displayed, the output is presented in functional notation instead of jet notation and is simplified with respect to its size . The PDE system solved to compute the μα,n⁡X,U,dU is also split, when that is possible, before being tackled. All these defaults can be changed by passing the optional arguments displayfunctionality = ..., jetnotation = ..., simplifier = ..., split = false.
It is also possible to directly specify the functionality expected for the μα,n using _mu = .... See the examples for a demonstration of the use of this parameter.
To avoid having to remember the optional keywords, if you type the keyword misspelled, or just a portion of it, a matching against the correct keywords is performed, and when there is only one match, the input is automatically corrected.
Consider the following PDE "system" consisting of a single pde
with⁡PDEtools:
U≔diff_table⁡u⁡x,t:
declare⁡U
u⁡x,t⁢will now be displayed as⁢u
pde1≔Ut,t+Ux,x+Ux⁢U=0
pde1≔u⁢ux+ut,t+ux,x=0
Two generalized integrating factors are
μα≔IntegratingFactors⁡pde1
μα≔_μ1⁡x,t,u,ux,ut=1,_μ1⁡x,t,u,ux,ut=t
Note that pde1 is already the divergence of a function, so that a constant (the number 1 in the result above) is an integrating factor. To verify for correctness these integrating factors use
map⁡IntegratingFactorTest,μα,pde1
0,0
The conserved currents are related to the generalized integrating factors via Sigmamu[alpha, n] pde[n] = Divergence J[alpha] = 0. These are the J[alpha] corresponding to the mu[alpha] computed above; they depend on arbitrary functions
Jα≔ConservedCurrents⁡pde1
Jα≔_Jx⁡x,t,u,ux,ut=D3⁡f__3⁡x,t,u⁢ut+D2⁡f__3⁡x,t,u+f__5t+u22+ux,_Jt⁡x,t,u,ux,ut=−f__5x−D3⁡f__3⁡x,t,u⁢ux−D1⁡f__3⁡x,t,u+f__6⁡x+ut,_Jx⁡x,t,u,ux,ut=D3⁡f__3⁡x,t,u⁢ut+D2⁡f__3⁡x,t,u+f__5t+u2⁢t2+ux⁢t,_Jt⁡x,t,u,ux,ut=−f__5x−D3⁡f__3⁡x,t,u⁢ux−D1⁡f__3⁡x,t,u+f__6⁡x+t⁢ut−u
To verify these results use
map⁡ConservedCurrentTest,Jα,pde1
An example where the integrating factor depends on an arbitrary function
pde2≔Ux,t+Ux,x,x+Ux⁢U=0
pde2≔u⁢ux+ut,x+ux,x,x=0
IntegratingFactors⁡pde2
_μ1⁡x,t,u,ux,ut,ux,x,ut,x,ut,t=f__1⁡t,u22+ut+ux,x
For this example, integrating factors up to order 1, that is, depending at most on first order derivatives, are
IntegratingFactors⁡pde2,order=1
_μ1⁡x,t,u,ux,ut=f__1⁡t
which is in agreement with the general result obtained first. This is a related conserved current of order 1
ConservedCurrents⁡pde2,order=1
_Jx⁡x,t,u,ux,ut=D3⁡f__1⁡x,t,u⁢ut+D2⁡f__1⁡x,t,u+f__3t,_Jt⁡x,t,u,ux,ut=−D3⁡f__1⁡x,t,u⁢ux−D1⁡f__1⁡x,t,u−f__3x+f__4⁡x
Specifying directly the functionality expected also confirms that there is no non-trivial integrating factor depending only on ux and ut but there is one depending on an arbitrary function of u, ut and ux,x
IntegratingFactors⁡pde2,_μ=f⁡Ux,Ut
_μ1⁡ux,ut=1
IntegratingFactors⁡pde2,_μ=f⁡Ux,x,Ut,U
_μ1⁡ux,x,ut,u=f__1⁡u2+2⁢ut+2⁢ux,x
In various cases it is simpler, or of more use, to compute integrating factors of polynomial type, or with a mathematical function dependency on the field of functions of the input system. For these purposes use the option typeofintegratingfactor = ... where the right-hand-side can be polynomial or functionfield. For example, for pde2, a polynomial integrating factor, presented without specializing the arbitrary constants (option split = false) is
IntegratingFactors⁡pde2,type=polynomial,split=false
* Partial match of 'type' against keyword 'typeofintegratingfactor'
_μ1⁡x,t,u,ux,ut,ux,x,ut,x,ut,t=u2+2⁢ut+2⁢ux,x⁢c__3+c__4⁢t2+c__2⁢t+c__1
IntegratingFactorTest⁡,pde2
0
The following application of Euler 's operator to pde2 shows that pde2 is already a divergence of a function
Euler⁡pde2
This is a conserved current with the same functionality of the last integrating factor computed and a verification of the result
Jα≔ConservedCurrents⁡pde2,_J=f⁡Ux,x,Ut,U
Jα≔_Jx⁡ux,x,ut,u=f__1⁡u2+2⁢ut+2⁢ux,x,_Jt⁡ux,x,ut,u=1
ConservedCurrentTest⁡Jα,pde2
[1] Olver, P.J. Applications of Lie Groups to Differential Equations. Graduate Texts in Mathematics. Springer-Verlag, 1993.
See Also
ConservedCurrents
ConservedCurrentTest
Euler
Download Help Document
AltStyle によって変換されたページ (->オリジナル) / アドレス: モード: デフォルト 音声ブラウザ ルビ付き 配色反転 文字拡大 モバイル