MaplePrimes Questions

Hi all,

There is issue with modp1(('Embed')(...)) function.

Please look at the file:

bug_embed.mw

As you can see in lines 1, 3, 5 Embed function in combining with Constant cutting several digits from argument.

Thank you.

Hi, I bought the linuix 64 installation, and prior to doing so I read that I would have two installations, and so I have proceeded to replace my windows OS on my computer of highest processing power, after a successful install on my laptop, however when I attempted to activate my second installation it returned the message that I have already used all of my activations. If worse comes to worse, I need to uninstall maple2020 on this laptop, . and use my one activationon the other machine. What do I do?

Hi, 

A year ago I submitted a problem about the sampling of a Gaussian Random Variable (GRV).
A serious problem with Statistics:-Sample()
In short, the default method (Ziggurat method) used in the Stratistics package to sample a GRV overestimates the weights of the tails of the distribution.


Forcing the method to "envelope" is a way to obtain a correct sample

Statistics:-Sample(Normal(0, 1), N, method=envelope)

(another one is to use for instance the Box-Muller sampling algorithm ; look to the reference above for the fast implementation acer proposed).

I recently observed that the envelope method generates an error ("too many inflexion points...") when the standard deviation of the GRV is not one.
I tried to avoid this error by adding the suboption "range" :

restart:
f := (sigma, k, N) => Statistics:-Sample(Normal, 0, sigma), N,  method=[envelope, range=-k*sigma..k*sigma]):
# this works
f(1, 3, 10):
# these do not work
f(0.1, 3, 10):
f(10, 3, 10):

Here, k is a positive real value (which could depend on N but can be imagined to be around 5 or 6 to fix the ideas
Even with this suboption I keep receivind the same error.

If there is no way to parameterize correctly the envelope method, this means that Maple is unable to sample correctly a GRV.

Of course, if X is a GRV of mean mu and standard deviation sigma on could do this to generate a sample of X:

Xstd := RandomVariable(Normal(0, 1)):
Sstd := Sample(Xstd, 10^6, method=envelope):
S := mu +~ sigma *~ Sstd

But this should not be a permanent solution.

Does Maple have any faciltiy to find any solution to two equations in  3 variables subject to constraint that each equation is not zero?

Here is an example. I like to find any values of t1,t2,t3 such that alpha and beta are not zero. Any choice of such t's will do. But not all can be zero ofcourse. All the t's are linear.

restart;
eq1:= alpha = -2*t1 - 4*t2 - 2*t3;
eq2:= beta = t1 + 2*t2 + t3;

By inspection we see that choice t2=0,t3=0,t1=1 works since

subs([t2=0,t3=0,t1=1],[eq1,eq2])

There are many other choices (infinite). I just need to find one combination of t_i in the integers.

I could write a loop and keep trying different values of t1,t2,t3 until I find such choise ofcourse. But I was wondering if there is better way to do this in Maple. Solve does not work on this ofcourse.

solve([eq1,eq2,eq3],[t1,t2,t3]) assuming alpha<>0,beta<>0

And setting up Ax=b does not work

restart;
A:=Matrix([[-2,-4,-2],[1,2,1]]);
b:=Vector([alpha,beta]);
LinearAlgebra:-LinearSolve(A,b)

Error, (in LinearAlgebra:-LinearSolve) inconsistent system
 

However, one thing I could do, is pick random alpha,beta values, and then solve for t_i, as in

restart;
A:=Matrix([[-2,-4,-2],[1,2,1]]);
b:=Vector([-2,1]);
LinearAlgebra:-LinearSolve(A,b)

And now I am able to find a solution I want. The problem with this method, is that if I pick wrong values of alpha,beta, I can also get no solution. For example, if I guessed alpha=1,beta=1 I get

restart;
A:=Matrix([[-2,-4,-2],[1,2,1]]);
b:=Vector([1,1]);
LinearAlgebra:-LinearSolve(A,b)

Error, (in LinearAlgebra:-LinearSolve) inconsistent system
 

So one option I could try, is pick random values of alpha,beta, and call LinearSolve until I get a choice which works?  i.e. one which does not give inconsistent system.

Thanks for any better suggestions.

Maple is not adding a function g(y) to the indefinite integral 
Maybe i do miss here something ?
 

int(2*x*y, x)

x^2*y

(1)

textbook  f(x, y) = int(f[x](x, y), x) and int(f[x](x, y), x) = int(2*x*y, x) and int(2*x*y, x) = x^2*y+g(y)f(x, y) = int(f[x](x, y), x)

f(x, y) = int(f[x](x, y), x)

(2)

int(2*x*y, x) = x^2*y+g(y)

x^2*y = x^2*y+g(y)

(3)

looks like the y is constant  in f(x,y)
Maple is not putting a constant with the integral int(f, x)  , the same for int(2*x*y, x)
Think then only the integrand 2x is integrated and y is a constant, but the notation of g(y) is not C  

 

Integral  x^2*y+g(y)and then  partieel differentation gives  2x.y  

Its about finding a potential function for a vectorfield F

 

 

NULL


 

Download integraal_bij_part_diff_van_vectorvels.mw

Why can't I do double negatives and why is it so difficult to do simple mathematics with negatives?

 

(a - b)

 

want to simply rewrite this by substitution for a simple quick calculation, repalce a and b with their values, e.g.,

 

-3 - -5

 

Maple complains!

4*-10

 

maple complains!

 

This makes it impossible to not have to rewrite simple expressions just to get maple to work.

 

Surely there is a untary negative sign that I can use that will please maple?

 

 

I am trying to reproduce this fractal graphic by Daniel Geisler, using maple 18:

http://tetration.org/Tetration/index.html

I suspect the images were produced by fractint - with a floating point hardware accelerator, but I am not sure. In any case, they were produced by a numerical program, not a symbolic one and probably with 16-18 digits of accuracy.

The Maple code I use makes for a valiant effort, but is nowhere close in accuracy to the two images above. Here's the Maple 18 code:

tetrationFractal18.mw

Several questions here:

1) Geisler's image colors according to period (right graph). Period 1 is red. 2 is yellow (although not all yellow regions are period 2) 3 is green, 4 is cyan, 5 is blue, etc.

I have some period checking code in my doc, which stores the last 20 iterates of the maxIter iterations of the orbit in orb[n]  then extracts a period p, based on some backwards comparisons.

I am only interested in graphing max period up to N=20, hence the orb[1..N] array, stores only the last N elements of the iterates. This is relatively fast, but extracting the period (below) from the orb array, puts an additional strain on the overall calculations, probably of the order of O((N+p)*n) for each n in the iteration, where p is the period returned. That's why I avoid storing in orb unless the global bound "bail" has not been exceeded.

The period finding algorithm works. It rerurns p correctly, and that's the value the graphic proc returns for plot3d. The problem is that the range of values is small (p\in[1..N]) and therefore the palette in plot3d is poor. I.e., it doesn't differentiate very much between colors of different period regions. How can I spread out the color pallete with plot3d with such results? ideally, I'd like to assign colors roughly from red to violet, with period 1 red, 2 orange, 3 green, 4 blue, 5 purple, etc.

I tried returning log(p) and this spreads the zhue some, but not enough (see attached document). Further, I'd like to assign black to points which escape the calculations, such as when the bail bound is exceeded in my iteration loop. By default, these show up as "purple", which is the same as the color for period 1 with the latest implementation. How can I except these escape points from the palette, i.e. what does the fractal proc have to return to color these black? Note that for these points, orb[n] defaults to 0, so the palette colors this close to p=1 region (these are the black "hairs"/threads of the Cantor Bouquets in Geisler's second image. That's the first question.

 

Second question is, why are there "white" regions interlaced under this scheme? is the calculation failing at these points because of low resolution? (epsilon~0.01 in this doc). (If points fail "bound"=1e10 then the orbit is orb[1..N]=0, so p=1 and zhue=1?) White seems to decrease as I increase epsilon and maxIter, but i can't test further, because the calculation limit is already prohibitive for this version of Maple. The graph with a plot3d grid [400,400] and maxIter=100 and epsilon=0.01, takes around 25 minutes. Testing anything finer than than, is time uneasonable.

Would increasing Digits help with any of the above?

Does anyone have any ideas on how to improve the code performance for this graph in maple 18, as per the above problems?.

Many thanks.

second has rsolve solution

compare original sequence

accsum(ListTools[Reverse]([seq(patterngroup[k], k=(mm)..(mm+lengthofsequence))])),

with rsolve solution , it start from third number wrong, some number are wrong but correct at next number, 

but i just want to guess next number is 1 or 2

[seq(subs(k=kk, sol), kk=0..(lengthofsequence+1))],

with(SumTools):
with(gfun):
accsum := proc(xx)
local result,mm:
result := []:
for mm from 1 to nops(xx) do
temp := Summation(xx[k], k = 1 .. mm):
result := [op(result), temp]:
od:
return result:
end proc:


patterngroup := [2, 1, 1, 1, 2, 2, 1, 1, 2, 2, 2, 1]: # left is latest, 2,1,1..
lengthofsequence := 5:
for mm from 1 to 12 do
if guessgf(accsum(Reverse([seq(patterngroup[k], k=(mm)..(mm+lengthofsequence))])), x) = FAIL then
print(patterngroup[mm]):
else
sol := rsolve(listtorec(accsum(ListTools[Reverse]([seq(patterngroup[k], k=(mm)..(mm+lengthofsequence))])), u(n))[1], u(k)):
acxxc := accsum(ListTools[Reverse]([seq(patterngroup[k], k=(mm)..(mm+lengthofsequence))])):
olist := [seq(patterngroup[k], k=(mm)..(mm+5))]:
#start from 0
print(patterngroup[mm], olist, accsum(ListTools[Reverse]([seq(patterngroup[k], k=(mm)..(mm+lengthofsequence))])), [seq(subs(k=kk, sol), kk=0..(lengthofsequence+1))], sol, subs(k=(lengthofsequence+1), sol), subs(k=(lengthofsequence+1), sol)-acxxc[nops(acxxc)]):
end if:
od:
 

Below is python code found in the internet kind help to convert to maple but only thing instead on the input to be string I want it to be a set of integers or array of integers

Kind help

# Python program to print all permutations with repetition

# of characters

  

def toString(List):

    return ''.join(List)

  

# The main function that recursively prints all repeated

# permutations of the given string. It uses data[] to store

# all permutations one by one

def allLexicographicRecur (string, data, last, index):

    length = len(string)

  

    # One by one fix all characters at the given index and

    # recur for the subsequent indexes

    for i in xrange(length):

  

        # Fix the ith character at index and if this is not

        # the last index then recursively call for higher

        # indexes

        data[index] = string[i]

  

        # If this is the last index then print the string

        # stored in data[]

        if index==last:

            print toString(data)

        else:

            allLexicographicRecur(string, data, last, index+1)

  

# This function sorts input string, allocate memory for data

# (needed for allLexicographicRecur()) and calls

# allLexicographicRecur() for printing all permutations

def allLexicographic(string):

    length = len(string)

  

    # Create a temp array that will be used by

    # allLexicographicRecur()

    data = [""] * (length+1)

  

    # Sort the input string so that we get all output strings in

    # lexicographically sorted order

    string = sorted(string)

  

    # Now print all permutaions

    allLexicographicRecur(string, data, length-1, 0)

  

# Driver program to test the above functions

string = "ABC"

print "All permutations with repetition of " + string + " are:"

allLexicographic(string)

I studiy a classroom  with 3 examples of a positionvector(radiusvector).
The last one a positionvector curve defined by a procedure  in table 3 is not yet working

  • see enclosed worksheet : animate(F, [z], z = 0 .. 5, frames = 101) is not working yet

 dr_lopez_Classroom_animatedtrace_radiusvecor_is_positievector-via_Plotpositievector.mw

Hello,

I'm sure this is a dumb question, can someone remind my why this doesn't work and how to get around it?
 

restart

with(VectorCalculus)

V := `<,>`(A, B, C)

Vector[column](%id = 18446745896443115750)

(1)

A := 1

1

(2)

"(V) ? ()"

Vector[column](%id = 18446745896443115750)

(3)

``


 

Download VectorCalculusQuestion.mw

 

 

Hello all

I wanna solve an optimal control problem and I have searched the Internet but I could not find any tutorial or video course on how to solve it with the Pontryagin maximum principle method. It is my first time that I want to use MAPLE for solving an optimal control problem and I would be thankful if someone can help me.

$$\max \int_{0}^{1} x_{2} [u(t)-u(t)^2] dt        $$

$$  \dot{x}_{0} = -(1-u(t)) x_{0}(t)+2 x_{1}(t) $$

$$  \dot{x}_{1}(t) = (1-u_{t}) x_{0}(t) +2 x_{2}(t) -[3-u(t)]x_{1}(t)  $$

$$   \dot{x}_{2}(t) = (1-u(t))x_{1}(t) -2 x_{2}(t)   $$

$$  0 \le u_{t}  \le \frac{1+t^2}{1+t}  $$

 

Thanks

Hello Everyone,

Firstly thank you for your help everyone with answering my other question yesterday, it really helped.
Today I present with yet another issue, which is dealing with solving differential equations using the dsolve-command.

I have written a script which is defining the differential equations, (some numbers), and the constraints. However when I let it solve using dsolve, I only get a very very trivial answer, meaning f(x) = 0.
of course this is a valid answer, but not one I can work with... 
(Can I maybe give an additional information, e.g. the function type it is supposed to do this task? In the documentation there is information on setting it up as a series, but what about exponential equations?)

I have uploaded to script (very short), maybe someone knows where I went wrong?
Also, I am assuming that for solving a DE which involves a fourth order derivative I need exactly four boundary conditions, which I provided.
Things are also getting really wonky when I set Nxy to something non-zero... Then I get a solutions which involves a mysterious Z which never happened before and again all four C_x, which I assume resemble missing boundary conditions, reappear.

Any help would be fantastic! :)

Best Regards,

Lennart
 

``

 

restart*with(DocumentTools); with(LinearAlgebra); D11 := 10000; D12 := 10000; D22 := 10000; D66 := 10000; Nx := 1000; Ny := 1000; Nxy := 0; a := 5000; b := 5000; w := sin(y)*GenFunc(x); PDGL := D11*(diff(w, `$`(x, 4)))+(2*(D12+2*D66))*(diff(w, `$`(x, 2), `$`(y, 2)))+D22*(diff(w, `$`(y, 4)))+Nx*(diff(w, `$`(x, 2)))+Ny*(diff(w, `$`(y, 2)))+2*Nxy*(diff(w, `$`(x, 1), `$`(y, 1))) = 0; RB := GenFunc(0) = 0, (D(GenFunc))(0) = 0, GenFunc(a) = 0, (D(GenFunc))(a) = 0; dsolve({PDGL, RB}, GenFunc(x))

GenFunc(x) = 0

(1)

NULL


 

Download Test_DGL1.mw

Given a lagrangian  in general relativity , how can I calculate equation of motion using euler lagrangian equation in maple software ?

the lagrangian is 

L = 1/2 g[mu,nu] diff(x[~mu], lambda) diff(x[~nu],lambda)

here lambda is the affine parameter.  and the metric is 

 

 

metric coordinate = (t,u,x,y)

This is the context: I call LinearAlgebra:-LinearSolve to solve system of linear equations. If there are infinite solutions, then Maple return the solution that has free variables, calling them using  _t[n] where can change each time and be different. It can also be _t0[n] and _t1[n] etc.. but these all are indexed variables.

I want to obtain a list of all these free variables in the resulting solution vector, so that later I can assign them some values.

But I do not know what can be. And how many of them there are. There could be _t[3] and _t[4] for example in the same solution vector.

Here is what I do now, where I just check for indexed type. This seems to work, since only _t[n] should be in the resulting solution if any.

restart;
A:=Matrix([[0,1,-1],[-1,-2,2],[-1,-2,2]]):
v:=Vector([-1,1,1]):
sol := LinearAlgebra:-LinearSolve(A,v);

map(x->select(type,x,'indexed'),convert(sol,set))

I do not know how to tell it to look for all something that starts with  _t and also indexed type.

Is there a better way to obtain list of all _t[n] that LinearAlgebra:-LinearSolve could return? Will LinearAlgebra always return the free variables as indexed variables so I am sure the above will always work?  Do you see a problem with the above solution?

First 498 499 500 501 502 503 504 Last Page 500 of 2427