Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

I just installed Maple 2024.0 and I discovered a problem in that the "Manage Style Sets" under the "Format" menu DOESN'T WORK!!! Type the following to understand how this feature works and see if you have the same problem:

>?workshhet,documenting,styles

Follow the instructions.  They are pretty simple.  Find a worksheet that has the styles you like and open it up and then save this Style Set in Maple 2024.0.  Then close it.  Open a new worksheet.  Go to "Format" and then click on "Managing Style Sets" and then click on the Style Set file name you saved previously and you will find that it does not set the style set you saved previously.  

 

Another problem you will find is that it doesn't save your Style Set file where it is supposed to save it.  It needs to be saved in a Maple 2024.0 created folder known as "data" and then in a folder under "data" called "stylesets".  I had to manually go find my Style Set file and copy and paste it there.  

Please check this out and see if I am wrong.  I use the "Format" "Manage Style Sets" option a lot when I download files from this blog and ".mw"  have fonts size 12 and they default to the nearly impossible to read font!  After I have applied the "Manage Style Sets" I can see what I have! But for some reason in Maple 2024.0 this feature was not tested or something has changed in Maple 2024.0 to break this feature!

AllGraphs is a new function in Maple 2024. Good things!

However, it seems that most of its functionalities are already provided by NonIsomorphicGraphs, and its speed even lags behind that of NonIsomorphicGraphs 

 

I'm curious about what truly sets this function apart from existing ones. It generates isomorphic graphs if nonisomorphic=falseBut I donot know what its application is. Supporting directed graphs is a new thing, but its speed is not well.

iterator := GraphTheory[AllGraphs](vertices = 6, edges =6..7, connected, nonisomorphic)
s:=[seq(p, p = iterator)]:
nops(s)

Note that this function is suitable for generating non-isomorphic connected graphs with 6 vertices and either 6 or 7 edges. It doesn't hold an advantage in terms of speed, andNonIsomorphicGraphs also provides an iteration option.

Hello,

How to  outer loop index setup as the upper value of the inner loop index?

I have been trying Maple 2024 and found this strange result. 

Calling solve(identity...  on same input in Maple 2024 gives very large and complex output compare with Maple 2023.2.1.

This was causing problem, until I found that simplifying the solution now gives same output as Maple 2023.2.1

But why is this now needed in Maple 2024? i.e. why is calling simplify needed when in Maple 2023 the simpler solution was returned automatically?

I changed my code to call simplify now on result of solve(identity...  but I am just curious what happened to cause this?

Below are two worksheets, one from Maple 2024 and one from Maple 2023.2 and you see the huge difference in result.


 

56056

interface(version);

`Standard Worksheet Interface, Maple 2023.2, Windows 10, November 24 2023 Build ID 1762575`

Physics:-Version();

`The "Physics Updates" version in the MapleCloud is 1693. The version installed in this computer is 1672 created 2024, February 7, 18:34 hours Pacific Time, found in the directory C:\Users\Owner\maple\toolbox\2023\Physics Updates\lib\`

restart;

238012

trial_solution_constants:=[A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8]];
eq:=-2*A[1]*sin(x)+2*A[2]*cos(x)-4*A[2]*x*sin(x)+2*A[3]*sin(x)+4*A[3]*x*cos(x)+2*A[4]*cos(x)-6*A[5]*sin(3*x)-8*A[5]*x*cos(3*x)+6*A[6]*cos(3*x)-8*A[6]*x*sin(3*x)-8*A[7]*cos(3*x)-8*A[8]*sin(3*x) = x*cos(x)^3;
solve(identity(eq,x),trial_solution_constants)

[A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8]]

-2*A[1]*sin(x)+2*A[2]*cos(x)-4*A[2]*x*sin(x)+2*A[3]*sin(x)+4*A[3]*x*cos(x)+2*A[4]*cos(x)-6*A[5]*sin(3*x)-8*A[5]*x*cos(3*x)+6*A[6]*cos(3*x)-8*A[6]*x*sin(3*x)-8*A[7]*cos(3*x)-8*A[8]*sin(3*x) = x*cos(x)^3

[[A[1] = 3/16, A[2] = 0, A[3] = 3/16, A[4] = 0, A[5] = -1/32, A[6] = 0, A[7] = 0, A[8] = 3/128]]

 


 

Download solve_identity_march_11_2024_maple_2023.mw

 


 

56056

interface(version);

`Standard Worksheet Interface, Maple 2024.0, Windows 10, March 01 2024 Build ID 1794891`

Physics:-Version();

`The "Physics Updates" version in the MapleCloud is 1693 and is the same as the version installed in this computer, created 2024, March 7, 17:27 hours Pacific Time.`

restart;

56944

trial_solution_constants:=[A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8]];
eq:=-2*A[1]*sin(x)+2*A[2]*cos(x)-4*A[2]*x*sin(x)+2*A[3]*sin(x)+4*A[3]*x*cos(x)+2*A[4]*cos(x)-6*A[5]*sin(3*x)-8*A[5]*x*cos(3*x)+6*A[6]*cos(3*x)-8*A[6]*x*sin(3*x)-8*A[7]*cos(3*x)-8*A[8]*sin(3*x) = x*cos(x)^3;
solve(identity(eq,x),trial_solution_constants)

[A[1], A[2], A[3], A[4], A[5], A[6], A[7], A[8]]

-2*A[1]*sin(x)+2*A[2]*cos(x)-4*A[2]*x*sin(x)+2*A[3]*sin(x)+4*A[3]*x*cos(x)+2*A[4]*cos(x)-6*A[5]*sin(3*x)-8*A[5]*x*cos(3*x)+6*A[6]*cos(3*x)-8*A[6]*x*sin(3*x)-8*A[7]*cos(3*x)-8*A[8]*sin(3*x) = x*cos(x)^3

[[A[1] = -(3/16)*(648*cos(3)*sin(1)^3+972*cos(3)*sin(1)^2*cos(1)+432*sin(3)*sin(1)^3+648*sin(3)*sin(1)^2*cos(1)+2268*sin(1)^4+1296*sin(1)^3*cos(1)+324*sin(3)*cos(3)-108*sin(1)*cos(3)-585*cos(3)*cos(1)-133*sin(3)^2-153*sin(3)*sin(1)-48*sin(3)*cos(1)-2025*sin(1)^2+225)/(108*sin(1)*cos(3)+99*cos(3)*cos(1)-2*sin(3)^2+153*sin(3)*sin(1)-276*sin(3)*cos(1)-162*sin(1)^2+261), A[2] = (9/32)*(-48*cos(3)*sin(1)^3-72*cos(3)*sin(1)^2*cos(1)+88*sin(3)*sin(1)^3+132*sin(3)*sin(1)^2*cos(1)+864*sin(1)^4-108*sin(1)^3*cos(1)+21*sin(3)*cos(3)+117*sin(1)*cos(3)-144*cos(3)*cos(1)+40*sin(3)^2-12*sin(3)*sin(1)-141*sin(3)*cos(1)-972*sin(1)^2+243*cos(1)*sin(1)+144)/(108*sin(1)*cos(3)+99*cos(3)*cos(1)-2*sin(3)^2+153*sin(3)*sin(1)-276*sin(3)*cos(1)-162*sin(1)^2+261), A[3] = -(3/32)*(648*cos(3)*sin(1)^3+972*cos(3)*sin(1)^2*cos(1)+432*sin(3)*sin(1)^3+648*sin(3)*sin(1)^2*cos(1)+2268*sin(1)^4+1296*sin(1)^3*cos(1)+324*sin(3)*cos(3)-216*sin(1)*cos(3)-684*cos(3)*cos(1)-131*sin(3)^2-306*sin(3)*sin(1)+228*sin(3)*cos(1)-1863*sin(1)^2-36)/(108*sin(1)*cos(3)+99*cos(3)*cos(1)-2*sin(3)^2+153*sin(3)*sin(1)-276*sin(3)*cos(1)-162*sin(1)^2+261), A[4] = 0, A[5] = (1/64)*(216*cos(3)*sin(1)^3+324*cos(3)*sin(1)^2*cos(1)+144*sin(3)*sin(1)^3+216*sin(3)*sin(1)^2*cos(1)+756*sin(1)^4+432*sin(1)^3*cos(1)+41*cos(3)^2+108*sin(3)*cos(3)-216*sin(1)*cos(3)-360*cos(3)*cos(1)-306*sin(3)*sin(1)+444*sin(3)*cos(1)-405*sin(1)^2-401)/(2*cos(3)^2+108*sin(1)*cos(3)+99*cos(3)*cos(1)+153*sin(3)*sin(1)-276*sin(3)*cos(1)-162*sin(1)^2+259), A[6] = -(3/64)*(48*cos(3)*sin(1)^3+72*cos(3)*sin(1)^2*cos(1)-88*sin(3)*sin(1)^3-132*sin(3)*sin(1)^2*cos(1)-864*sin(1)^4+108*sin(1)^3*cos(1)+40*cos(3)^2-21*sin(3)*cos(3)-117*sin(1)*cos(3)+144*cos(3)*cos(1)+12*sin(3)*sin(1)+141*sin(3)*cos(1)+972*sin(1)^2-243*cos(1)*sin(1)-184)/(2*cos(3)^2+108*sin(1)*cos(3)+99*cos(3)*cos(1)+153*sin(3)*sin(1)-276*sin(3)*cos(1)-162*sin(1)^2+259), A[7] = (27/256)*(-48*cos(3)*sin(1)^3-72*cos(3)*sin(1)^2*cos(1)+88*sin(3)*sin(1)^3+132*sin(3)*sin(1)^2*cos(1)+864*sin(1)^4-108*sin(1)^3*cos(1)+21*sin(3)*cos(3)+117*sin(1)*cos(3)-144*cos(3)*cos(1)+40*sin(3)^2-12*sin(3)*sin(1)-141*sin(3)*cos(1)-972*sin(1)^2+243*cos(1)*sin(1)+144)/(108*sin(1)*cos(3)+99*cos(3)*cos(1)-2*sin(3)^2+153*sin(3)*sin(1)-276*sin(3)*cos(1)-162*sin(1)^2+261), A[8] = -(3/256)*(744*cos(3)*sin(1)^3+1116*cos(3)*sin(1)^2*cos(1)+496*sin(3)*sin(1)^3+744*sin(3)*sin(1)^2*cos(1)+2604*sin(1)^4+1488*sin(1)^3*cos(1)+372*sin(3)*cos(3)-216*sin(1)*cos(3)-756*cos(3)*cos(1)-151*sin(3)^2-306*sin(3)*sin(1)+180*sin(3)*cos(1)-2187*sin(1)^2+36)/(108*sin(1)*cos(3)+99*cos(3)*cos(1)-2*sin(3)^2+153*sin(3)*sin(1)-276*sin(3)*cos(1)-162*sin(1)^2+261)]]

simplify(%);

[[A[1] = 3/16, A[2] = 0, A[3] = 3/16, A[4] = 0, A[5] = -1/32, A[6] = 0, A[7] = 0, A[8] = 3/128]]

 


 

Download solve_identity_march_11_2024.mw

 

This post is to help anyone who is just as frustrated about typesetting in plots
as I was before I solved my problem. (Note: the technique works with the version

2020 and newer and may work with earlier versions.)

 

Why? Because there is no obvious help in Maple showing what works. (And if folks

can improve what I have posted,  please do so. At least when someone executes

a search for this type of problem, they might see the best approach.)

Goal: typeset a name of a function in any text of a plot.

Approach: According to help, '?plot, typesetting',  one should use the
option(procedure?) typeset.   For example:

"restart;   plots:-setoptions(size = [400, 200]):    `f__1`(x) :=cos(x)*(e)^(-(x^(2))/(4)) :    p1 := plot(`f__1`(x), x = -5..5,                         legend = typeset("function ", `f__1`(x) )  );"

 

 

However, what I want in the legend is the expression "`f__1`(x),"not the evaluated

expression. Entering the name with single quotes around the expression leads to this:

 

p1 := plot(f__1(x), x = -5 .. 5, legend = typeset("function ", 'f__1(x)'))

 

 

which is great, except that when I wish to redisplay the plot

 

plots:-display(p1)

 

the expression f__1(x)is evaluated.

 

According to the code completion capability of Maple, the procedure

"Typesetting:-Typeset" exists, and it does not evaluate the function:

 

p1 := plot(f__1(x), x = -5 .. 5, legend = Typesetting:-Typeset(f__1(x))); plots:-display(p1)

 

 

except there is no help regarding this procedure.

 

It appears that the procedure operates only on one item.

 

Solution: Hence, the ultimate solution for my problem is to still use the typeset 

option, but Typeset any expression.

 

p1 := plot(f__1(x), x = -5 .. 5, legend = typeset("function ", Typesetting:-Typeset(f__1(x)))); plots:-display(p1)

 

 

Again, if you can contribute to this post, I would appreciate it.


 

Download MaplePrimies_-_Typesetting_in_plots.mw

Could someone help me fix this loop.

It is printing the expressions without evaluating but it is evaluating it before appending it to the list.
I do not want to apriori define the functional dependence i.e. f(t).

lis := [f1, f2, f3, f4, f5, f6, f7, f8, f9, f10];
L := [];
for i in lis do
    print(subs(f = i, 'diff(f, t)'));
    L := [op(L), subs(f = i, 'diff(f, t)')];
end do;
print(L);


Consider the worksheet below.

restart

with(Physics[Vectors])

`dτ_` := -I*z*dz*B__0*x^2*_j/d^2-I*y*dz*B__0*x^2*_k/d^2

-I*z*dz*B__0*x^2*_j/d^2-I*y*dz*B__0*x^2*_k/d^2

(1)

I want to integrate the above expression. The differential is already present in the expression. Currently, I have to manually remove the differential to use the int procedure as below.

`τ_` := int(-I*z*B__0*x^2*`#mover(mi("j"),mo("∧"))`/d^2-I*y*B__0*x^2*`#mover(mi("k"),mo("∧"))`/d^2, z = l .. -l)

(2*I)*y*B__0*x^2*_k*l/d^2

(2)

Since I want to put this operation inside a procedure, this removal of dz needs to happen programatically.


For even more context, dtau is a differential torque. 

I am integrating these infinitesimal torques.

dtau is calculated based on a magnetic field B.

I would like to have a procedure that accepts a field B and computes the torque integral.

Download RemoveDifferential.mw

Here is a "toy" instance. 
As the title suggests, I would like to simplify the following boolean combinations: (Note that the  should be taken into account.) 

formula__0 := 
 convert(And(
   Non(`xor`(Or(0 >- 0, y ** 3=x), 
     And(((y*x - 0^0)^2 + (y*y - x*x)^2)*(y^2 + x^2) > 
       0, 0 <- (y**3 - x)*(y - x**3)**3, 
      `implies`(y + x*2 >= y ** 3*2 + x**3, 
       Or(y + x < y*y*y + x*x*x)), Not((y**3 - x)*(y - x**3) = 0), 
      0 >= 0), y <> x*x*x))), 'boolean_function'):

Regretfully, the built-in command simplify is unable to simplify : 

simplify(formula__0, assume = real); # only rudimentary simplifications 
 = 



The library function SMTLIB:-Simplify seems to simplify it, but the result is incorrect

(SMTLIB:-Simplify(formula__0) assuming real); # check {y = 1, x = 0} 
 = 
                    /   /   / 3           3\\\
                 And\Not\And\y  = x, y = x ///

The only procedure I can find that is capable of rewriting it appears to be RealDomain:-solve

RealDomain:-solve(formula__0, 'allsolutions'); # see below 
 = 
Warning, solutions may have been lost
    /            3\    /     3       \    /     3        \   
   { x = x, y = x  }, { x = y , y = y }, { y = x , x < -1 }, 
    \             /    \             /    \              /   

      /     3              \    /     3        \   
     { y = x , 0 < x, x < 1 }, { x = y , y < -1 }, 
      \                    /    \              /   

      /     3              \ 
     { x = y , 0 < y, y < 1 }
      \                    / 


Nevertheless, this is more or less overkill, since a complete solution set is somewhat unnecessary, and in practice, an simplified and compact but presumably unsolved form is more applicable to further manipulations. (For example, the simplest form of And(y*y + x*x > 0^0): (over ℝ²) should at least be x2y2>1, yet  simply returns sort(convert(Or,function,map2(`?()`,And,RealDomain[solve](And(y*y+x*x>0^0),[x,y]))),[x,y]), which is definitely unsuitable here.) (A more real example can be found in the Ex3 of this compressed file.)

I believe that this is a common problem; curiously, I cannot find any related questions in this forum. So, are such simplifications (similar to SLFQ) available in Maple? 


 

I have the following expressions:

m^3*r*(cos(theta)^6*a^6-9*cos(theta)^4*a^4*r^2+11*cos(theta)^2*a^2*r^4-(1/3)*r^6)*(cos(theta)^2*a^2-(1/3)*r^2)/(r^2+cos(theta)^2*a^2)^9

m^3*r*(cos(theta)^6*a^6-9*cos(theta)^4*a^4*r^2+11*cos(theta)^2*a^2*r^4-(1/3)*r^6)*(cos(theta)^2*a^2-(1/3)*r^2)/(r^2+cos(theta)^2*a^2)^9

(1)

(a^8*(r^10-10*m*r^9+(5*(a^2+8*m^2))*r^8-80*m^3*r^7+(10*(a^4+12*a^2*m^2+8*m^4))*r^6+(4*(-15*a^4*m-40*a^2*m^3-8*m^5))*r^5+(10*(a^6+12*a^4*m^2+8*a^2*m^4))*r^4+(40*(-a^6*m-2*a^4*m^3))*r^3+(5*(a^8+8*a^6*m^2))*r^2-10*a^8*m*r+a^10)*cos(theta)^8-(1/3)*(28*(-30*sin(theta)^2*a^4*m*r^5*(1/7)+r^10-10*m*r^9+(5*(a^2+8*m^2))*r^8+(40*(-a^2*m-2*m^3))*r^7+(10*(a^4+12*a^2*m^2+8*m^4))*r^6+(32*(-5*a^2*m^3-m^5))*r^5+(10*(a^6+12*a^4*m^2+8*a^2*m^4))*r^4+(40*(-a^6*m-2*a^4*m^3))*r^3+(5*(a^8+8*a^6*m^2))*r^2-10*a^8*m*r+a^10))*a^6*r^2*cos(theta)^6+(14*(-260*sin(theta)^2*a^6*m*r^3*(1/7)+r^10-10*m*r^9+(5*(a^2+8*m^2))*r^8+(40*(-a^2*m-2*m^3))*r^7+(10*(a^4+12*a^2*m^2+8*m^4))*r^6+(4*(-15*a^4*m-40*a^2*m^3-8*m^5))*r^5+(10*(a^6+12*a^4*m^2+8*a^2*m^4))*r^4-80*a^4*m^3*r^3+(5*(a^8+8*a^6*m^2))*r^2-10*a^8*m*r+a^10))*a^4*r^4*cos(theta)^4-4*a^2*(-10*a^8*m*r*sin(theta)^2+r^10-10*m*r^9+(5*(a^2+8*m^2))*r^8+(40*(-a^2*m-2*m^3))*r^7+(10*(a^4+12*a^2*m^2+8*m^4))*r^6+(4*(-15*a^4*m-40*a^2*m^3-8*m^5))*r^5+(10*(a^6+12*a^4*m^2+8*a^2*m^4))*r^4+(40*(-a^6*m-2*a^4*m^3))*r^3+(5*(a^8+8*a^6*m^2))*r^2+a^10)*r^6*cos(theta)^2+(1/9)*r^8*(a^2-2*m*r+r^2)^5)*m^3*r/((r^2+a^2*cos(theta)^2)^9*(a^2-2*m*r+r^2)^5)

(a^8*(r^10-10*m*r^9+5*(a^2+8*m^2)*r^8-80*m^3*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*cos(theta)^8-(28/3)*(-(30/7)*sin(theta)^2*a^4*m*r^5+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+32*(-5*a^2*m^3-m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*a^6*r^2*cos(theta)^6+14*(-(260/7)*sin(theta)^2*a^6*m*r^3+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4-80*a^4*m^3*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*a^4*r^4*cos(theta)^4-4*a^2*(-10*a^8*m*r*sin(theta)^2+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2+a^10)*r^6*cos(theta)^2+(1/9)*r^8*(a^2-2*m*r+r^2)^5)*m^3*r/((r^2+cos(theta)^2*a^2)^9*(a^2-2*m*r+r^2)^5)

(2)

The two expressions are the same because:

simplify(m^3*r*(cos(theta)^6*a^6-9*cos(theta)^4*a^4*r^2+11*cos(theta)^2*a^2*r^4-(1/3)*r^6)*(a^2*cos(theta)^2-(1/3)*r^2)/(r^2+a^2*cos(theta)^2)^9-(a^8*(r^10-10*m*r^9+5*(a^2+8*m^2)*r^8-80*m^3*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*cos(theta)^8-(28/3)*(-(30/7)*sin(theta)^2*a^4*m*r^5+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+32*(-5*a^2*m^3-m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*a^6*r^2*cos(theta)^6+14*(-(260/7)*sin(theta)^2*a^6*m*r^3+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4-80*a^4*m^3*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*a^4*r^4*cos(theta)^4-4*a^2*(-10*a^8*m*r*sin(theta)^2+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2+a^10)*r^6*cos(theta)^2+(1/9)*r^8*(a^2-2*m*r+r^2)^5)*m^3*r/((r^2+a^2*cos(theta)^2)^9*(a^2-2*m*r+r^2)^5))

0

(3)

But I don't get the expression (1) from (2) with the help of simplify() command:

simplify((a^8*(r^10-10*m*r^9+5*(a^2+8*m^2)*r^8-80*m^3*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*cos(theta)^8-(28/3)*(-(30/7)*sin(theta)^2*a^4*m*r^5+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+32*(-5*a^2*m^3-m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*a^6*r^2*cos(theta)^6+14*(-(260/7)*sin(theta)^2*a^6*m*r^3+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4-80*a^4*m^3*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*a^4*r^4*cos(theta)^4-4*a^2*(-10*a^8*m*r*sin(theta)^2+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2+a^10)*r^6*cos(theta)^2+(1/9)*r^8*(a^2-2*m*r+r^2)^5)*m^3*r/((r^2+a^2*cos(theta)^2)^9*(a^2-2*m*r+r^2)^5))

(a^8*(r^10-10*m*r^9+5*(a^2+8*m^2)*r^8-80*m^3*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*cos(theta)^8-(28/3)*(-(30/7)*sin(theta)^2*a^4*m*r^5+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+32*(-5*a^2*m^3-m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*a^6*r^2*cos(theta)^6+14*(-(260/7)*sin(theta)^2*a^6*m*r^3+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4-80*a^4*m^3*r^3+5*(a^8+8*a^6*m^2)*r^2-10*a^8*m*r+a^10)*a^4*r^4*cos(theta)^4-4*a^2*(-10*a^8*m*r*sin(theta)^2+r^10-10*m*r^9+5*(a^2+8*m^2)*r^8+40*(-a^2*m-2*m^3)*r^7+10*(a^4+12*a^2*m^2+8*m^4)*r^6+4*(-15*a^4*m-40*a^2*m^3-8*m^5)*r^5+10*(a^6+12*a^4*m^2+8*a^2*m^4)*r^4+40*(-a^6*m-2*a^4*m^3)*r^3+5*(a^8+8*a^6*m^2)*r^2+a^10)*r^6*cos(theta)^2+(1/9)*r^8*(a^2-2*m*r+r^2)^5)*m^3*r/((r^2+cos(theta)^2*a^2)^9*(a^2-2*m*r+r^2)^5)

(4)

Why not? Is there any solution for this?

 

NULL


 

Download QuestionSimplifyMultivariateRationalFunction.mw

Dear Maple users

I have a question which may seem very simple, but for some reason I have not been able to find a solution to it in Maple:

If plotting a function in Maple by specifying an x-range, but not a y-range, Maple will somehow find a reasonable y-range itself. That's basic stuff. But how do I ensure that this y-range contains the value 0, and Maple still decide the min and max by itself? I could set it myself, but my worksheet require that it is done automatically independent of the given function at hand. 

Erik



(EDITED 2024/03/11  GMT 17H)

In a recent Question@cq mentionned in its last reply "In fact, I wanted to do parameter sensitivity analysis and get the functional relationship between the [...] function and [parameters]. Later, i will study how the uncertainty of [the parameters] affects the [...] function".
I did not keep exchanging further on with @cq, simply replying that I could provide it more help if needed.

In a few words the initial problem was this one:

  • Let X_1 and X_2 two random variables and G the random variable defined by  G = 1 - (X_1 - 1)^2/9 - (X_2 - 1)^3/16.
     
  •  X_1 and X_2 are assumed to be gaussian random variables with respective mean and standard deviation equal to (theta_1, theta_3) and (theta_2, theta_4).
     
  • The four theta parameters are themselves assumed to be realizations of four mutually independent uniform random variables Theta_1, ..., Theta_4 whose parameters are constants.
     
  • Let QOI  (Quantity Of Interest) denote some scalar statistic of G (for instance its Mean, Variance, Skweness, ...).
    For instance, if QOI = Mean(G), then  QOI expresses itself as a function of the four parameters theta_1, ..., theta_4.
    The goal of @cq is to understand which of those parameters have the greatest influence on QOI.


For a quick survey of Sensitivity Analysys (SA) and a presentation of some of the most common strategies see Wiki-Overview


The simplest SA is the Local SA (LSA) we are all taught at school: having chosen some reference point P in the [theta_1, ..., theta_4] space the 1st order partial derivatives d[n] = diff(QOI, theta_n) expressed at point P give a "measure" (maybe after some normalization) of the sensitivity, at point P, of QOI regardibg each parameter theta_n.


A more interesting situation occurs when the parameters can take values in a neighorhood of  P which is not infinitesimal, or more generally in some domain without reference to any specific point P.
That is where Global SA (GSA) comes into the picture.
While the notion of local variation at some point P is well established, GSA raises the fundamental question of how to define how to measure the variation of a function over an arbitrary domain?
Let us take a very simple example while trying to answer this question "What is the variation of sin(x) over [0, 2*Pi]?"

  1. If we focus on the global trend of sin(x)  mean there is no variation at all.
  2. If we consider peak-to-peak amplitude the variation is equal to 2.
  3. At last, if we consider L2 norm the variation is equal to Pi.
    (but the constant function x -> A/sqrt(2) has the same L2 norm but it is flat, and in some sense les fluctuating). 


Statisticians are accustomed to use the concept of variance as a measure to quantify the dispersion of a random variable. At the end of the sixties  one of them, Ilya Meyerovich Sobol’,  introduced the notion of Variance-Based GSA as the key tool to define the global variation of a function. This notion naturally led to that of Sobol' indices as a measure of the sensitivity of a funcion regarding one of its parameters or, which most important, regarding any combination (on says interaction) of its parameters.

The aim of this post is to show how Sobol' indices can be computed when the function under study has an analytic expression.
 

The Sobol' analysis is based on an additive decomposition of this function in terms of 2^P mutually orthogonal fiunctions where P is the number of its random parameters.
This decomposition and the ensuing integrations whose values will represent the Sobol' indices can be done analytically in some situation. When it is no longer the case specific numerical estimation methods have to be used;


The attached file contains a quite generic procedure to compute exact Sobol' indices and total Sobol' indices for a function whose parameters have any arbitrary statistical distribution.
Let's immediately put this into perspective by saying that these calculations are only possible if Maple is capable to find closed form expressions of some integrals, which is of course not always the case.

A few examples are also provided, including the one corresponding to @cq's original question.
At last two numerical estimation methods are presented.

SOBOL.mw

 

 Hello,

  Doing simple calculations I found Maple 2024 and 2023 don't recognize Kronecker delta in the expression

Full worksheet attached. Is there any way to let Maple handle this?

Remaining questions:
1. Doing calculations using Int and value left the result unevaluated eq. (6) and eq. (7) while using int gives 0. Why?
2. Is there possibility to substitute indexed (i.e.) atomic variables like p__m? For example changing by command p__m to p__k.

Thank you in advance,

delta_kron-problem.mw

Hi. I want to plot an sphere animating equator on the sphere(earth). please help me. Tnx.

I have a repetative set of parameter names used in procedures in a package. I settled on making all optional inputs in the format {name::type:=something}. Originally I wanted to use non capitalised names for the optional inputs. But the names clash with Maple commands. I have all sorts of quicky abbreviations like prnt etc. These are both messy and tacky. For many of my choices I would seem to have to use capitalised naming to give a meaningful name. The problem here is these names are used in other Maple packages. So sooner or later there is going to be a clash.

Is there a way a of handling this? Like can I defiine package parameter names? Or should I just stick with my abbreviations?

I read somewhere about this problem in the help years ago. I think Basis was the example used in different packages GroebinerBasis and Polynomial package and using PackageName:-Basis to avoid the clash with both loaded. But that is more a command level handling.

restart

 

illegal:=proc(x,y,{Point:=[symbol=solidcircle,colour=purple]},{Line:=[colour=green,thickness=2]},{Colour:="Blue"},{Scale:=5},{Print:="y"})

print("1 Point= ",Point);  #I currently use points
print("2 Line= ",Line);   #                 linetype
print("3 Colour=  ",Colour); #              clr     this has nothing to do with plotting colour
print("4 Scale= ",Scale);   #               scl   
print("5 Print= ",Print);   #               prnt
Scale*x/y
end proc

 

proc (x, y, { Colour := "Blue", Line := [colour = green, thickness = 2], Point := [symbol = solidcircle, colour = purple], Print := "y", Scale := 5 }) print("1 Point= ", Point); print("2 Line= ", Line); print("3 Colour=  ", Colour); print("4 Scale= ", Scale); print("5 Print= ", Print); Scale*x/y end proc

(1)

illegal(3,7)

"1 Point= ", [symbol = solidcircle, colour = purple]

 

"2 Line= ", [colour = green, thickness = 2]

 

"3 Colour=  ", "Blue"

 

"4 Scale= ", 5

 

"5 Print= ", "y"

 

15/7

(2)

illegal(3,7,line=[linestyle=dash,colour=black,thickness=4])

"1 Point= ", [symbol = solidcircle, colour = purple]

 

"2 Line= ", [colour = green, thickness = 2]

 

"3 Colour=  ", "Blue"

 

"4 Scale= ", 5

 

"5 Print= ", "y"

 

15/7

(3)
 

 

Download 2024-03-09_Illegal_or_Not.mw

I need admin's help
I use evalf(3*21/100,3)=0.630
and evalf(3*89/100,3)=2.67
Is there a way for me to get 2 decimal places
so evalf(3*21/100,3)=0.63?

First 123 124 125 126 127 128 129 Last Page 125 of 2216