Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

Hello everyone, I'm trying to interpolate a function using the roots of a Chebyshev polynomial as interpolation points, and then compute the absolute error. I want to compute that error via numerical integration, however, Maple is returning the expression of the integration itself. Why is that?

This is the code I'm using:

with(CurveFitting):

u := x -> exp(1/2*x^2 - 1/2):

r := evalf(allvalues(RootOf(ChebyshevT(5, x), x))):
points := Vector(5, i -> r[i]):
u_points := Vector(5, i -> u(points[i])):

P__2 := PolynomialInterpolation(points, u_points, x):

evalf(int(abs(u(x) - P__2), x = -1 .. 1))

This is the result:

I often create diagrams in Maple and export them so I can embed them in a Word Doc.  Lately, when I right-click on the picture so I can select "export," the entire program closes.   It seems to happen more when the picture is in 3D.   Am I doing something wrong?     Thanks.

           David

This is the graph I want but Nb must be equal to Nt. I should get values -diff(theta(eta), eta) for Bi or Nt Nb first?

BiNbNtxx.mw

Dear Users!

Hope everyone is fine here. Let me explain my problem first for this consider
diff(Y(xi), xi) = mu*(1-Y(xi)^2)
Then the derivative of a function U=u(Y(xi)) using chain rule (and expression menstiones as red) is given as,
diff(U, xi) = (diff(diff(Y, xi), Y))*U and (diff(diff(Y, xi), Y))*U = mu*(1-Y(xi)^2)*(diff(U, Y))
Similarly the second-order derivaitve of U=u(Y(xi)) using chain rule (and expression menstiones as red) is given as,
((ⅆ)^(2))/(ⅆ xi^(2))U=(ⅆ)/(ⅆ xi)(mu (1-Y^(2)(xi))*(ⅆ)/(ⅆ Y)U)=((ⅆ)/(ⅆ Y)*(ⅆ)/(ⅆ xi)Y)(mu (1-Y^(2)(xi))*(ⅆ)/(ⅆ Y)U)=(ⅆ)/(ⅆ Y)(mu^(2) (1-Y^(2)(xi))^(2)*(ⅆ)/(ⅆ Y)U)=-2 Y(xi) mu^(2) (1-Y^(2)(xi))*(ⅆ)/(ⅆ Y)U+ mu^(2) (1-Y^(2)(xi))^(2)*((ⅆ)^(2))/(ⅆ Y^(2))U;
In the similar way I want to compute the higher-order (like 5th order) derivaitve of U w.r.t. xi using the chain rule  (and expression menstiones as red) explained in above. Kindly help me soolve my problem

I am waiting for positive response.

Hi there!

I need a function that receives a function of several complex variables f(z), z=z_1,...z_n as an argument and returns its decomposition into its real and imaginary parts as functions of real variables: f(z)=u(x,y)+i*v(x,y).

Here is my Maple code for the case of two complex variables z_1, z_2:

UV:=proc(f, n) #second argument n is a number of variables
  local i, X, Y, XY, w, u, v:
  X:=[seq(x[i], i=1..n)]: # Create lists of real variables x_j, y_j
  Y:=[seq(y[i], i=1..n)]:
  XY:=zip((a,b)->a+I*b, X, Y): # Create a list of x_j + I * y_j
  map(a -> assume(a, real), X): # assume all x_j, y_j are real
  map(a -> assume(a, real), Y):
  w:=f(op(XY)): # substitute x+iy into f(z)
  u:=Re(w):
  v:=Im(w):
  return([u, v]):
end proc:

To call the function, I need to type something like this:
UV((z1,z2) -> exp(z1+z2), 2) 

The trouble I have is when I try calling this function inside another function that receives as arguments n functions of n complex arguments, in other words, it receives two lists, say: Z:=[z_1,...z_n], F:=[f_1,...f_n]. At some point, I need to decompose each f_j into its real and imaginary parts but unfortunately calling UV inside this function neither accepts lists
UV(Z -> f_j, n)
nor it understands something like
UV(op(Z) -> f_j, n) or UV((op(Z)) -> f_j, n).

Maybe my approach to this problem is incorrect from the very beginning, but I don't see any other acceptable ways to do it. Can anybody help me?

  • How to get the ln(z) 3d plot example in the FunctionAdvisor /plot ?
  • a table plot, to show different plots together 

I do not understand why  simplify(eq,size,assume =t::real); gives an error but simplify(eq,size) assuming t::real; does not.

Which is the correct way to use assumptions with simplify? Inside or outside? And why would it make a difference?

Maple 2020.2 on windows 10.

interface(version);

`Standard Worksheet Interface, Maple 2021.2, Windows 10, November 23 2021 Build ID 1576349`

Physics:-Version();

`The "Physics Updates" version in the MapleCloud is 1122 and is the same as the version installed in this computer, created 2021, December 22, 16:3 hours Pacific Time.`

restart

eq:=t = 1/2*Int(1/ln(exp(t^2-2*t*y+y^2))^(1/2)/exp(t^2-2*t*y+y^2)/(exp(t^2-2*t*y+y^2)-1),exp(t^2-2*t*y+y^2))+c[1];
simplify(eq,size,assume =t::real);
 

t = (1/2)*(Int(1/(ln(exp(t^2-2*t*y+y^2))^(1/2)*exp(t^2-2*t*y+y^2)*(exp(t^2-2*t*y+y^2)-1)), exp(t^2-2*t*y+y^2)))+c[1]

Error, (in assuming) when calling '`anonymous procedure called from tools/recurse/indets`'. Received: 'invalid input: `simplify/int/simplify` expects its 3rd argument, r, to be of type {name, list({range, name = range}), name = anything}, but received exp((t-y)^2)'

simplify(eq,size) assuming t::real;

t = (1/2)*(Int(1/(ln(exp((y-t)^2))^(1/2)*exp((y-t)^2)*(exp((y-t)^2)-1)), exp((y-t)^2)))+c[1]

 

I know the above inert int looks strange, but this is why it is inert. Later on there will be change of variable to make the integration variable a single symbol again as in normal integration usage.

Download simplify_error.mw

Equação26_12.mw

Download Equação26_12.mw

Hello!

How can i get datas and graphs of implicit function. I tried...

with(DEtools, odeadvisor);

ode := diff(y(x), x) = (-0.1*(y(x) - 0.7)^3 - 0.8*y(x)*(y(x) - 0.7)^2)/(0.7^2 - 2*0.7*y(x) + y(x)^2 - 0.7*0.2*0.8);
                                    3                        2
         d         -0.1 (y(x) - 0.7)  - 0.8 y(x) (y(x) - 0.7) 
 ode := --- y(x) = -------------------------------------------
         dx                                        2          
                            0.378 - 1.4 y(x) + y(x)           
odeadvisor(ode);
          /                            3                        2\
          | d         -0.1 (y(x) - 0.7)  - 0.8 y(x) (y(x) - 0.7) |
odeadvisor|--- y(x) = -------------------------------------------|
          | dx                                        2          |
          \                    0.378 - 1.4 y(x) + y(x)           /
ans := dsolve(ode, implicit);
                2        9                    199                
ans := x + ----------- + -- ln(10 y(x) - 7) + --- ln(90 y(x) - 7)
           10 y(x) - 7   28                   252                

   + _C1 = 0
ic1 := y(0) = 0;
                        ic1 := y(0) = 0
sol := dsolve([ode, ic1], implicit);
                2        9                    199                
sol := x + ----------- + -- ln(10 y(x) - 7) + --- ln(90 y(x) - 7)
           10 y(x) - 7   28                   252                

     2   10         10         
   + - - -- ln(7) - -- I Pi = 0
     7   9          9          
subs(x = 1, sol);
   9        2        9                    199                
   - + ----------- + -- ln(10 y(1) - 7) + --- ln(90 y(1) - 7)
   7   10 y(1) - 7   28                   252                

        10         10         
      - -- ln(7) - -- I Pi = 0
        9          9          
solve(9/7 + 2/(10*y(1) - 7) + (9*ln(10*y(1) - 7))/28 + (199*ln(90*y(1) - 7))/252 - (10*ln(7))/9 - 10*I*Pi/9 = 0, y(1));
1     /      /                                                  
-- exp|RootOf|-280 I Pi exp(_Z) - 280 ln(7) exp(_Z) + 15680 I Pi
90    \      \                                                  

          /1           56\                                       
   + 81 ln|- exp(_Z) - --| exp(_Z) + 199 _Z exp(_Z) + 15680 ln(7)
          \9           9 /                                       

                          /1           56\                   \\
   + 324 exp(_Z) - 4536 ln|- exp(_Z) - --| - 11144 _Z - 13608||
                          \9           9 /                   //

     7 
   + --
     90
implicitplot(sol, x = 0 .. 10, y = 0 .. 10);
                /         2        9                 
    implicitplot|x + ----------- + -- ln(10 y(x) - 7)
                \    10 y(x) - 7   28                

         199                   2   10         10           
       + --- ln(90 y(x) - 7) + - - -- ln(7) - -- I Pi = 0, 
         252                   7   9          9            

                              \
      x = 0 .. 10, y = 0 .. 10|
                              /
but I wasn't successful.

Thanks

Thank you everyone!

I am trying to solve an ODE with nonlinear boundary conditions, it is a BVP. And the maple let me to specify an approximate initial solution. I just don't know how to define the initial solution. What format is the initial solution? I have tried the Help Document told me to, but I still can't figure it out. Please help me, thank you!

In

I want to compute x__0 as a function of alpha. I tried fsolve but could not make it work (see attached).

What did I do wrong? Are there other ways in Maple to solve such problems?

I am stuck here and would very much appreciate help.

inverse_function_with_fsolve.mw

Hi everyone. 

I need a program in maple to simulate the orbit of a satellite slowed down by the earth's atmosphere.

I chose the simple case, in which the orbits of the two are elliptical and I use The animation to do this. In this case I did not consider that the satellite interacts with the atmosphere.

Now,  I need equations to write part of the program in which I think the satellite is slowed down by the earth's atmosphere. I don't have any ideea to resolve this problem.

Soo.. I really need your' help as soon as posible.

Thank you a lot! 

Dear Users!

Hope you are doing well. I have a funtion give bellow:
beta[1]*exp(x*alpha[1]+y*beta[1]-z*sqrt(-alpha[1]^2-beta[1]^2))/(1+exp(x*alpha[1]+y*beta[1]-z*sqrt(-alpha[1]^2-beta[1]^2)));
For any value of alpha[1] and beta[1] the term highlighted red becomes the imaginary form. I want to separate the real and imaginary parts of this function. Kindly help me in this matter, thanks

Hi, I am trying to enter into the Mini-Course Computer Algebra for Physicists from the help, but instead of going to the page I get the help page of Physics[FeynmanIntegral]. Can anyone confirm that this happens to them on Maple 2021.2?

Kevin

How do I make a new dataframe based on the criteria that a particular row is included when a particular element in that row is equal to a specific string, say, "Ontario"?

I downloaded the publicly availble covid dataset from the Gov. of Canada website.  I want to look at data pertaining to Ontario only. Each data entry corresponds to a row of data where the second column represents the province or territory.  My goal is to create a new dataframe of rows where the second column entry is equal to the string "Ontario".

I have attached my maplesheet.  I can't upload the data but it can be downloaded here: https://open.canada.ca/data/en/dataset/261c32ab-4cfd-4f81-9dea-7b64065690dc.

In the image below, see how the second column is a mix of different strings.  I want a new dataframe where the second column reads only "Ontario".  I have included my naive attempt to select data with 'prname'="Ontario".

sort_data_and_make_new_df_Covid_Analysis_Sheet_1.mw

Hi, I have problem at this coding. Can you help me?

restart;
eq1 := diff(u(u, t), t) = A[0] + A[1]*cos*omega*t + Beta[1]*[diff(u(u, r), r $ 2) + diff(u(u, r), r)/r];
                  d                                   
          eq1 := --- u(u, t) = A[0] + A[1] cos omega t
                  dt                                  

                       [                  d         ]
                       [/  2         \   --- u(u, r)]
                       [| d          |    dr        ]
             + Beta[1] [|---- u(u, r)| + -----------]
                       [|   2        |        r     ]
                       [\ dr         /              ]


The*number*of*node*points;
N := 4;
                             N := 4

The*length*of*domain;
L := 1;
                             L := 1

BC1 := u(1, t) = 0;
                       BC1 := u(1, t) = 0

IC1 := u(r, 0) = 0;
                       IC1 := u(r, 0) = 0

dudt := (u[m + 1] - u[m])/(delta*t);
                            u[m + 1] - u[m]
                    dudt := ---------------
                                delta t    

dudr := (u[m + 1, j] - u[m - 1, j])/(2*delta*r);
                       u[m + 1, j] - u[m - 1, j]
               dudr := -------------------------
                               2 delta r        

d2udr2 := (u[m + 1, j] - 2*u[m] + u[m - 1, j])/(delta*r^2);
                    u[m + 1, j] - 2 u[m] + u[m - 1, j]
          d2udr2 := ----------------------------------
                                        2             
                                 delta r              

Three point forward and backward difference expressions for the derivative are:
Error, unable to parse
Typesetting:-mambiguous(Typesetting:-mambiguous(

  Three point forward and backward difference expressions for, 

  Typesetting:-merror("unable to parse")) the derivative arecolon)


dudrf := (-u[2] + 4*u[1] - 3*u[0])/(2*delta*r);
                         -u[2] + 4 u[1] - 3 u[0]
                dudrf := -----------------------
                                2 delta r       

dudrb := (u[N - 1] - 4*u[N] + 3*u[N + 1])/(2*delta*r);
                         u[3] - 4 u[4] + 3 u[5]
                dudrb := ----------------------
                               2 delta r       

The*governing*equation in finite*difference*form*is;
Eq[m] := subs(diff(u(u, t), t) = dudt, diff(u(u, r), r) = dudr, diff*(u(u, r), r $ 2) = d2udr2, eq1);
         u[m + 1] - u[m]                                     [
Eq[m] := --------------- = A[0] + A[1] cos omega t + Beta[1] [
             delta t                                         [
                                                             [

  / d  /u[m + 1, j] - u[m - 1, j]\\   u[m + 1, j] - u[m - 1, j]]
  |--- |-------------------------|| + -------------------------]
  \ dr \        2 delta r        //             2              ]
                                             2 r  delta        ]


The*boundary*condition in finite*difference*form*are;
Eq[0] := subs(diff(u(r), r) = dudrf, u(r) = u[0], BC1);
                      Eq[0] := u(1, t) = 0

The*initial*condition in finite*difference*form*are;
Eq[N + 1] := subs(diff(u(r), r) = dudrb, u(r) = u[0], IC1);
                      Eq[5] := u(r, 0) = 0

for i to N do
    Eq[m] := subs(m = i, Eq[m]);
end do;
           u[2] - u[1]                                        
  Eq[m] := ----------- = A[0] + A[1] cos omega t + Beta[1] [0]
             delta t                                          

           u[2] - u[1]                                        
  Eq[m] := ----------- = A[0] + A[1] cos omega t + Beta[1] [0]
             delta t                                          

           u[2] - u[1]                                        
  Eq[m] := ----------- = A[0] + A[1] cos omega t + Beta[1] [0]
             delta t                                          

           u[2] - u[1]                                        
  Eq[m] := ----------- = A[0] + A[1] cos omega t + Beta[1] [0]
             delta t                                          

The node spacing is given by:
Error, unable to parse
        Typesetting:-mambiguous(Typesetting:-mambiguous(

          The node spacing is given by, 

          Typesetting:-merror("unable to parse"))colon)


h := L/(N + 1);
                                  1
                             h := -
                                  5

eqs := seq(evalm(subs(Beta = 0.25, Eq[i])), i = 0 .. N + 1);
  eqs := u(r, 0) = 0, Eq[1], Eq[2], Eq[3], Eq[4], u(r, 0) = 0

vars := seq(u[i], i = 0 .. N + 1);
           vars := u[0], u[1], u[2], u[3], u[4], u[5]

soll := fsolve({eqs}, {vars});
Error, (in fsolve) {r, Eq[1], Eq[2], Eq[3], Eq[4]} are in the equation, and are not solved for

First 6 7 8 9 10 11 12 Last Page 8 of 1878