Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

How to plot this equation

 y(x):=

where,

A := Matrix([[1, -1, 1, -1], [1, 1, -1, -1], [-1, 1, 1, -1], [1, 1, 1, 1]]);
B := Matrix([[1], [0], [1], [0]])

I want to creat an interactive document for students. When user clicks in a coordinate-system a point shall come up. For this I need the relative (or absolute) coordinates of the actual mouse position. I cannot find the command for this. In other languages it is like getmousex, getmousey. Can anyone help, please?

As a part of my learning curve, I am trying to play with extending Maple's BernsteinBasis, which has only a limited support right now (BernsteinBasis - Maple Help (maplesoft.com)).

My goal is to implement basis operation on polynomials in Bernstein basis, so that derivatives, integrals and products of polynomials in  BernsteinBasis would be again expressed in BernsteinBasis.

While it looks like it is relatively easy to extend diff procedure, by using `diff/BernsteinBasis`, I didn't find anything similar for the int. Is there something like `int/BernsteinBasis`?

The problem is that when I am trying to implement my own int procedure in a module that  would extend standard int, it seems I need to manually implement logic for (at very least) linearity, so that int(p(x) + q(x), x) would decay into int(p(x), x) + int(q(x), x ) (I probably don't need more complex rewriting rules). So before trying this approach, is there any easy way such as with diff?
 

restart;

read("C:\\Users\\Igor\\Maple\\BernsteinPolynomials.mpl");

_m2141342686560

(1)

# General formula
diff(BernsteinBasis(k, n, a, b, x), x);

n*BernsteinBasis(k-1, n-1, a, b, x)/(b-a)-n*BernsteinBasis(k, n-1, a, b, x)/(b-a)

(2)

# In expressions
diff(2*x*BernsteinBasis(1, 2, 0, 1, x) + BernsteinBasis(2, 2, 0, 1, x), x);

2*BernsteinBasis(1, 2, 0, 1, x)+2*x*(2*BernsteinBasis(0, 1, 0, 1, x)-2*BernsteinBasis(1, 1, 0, 1, x))+2*BernsteinBasis(1, 1, 0, 1, x)

(3)

# Convertion to MatrixPolynomialObject works
p := diff(BernsteinBasis(1, 2, 0, 1, x) + BernsteinBasis(2, 2, 0, 1, x), x);
P := convert(p, MatrixPolynomialObject, x);
P:-Value(a);

p := 2*BernsteinBasis(0, 1, 0, 1, x)

 

P := Record(Value = Default[value], Variable = x, Degree = 1, Coefficient = coe, Dimension = [1, 1], Basis = BernsteinBasis, BasisParameters = [1, 0, 1], IsMonic = mon, OutputOptions = [shape = [], storage = rectangular, order = Fortran_order, fill = 0, attributes = []])

 

Matrix(%id = 36893490288797933188)

(4)

# Now, integrataion
with(BernsteinPolynomials);

[int]

(5)

# Still works
int(x^2, x);

(1/3)*x^3

(6)

# Not implemented but will be added later...
int(BernsteinBasis(1, 2, 0, 1, x), x);

"Will be implemented here..."

 

int(BernsteinBasis(1, 2, 0, 1, x), x)

(7)

# This is the problem: how to implement basis properties such as linearity?
int(2 * BernsteinBasis(1, 2, 0, 1, x), x);

int(2*BernsteinBasis(1, 2, 0, 1, x), x)

(8)

 

 

BernsteinPolynomials := module()
    description "Basic operations in Bernstein basis";
	option package;
	global BernsteinBasis, `diff/BernsteinBasis`;
	export int;

	BernsteinBasis := proc(k, n, a, b, x)
		description "Bernstein basis polynomial";
		if k::numeric then
			if k < 0 then 
				return 0;
			end if
		end if;
		if n::numeric then
			if n < 0 then 
				return 0; 
			end if;
			if k::numeric then
				if k > n then
					return 0;
				end if;
			end if;
		end if;
		'procname'(_passed)
	end proc;

	`diff/BernsteinBasis` := proc()
		description "Derivative of the Bernstein basis polynomial in the Bernstein basis";
		if _npassed = 6 then
			if _passed[-1] = _passed[-2] then
				_passed[2] * BernsteinBasis(_passed[1] - 1, _passed[2] - 1, _passed[3], _passed[4], _passed[5]) / (_passed[4] - _passed[3]) -
				_passed[2] * BernsteinBasis(_passed[1], _passed[2] - 1, _passed[3], _passed[4], _passed[5]) / (_passed[4] - _passed[3]);
			end if;
		end if;
	end proc;
	
	int := proc()
		description "Integral of the Bernstein basis polynomial in the Bernstein basis";
		if type(_passed[1], 'specfunc'(anything, BernsteinBasis)) then
		    print("Will be implemented here...");
		end if;
		:-int(_passed)
	end proc;

end module;

Download bernstein.mw

In my code, without knowing what the expression is, other than it has RootOf, the code called allvalues and got internal error 

Error, (in SolveTools:-Basis) invalid input: igcd received 5/7, which is not valid for its 2nd argument

Is this to be expected depending on the input, or is this some internal problem I need to report?

restart;
expr:=RootOf(R^4*b+R^2*a*_Z+2*_Z^2-exp(RootOf(tanh(1/2*(a^2-8*b)^(1/2)*(4*S-_Z)/a)^2*R^4*a^2-8*tanh(1/2*(a^2-8*b)^(1/2)*(4*S-_Z)/a)^2*R^4*b-R^4*a^2+8*R^4*b-8*exp(_Z))))

allvalues(expr)

Error, (in SolveTools:-Basis) invalid input: igcd received 5/7, which is not valid for its 2nd argument

Maple 2023.2 on windows 10

ps.  Reported to Maplesoft

To label axes, names with Maple typesetting tags can be used. This is convenient because the typesetting package does not have to be loaded and code is shorter. However, when used together with plot white spaces (mo(“ “)) sometimes do render. Below is an example where a white space after the character N is not rendered.

with(Typesetting):

ta:=Typesetting:-Typeset(`#mrow(mo("N "),mo("* "),msup(mo("mm"),mo("-2")))`)

Typesetting:-mrow(Typesetting:-mo("N "), Typesetting:-mo("* "), Typesetting:-msup(Typesetting:-mo("mm"), Typesetting:-mo("-2")), Typesetting:-msemantics = "atomic")

(1)

tb:=`#mrow(mo("N ",color="red"),mo("* "),msup(mo("mm"),mo("-2")))`

`#mrow(mo("N ",color="red"),mo("* "),msup(mo("mm"),mo("-2")))`

(2)

tc:=Typesetting:-Typeset(mrow(mo("N "),mo("* "),msup(mo("mm"),mo("-2"))))

Typesetting:-mrow(Typesetting:-mo("N "), Typesetting:-mo("* "), Typesetting:-msup(Typesetting:-mo("mm"), Typesetting:-mo("-2")))

(3)

plot(x,x=1..10,labels=[ta,tb],title=tc)

 

NULL

A workarround is adding an addtional tag mspace() or an invisible html character. Are there any others?

Since typesetting of normal Maple output shows the whitespace I am wondering if this way of plotting axis labels is intended. 

Download Typesetting_white_space.mw

Hello, I would like to integrate a Maple sheet into a LaTeX sheet. How to do ? Thanks in advance.

If one writes:

y := x+1

x+1

(1)

 

Then, one can display y = x+1 using this notation

 

'y' = y

y = x+1

(2)

 

However, regardless of the type of punctuation I use with the Explore procedure (or even the IntertForm package), the value for y is calculated. (See examples below.)  My question is:

 

How can I get Explore to write it out as in line (2) with x evaluated?

 

Examples:

(The first is a jpg of what is shown since MaplePrimes cannot show the Explore output.)

 

 

Explore('y' = y, x = 0 .. 5, echoexpression = false)

Explore(y = y, x = 0 .. 5, echoexpression = false)

Explore(InertForm:-Display(y) = y, x = 0 .. 5, echoexpression = false)

Download Explore_with_Inert_Form_of_display.mw

I am relatively new to Maple and I'm just getting used to working with units.  Please explain to me why the final calculation does not eliminate m^3 in both the numerator and denominator. Thanks for your help!

 

Problem

 

What would be the mass of a Dyson Shell set at Venus' orbit from the sun?

 

The shell is 150 ft thick and each 1m^2 section is 200 kg.

 

The entire Earth's mass is 5.97×10^24 kg

 

The entire mass of the solar system minus the sun is 2.6667×10^27 kg

``NULLNULL

Assumptions

 

Gravitational pull from the sun is uniform through the depth of the shell.

 

Venus' average orbital distance from the sun is 67,237,910 miles we will use that as.

Pi

Pi

(1)

"(->)"

3.1415926535897932385

(2)

 
Dyson[Inside] := 355016117130*Unit('ft')``

NULLDyson[Outside] := 355016117280*Unit('ft')

355016117280*Units:-Unit(ft)

(3)

NULLNULL``

Vol[Dyson] := (4/3)*Pi*Dyson[Outside]^3-(4/3)*Pi*Dyson[Inside]^3 = 75621866085188578208340000*Pi*Units:-Unit(ft^3)"(->)"0.23757309894397957472e27*Units:-Unit(ft^3)

   

Total_Weight := 200*Unit('kg')*Vol[Dyson]/m^3

(6691789940422039289112993734304/15625)*Pi*Units:-Unit(kg*m^3)/m^3

(4)

"(=)"

(6691789940422039289112993734304/15625)*Pi*Units:-Unit(kg*m^3)/m^3

(5)

"(->)"

0.13454641994365413638e28*Units:-Unit(kg*m^3)/m^3

(6)

Download Q_for_Dyson_Shell_Weight.mw

restart

V := m^4*(1-(varphi/mu)^p);

m^4*(1-(varphi/mu)^p)

(1)

V1 := diff(V, varphi);

-m^4*(varphi/mu)^p*p/varphi

(2)

V2 := diff(V1, varphi);

-m^4*(varphi/mu)^p*p^2/varphi^2+m^4*(varphi/mu)^p*p/varphi^2

(3)

f := Zeta * (varphi^2);

Zeta*varphi^2

(4)

f1 := diff(f, varphi);

2*Zeta*varphi

(5)

f2 := diff(f1, varphi);

2*Zeta

(6)

R:= simplify(((V/3-f1*V1/(3*V))/((1-kappa^2*f)/(12*kappa^2)+f1/V)));

4*kappa^2*m^4*(-3*(varphi/mu)^(2*p)*m^4+(varphi/mu)^(3*p)*m^4+3*(varphi/mu)^p*m^4-m^4-2*Zeta*(varphi/mu)^p*p+2*Zeta*(varphi/mu)^(2*p)*p)/((m^4*(Zeta*kappa^2*varphi^2-1)*(varphi/mu)^p+(-Zeta*kappa^2*varphi^2+1)*m^4+24*Zeta*varphi*kappa^2)*(-1+(varphi/mu)^p))

(7)

N:=evalf(int((3*V1*kappa^2*((2*V*V1)/3 - f1^2*V1*R/(3*V) - f1*V1^2/(3*V))/(V*(-f*kappa^2 + 1)*(-R*f1 - 2*V1))),varphi=varphi__hc..varphi__end)assuming varphi__hc > 0, varphi__hc > varphi__end);

-1.*(int(-3.*(varphi/mu)^p*p*kappa^2*(-.6666666667*m^8*(1.-1.*(varphi/mu)^p)*(varphi/mu)^p*p/varphi+5.333333333*Zeta^2*varphi*m^4*(varphi/mu)^p*p*kappa^2*(-3.*(varphi/mu)^(2.*p)*m^4+(varphi/mu)^(3.*p)*m^4+3.*(varphi/mu)^p*m^4-1.*m^4-2.*Zeta*(varphi/mu)^p*p+2.*Zeta*(varphi/mu)^(2.*p)*p)/((m^4*(Zeta*kappa^2*varphi^2-1.)*(varphi/mu)^p+(-1.*Zeta*kappa^2*varphi^2+1.)*m^4+24.*Zeta*varphi*kappa^2)*(-1.+(varphi/mu)^p)*(1.-1.*(varphi/mu)^p))-.6666666667*Zeta*m^4*((varphi/mu)^p)^2*p^2/(varphi*(1.-1.*(varphi/mu)^p)))/(varphi*(1.-1.*(varphi/mu)^p)*(-1.*Zeta*kappa^2*varphi^2+1.)*(-8.*kappa^2*m^4*(-3.*(varphi/mu)^(2.*p)*m^4+(varphi/mu)^(3.*p)*m^4+3.*(varphi/mu)^p*m^4-1.*m^4-2.*Zeta*(varphi/mu)^p*p+2.*Zeta*(varphi/mu)^(2.*p)*p)*Zeta*varphi/((m^4*(Zeta*kappa^2*varphi^2-1.)*(varphi/mu)^p+(-1.*Zeta*kappa^2*varphi^2+1.)*m^4+24.*Zeta*varphi*kappa^2)*(-1.+(varphi/mu)^p))+2.*m^4*(varphi/mu)^p*p/varphi)), varphi = varphi__end .. varphi__hc))

(8)

simplify(-1.*(int(-3.*(varphi/mu)^p*p*kappa^2*(-.6666666667*m^8*(1.-1.*(varphi/mu)^p)*(varphi/mu)^p*p/varphi+5.333333333*Zeta^2*varphi*m^4*(varphi/mu)^p*p*kappa^2*(-3.*(varphi/mu)^(2.*p)*m^4+(varphi/mu)^(3.*p)*m^4+3.*(varphi/mu)^p*m^4-1.*m^4-2.*Zeta*(varphi/mu)^p*p+2.*Zeta*(varphi/mu)^(2.*p)*p)/((m^4*(Zeta*kappa^2*varphi^2-1.)*(varphi/mu)^p+(-1.*Zeta*kappa^2*varphi^2+1.)*m^4+24.*Zeta*varphi*kappa^2)*(-1.+(varphi/mu)^p)*(1.-1.*(varphi/mu)^p))-.6666666667*Zeta*m^4*((varphi/mu)^p)^2*p^2/(varphi*(1.-1.*(varphi/mu)^p)))/(varphi*(1.-1.*(varphi/mu)^p)*(-1.*Zeta*kappa^2*varphi^2+1.)*(-8.*kappa^2*m^4*(-3.*(varphi/mu)^(2.*p)*m^4+(varphi/mu)^(3.*p)*m^4+3.*(varphi/mu)^p*m^4-1.*m^4-2.*Zeta*(varphi/mu)^p*p+2.*Zeta*(varphi/mu)^(2.*p)*p)*Zeta*varphi/((m^4*(Zeta*kappa^2*varphi^2-1.)*(varphi/mu)^p+(-1.*Zeta*kappa^2*varphi^2+1.)*m^4+24.*Zeta*varphi*kappa^2)*(-1.+(varphi/mu)^p))+2.*m^4*(varphi/mu)^p*p/varphi)), varphi = varphi__end .. varphi__hc)))

Error, (in content/content) invalid arguments

 

NULL

Download ex.mw

In an old question, @mbras asked for a "partial" `convert/elsymfun`. However, SymPy's sympy.polys.rings.PolyElement.symmetrize seems to provide more examples that cannot be handled by the program that appeared in that question.
For instance, 

>>> from sympy import var
>>> var('x:z,p:r')
(x, y, z, p, q, r)
>>> from sympy.polys.polyfuncs import symmetrize
>>> symmetrize(x**2-(y**2+2**z),[y,x],formal=True,symbols=[p+p,q*q])[0]
-2**z - 4*p**2 + 2*q**2
>>> symmetrize(x*x*y+y*y*z+z*z*x,[y,x,z],formal=True,symbols=[p,q,r])
(0, x**2*y + x*z**2 + y**2*z, [(p, x + y + z), (q, x*y + x*z + y*z), (r, x*y*z)])

Though I can , can't the built-in  be generalized to such expressions (in other words, write the polynomial part of input as a symmetric part and a remainder with (named, if need be) elementary symmetric polynomials)?

Besides, since any symmetric polynomial can also be expressed in terms of the complete symmetric polynomials, is there a similar  command in Maple?

Hi,

I have a small issue when trying to calculate the I have assigned 'g' to the derivative function, but I have to use 'subs' to obtain the images. Thank you for your insights

QFonction.mw

I find that if if declare a variable in a procedure inside a if  statement it Maple things something is wrong with the if statement:

tSound=proc(xMic,yMic,zMic,xGun,yGun,zGun,mode)  

global vSound;  

local locMic:=Vector([xMic,yMix,zMix]);  

local locGun:=Vector([xGun,yGun,zGun]);   l

ocal delGunToMix;   if mode=1 then #`direct  `    

local x=0.0;    <==remove this sand fine

delGunToMix:=locMic-locGun;    

return vSound*Norm(delGunToMix);  

elif  mode=2 then #`reflect off wall at z=0`        

end if;   return 0.0;  end proc:


Error, invalid 'if' statement
==>I can delclare the variable 'local' outside the if. Why? It doesn't make much sense, though not that hard to avoid.

My code
restart;
reqn:=f(n+1) = f(n)  + sqrt(2*f(n+1)-f(n)):
rsolve({reqn, f(1) = 15},f(n));

I can not get the answer. How can I get the answer?

The uploaded worksheet begins to uniformly tile the Poincare disk with pentagons using hyperbolic reflection .

Although relatively easy to create the central pentagon and the first adjacent pentagon, it becomes increasingly difficult to determine which lines to reflect to create the remaining pentagons in the first tier adjacent to the central pentagon and more so to create the pentagons of the second tier adjacent to those in the first tier and so on.

Is there a better technique for accomplishing this?

In particular can Mobius tranformations be employed to do this? If so, please replay with or point to a working example of this for me to follow.

 Tile_Poincare_disk.mw

Sorry, I forgot that respondents to this question must establich their own link to the DirectSearch package.

I wonder if this a bug or Am I overlooking something?

I set infolevel[dsolve]:=5; and first time calling dsolve(ode), it works as expected. It prints on the screen the trace and steps it did.  But when I repeat the command dsolve, now it only prints one line and the rest of info that were printed before no longer show.

Should not the same information be printed each time? This is what happens on another example I tried. It seems infolevel does not work the same depending on the ode being solved?  Here is a worksheet attached to show the above.

Is there a workaround to make it display same information each time?

Maple 2023.2 on windows 10.

 

restart;

21424

interface(version);

`Standard Worksheet Interface, Maple 2023.2, Windows 10, October 25 2023 Build ID 1753458`

ode:=[2*diff(x(t),t)+diff(y(t),t)=x(t)+y(t)+t,diff(x(t),t)+diff(y(t),t)=2*x(t)+3*y(t)+exp(t)];
infolevel[dsolve]:=5;
dsolve(ode);

[2*(diff(x(t), t))+diff(y(t), t) = x(t)+y(t)+t, diff(x(t), t)+diff(y(t), t) = 2*x(t)+3*y(t)+exp(t)]

5

-> Solving each unknown as a function of the next ones using the order: [y(t), x(t)]

-> Calling odsolve with the ODE diff(diff(y(x) x) x) = 4*(diff(y(x) x))-y(x)-3*x+1 y(x) singsol = none

Methods for second order ODEs:

--- Trying classification methods ---

trying a quadrature

trying high order exact linear fully integrable

trying differential order: 2; linear nonhomogeneous with symmetry [0,1]

trying a double symmetry of the form [xi=0, eta=F(x)]

-> Try solving first the homogeneous part of the ODE

   checking if the LODE has constant coefficients

   <- constant coefficients successful

   -> Determining now a particular solution to the non-homogeneous ODE

      trying a rational particular solution

      <- rational particular solution successful

<- solving first the homogeneous part of the ODE successful

{x(t) = exp((2+3^(1/2))*t)*c__2+exp(-(-2+3^(1/2))*t)*c__1-3*t-11, y(t) = -(1/2)*exp((2+3^(1/2))*t)*c__2*3^(1/2)+(1/2)*exp(-(-2+3^(1/2))*t)*c__1*3^(1/2)-(3/2)*exp((2+3^(1/2))*t)*c__2-(3/2)*exp(-(-2+3^(1/2))*t)*c__1-(1/2)*exp(t)+2*t+7}

dsolve(ode);

-> Solving each unknown as a function of the next ones using the order: [y(t), x(t)]

{x(t) = exp((2+3^(1/2))*t)*c__2+exp(-(-2+3^(1/2))*t)*c__1-3*t-11, y(t) = -(1/2)*exp((2+3^(1/2))*t)*c__2*3^(1/2)+(1/2)*exp(-(-2+3^(1/2))*t)*c__1*3^(1/2)-(3/2)*exp((2+3^(1/2))*t)*c__2-(3/2)*exp(-(-2+3^(1/2))*t)*c__1-(1/2)*exp(t)+2*t+7}

infolevel[dsolve]:=5;

5

dsolve(ode);

-> Solving each unknown as a function of the next ones using the order: [y(t), x(t)]

{x(t) = exp((2+3^(1/2))*t)*c__2+exp(-(-2+3^(1/2))*t)*c__1-3*t-11, y(t) = -(1/2)*exp((2+3^(1/2))*t)*c__2*3^(1/2)+(1/2)*exp(-(-2+3^(1/2))*t)*c__1*3^(1/2)-(3/2)*exp((2+3^(1/2))*t)*c__2-(3/2)*exp(-(-2+3^(1/2))*t)*c__1-(1/2)*exp(t)+2*t+7}

dsolve(ode);

-> Solving each unknown as a function of the next ones using the order: [y(t), x(t)]

{x(t) = exp((2+3^(1/2))*t)*c__2+exp(-(-2+3^(1/2))*t)*c__1-3*t-11, y(t) = -(1/2)*exp((2+3^(1/2))*t)*c__2*3^(1/2)+(1/2)*exp(-(-2+3^(1/2))*t)*c__1*3^(1/2)-(3/2)*exp((2+3^(1/2))*t)*c__2-(3/2)*exp(-(-2+3^(1/2))*t)*c__1-(1/2)*exp(t)+2*t+7}

ode:=diff(y(x),x$2)+y(x)=sin(x);
dsolve(ode);

diff(diff(y(x), x), x)+y(x) = sin(x)

Methods for second order ODEs:

--- Trying classification methods ---

trying a quadrature

trying high order exact linear fully integrable

trying differential order: 2; linear nonhomogeneous with symmetry [0,1]

trying a double symmetry of the form [xi=0, eta=F(x)]

-> Try solving first the homogeneous part of the ODE

   checking if the LODE has constant coefficients

   <- constant coefficients successful

   -> Determining now a particular solution to the non-homogeneous ODE

      building a particular solution using variation of parameters

<- solving first the homogeneous part of the ODE successful

y(x) = sin(x)*c__2+cos(x)*c__1+(1/2)*sin(x)-(1/2)*cos(x)*x

dsolve(ode);

Methods for second order ODEs:

--- Trying classification methods ---

trying a quadrature

trying high order exact linear fully integrable

trying differential order: 2; linear nonhomogeneous with symmetry [0,1]

trying a double symmetry of the form [xi=0, eta=F(x)]

-> Try solving first the homogeneous part of the ODE

   checking if the LODE has constant coefficients

   <- constant coefficients successful

   -> Determining now a particular solution to the non-homogeneous ODE

      building a particular solution using variation of parameters

<- solving first the homogeneous part of the ODE successful

y(x) = sin(x)*c__2+cos(x)*c__1+(1/2)*sin(x)-(1/2)*cos(x)*x

 


On a side note. the first line of the display is hard to read. Any one know what it is supposed to mean by the space between the 1 and y(x) at the end there?

Download infolevel_stops_working.mw

Another example where infolevel changes on second call to dsolve: The first call gives more information which is lost in the second call. There does not seem to be a way to fix this at user level.

restart;

23828

ode:=diff(y(x),x)+(a*x+y(x))*y(x)^2=0:
infolevel[dsolve]:=5:
dsolve(ode)

Methods for first order ODEs:

--- Trying classification methods ---

trying a quadrature

trying 1st order linear

trying Bernoulli

trying separable

trying inverse linear

trying homogeneous types:

trying Chini

differential order: 1; looking for linear symmetries

trying exact

trying Abel

The relative invariant s3 is: -1/27*a*(2*a^2*x^3-9)

The first absolute invariant s5^3/s3^5 is: 729*a^4*x^6*(2*a^2*x^3-15)^3/(2*a^2*x^3-9)^5

The second absolute invariant s3*s7/s5^2 is: 5/3/a^2*(2*a^2*x^3-9)/x^3*(2*a^4*x^6-21*a^2*x^3+18)/(2*a^2*x^3-15)^2

...checking Abel class AIL (45)

...checking Abel class AIL (310)

...checking Abel class AIR (36)

inverse of the transformation solving the problem is: {t = 1/2*(-2*a^2)^(1/3)*x, u(t) = -(-2*a^2)^(1/3)/a*y(x)}

<- Abel successful

y(x) = 2*a/(a^2*x^2+2*RootOf((-2*a^2)^(1/3)*AiryBi(_Z)*c__1*x+(-2*a^2)^(1/3)*x*AiryAi(_Z)+2*AiryBi(1, _Z)*c__1+2*AiryAi(1, _Z))*(-2*a^2)^(1/3))

dsolve(ode)

Methods for first order ODEs:

--- Trying classification methods ---

trying a quadrature

trying 1st order linear

trying Bernoulli

trying separable

trying inverse linear

trying homogeneous types:

trying Chini

differential order: 1; looking for linear symmetries

trying exact

trying Abel

<- Abel successful

y(x) = 2*a/(a^2*x^2+2*RootOf((-2*a^2)^(1/3)*AiryBi(_Z)*c__1*x+(-2*a^2)^(1/3)*x*AiryAi(_Z)+2*AiryBi(1, _Z)*c__1+2*AiryAi(1, _Z))*(-2*a^2)^(1/3))

 

Download another_example_info_level_changes.mw

3 4 5 6 7 8 9 Last Page 5 of 2072