Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

Currently, a stand-alone or embeddable Python is by default bundled with Maple and is installed silently (namely, without notification) when installing Maple, but why is there no prompt panel asking for Python configuration (just like Why does Maple ask for a Matlab installation when I install it? and Configuring the Maple Kernel for Jupyter)? 
Actually, I am wondering why I am not capable of installing Maple without bundling Python (even if I am able to clear those files in $MAPLE/Python.$SYS later). In my opinion, a bundling Python suite is more or less unnecessary; wouldn't it be better to provide a tooltip asking for approval? If one really need to interact with Python, one may instruct Maple to make use of some available local version of Python from the outset (rather than having to install an additional Python interpreter with numerous extra packages that occupy almost 2 GB!), and if one does not require such a functionality, one can simply skip the Python installation and free up 2GB immediately. So, will installing Python (or another popular external program, if it is going to be integrated or connected with Maple in future releases) be optional during the Maple installation process? 

Questions are as follows:

Consider a g function, for example: g = 1 - (x_1 - 1)^2/9 - (x_2 - 1)^3/16;

Among them, x_1 and x_2 each conform to the normal distribution, and each has a mean mu_1 mu_2 and a variance sigma_1 sigma_2;

mu_1 and mu_2 both obey uniform distribution (-0.2, 0.2) respectively; sigma_1 and sigma_2 both obey uniform distribution (0.8, 1.2) respectively;

Set parameter theta = (theta_1, theta_2, theta_3, theta_4)^T = (mu_1, mu_2, sigma_1, sigma_2)^T;

It should be possible to obtain an analytical solution with only theta for the mean and variance of the g function, such as:

 

  1. Ey = -(1/9)*theta[1]^2 + (2/9)*theta[1] + 137/144 - (1/16)*theta[2]^3 + (3/16)* theta[2]^2 - (3/16)*theta[2] - (3/16*(-1+theta[2]))*theta[4]^2 - (1/9)*theta[3 ]^2;
  2. Vy = (1/20736)*(9*theta[2]^3 + 16*theta[1]^2 - 27*theta[2]^2 - 32*theta[1] + 27*theta[2] - 137)^2 + (15/256)*theta[4]^6 + (45/256*(theta[2]^2 - 2*theta[2] + 1))*theta[4]^4 + ( 1/768*(45*theta[2]^4 + 32*theta[1]^2*theta[2] - 180*theta[2]^3 - 32*theta[1]^2 - 64*theta[ 1]*theta[2] + 270*theta[2]^2 + 64*theta[1] - 436*theta[2] + 301))*theta[4]^2 + (1/27)*theta[ 3]^4 + (1/216)*theta[3]^2*(3*theta[2]^3 + 16*theta[1]^2 - 9*theta[2]^2 - 32*theta[ 1] + 9*theta[2] - 35) + (1/24)*theta[3]^2*(-1+theta[2])*theta[4]^2;

 

But I can't find the above analytical solution. The code I wrote in maple is as follows:

 

restart;

with(Statistics);

x[1] := RandomVariable(Normal(theta[1], theta[3]));

x[2] := RandomVariable(Normal(theta[2], theta[4]));

g := 1 - (x[1] - 1)^2/9 - (x[2] - 1)^3/16;

theta[1] := RandomVariable(Uniform(-0.2, 0.2));

theta[2] := RandomVariable(Uniform(-0.2, 0.2));

theta[3] := RandomVariable(Uniform(0.8, 1.2));

theta[4] := RandomVariable(Uniform(0.8, 1.2));

mean := Mean(g);

variance := Variance(g);

mean;

variance;

 

As a result, after clicking Run, the following problems occur:

Problem 1: The program takes a very long time to run

Problem 2: The program results did not meet expectations, because the results I expected were:

Ey = -(1/9)*theta[1]^2 + (2/9)*theta[1] + 137/144 - (1/16)*theta[2]^3 + (3/16)* theta[2]^2 - (3/16)*theta[2] - (3/16*(-1+theta[2]))*theta[4]^2 - (1/9)*theta[3 ]^2;

Vy = (1/20736)*(9*theta[2]^3 + 16*theta[1]^2 - 27*theta[2]^2 - 32*theta[1] + 27*theta[2] - 137)^2 + (15/256)*theta[4]^6 + (45/256*(theta[2]^2 - 2*theta[2] + 1))*theta[4]^4 + ( 1/768*(45*theta[2]^4 + 32*theta[1]^2*theta[2] - 180*theta[2]^3 - 32*theta[1]^2 - 64*theta[ 1]*theta[2] + 270*theta[2]^2 + 64*theta[1] - 436*theta[2] + 301))*theta[4]^2 + (1/27)*theta[ 3]^4 + (1/216)*theta[3]^2*(3*theta[2]^3 + 16*theta[1]^2 - 9*theta[2]^2 - 32*theta[ 1] + 9*theta[2] - 35) + (1/24)*theta[3]^2*(-1+theta[2])*theta[4]^2; 

 

so,i dont know where i am wrong ,how could i obtain the expected solution?

 

I am trying to replace thickness = 0 with thickness = 3 in a list, under the condition leader = 0 

The order of entries in the list is not fixed so it is more akin to a set.

leader:=1;

parms:=[colour=red,thickness=0,linestyle =dash];
 if leader=0 then selectremove(thickness=0,parms);end if;
[op(parms),thickness=3];
display(plottools:-line([1,2], [3,4]),op(parms));

Is there any to export a 3d plot so it could be used as a 3d pdf or some other document type?

Edit: uploaded Maple 3d plot.
 

 

 


 

Download Tetrahedron_Rat_Trig.mw

How to find all occurrences with Fibonacchi numbers?
100=89+8+2+1=89+5+3+1=55+34+8+2+1 etc...

fib := proc(n::nonnegint) option remember; if n <= 1 then n; else fib(n - 1) + fib(n - 2); end if; end proc;
zeck := proc(n::posint) local k, d; k := 2; while fib(k) <= n do k := k + 1; end do; d := n - fib(k - 1); if d = 0 then k - 1; else k - 1, zeck(d); end if; end proc;
zeck(100);
E := [fib(11), fib(6), fib(4)]; add(E[i], i = 1 .. nops(E));

Hi,

For optimal display, I would like to enlarge the size of numbers in the TextArea. Any ideas? Thank you.

S4ThalèsAnimation.mw

Hello

I have a list N with i elements, for example N:=[7,2,4] with i = 3. From another list L I know, that all the elements of N are also elements of L, but I don't know if they are in the same order. For example:

In L1=[2,6,5,7,3,2,9,4] the elements are in the same order, but they are not in L1=[2,1,4,2,6,7,3,9]. 

How to write a program that can say wether the elements are in the correct order or not?

Thanks for your help!

restart

with(VectorCalculus); SetCoordinates('cartesian[x, y, z]')

with(ScientificConstants)

"with(Units[Simple]):"

``

g := evalf(Constant(g, units))

9.80665*Units:-Unit(m/s^2)

(1)

`#mover(mi("\`v__0\`"),mo("&rarr;"))` := `<,>`(v[0]*Unit('m'/'s'), 0*Unit('m'/'s'), 0*Unit('m'/'s'))

Vector(3, {(1) = v[0]*Units:-Unit(m/s), (2) = 0, (3) = 0})

(2)

`#mover(mi("a"),mo("&rarr;"))` := `<,>`(0*Unit('m'/'s'^2), g, 0*Unit('m'/'s'^2))

Vector(3, {(1) = 0, (2) = 9.80665*Units:-Unit(m/s^2), (3) = 0})

(3)

int(`#mover(mi("a"),mo("&rarr;"))`, t)

Vector(3, {(1) = 0, (2) = 9.80665*t*Units:-Unit(m/s^2), (3) = 0})

(4)

As you can see in (4) units are wrong. I have tried to insert them in int expression but nothing has work. Moreover using Units[Standard] packecge i get

Error, (in int) wrong number (or type) of arguments: wrong type of integrand passed to indefinite integration.

Thanks

Download Units_and_Integrals.mw

Hi,

I can't understand the error message generated during this animation. Any ideas? Thanks

TriagleSemblablesTest.mw

I want to have a 14 larger font instead of Times New Roman 12 for the whole worksheet or else a different font later. 
Can't make sense of how this is all organized in Maple 
You would say set a template , but ?

Hello. Can anybody point out to me what I am doing wrong below? I'm trying to solve the online model 4.1 of the book "An introduction to infectious disease modelling" by E. Vynnycky & R.G. White (2010). But all the information is below. 

Where I get errors from the code below is right at the bottom, in dsolve:

# My Maple 2023 code:

restart;

# Initial values:

Sus_0 := total_popn - Infectious_0 - Immune_0:
Preinfectious_0 := 0:
Infectious_0 := 1:
Immune_0 := total_popn*prop_immune_0:

# Transmission- and infection-related parameters:

preinfectious_period := 8:
infectious_period := 7:
R_zero := 13:
f := 1/preinfectious_period:
r := 1/infectious_period:
beta := R_zero/(total_popn*infectious_period):
prop_immune_0 := 0:

# Demography-related parameters:

total_popn := 100000:

# Useful statistics:

new_infns := beta*Susc*Infe:
new_infectious := Prei*f:
prop_sus = Susc/total_popn:
R_n := R_zero*prop_sus:
propn_imm := 1 - prop_sus:
sum_pop := Susc + Prei + Infe + Immu:
ln_infectious := ln(Infe):
ln_cum_infe := ln(Cum_Infe):
ln_new_infectious := ifelse(0 < t, ln(new_infectious), 0):

# Defining the system of ODEs:

sys_ode:={
diff(Susc(t),t)=-beta*Susc(t)*Infe(t), 
diff(Prei(t),t)=beta*Susc(t)*Infe(t)- Prei(t)*f, 
diff(Immu(t),t)=Infe(t)*r, 
diff(Cum_Infe(t),t)= Prei(t)*f, 
diff(Infe(t),t)=Prei(t)*f-Infe(t)*r,
}:

ics:={
Susc(0)=Sus_0,
Infe(0)=Infectious_0,
Immu(0)=Immune_0,
Prei(0)=Preinfectious_0,
Cum_Infe(0)=Infectious_0
}:

Solution1:=dsolve({sys_ode,ics},type=numeric);
# HERE I GET THIS ERROR MESSAGE: "Error, (in dsolve/numeric/process_input) system must be entered as a set/list of

# expressions/equations"

 

Solution2:=dsolve({sys_ode,ics});
# HERE I GET THIS ERROR MESSAGE: "Error, (in dsolve) invalid arguments; expected an equation, or a set or list of them,

# received: {{diff(Immu(t),t) = 1/7*Infe(t), diff(Infe(t),t) = # 1/8*Prei(t)-1/7*Infe(t), diff(Prei(t),t) =

# 13/700000*Susc(t)*Infe(t)-1/8*Prei(t), diff(Susc(t),t) = -13/700000*Susc(t)*Infe(t), diff(Cum_Infe(t),t) = # 1/8*Prei(t)}}"

 

MY QUESTION: Can anybody tell me what I'm doing wrong in Solution1 and Solution2?

Best wishes and many thanks!

 

 

Ubuntu 22.04.

I have Maple-202[1-3] and an old installation of maplev-mode. maplev-mode fails to work.

In the emacs messages buffer, I see (typed from memory):

loading maple
maple loaded
maple not running

I removed all of maplev from my system.
I tried installing from the downloaded master.zip (RELEASE-=NOTES says 3.0.5).
make install fails:

> pwd
/tmp/maplev-master
> make install
Makefile:27: MapleLisp.mk: No such file or directory
make: *** No rule to make target 'MapleLisp.mk'.  Stop.

I tried installing from the cloud, but, failed. The error message (even run as root)

Error, (in PackageTools:-Install) permission denied

Will maplev-mode work?

Tom Dean

Hi, 

I am exploring the construction of the recorded table ( Frequency Table) of a statistical series. How can I display only the discrete values, without showing the interval form in the first column 'Range'?  Thank you

TableauRecenséQ.mw

While answering a question on this site I accidentally met expressions of the form binomial(n, min(n, r)+1) where both n and r are positive integers and n is strictly lower than r.

For the record the common definition of the binomial coefficient binomial(n, k) is based on the double inequality 0 <= k <= n  and the only generalized definition where k could be larger than n I know of is the NegativeBinomial distribution where we use
binomial(-n, k) which, with 0 <= k <= n  again makes the first operator lower than the second.

I tried to understand how Maple does this

binomial(n, min(n, r)+1) assuming n < r,  n::posint
                               0

(more generallyn, for any strictly positive integer p, binomial(n, min(n, r)+p) = 0 under the assumptions above)

I guess that the explanationrelies upon what I did to get the output (2) in the attached file.
Can you confirm/infirm this and, as I wasn't capable to find any clue in help(binomial), [Maple 2015], if the way maple computes
these results is documented elsewhere.

Thanks in advence.

restart:

 

Let us start with this result

 

t0 := binomial(n, min(n, r)+1);
eval(t0) assuming n < r;
eval(%) assuming n::posint;

# I didn't find in help(binomial) the argument used to get this last result.

binomial(n, min(n, r)+1)

 

binomial(n, n+1)

 

0

(1)

# What happens if binomial is converted into factorials

t1 := convert(t0, factorial);
eval(t1) assuming n < r;

factorial(n)/(factorial(min(n, r)+1)*factorial(n-min(n, r)-1))

 

Error, (in assuming) when calling '`one of {eval, min, factorial}`'. Received: 'numeric exception: division by zero'

 

# Or into GAMMA function?

t2 := convert(t1, GAMMA);
eval(t2) assuming n < r;

GAMMA(n+1)/(GAMMA(min(n, r)+2)*GAMMA(n-min(n, r)))

 

Error, (in assuming) when calling 'GAMMA'. Received: 'numeric exception: division by zero'

 

# Try to replace min(n, r) = n by n-epsilon and take the limit as epsilon goes to 0
# from the right.

t3 := algsubs(min(n, r) = n-epsilon, t2);
limit(t3, epsilon=0, right)

GAMMA(n+1)/(GAMMA(n-epsilon+2)*GAMMA(epsilon))

 

0

(2)

 

We recover here the result (1), but does Maple really proceed this way?

Download binomial.mw

Maple Transactions frequently gets submissions that contain Maple code.  The papers (or videos, or Maple documents, or Jupyter notebooks) that we get are, if the author wants a refereed submission, sent to referees by a fairly usual academic process.  We look for well-written papers on topics of interest to the Maple community.

But we could use some help in reviewing code, for some of the submissions.  Usually the snippets are short, but sometimes the packages involved are more substantial.

If you would be interested in having your name on the list of potential code reviewers, please email me (or Paulina Chin, or Jürgen Gerhard) and we will gratefully add you.  You might not get called on immediately---it depends on what we have in the queue.

Thank you very much, in advance, for sharing your expertise.

Rob

First 128 129 130 131 132 133 134 Last Page 130 of 2218