## 6778 Reputation

10 years, 34 days

## why is this ode Homogeneous ODE of Class...

Maple 2022

I can not find my Kamke book right now. But according to Maple help, Homogeneous ODE of Class C is the following

If I understand the above, it is saying that the RHS of the ode should be ratio of two polynomials, and both should be linear in y and x. Correct?

Given the above, then why Maple says the following ode is _homogeneous, `class C` ? Since the RHS is not linear in y and not linear in x:

```restart;
ode:=diff(y(x),x)=(2*y(x)-1)*(4*y(x)+6*x-3)/(y(x)+3*x-1)^2;
ode:=lhs(ode)=expand(numer(rhs(ode)))/expand(denom(rhs(ode)))
```

```DEtools:-odeadvisor(ode)
```

[[_homogeneous, `class C`], _rational]

What Am I overlooking/misunderstanding  from reading this definition?

## why Maple gives internal error on this i...

Maple 2022

in Maple 2022.1 on windows 10

 > interface(version);

 > Physics:-Version();

 > restart;
 > int(x^5*(a+b*arctan(c*x^2))^2,x)

Error, (in gcdex) invalid arguments

 >

Why it happens and is there a workaround?

Does it happen on earlier versions? I do not have an earlier Maple installed on my current PC as it is new to check.

## Why Maple crash when doing String Split ...

Maple 2022

I have string of length

StringTools:-Length(str);
1073105

When doing

p:=StringTools:-LengthSplit(str,100):

Maple gives

From help:

LengthSplit
split a string into equal length pieces

This is all done in .mpl  file actually, not interactive, but I made the above worksheet to show  the problem. The string is read from a file by a program and it wants to split it to 100 length smaller strings.

I have lots of RAM. 128 GB.  So why does Maple crash and is there a workaround this?

This string was generated by another software.

I have attached the above example below as worksheet.  Maple 2022.1 on windows 10.

Here is a simpler way to generate this problem

```restart;
str:=StringTools:-Random(1073104,'upper'):
str[1..10];

StringTools:-Length(str);
p:=StringTools:-LengthSplit(str,100):
```

Using trial and error, the crash happens when the length reaches 1073101. At 1073100 there was no crash.

## why PDEtools:-Solve gives exception but ...

Maple 2022

Found case where PDEtools:-Solve gives exception but not solve.

Is this known issue?

 > interface(version);

 > restart;
 > result:=1/2*(Dirac(1,-t+4+k)+Dirac(1,t-4+k)-Dirac(1,-t+4+k)*cos(-t+4+k)+2*Dirac(-t+4+k)*sin(-t+4+k)+2*sin(t-4+k)*Dirac(t-4+k)-Dirac(1,t-4+k)*cos(t-4+k))/k; result:=simplify(result) ; PDEtools:-Solve(result = 0,t) assuming t::real

Error, (in assuming) when calling 'RootOf'. Received: 'expression independent of, _Z, RootOf'

 > solve(result = 0,t) assuming t::real
 >

## how to read the "originalview" or the ra...

Maple 2022

I create a plot, then later on, I want to use the same view for a second plot or using the same starting x, ending x and starting y and ending y. For reasons no need to get into into, I need to do this and I have no access to this information at this time. I only have access to the p variable used to store the plot into as in this example below.

I am not sure what is the correct way to do read this information from the PLOTS structure as I never used it before.

Help describes the PLOTS structure under "PLOT and PLOT3D Data Structures" , but do not see how is one supposed to read different parts of it. I could have missed it. Maple help pages are very hard for me to read in order to obtain the information needed. From help it says:

The Maple plotting functions, plot, plot3d, and others, produce PLOT and PLOT3D data structures describing the images to be displayed.

By trial and error, for standard plot this worked

```p:=plot(sin(x),x=-1..10):
op([4,1,2,2],p)
```

returns

"originalview" = [-0.9862500000 .. 9.9862500000, -1.0000000000 .. 1.0000000000]

I see also that command plottools:-getdata(p):  returns the data. So I could also do (it is stored in matrix, in third entry):

```p0:=plottools:-getdata(p);
startingx:=p0[3][1,1];
startingy:=p0[3][1,2];
endingx:=p0[3][-1,1];
endingy:=p0[3][-1,2];

```

Will the above work all the time? should this command be used to obtain this information or is there a better way?

When I lprint(p) I see these fields have actual names. For example  , here is screen shot of lprint(p)

it looks like  a RECORD data structure. But when I tried p:-originalview  Error, `p` does not evaluate to a module

The question is: What is the correct way to find what x range and y range was used for an earlier plot, given one has access only to p variable used to store the output of the plot command?  This is for 2D plot only.

 1 2 3 4 5 6 7 Last Page 1 of 133
﻿