Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

I am writing a maths books using maple now. It is fantastic to use maple for writing books in maths.
 

 

 

 in the polynomial x^3-3*x^2-33*x+35 This line is not copying in full line!!
Step 1: Find the sum of all the coefficients in the polynomial x^3-3*x^2-33*x+35 This line is copying in full!!
"= 1-3-33+35 = 0"
                                                 r x-1is a factor  ; 1 is a root of the polynomial.
In the next row, I copy pasted the lines above

 in the polynomial x^3-3*x^2-33*x+35 This line is not copying in full line!!

Step 1: Find the sum of all the coefficients in the polynomial x^3-3*x^2-33*x+35 This line is copying in full!!

"= 1-3-33+35 = 0"
                                                 r x-1is a factor  ; 1 is a root of the polynomial.
In the next row, I copy pasted the lines above

 

 

 

Can any one find the reason?

 

 

``


 

Download cannotCopyWhy.mw

I enclose a part of my document where in I made a particular line with text and maths formats combined.Then I made changes in the line. Now copy paste does work only for the later half (both text and maths formats). The corrected first part is not being copied.

How do I do the corrections properly so that copy paste is not a problem at laer stages.

Thanks for the answer.

Ramakrishnan V

The equation sin(9*x-(1/3)*Pi) = sin(7*x-(1/3)*Pi) can be solved easy by hand with solutions k*Pi and -Pi/48 + K*Pi/8. With Maple, I tried 
solve({sin(9*x-(1/3)*Pi) = sin(7*x-(1/3)*Pi)}, x, explicit, allsolutions)

I don't get the above solutions. How can I get these solutions?

I use patmatch to look for certain expression inside a larger expression.

I find sometimes I need to repeat the same code to check for  "... + ..."   and also ".... * .....", since I do not know to tell Maple to look for + or * in the same code. *Luckily, I do not have to check for "-" or "/" operators, since "+" match with "-" and "*" match with "/").

An example will make things more clear.

Suppose I want to see if sin(x)*sqrt(x*y) has sqrt(x*y) anywhere in it. So I first try

restart;
expr:= sin(x)*sqrt(x*y);
if patmatch(expr,a::anything+(b::anything*x*y)^(c::anything),'la') then
    assign(la);
    if c =1/2 or c=-1/2 then
       print("found sqrt(x*y)");
    else
       print("did not find sqrt(x*y)");
    fi;
 else
   print("did not find sqrt(x*y)");
 fi;

And this fails, since I used "+" inside the patmatch. Then I try '*" instead

if patmatch(expr,a::anything*(b::anything*x*y)^(c::anything),'la') then

And now it does match.

What I'd like to write, is something like this (which ofcourse does not work)

if patmatch(expr,a::anything (* or +) (b::anything*x*y)^(c::anything),'la') then

I looked at conditional in patmatch, but it does not seem to apply for the above.

Any suggestions?

Maple 2019.1 on windows 10

 

Dear Users!

Hope everyone should fine here. I want to know how to multiple the entries of a matrix with a matrix like If A is matrix as:

A:= Matrix(2, 2, {(1, 1) = 0, (1, 2) = 0, (2, 1) = 0, (2, 2) = 2})
I want nonzero entries should multiply with m*m identity matrix and zero entries multiply with null matrix of order m*m. for m=2 the desired results i calculated manually as:

Matrix(4, 4, {(1, 1) = 0, (1, 2) = 0, (1, 3) = 0, (1, 4) = 0, (2, 1) = 0, (2, 2) = 0, (2, 3) = 0, (2, 4) = 0, (3, 1) = 0, (3, 2) = 0, (3, 3) = 2, (3, 4) = 0, (4, 1) = 0, (4, 2) = 0, (4, 3) = 0, (4, 4) = 2});

I want to know the general way. Thanks in advance

 

most people who post here seem to use .mw written in 2D, which I do not like to use.

Is there a tool to convert such a file to 1D worksheet that one can use from the command line before opening the document itself in Maple?

The reason I ask, sometimes opening the original file and trying to do this from inside Maple by selecting the code using the mouse, then  Format->ConvertTo->1D   does not work, and gives an error.

Also, sometimes, when I try to first create an empty worksheet document, and then try to copy/paste the code from the other document over, it also does not work. This happens when there are syntax errors in the original document. The error that comes up is

        Parse:-ConvertTo1D, "first argument to _Inert_ASSIGN must be assignable"

As an example, please see the attached file in the following question

https://www.mapleprimes.com/questions/227506--I-Need-Help-Trying-To-Write-A-Code

It will good to have a tool that converts such documents to 1D worksheet or even plain Maple code (.mpl) but I did not see such option under SAVE AS either. Also, when I tried to export it as .mpl file, I get the same error as above in the file. So I gave up.

 

Hello Anybody can help me to write codes for PDE to solve by Galerkin finite element method or any other methods can be able to gain results? parameter omega is unknown and should be determined.

I attached a pdf file for more .

Thanks so much

fem2
 

"restart:  rho:=7850:  E:=0.193e12:  n:=1:  AD:=10:  upsilon:=0.291:   mu:=E/(2*(1+upsilon)):  l:=0:  lambda:=E*upsilon/((1+upsilon)*(1-2*upsilon)):  R:=2.5:  ii:=2:  J:=2:       m:=1:       `u__theta`(r,theta,phi):= ( V(r,theta))*cos(m*phi):  `u__r`(r,theta,phi):= ( U(r,theta))*cos(m*phi): `u__phi`(r,theta,phi):= ( W(r,theta))*sin(m*phi):  :        eq1:=(r (R+r cos(theta))^2 (mu+lambda) (((∂)^2)/(∂r∂theta) `u__theta`(r,theta,phi))+2 r^2 (mu+lambda/2) (R+r cos(theta))^2 (((∂)^2)/(∂r^2) `u__r`(r,theta,phi))+r^2 (mu+lambda) (R+r cos(theta)) (((∂)^2)/(∂phi∂r) `u__phi`(r,theta,phi))+mu (R+r cos(theta))^2 (((∂)^2)/(∂theta^2) `u__r`(r,theta,phi))+(((∂)^2)/(∂phi^2) `u__r`(r,theta,phi)) mu r^2-3 (R+r cos(theta))^2 (mu+lambda/3) ((∂)/(∂theta) `u__theta`(r,theta,phi))+2 r (mu+lambda/2) (R+2 r cos(theta)) (R+r cos(theta)) ((∂)/(∂r) `u__r`(r,theta,phi))-r^2 sin(theta) (mu+lambda) (R+r cos(theta)) ((∂)/(∂r) `u__theta`(r,theta,phi))-3 r^2 cos(theta) (mu+lambda/3) ((∂)/(∂phi) `u__phi`(r,theta,phi))-r mu sin(theta) (R+r cos(theta)) ((∂)/(∂theta) `u__r`(r,theta,phi))-2 (mu+lambda/2) (2 (cos(theta))^2 r^2+2 cos(theta) R r+R^2) `u__r`(r,theta,phi)+r `u__theta`(r,theta,phi) sin(theta) (3 r (mu+lambda/3) cos(theta)+R mu))/(r^2 (R+r cos(theta))^2):  eq2:=(2 (mu+lambda/2) (R+r cos(theta))^2 (((∂)^2)/(∂theta^2) `u__theta`(r,theta,phi))+r (R+r cos(theta))^2 (mu+lambda) (((∂)^2)/(∂r∂theta) `u__r`(r,theta,phi))+r (mu+lambda) (R+r cos(theta)) (((∂)^2)/(∂phi∂theta) `u__phi`(r,theta,phi))+r^2 mu (R+r cos(theta))^2 (((∂)^2)/(∂r^2) `u__theta`(r,theta,phi))+(((∂)^2)/(∂phi^2) `u__theta`(r,theta,phi)) mu r^2+3 (R+r cos(theta)) ((4 r (mu+lambda/2) cos(theta))/3+R (mu+lambda/3)) ((∂)/(∂theta) `u__r`(r,theta,phi))-2 r (mu+lambda/2) sin(theta) (R+r cos(theta)) ((∂)/(∂theta) `u__theta`(r,theta,phi))+r mu (R+2 r cos(theta)) (R+r cos(theta)) ((∂)/(∂r) `u__theta`(r,theta,phi))+3 r^2 sin(theta) (mu+lambda/3) ((∂)/(∂phi) `u__phi`(r,theta,phi))+(-3 r R (mu+lambda/3) cos(theta)+(-lambda-2 mu) r^2-R^2 mu) `u__theta`(r,theta,phi)-2 r (mu+lambda/2) sin(theta) R `u__r`(r,theta,phi))/(r^2 (R+r cos(theta))^2):  eq3:=(r (mu+lambda) (R+r cos(theta)) (((∂)^2)/(∂phi∂theta) `u__theta`(r,theta,phi))+r^2 (mu+lambda) (R+r cos(theta)) (((∂)^2)/(∂phi∂r) `u__r`(r,theta,phi))+mu (R+r cos(theta))^2 (((∂)^2)/(∂theta^2) `u__phi`(r,theta,phi))+r (r mu (R+r cos(theta))^2 (((∂)^2)/(∂r^2) `u__phi`(r,theta,phi))+2 r (mu+lambda/2) (((∂)^2)/(∂phi^2) `u__phi`(r,theta,phi))+(4 r (mu+lambda/2) cos(theta)+R (mu+lambda)) ((∂)/(∂phi) `u__r`(r,theta,phi))+mu (R+2 r cos(theta)) (R+r cos(theta)) ((∂)/(∂r) `u__phi`(r,theta,phi))-mu sin(theta) (R+r cos(theta)) ((∂)/(∂theta) `u__phi`(r,theta,phi))-r (3 sin(theta) (mu+lambda/3) ((∂)/(∂phi) `u__theta`(r,theta,phi))+`u__phi`(r,theta,phi) mu)))/(r^2 (R+r cos(theta))^2):  "

EQ1 := collect(eq1, cos(m*phi))/cos(m*phi)+rho*omega^2; EQ2 := collect(eq2, cos(m*phi))/cos(m*phi)+rho*omega^2; EQ3 := collect(eq3, sin(m*phi))/sin(m*phi)+rho*omega^2

(0.1788235818e12*r*(2.5+r*cos(theta))^2*(diff(diff(V(r, theta), r), theta))+0.2535718390e12*r^2*(2.5+r*cos(theta))^2*(diff(diff(U(r, theta), r), r))+0.1788235818e12*r^2*(2.5+r*cos(theta))*(diff(W(r, theta), r))+0.7474825716e11*(2.5+r*cos(theta))^2*(diff(diff(U(r, theta), theta), theta))-0.7474825716e11*U(r, theta)*r^2-0.3283200960e12*(2.5+r*cos(theta))^2*(diff(V(r, theta), theta))+0.2535718390e12*r*(2.5+2.*r*cos(theta))*(2.5+r*cos(theta))*(diff(U(r, theta), r))-0.1788235818e12*r^2*sin(theta)*(2.5+r*cos(theta))*(diff(V(r, theta), r))-0.3283200960e12*r^2*cos(theta)*W(r, theta)-0.7474825716e11*r*sin(theta)*(2.5+r*cos(theta))*(diff(U(r, theta), theta))-0.2535718390e12*(2.*cos(theta)^2*r^2+5.0*r*cos(theta)+6.25)*U(r, theta)+r*V(r, theta)*sin(theta)*(0.3283200960e12*r*cos(theta)+0.1868706429e12))/(r^2*(2.5+r*cos(theta))^2)+7850*omega^2

 

(0.2535718390e12*(2.5+r*cos(theta))^2*(diff(diff(V(r, theta), theta), theta))+0.1788235818e12*r*(2.5+r*cos(theta))^2*(diff(diff(U(r, theta), r), theta))+0.1788235818e12*r*(2.5+r*cos(theta))*(diff(W(r, theta), theta))+0.7474825716e11*r^2*(2.5+r*cos(theta))^2*(diff(diff(V(r, theta), r), r))-0.7474825716e11*V(r, theta)*r^2+3.*(2.5+r*cos(theta))*(0.1690478927e12*r*cos(theta)+0.2736000800e12)*(diff(U(r, theta), theta))-0.2535718390e12*r*sin(theta)*(2.5+r*cos(theta))*(diff(V(r, theta), theta))+0.7474825716e11*r*(2.5+2.*r*cos(theta))*(2.5+r*cos(theta))*(diff(V(r, theta), r))+0.3283200960e12*r^2*sin(theta)*W(r, theta)+(-0.8208002400e12*r*cos(theta)-0.2535718389e12*r^2-0.4671766072e12)*V(r, theta)-0.6339295976e12*r*sin(theta)*U(r, theta))/(r^2*(2.5+r*cos(theta))^2)+7850*omega^2

 

(-0.1788235818e12*r*(2.5+r*cos(theta))*(diff(V(r, theta), theta))-0.1788235818e12*r^2*(2.5+r*cos(theta))*(diff(U(r, theta), r))+0.7474825716e11*(2.5+r*cos(theta))^2*(diff(diff(W(r, theta), theta), theta))+r*(0.7474825716e11*r*(2.5+r*cos(theta))^2*(diff(diff(W(r, theta), r), r))-0.2535718390e12*r*W(r, theta)-1.*(0.5071436780e12*r*cos(theta)+0.4470589545e12)*U(r, theta)+0.7474825716e11*(2.5+2.*r*cos(theta))*(2.5+r*cos(theta))*(diff(W(r, theta), r))-0.7474825716e11*sin(theta)*(2.5+r*cos(theta))*(diff(W(r, theta), theta))-1.*r*(-0.3283200960e12*sin(theta)*V(r, theta)+0.7474825716e11*W(r, theta))))/(r^2*(2.5+r*cos(theta))^2)+7850*omega^2

(1)

#BCs can be from following
``
U(0, theta) = 0, (D[1](U))(0, theta) = 0, U(1, theta) = 0, (D[1](U))(1, theta) = 0

U(0, theta) = 0, (D[1](U))(0, theta) = 0, U(1, theta) = 0, (D[1](U))(1, theta) = 0

(2)

NULL
V(0, theta) = 0, (D[1](V))(0, theta) = 0, V(1, theta) = 0, (D[1](V))(1, theta) = 0
NULL
W(0, theta) = 0, (D[1](W))(0, theta) = 0, W(1, theta) = 0, (D[1](W))(1, theta) = 0
``

V(0, theta) = 0, (D[1](V))(0, theta) = 0, V(1, theta) = 0, (D[1](V))(1, theta) = 0

 

W(0, theta) = 0, (D[1](W))(0, theta) = 0, W(1, theta) = 0, (D[1](W))(1, theta) = 0

(3)

``


 

Download fem2

buchanan2005.pdf

 

 

I found this strange result:
When the central moment of order 2 and the variance are assessed on a sample of a random variable, they don't return the same value.

Let S be the sample, N its size and M its empirical mean.  The difference comes from the fact that 

  • Variance(S)               = add( (S[n]-M)^2, n=1..N) / (N-1)
  • CentralMoment(S, 2) = add( (S[n]-M)^2, n=1..N) / N

By definition the variance of a random variable X is its 2nd order central moment.
This definition should also apply when these statistics are calculated on a sample of X.

It seems to me this is a mistake.
 

restart:

with(Statistics):

N := 100:

# Example 1

U := RandomVariable(BetaDistribution(3, 2)):
CentralMoment(U, 2, numeric);
Variance(U, numeric);

print():
S := Sample(U, N):
CentralMoment(S, 2);
Variance(S);

0.4000000000e-1

 

0.4000000000e-1

 

 

HFloat(0.05053851854005207)

 

HFloat(0.05104900862631522)

(1)

# Example 2

V := RandomVariable(Normal(3, 2)):
CentralMoment(V, 2, numeric);
Variance(V, numeric);

print():

S := Sample(V, N):
CentralMoment(S, 2);
Variance(S)

4.

 

4.

 

 

HFloat(3.7514118336684517)

 

HFloat(3.7893048824933824)

(2)

# Examples revisited

S := Sample(U, N):
CentralMoment(S, 2);
Variance(S)*(N-1)/N;
print():
S := Sample(V, N):
CentralMoment(S, 2);
Variance(S)*(N-1)/N
 

HFloat(0.03346262243902275)

 

HFloat(0.03346262243902278)

 

 

HFloat(4.159851396769612)

 

HFloat(4.159851396769612)

(3)

 


 

Download StrangerThings.mw

Hello. Let's say I have a set A1 in which there are nested sets {5,6},{8,9}. How can I get A2 from A1? Expand nested sets so that all elements are in the same set

The eval command doesn't work on random variables.

For instance:

with(Statistics):
X := RandomVariable(Normal(mu, sigma)):
Y := eval(X, mu=1);
Mean(Y); # returns mu

I once found a Maple command whose syntax is the same as eval's and acts as eval
Y := COMMAND(X, mu=1)
Mean(Y); # returns 1

Could someone remind me of its name?

Thanks in advance

How can i plot a probability function such as cos(x-y)*cos(y-z)*cos^3(x-2z)=0.6 where

x=0..5, y=0..x, z=0..y.

please guide me.

Dear Maple users,

I am progressing, but one last hitch, see below. A want the invariants of the PDE below. However, the final expression is too general to be useful. I would like to insert specific values for F1(R), F2(R), F3(R), and F4(R):

F3=F4=0; and F2=1, and F3(R)=aR, where a is a constant. R is one of my independent variables (the Reynolds number). 

 

I would like to do this at the step where the Infinitiesimals are generated by

infinies := Infinitesimals(PDE)

For example, the first entry would then be, infinies:=[ _xi[y](y, R, l, u) = y, ... ]. Then Invariants should give me much simplified expressions which I need.  How can i do this?

Thanks

Nadeem

 

with(PDEtools)

declare(u(y, R))

` u`(y, R)*`will now be displayed as`*u

(1)

declare(l(y, R))

` l`(y, R)*`will now be displayed as`*l

(2)

L := diff_table(l(y, R))

table( [(  ) = l(y, R) ] )

(3)

NULL``

U := diff_table(u(y, R))

table( [(  ) = u(y, R) ] )

(4)

DepVars := ([l, u])(y, R)

[l(y, R), u(y, R)]

(5)

PDE := U[y, y]+2*l(y, R)^2*U[y]*U[y, y]+2*l(y, R)*L[y]*U[y]^2+1/R = 0

diff(diff(u(y, R), y), y)+2*l(y, R)^2*(diff(u(y, R), y))*(diff(diff(u(y, R), y), y))+2*l(y, R)*(diff(l(y, R), y))*(diff(u(y, R), y))^2+1/R = 0

(6)

infinies := Infinitesimals(PDE)

[_xi[y](y, R, l, u) = _F2(R)*y+_F3(R), _xi[R](y, R, l, u) = _F1(R), _eta[l](y, R, l, u) = (1/2)*l*(-R*_F2(R)+_F1(R))/R, _eta[u](y, R, l, u) = (2*R*_F2(R)-_F1(R))*u/R+_F4(R)]

(7)

InfinitesimalGenerator(infinies, DepVars, prolongation = 1)

proc (f) options operator, arrow; add(xi[x[j]]*(diff(f, x[j])), j = 1 .. 2)+add(eta[u[m]]*(diff(f, u[m]))+eta[u[m], [y]]*(diff(f, u[m][y]))+eta[u[m], [R]]*(diff(f, u[m][R])), m = 1 .. 2) end proc

(8)

Phi := Invariants(infinies, DepVars)

l*exp(-(1/2)*(Int((-R*_F2(R)+_F1(R))/(R*_F1(R)), R))), -(Int(_F3(R)*exp(-(Int(_F2(R)/_F1(R), R)))/_F1(R), R))+y*exp(-(Int(_F2(R)/_F1(R), R))), u*exp(Int((-2*R*_F2(R)+_F1(R))/(R*_F1(R)), R))-(Int(_F4(R)*exp(Int((-2*R*_F2(R)+_F1(R))/(R*_F1(R)), R))/_F1(R), R)), u[y]*exp(Int((-R*_F2(R)+_F1(R))/(R*_F1(R)), R)), l[y]*exp(-(1/2)*(Int((-3*R*_F2(R)+_F1(R))/(R*_F1(R)), R))), (1/2)*Intat(-exp((1/2)*(Int((2*(diff(_F1(_j), _j))*_j+_j*_F2(_j)-_F1(_j))/(_j*_F1(_j)), _j)))*(-2*(diff(_F2(_j), _j))*_j^2*l[y]*(y*exp(-(Int(_F2(R)/_F1(R), R)))-(Int(_F3(R)*exp(-(Int(_F2(R)/_F1(R), R)))/_F1(R), R))+Int(_F3(_j)*exp(-(Int(_F2(_j)/_F1(_j), _j)))/_F1(_j), _j))*exp(Int(_F2(_j)/_F1(_j), _j)+(1/2)*(Int((-3*_j*_F2(_j)+_F1(_j))/(_j*_F1(_j)), _j))-(1/2)*(Int((-3*R*_F2(R)+_F1(R))/(R*_F1(R)), R)))+l*(-(diff(_F2(_j), _j))*_j^2+(diff(_F1(_j), _j))*_j-_F1(_j))*exp((1/2)*(Int((-_j*_F2(_j)+_F1(_j))/(_j*_F1(_j)), _j))-(1/2)*(Int((-R*_F2(R)+_F1(R))/(R*_F1(R)), R)))-2*(diff(_F3(_j), _j))*l[y]*_j^2*exp((1/2)*(Int((-3*_j*_F2(_j)+_F1(_j))/(_j*_F1(_j)), _j))-(1/2)*(Int((-3*R*_F2(R)+_F1(R))/(R*_F1(R)), R))))/(_j^2*_F1(_j)), _j = R)+l[R]*exp((1/2)*(Int((2*(diff(_F1(R), R))*R+R*_F2(R)-_F1(R))/(R*_F1(R)), R))), u[R]*exp(Int(((diff(_F1(R), R))*R-2*R*_F2(R)+_F1(R))/(R*_F1(R)), R))+Intat(-exp(Int(((diff(_F1(_k), _k))*_k-2*_k*_F2(_k)+_F1(_k))/(_k*_F1(_k)), _k)-(Int((-_k*_F2(_k)+_F1(_k))/(_k*_F1(_k)), _k))-(Int((-2*_k*_F2(_k)+_F1(_k))/(_k*_F1(_k)), _k)))*(-(diff(_F2(_k), _k))*_k^2*u[y]*(y*exp(-(Int(_F2(R)/_F1(R), R)))-(Int(_F3(R)*exp(-(Int(_F2(R)/_F1(R), R)))/_F1(R), R))+Int(_F3(_k)*exp(-(Int(_F2(_k)/_F1(_k), _k)))/_F1(_k), _k))*exp(Int(_F2(_k)/_F1(_k), _k)+Int((-2*_k*_F2(_k)+_F1(_k))/(_k*_F1(_k)), _k)+Int((-R*_F2(R)+_F1(R))/(R*_F1(R)), R))+(diff(_F4(_k), _k))*exp(Int((-_k*_F2(_k)+_F1(_k))/(_k*_F1(_k)), _k)+Int((-2*_k*_F2(_k)+_F1(_k))/(_k*_F1(_k)), _k))*_k^2-_k^2*u[y]*(diff(_F3(_k), _k))*exp(Int((-2*_k*_F2(_k)+_F1(_k))/(_k*_F1(_k)), _k)+Int((-R*_F2(R)+_F1(R))/(R*_F1(R)), R))+exp(Int((-_k*_F2(_k)+_F1(_k))/(_k*_F1(_k)), _k))*(u*exp(Int((-2*R*_F2(R)+_F1(R))/(R*_F1(R)), R))-(Int(_F4(R)*exp(Int((-2*R*_F2(R)+_F1(R))/(R*_F1(R)), R))/_F1(R), R))+Int(_F4(_k)*exp(-(Int((2*_k*_F2(_k)-_F1(_k))/(_k*_F1(_k)), _k)))/_F1(_k), _k))*(2*(diff(_F2(_k), _k))*_k^2-(diff(_F1(_k), _k))*_k+_F1(_k)))/(_k^2*_F1(_k)), _k = R)

In short, I want to create a density plot but with points. So I do a pointplot and I want to color it according to the value of a third function. 

So let's say I do:

>x1:=[seq(x,x=1..2,0.02)];

>y1:=[seq(y^3,y=1..2,0.02)];

>z1:=[seq(x1[i]/y1[i],i=1..51)];

And I want a plot like:

>pointplot([x1,y1])

but with a color corresponding to the gradient of z1.

What I can do is something like:

>pointplot([x1,y1], colorscheme=["valuesplit", z1, [0..0.5="Black",0.5..1="RoyalBlue"]])

but that's not as pretty as it could be. So is there a way to do something like colorscheme=["zgradient", z1]? This doesn't work because zgradient expects its first argument to be colors and then you can add markers, but they apply to the function you plot, not to a third function.

Any ideas?

colorscheme=["zgradient",["Orange","Red","NavyBlue"]]

I'm working towards creating a way to visualise real polynomial ideals! (or at least the solutions of the polynomials in the ideals) this code creates a plot showing the solutions to all the polynomials in the ideal generated by P1 and P2 (these are specified in the code)

with(plots);
P1 := x^2+2*y^2-3;
solve(P1, y);
Plot1 := plot([%], x = -2 .. 2);

P2 := -2*x^2+2*x*y+3*y^2+x-4;
solve(%, y);
Plot2 := plot([%], x = -4 .. 2);

P2*a+P1;
solve(%, y);
seq(plot([%], x = -4 .. 2), a = 0 .. 10, .1);
display(%, Plot1, Plot2)




This is because when you multiply two polynomials their set of solution curves is just the union of the sets of curves associated with the previous polynomials.

For the next step I'd like to create a graph of the solutions associated with an ideal with three generators. To stop this from being excessively messy I'd like to do it with the RGB value of the colour of a curve is determined by  a and b where the formula for a generic polynomial that we are solving and graphing is given by:

P1+a*P2+b*P3;

where P3 is given by

P3 := x*y-3

I've tried various ways to use cury to make this work (my intuition is cury is the right function to use here)  but got no where. Any ideas how to procede?

I wanted to remove entry from a list that contain y=y or x=x in it. Here is an example

f:= (x-1)*y^4/(x^2*(2*y^2-1));
S:=[singular(f)]

Where I wanted to remove those entries highlighted above to obtain

This is below how I ended up doing it. I'd like to ask if there is a better or more elegent way. I had to use map, since could not get remove() to work on the original list in one shot. 

foo:= z->remove(has,z,{y = y,x = x});
map(foo,[singular(f)])

Which gives the output above.

Is there a better way to do this? I always learn when I find how to do something better.

Maple 2019.1

 

 

First 656 657 658 659 660 661 662 Last Page 658 of 2218