MaplePrimes Questions

hey maple followers,

i need, please to find the method used in command "minimize".
i looked into help maple and i found "theorema mean values" as example
some help please
thanks!

P.s: minimize not Minimize

How to calculate c.d.f from probability mass function. Suppose that the pmf of a discrete random variable is given : f(x)=(2*x+1)/25, x=0,1,2,3,4

Hi -

 

    It is often useful useful to generate two procedures --- one to evaluate a function and one to evaluate its gradient.  The procedure codegen[GRADIENT] does not treat functions of array variables.  Why doesn't GRADIENT support array variables?  Would it be possible to replace the array variables by variables, apply GRADIENT, and then replace the array variables by variables again?

 

Best wishes,

David

 

I want to find  the volume contribution x^2+y^2=z and x^2+y^2=2x over xy with Maple.

Hello, I was trying to control color of a plot3d. 
I find this answer : http://www.mapleprimes.com/questions/148397-Plot3d-Color-Range
And this post of @Carl Love : 
"

Here's how to do it with a continuous transformation to your existing color function, which is presumed to return a value between 0 and 1 (the HUE color scale). Keeping it continuous is very very nice when you want colors to represent  numeric values. Let's say your existing color function is C, and your coordinate functions for a parametrized surface are FxFyFz.

Gamma:= 1.15:
plot3d(
     [Fx, Fy, Fz],  a..b, c..d,
     color=  [
          (x,y)-> (1-C(x,y))^Gamma/3, #Hue
          (x,y)-> 1-C(x,y)/4,         #Saturation
          (x,y)-> 1-C(x,y)/7,         #Value
          colortype= HSV
     ],
     lightmodel= NONE,
     style= patchnogrid     
);

There are several parameters that can be adjusted; I've chosen some of them by my personal taste for color .

  • Gamma controls the evenness of the distribution between red and green. I gave this one a name because this is a well-known concept (see the Wikipedia article "Gamma correction").
  • The 3 in the Hue selects the fraction (1/3 in this case) of the full color spectrum that you want. If you want green to red, it will need to be pretty close to 3.
  • The Hue value is subtracted from 1 to make the scale go green to red rather than red to green.
  • The 4 in the Saturation controls (to some extent) how "light" the light-green is.
  • The 7 in the Value controls (to some extent) how dark the dark-red is (lower values will make it darker).
  • lightmodel= NONE is used so that the colors will not change due to shadows when the plot is rotated. "


I made some test to see the impact of the Gamma parameter. 
And with Gamma = 1, it's odd. 

with(plots):

>

C := proc (x, y) x end proc;

proc (x, y) x end proc

(1)
>

Gamma := 1.15:

 
>

a := 1:

 

``


It looks like with gamma = 1, plot3d makes an automatic scaling of the colors.
But I don't understand why.
Does anyone know ?

Download oddity.mw

How do I differentiate with respect to lnx? So for example df(x)/d lnx = xdf(x)/dx

 

What I am specifically after is a way to obtain d^n f(x)/d (lnx)^n (or equivalently (x*d/dx)^n f(x) ) so simply writing df(x)/d lnx = x*diff(f(x),x) is no good.

I'm writing a simple Maple program to test the Generalized Finite Element Method: main_screened_Poisso.mw

When trying to define the Neumann boundary conditions, I have to define a directional derivative dudn=dudx*n. However, I can't seem to define a unit vector normal to Gamma, which is defined by a LineSegments objects.

Other than that, the row reduction is very slow, even though I'm using floating point arithmatic and not exact arithmatic, I believe.

How can I solve these problems? Thanks in advance!

 

Hello, 
I have tried to make a densityplot with a logarithmic scale on one axis using : 

So the plot is displayed with a log scale but the grid used to generate the plot is still linear, with a regular spacing.
I don't know how to make it logarithmic too. 
Maybe it's not very clear. For example I would like  a spacing of 0.1 from 0.1 to 1 then a spacing of 1 from 1 to 10.
How can I do that ? 
I have not find any clue in the help ...

EDIT : The option "axis[1]=[mode=log]" only change how the plot is displayed.
I would like to change the grid, that is to say how the plot is calculated.

Hi!

 

I still have a problem and im looking forward to any suggestions

this is the previous code that i have wrote

P := array([[8, 4], [8, 3], [8, 2], [7, 1], [6, 0], [5, 0], [4, 0], [2, 1], [1, 1], [1, 4]]);


> for j from 2 to 5 do k[j] := j+1;

x[j] := add(P[j, 1], j = j-1 .. j+2);

X[j] := add(P[j, 1]^2, j = j-1 .. j+2);

y[j] := add(P[j, 2], j = j-1 .. j+2);

Y[j] := add(P[j, 2]^2, j = j-1 .. j+2);

xy[j] := add(P[j, 1]*P[j, 2], j = j-1 .. j+2);

cx[j] := evalf(x[j]/k[j]);

cy[j] := evalf(y[j]/k[j]);

c11[j] := evalf(X[j]/k[j]-cx[j]^2);

c22[j] := evalf(Y[j]/k[j]-cy[j]^2);

c12[j] := evalf(xy[j]/k[j]-cx[j]*cy[j]);

C[j] := evalf(Matrix(2, 2, [[c11[j], c12[j]], [c12[j], c22[j]]]));

E[j] := simplify(fnormal(LinearAlgebra[Eigenvalues](C[j])));

if E[j][1] > E[j][2] then a[j] := E[j][2]/(E[j][1]+E[j][2]) else b[j] := E[j][1]/(E[j][1]+E[j][2])

 end if;

a[j];b[j]

 end do;

 

now, my question is how to put the output from the above looping in a  matrix form.

in my matrix, i need to call a[j],b[j], E[j][1], E[j][2] and the coordinate points. so my matrix dimension 4 x 5

I guess its a simple task but i tried hard and didnt get it worked.

thank you.

 

> sol := pdsolve({ICS, sys1, sys2, sys3, sys4, sys5, sys6, sys7}, numeric, method = rkf45, parameters = [a, b, c, d, e, f, g, h, i, j, k, l, m, n, o, p], output = listprocedure);

Error, (in pdsolve) invalid input: `pdsolve/numeric` expects its 2nd argument, IBCs, to be of type {set, list}, but received method = rkf45

 

restart;

x11:=[1.05657970467127, .369307407127487, .400969917393968, .368036162749865, .280389875142339, .280523489139136, .283220960827744, .373941285224253, .378034013792196, .384412762008662, .358678988563716, .350625923673556, .852039817522304, .362240519978640, 1.03197080591829, .343650441408896, .982510654490390, .404544012440991, .422063867224247, 1.20938803285209, .455708586000668, 1.22503869712995, .388259397947667, .472188904769827, 1.31108028794286, 1.19746589728366, .572669348193002];

y11:= [.813920951682113, 10.3546712426210, 2.54581301217449, 10.2617298458172, 3.82022939508992, 3.81119683373741, 3.90918914917183, 10.5831132713329, 10.8700088489538, 11.0218056177585, 10.5857571473115, 9.89034057997145, .271497107157453, 9.77706473740146, 2.23955104698355, 4.16872072216206, .806710906391666, 11.9148193656260, 12.0521411908477, 2.52812993540440, 12.6348841508094, 2.72197067934160, 5.10891266728297, 13.3609183272238, 3.03572692234234, 1.07326033849793, 15.4268962507711];

z11:= [8.93290500985527, 8.96632856524217, 15.8861149154785, 9.16576669760908, 3.20341865536950, 3.11740291181539, 3.22328961317946, 8.71094047480794, 8.60596466961827, 9.15440788281943, 10.2935566768586, 10.5765776143026, 16.3469510439066, 9.36885507010739, 2.20434678689869, 3.88816077008078, 17.9816287534802, 10.1414228793737, 10.7356141216242, 4.00703203725441, 12.0105837616461, 3.77028605914906, 5.01411979976607, 12.7529165152417, 3.66800269682059, 21.2178824031985, 13.9148746721034];

u11 := [5.19, 5.37, 5.56, 5.46, 5.21, 5.55, 5.56, 5.61, 5.91, 5.93, 5.98, 6.28, 6.24, 6.44, 6.58, 6.75, 6.78, 6.81, 7.59, 7.73, 7.75, 7.69, 7.73, 7.79, 7.91, 7.96, 8.05];

u11 := [seq(close3(t+t3), t3=0..26)];

sys1:=Diff(a1(s,t),s) = a*a1(s,t)+ b*a2(s,t)+ c*a3(s,t)+ d*u(t);

sys2:=Diff(a2(s,t),s) = e*a1(s,t)+ f*a2(s,t)+ g*a3(s,t)+ h*u(t);

sys3:=Diff(a3(s,t),s) = i*a1(s,t)+ j*a2(s,t)+ k*a3(s,t)+ l*u(t);

sys4:=Diff(y(t),t) = m*a1(s,t)+n*a2(s,t)+ o*a3(s,t)+ p*u(t);

sys5:= Diff(a1(s,t),t) = a1(s,t);

sys6:= Diff(a2(s,t),t) = a2(s,t);

sys7:= Diff(a3(s,t),t) = a3(s,t);

sol := pdsolve([sys1, sys2, sys3,sys4,sys5,sys6,sys7]);

t2 := [seq(i, i=1..27)];

xt1 := subs(_C1=1,sol[1]); # a1(t)

xt2 := subs(_C1=1,sol[2]); # a2(t)

xt3 := subs(_C1=1,sol[3]); # a3(t)

ut1 := subs(_C1=1,sol[4]); # u(t)

tim := [seq(n, n=1..27)];

N:=nops(tim):

ICS:=a1(1)=x11[1],a2(1)=y11[1],a3(1)=z11[1],u1(1)=u11[1];

sol:=pdsolve({sys1, sys2, sys3,sys4,sys5,sys6,sys7,ICS}, numeric, method=rkf45, parameters=[ a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p],output=listprocedure);

ans(.001,.002,.003,.001,.002,.003,.001,.002,.003,.003,.003,.003,.003,.003,.003,.003);

ans:=proc(a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p) sol(parameters=[ a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p]);

add((xt1(tim[i])-x11[i])^2,i=1..N)+add((xt2(tim[i])-y11[i])^2,i=1..N)+add((xt3(tim[i])-z11[i])^2,i=1..N)+add((ut1(tim[i])-u11[i])^2,i=1..N);

end proc;

result1 := Optimization:-Minimize(ans,initialpoint=[.001,.002,.003,.001,.002,.003,.001,.002,.003,.003,.003,.003,.003,.003,.003,.003]);

https://drive.google.com/file/d/0B2D69u2pweEvU3NpWWQwS3U1XzQ/edit?usp=sharing
https://drive.google.com/file/d/0B2D69u2pweEvMnFabkdiX1hpYVk/edit?usp=sharing

 

a1 := Diff(x1(s,t),s$2) = a*x1(s,t)+b*x2(s,t)+c*x3(s,t)+d*u(t);
a2 := Diff(x1(s,t),t)=x1(s,t);
b1 := Diff(x2(s,t),s$2) = e*x1(s,t)+f*x2(s,t)+g*x3(s,t)+h*u(t);
b2 := Diff(x2(s,t),t)=x2(s,t);
c1 := Diff(x3(s,t),s$2) = i*x1(s,t)+j*x2(s,t)+k*x3(s,t)+l*u(t);
c2 := Diff(x3(s,t),t)=x3(s,t);
sys := [a1, a2, b1, b2, c1, c2];
sol := pdsolve(sys);

length exceed limit

Hello, I have different values to substitute into my theta in a matrix. I tried to use the subs function but the results came out are all dashes. Have you any idea how to fix it please?

AA:=RandomMatrix(3,5);
BB:=map(cos,AA*theta);
CC:=RandomMatrix(3,5);

I tried method 1:

subs[inplace](theta=CC,BB);

Method 2:

DD:=Matrix(3,5);
for m from 1 to 3 do
for n from 1 to 5 do
DD(m..m,n..n):=subs(theta(m..m,n..n)=CC(m..m,n..n),BB(m..m,n..n));
end do:
end do:
DD;

Thank you.

Hello,

I tried to install maplesim on windows 8 but it didn't work.

However, i have installed microsoft visual c++ express before and i have made the precedure as described in maple that is to say 

or

hi, i have a problem with maple. i took the codes from a book, it should be true but even i copied and past exactly the same, again the maple gave me error which i couldnt solve. could you please help me? how can i correct it ? incorrect codes are below, but if you need all codes i can write here. i need a solution immediately :(

>relativefrequencies := proc(text, language)
evalf(frequencies(text, language)/StringTools:-Length(text))
end proc:
VigenereKeyFind := proc(ciphertext, max:=floor(StringTools:-Length(ciphertext)/15),
{language:=en})
uses StringTools;
local freqs;
freqs := map(x -> relativefrequencies(x, language),
map(Implode, partit(Explode(ciphertext),
keylength(ciphertext, max, ’:-language’=language))));
Implode(map(li -> frequencyanalysis(li, ’:-language’=language), freqs))
end proc;

>VigenereKeyFind(c);
Error, (in VigenereKeyFind) ``’`` does not evaluate to a module

First 1483 1484 1485 1486 1487 1488 1489 Last Page 1485 of 2429