Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

i have solution of ODE but again i want take derivative from solution function F then i want take reciprocal of derivative
if F'=G then i want 1/F'=1/G like that i want all solution by list and if possible don't give the parameter a sequence  it will be better

thanks for any help

K := diff(G(xi), xi $ 2) = -lambda*diff(G(xi), xi) - mu;
                 2                                    
                d                    / d        \     
          K := ----- G(xi) = -lambda |---- G(xi)| - mu
                   2                 \ dxi      /     
                dxi                                   

V:= [seq](-1..1, 1/2);
                          [    -1     1   ]
                     V := [-1, --, 0, -, 1]
                          [    2      2   ]

interface(rtablesize= nops(V)^3):
DataFrame(
    <seq(seq(<a | b | rhs(dsolve(eval(K, [lambda,mu]=~ [a,b])))>, a= V), b= V)>,
    columns= [lambda, mu, F]
);

loading

Error occurred during PDF generation. Please refresh the page and try again

Dear Expert Users,

I am still struggling with my transition from Mathcad 15 to Maple. Would someone be so kind to look at the attached worksheet and how I can obtain the desired result? Thanks in advance. The data used in the example come from TestFleck.xlsx

QuestionPrimes.mw TestFleck.xlsx

Hi
my odetest must give me zero everything is true but still not simplify the function with power include 1/n  not do cancelation even

test_sol_for_PDE.mw

*****************************

EDIT: Thanks for the help i used the restore backup feature. I made my anti virus not react to maple since i thought that might work, so far no more problems. Else this is a fix if anybody else has this problem.

******************************

Hi, so my maple freezes during simple tasks, such as trying to type something, or somtimes copying and inerting the results from a previous equation, the feature where you mark something and drag the answer to somewhere else also does this. When this happens, maple completely freezes and i'm forced to close the app with taksmanager, where i lose everything i have worked on, sometimes for the past hour because i didn't save every minute which is basically not something you can do.

Is there any fix for this or anything i can do to prevent this, cause it really sucks. 

I'm on a windows 11 with maple 2024

i have  written summation with  two  loops at the end and the result should be start from uNew[1][1] since values of i is starting from 1 but in the result i am getting uNew[0][1] why? for understanding of question i am attaching my file kindly help me sort out the problemautomatic_differentiation.mw

VerifyTools is a package that has been available in Maple for roughly 24 years, but until now it has never been documented, as it was originally intended for internal use only. Documentation for it will be included in the next release of Maple. Here is a preview:

VerifyTools is similar to the TypeTools package. A type is essentially a predicate that a single expression can either satisfy or not. Analogously, a verification is a predicate that applies to a pair of expressions, comparing them. Just as types can be combined to produce compound types, verifications can also be combined to produce compund verifications. New types can be created, retrieved, queried, or deleted using the commands AddType, GetType (or GetTypes), Exists, and RemoveType, respectively. Similarly in the VerifyTools package we can create, retrieve, query or delete verifications using AddVerification, GetVerification (or GetVerifications), Exists, and RemoveVerification.

The package command VerifyTools:-Verify is also available as the top-level Maple command verify which should already be familiar to expert Maple users. Similarly, the command VerifyTools:-IsVerification is also available as a type, that is,

VerifyTools:-IsVerification(ver);

will return the same as

type(ver, 'verification');

The following examples show what can be done with these commands. Note that in each example where the Verify command is used, it is equivalent to the top-level Maple command verify. (Also note that VerifyTools commands shown below will be slightly different compared to the Maple2024 version):

with(VerifyTools):

Suppose we want to create a verification which will checks that the length of a result has not increased compared to the expected result. We can do this using the AddVerification command:

AddVerification(length_not_increased, (a, b) -> evalb(length(a) <= length(b)));

First, we can check the existence of our new verification and get its value:

Exists(length_not_increased);

true

GetVerification(length_not_increased);

proc (a, b) options operator, arrow; evalb(length(a) <= length(b)) end proc

For named verifications, IsVerification is equivalent to Exists (since names are only recognized as verifications if an entry exists for them in the verification database):

IsVerification(length_not_increased);

true

On the other hand, a nontrivial structured verification can be checked with IsVerification,

IsVerification(boolean = length_not_increased);

true

whereas Exists only accepts names:

Exists(boolean = length_not_increased);

Error, invalid input: VerifyTools:-Exists expects its 1st argument, x, to be of type symbol, but received boolean = length_not_increased

The preceding command using Exists is also equivalent to the following type call:

type(boolean = length_not_increased, verification);

true

Now, let's use the new verification:

Verify(x + 1/x, (x^2 + 1)/x, length_not_increased);

true

Verify((x^2 + 1)/x, x + 1/x, length_not_increased);

false

Finally, let's remove the verification:

RemoveVerification(length_not_increased);

Exists(length_not_increased);

false

GetVerification(length_not_increased);

Error, (in VerifyTools:-GetVerification) length_not_increased is not a recognized verification

GetVerifications returns the list of all verifications known to the system:

GetVerifications();

[Array, FAIL, FrobeniusGroupId, Global, Matrix, MultiSet, PermGroup, RootOf, SmallGroupId, Vector, address, after, approx, array, as_list, as_multiset, as_set, attributes, boolean, box, cbox, curve, curves, dataframe, dataseries, default, default, dummyvariable, equal, evala, evalc, expand, false, float, function, function_bounds, function_curve, function_shells, greater_equal, greater_than, in_convex_polygon, indef_int, interval, less_equal, less_than, list, listlist, matrix, member, multiset, neighborhood, neighbourhood, normal, permute_elements, plot, plot3d, plot_distance, plotthing_compile_result, polynom, procedure, ptbox, range, rational, record, relation, reverse, rifset, rifsimp, rtable, set, sign, simplify, sublist, `subset`, subtype, superlist, superset, supertype, symbol, table, table_indices, testeq, text, true, truefalse, type, undefined, units, vector, verifyfunc, wildcard, xmltree, xvm]

Download VerificationTools_blogpost.mw

Austin Roche
Software Architect
Mathematical Software
Maplesoft

Hi
most of my equation when i wanna solve it is give me something like thus equation and it take a lot time to calculate and i don't get any answer after 1 hour past and still searching for finding parameter how i can do in fast way or maybe if exist  can i use mathematica or matlab is better for calculating this or not ?

F-P.mw

I am preparing some examples to start the year in the differential equations lesson. And I was wondering if there is any other way to represent the equilibrium points than the following which I found and then plotted using pointplot.

restart

NULL

alpha := 0.4e-1; beta := 0.8e-2; sys := {diff(g(t), t) = -.25*g(t)+beta*p(t)*g(t), diff(p(t), t) = .7*p(t)*(1-(1/100)*p(t))-alpha*p(t)*g(t)}; ics := {g(0) = 5, p(0) = 20}
 

sol := dsolve(`union`(sys, ics), {g(t), p(t)}, numeric, range = 0 .. 50); with(plots); plots:-display(plots:-odeplot(sol, [t, p(t)], 0 .. 50, color = blue, legend = ["p(t)"]), plots:-odeplot(sol, [t, g(t)], 0 .. 50, color = red, legend = ["gt)"]), labels = ["t", "Population"], title = "Population Dynamics")

 

eqns := {.7*p(t)*(1-(1/100)*p(t))-alpha*p(t)*g(t) = 0, -.25*g(t)+beta*p(t)*g(t) = 0}; eq_points := solve(eqns, {g(t), p(t)}); eq_points

{g(t) = 0., p(t) = 0.}, {g(t) = 0., p(t) = 100.}, {g(t) = 12.03125000, p(t) = 31.25000000}

(1)

eqpoints := pointplot([[0, 0], [100, 0], [31.25000000, 12.03125000]], color = [red], symbol = diamond, symbolsize = 15)

``
phaseplot := odeplot(sol, [p(t), g(t)], 0 .. 35, color = green, thickness = 2)

with(DEtools); vectorfield_plot := dfieldplot([diff(p(t), t) = .7*p(t)*(1-(1/100)*p(t))-alpha*p(t)*g(t), diff(g(t), t) = -.25*g(t)+beta*p(t)*g(t)], [p(t), g(t)], t = 0 .. 35, p = 0 .. 150, g = 0 .. 30, arrows = small, color = blue, axes = boxed)

 

 

display([vectorfield_plot, phaseplot, eqpoints])

 

NULL


 

Download aquarium.mw

Hello,

How can I reduce time calculations for the integral process?

Determining H[1] and HH[1] is very boring!!

 

time_consuming_calculations.mw

Strange thing happening when changing the view zoom factor, as images are not scaling.

That makes it very difficult to generate print documents, a case we've talked about previously.

The first image is a screenshot with 100% scale factor, the other one with scale factor 400%.

One could argue, that I could switch to Print Layout Mode. But the problem there is that I don't have any view zoom factor at all.

I was looking at coulditbe  to see if I can use it to check if odetest result can be zero or not.

But I am finding very strange results. It gives false positive too many times.

Here is an expression in x only. Plotting this it is clear it is never zero for any x value. Also asking Maple to solve this expression=0 for x, it finds no solution.  Yet, when I say coulditbe(e=0) it says true. also is(e=0) returns false.

How could this be possible?  How did coulditbe determine there is some x which makes this expression zero? Is there a way to make sure this function do not give false positive in this example? do I need to add some assumptions may be? 

Should I use is(e=0) instead of coulditbe(e=0) if  the is is more reliable?  have not used these commands much before and was looking for better ways to check if the residual from odetest can be verified it is zero or not.

I also added _EnvTry:='hard'; but it made no difference.  It still gives true.

Maple 2024.1 on windows.

restart;

e:=sqrt(2)*sqrt((3*x^3 + 5*sqrt(x^2 + 8)*x^2 + 24*x + 36*sqrt(x^2 + 8))/sqrt(x^2 + 8))/8 + x/8 + (3*x^2)/(8*sqrt(x^2 + 8)) + 3/sqrt(x^2 + 8);

(1/8)*2^(1/2)*((3*x^3+5*(x^2+8)^(1/2)*x^2+24*x+36*(x^2+8)^(1/2))/(x^2+8)^(1/2))^(1/2)+(1/8)*x+(3/8)*x^2/(x^2+8)^(1/2)+3/(x^2+8)^(1/2)

plot(e,x=-10..10,y=0..4 );

is(e=0);

false

solve(e=0,x); #no solution

x

coulditbe(e=0)

true

_EnvTry:='hard';

hard

coulditbe(e=0)

true

 


 

Download coulditbe_question.mw

Update

I just found out that by adding  assume(x::real); before the call to coulditbe or by adding assuming, then it no longer returns true, but now returns FAIL.

This is much better. At least not a false positive.

So it looks like it was assuming x (and any other parameter than can be in the expression) can be complex and for some complex x, this expression can be zero.

So I will add this assumption now. So I think this will work. But need to test it more.

coulditbe(e=0) assuming x::real;

            FAIL

if I have arational function f(x) in C(x), where C is the complex field, then the partial fraction of f can be written as 

f(x)=p(x)+\sum_{i=0}^n a[i]/(1-b[i]*x)^c[i]
i.e., every denominator is linear in x.

How can I get this factorization in maple, and I think when the degree of the denominator is too high, we can not get the explicit a[i] and b[i], in this situation, can we get their minimal polynomials?

Circles inscribed between curves can be specified by a system of equations relative to the coordinates of the center of the circle and the coordinates of the tangent points. Such a system can have 5 or 6 equations and 6 variables, which are mentioned above.
In the case of 5 equations, we can immediately obtain an infinite set of solutions by selecting the ones we need from it. 
(See the attached text for more details.)
The 1st equation is responsible for the belonging of the point of tangency to one of the curves.
The 2nd equation is responsible for the belonging of the point of tangency to another curve.
In the 3rd equation, the points of tangency on the curves belong to the inscribed circle.
In the 4th and 5th equations, the condition is satisfied that the tangents to the curves are perpendicular to the radii of the circle at the points of contact.
The 6th equation serves either to find a specific inscribed circle or to find an infinite set of solutions. It is selected based on the type of curves and their mutual arrangement.

In this example, we search for a subset of the solution set using the Draghilev method by solving the first five equations of the system: we inscribe circles in two "angles" formed by the intersection of the exponent and the ellipse.
The text of this example, its solution in the form of a picture,"big" option and pictures of similar examples.

INSCRIBED_CIRCLES.mw


 


Addition 09/01/24, 
One curve for the first two equations in coordinates x1,x2 and x3,x4
f1:=
 x1^2 - 2.5*x1*x2 + 3*x2^2 - 1;
f2:=
 x3^2 - 2.5*x3*x4 + 3*x4^2 - 1;

Good morning, I'm trying to evaluate this equation when x = 10 degrees so that it gives me a value something like this -0.1671897 etc. but I can't find a way to do it. I've tried to do it like this:

with(Degrees);
evalf(eq, tand(10));

with(Units:-Simple);
evalf(eq, tan(10*Unit(degree) ;

But it gives me an error. In other words, how do I evaluate the equation at 10 degrees.

 

First 80 81 82 83 84 85 86 Last Page 82 of 2216