Unimodular transformation of a linear ordinary differential equation
MuPAD® notebooks are not recommended. Use MATLAB® live scripts instead.
MATLAB live scripts support most MuPAD functionality, though there are some differences. For more information, see Convert MuPAD Notebooks to MATLAB Live Scripts.
ode::unimodular(Ly
, y(x
), <Transform>)
ode::unimodular(Ly, y(x))
tests if the linear
homogeneous differential equation Ly
has a unimodular
Galois group (i.e. the wronskian lies in the base field ℚ(x)),
if not transforms Ly
into a unimodular one (by
changing the second highest coefficient to zero) and returns a table
with index equation
and factorOfTransformation
containing
respectively the transformed differential equation and the factor
of transformation Wn
such that a solution of the
transformed equation multiplied by Wn
is a solution
of Ly
.
If the option Transform
is given then Ly
is
transformed unconditionally even if Ly
has yet
a unimodular Galois group.
We test if the following differential equation has a unimodular Galois group:
Ly := y(x)*6+x*diff(y(x),x)*(2)+diff(y(x),x$2)*(x^2+1)
ode::unimodular(Ly, y(x))
It is unimodular since the factor of transformation is 1
.
We can also check this by computing the wronskian of Ly
which
is a rational function:
ode::wronskian(Ly,y(x))
Now we transform Ly
into a differential equation
whose wronskian is 1
:
ode::unimodular(Ly, y(x), Transform)
ode::wronskian(%[equation], y(x))

A homogeneous linear differential equation over ℚ(x). 

The dependent function of 