MaplePrimes Questions

restart;
u := (H(x, t, z)+sqrt(R))*exp(I*R*x);
                /              (1/2)\           
                \H(x, t, z) + R     / exp(I R x)

I*(Diff(u, z))+Diff(u, `$`(x, 2))+Diff(u, `$`(t, 2))+(abs(u)*abs(u))*u-((abs(u)*abs(u))*abs(u)*abs(u))*u;
  / d  //              (1/2)\           \\
I |--- \\H(x, t, z) + R     / exp(I R x)/|
  \ dz                                   /

     / 2                                   \
     |d  //              (1/2)\           \|
   + |-- \\H(x, t, z) + R     / exp(I R x)/|
     \                                     /

     / 2                                   \                    
     |d  //              (1/2)\           \|                  2 
   + |-- \\H(x, t, z) + R     / exp(I R x)/| + (exp(-Im(R x)))  
     \                                     /                    

                       2                                    
  |              (1/2)|  /              (1/2)\              
  |H(x, t, z) + R     |  \H(x, t, z) + R     / exp(I R x) - 

                                        4                       
                 4 |              (1/2)|  /              (1/2)\ 
  (exp(-Im(R x)))  |H(x, t, z) + R     |  \H(x, t, z) + R     / 

  exp(I R x)
value(%);
  / d            \              / d  / d            \\           
I |--- H(x, t, z)| exp(I R x) + |--- |--- H(x, t, z)|| exp(I R x)
  \ dz           /              \ dx \ dx           //           

         / d            \             
   + 2 I |--- H(x, t, z)| R exp(I R x)
         \ dx           /             

     /              (1/2)\  2           
   - \H(x, t, z) + R     / R  exp(I R x)

     / d  / d            \\                             2 
   + |--- |--- H(x, t, z)|| exp(I R x) + (exp(-Im(R x)))  
     \ dt \ dt           //                               

                       2                                    
  |              (1/2)|  /              (1/2)\              
  |H(x, t, z) + R     |  \H(x, t, z) + R     / exp(I R x) - 

                                        4                       
                 4 |              (1/2)|  /              (1/2)\ 
  (exp(-Im(R x)))  |H(x, t, z) + R     |  \H(x, t, z) + R     / 

  exp(I R x)
simplify(%);
  / d            \              / d  / d            \\           
I |--- H(x, t, z)| exp(I R x) + |--- |--- H(x, t, z)|| exp(I R x)
  \ dz           /              \ dx \ dx           //           

         / d            \                 2                      
   + 2 I |--- H(x, t, z)| R exp(I R x) - R  exp(I R x) H(x, t, z)
         \ dx           /                                        

      (5/2)              / d  / d            \\           
   - R      exp(I R x) + |--- |--- H(x, t, z)|| exp(I R x)
                         \ dt \ dt           //           

                                                  2           
                             |              (1/2)|            
   + exp(-2 Im(R x) + I R x) |H(x, t, z) + R     |  H(x, t, z)

                                                  2       
                             |              (1/2)|   (1/2)
   + exp(-2 Im(R x) + I R x) |H(x, t, z) + R     |  R     

                                                  4           
                             |              (1/2)|            
   - exp(-4 Im(R x) + I R x) |H(x, t, z) + R     |  H(x, t, z)

                                                  4       
                             |              (1/2)|   (1/2)
   - exp(-4 Im(R x) + I R x) |H(x, t, z) + R     |  R     
collect(%, exp(I*R*x));
 /  (5/2)       / d            \      2           
 |-R      + 2 I |--- H(x, t, z)| R - R  H(x, t, z)
 \              \ dx           /                  

        / d            \   / d  / d            \\
    + I |--- H(x, t, z)| + |--- |--- H(x, t, z)||
        \ dz           /   \ dx \ dx           //

      / d  / d            \\\           
    + |--- |--- H(x, t, z)||| exp(I R x)
      \ dt \ dt           ///           

                                                   2           
                              |              (1/2)|            
    + exp(-2 Im(R x) + I R x) |H(x, t, z) + R     |  H(x, t, z)

                                                   2       
                              |              (1/2)|   (1/2)
    + exp(-2 Im(R x) + I R x) |H(x, t, z) + R     |  R     

                                                   4           
                              |              (1/2)|            
    - exp(-4 Im(R x) + I R x) |H(x, t, z) + R     |  H(x, t, z)

                                                   4       
                              |              (1/2)|   (1/2)
    - exp(-4 Im(R x) + I R x) |H(x, t, z) + R     |  R     
 

restart;
H := a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]));
I*(diff(H, z))+diff(H, x, x)+diff(H, t, t)+R*(H+conjugate(H))+R^2*(H+conjugate(H))*H;
value(%);
simplify(%);

restart;

H := a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]));

a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))

I*(diff(H, z))+diff(H, x, x)+diff(H, t, t)+R*(H+conjugate(H))+R^2*(H+conjugate(H))*H;

I*(I*a__1*k[1]*exp(I*(-Omega*t+k*x+z*k[1]))-I*a__2*k[1]*exp(-I*(-Omega*t+k*x+z*k[1])))-a__1*k^2*exp(I*(-Omega*t+k*x+z*k[1]))-a__2*k^2*exp(-I*(-Omega*t+k*x+z*k[1]))-a__1*Omega^2*exp(I*(-Omega*t+k*x+z*k[1]))-a__2*Omega^2*exp(-I*(-Omega*t+k*x+z*k[1]))+R*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))+conjugate(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))))+R^2*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))+conjugate(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))))*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1])))

value(%);

I*(I*a__1*k[1]*exp(I*(-Omega*t+k*x+z*k[1]))-I*a__2*k[1]*exp(-I*(-Omega*t+k*x+z*k[1])))-a__1*k^2*exp(I*(-Omega*t+k*x+z*k[1]))-a__2*k^2*exp(-I*(-Omega*t+k*x+z*k[1]))-a__1*Omega^2*exp(I*(-Omega*t+k*x+z*k[1]))-a__2*Omega^2*exp(-I*(-Omega*t+k*x+z*k[1]))+R*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))+conjugate(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))))+R^2*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))+conjugate(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1]))))*(a__1*exp(I*(-Omega*t+k*x+z*k[1]))+a__2*exp(-I*(-Omega*t+k*x+z*k[1])))

simplify(%);

a__1^2*exp(-(2*I)*(Omega*t-k*x-z*k[1]))*R^2+2*a__1*a__2*R^2+a__2^2*exp((2*I)*(Omega*t-k*x-z*k[1]))*R^2-exp(-I*(Omega*t-k*x-z*k[1]))*a__1*k[1]+a__2*k[1]*exp(I*(Omega*t-k*x-z*k[1]))+a__1*exp(-I*(Omega*t-k*x-z*k[1]))*conjugate(a__1*exp(-I*(Omega*t-k*x-z*k[1]))+a__2*exp(I*(Omega*t-k*x-z*k[1])))*R^2+a__2*exp(I*(Omega*t-k*x-z*k[1]))*conjugate(a__1*exp(-I*(Omega*t-k*x-z*k[1]))+a__2*exp(I*(Omega*t-k*x-z*k[1])))*R^2-a__1*Omega^2*exp(-I*(Omega*t-k*x-z*k[1]))-a__1*k^2*exp(-I*(Omega*t-k*x-z*k[1]))-a__2*Omega^2*exp(I*(Omega*t-k*x-z*k[1]))-a__2*k^2*exp(I*(Omega*t-k*x-z*k[1]))+R*a__1*exp(-I*(Omega*t-k*x-z*k[1]))+R*a__2*exp(I*(Omega*t-k*x-z*k[1]))+R*conjugate(a__1*exp(-I*(Omega*t-k*x-z*k[1]))+a__2*exp(I*(Omega*t-k*x-z*k[1])))

 

Download m18bs.mw

Hi,

I'm trying to solve the attached system but I don't know how to proceed.

d := 0.3e-1

NULL

omega := Vector(2, {(1) = m[1, 1], (2) = m[2, 1]}) = Vector[column]([[20.33], [61.10]])NULL

NULL

f := proc (x) options operator, arrow; d+(-1)*.5*(alpha/beta-beta*x) end proc

NULL

`~`[f](omega) = Vector[column](%id = 36893628861525817332)NULL

NULL

solve(`~`[f](omega) = 0, {alpha, beta})

 

Any ideas?

Thanks very much in advance.

Best regards,

Download maple_problem.mw

I run Maple 2021 under Ubuntu 20.04 on a new Lenovo laptop with 32Gb of Ram. Every time I start Maple, it runs for a few minutes and then loses the "kernel connection". I have to save the worksheet and re-start Maple. In dmesg, I find:

[ 1436.724570] oom-kill:constraint=CONSTRAINT_NONE,nodemask=(null),cpuset=/,mems_allowed=0,global_oom,task_memcg=/user.slice/user-1000.slice/user@1000.service,task=mserver,pid=8037,uid=1000
[ 1436.724589] Out of memory: Killed process 8037 (mserver) total-vm:31723552kB, anon-rss:31289772kB, file-rss:60kB, shmem-rss:0kB, UID:1000 pgtables:61656kB oom_score_adj:0
[ 1437.151441] oom_reaper: reaped process 8037 (mserver), now anon-rss:0kB, file-rss:0kB, shmem-rss:0kB

indicating that Maple's virtual memory exceeded 30 Gb! This happens even if the only command I execute is, for instance, "resrart" or "A:=1" and nothing else. It also happens when no other applications are running and the "top" command indicates that around 30Gb of RAM is available.

In this state, Maple is utterly useless to me. This was a new install of Maple and a fresh install of Ubuntu on a new laptop, surely I am not the only one seeing this?

I have tried setting a 30Gb limit in "kerneloptions" for "stacklimit" but that di not make a difference.

If you have seen any behaviour like this, please respond. Is there some bug in Maple that leads to oncontrolled and unprovoked memory grabbing?

I am attempting to add the contents of a variable based on the contents of another. There should be some way to do this without looping. I get errors when trying to do this with seq. I seem to not understand evaluation...

How do I do this?

restart;
## generate some values like in the real app
roll:=rand(1..9):
N := sort([seq(seq(10*(2+jdx)+roll(),jdx=1..5),idx=1..10)]):
V := 10*seq(roll()+10*trunc(N[idx]/10),idx=1..nops(N)):

## generate index for sum. This groups the values for sum
sumidx := [seq(floor(N[idx]/10)-2,idx=1..nops(N))];

## create and zero sum variable
S := 0 *~convert(convert(trunc~(N/10),set),list);

## calc sum and display it - This works
for idx to nops(sumidx) do
    S[ sumidx[idx] ] += V[idx]:
end do:
S;

## error because sumidx[idx] is not evaluated ?????
S := 0 *~convert(convert(trunc~(N/10),set),list):
seq('S'[ sumidx[idx] ] += V[idx], idx=1..nops(N));
S;

## This works 'S' delays evaluation and sumidx[idx] is evaluated in
## the function call
f := proc( A, B )
    A += B:
end proc:
## zero sum variable
S := 0 *~convert(convert(trunc~(N/10),set),list):
seq(f('S'[ sumidx[idx] ], V[idx]),idx=1..nops(N)):
S;
 

Hello all,

I am considering the function f(t,u)=e^(t^2+10*u-1)

I am also considering the tangent plane g(t,u)=-121+22*t+10*u at point (11,-12).

I would like to draw a 3Dplot in maple that shows the tangentplane touching the graph of f(t,u) at point (11,-12). 

I have typed the following :
 

plot3d([exp(t^2 + 10*u - 1), -121 + 22*t + 10*u], t = -1 .. 1, u = -0.7 .. 0.7, color = [red, green])
 

The 3Dplot is not correct. I have spent much time getting it to work. Could someone please assist me?

Thanks.

I can export a worksheet (to many different formats), but the normal way of doing this requires a human in the loop and several mouse operations.

Is there a way to automate this?

I have on the order of 100 different worksheets and would like to capture them in an archival format (e.g., PDF).

battery_charging_circuit.msim

I am trying to design a charge circuit for Li battery, but i don't think it is a good idea to discharge the battery by a resistor or a cuurent source. So, how can i set the parameters to make the battery discharged initially?

I am trying to find the minimum of a function TF defined by a procedure over an interval. The function depends on variable x and fixed parameters x0, L, k, alpha_0, alpha_L. Here is the function

TF := proc(x, x0, L, k, alpha_0, alpha_L) if x0 <= x then evalc(abs(cos(k*(x - L) - alpha_L)*cos(k*x0 + alpha_0)/(cos(alpha_L)*cos(k*x0 + alpha_0)))); else evalc(abs(cos(k*(x0 - L) - alpha_L)*cos(k*x + alpha_0)/(cos(alpha_L)*cos(k*x0 + alpha_0)))); end if; end proc;

When I use

Minimize('TF'(x, 0, 0.03, 55.11566060, Pi/2, Pi/4), x = 0 .. 0.03);

I get an error "Error, (in Optimization:-NLPSolve) cannot determine if this expression is true or false: 0 <= x". What is my mistake ?

Thanks.

> with(LinearAlgebra) :
> a:=<<.1,.2>|<.3,.4>>:
> ScalarMultiply(a,.1);

INTEL MKL ERROR: /home/jet08013/maple2022/bin.X86_64_LINUX/libmkl_gf_lp64.so: undefined symbol: mkl_blas_cdgmm_batch_strided.
Intel MKL FATAL ERROR: Cannot load libmkl_gf_lp64.so.
maple: fatal error, lost connection to kernel

This is EXTREMELY inconvenient.

I try to design a half rectifier circuit in MapleSim, but the simulation is so slow and the console output says "Warning: many small integration steps are being taken at a very small proportion of integration range at t=2.9653230e-006, absolute/relative tolerance may be too tight for problem, or problem may require a stiff solver". So how should i improve the circuit to make the simulation faster?

By the way, i don't want to change the basic design of the circuit, so the circuit should consist of both diode and op amp. I know the diode only circuit can achieve the same goal.

half_rectifier.msim

NULL

Programm zur Brechnung der Kreisteilungspolynome_2022-04-05 Ki

 

NULL

restart; with(Algebraic); with(NumberTheory)

n := 6

6

(1)

 

cyclo_poly := Vector[row](1 .. n, 0)

Vector[row](%id = 36893489967244295332)

(2)

i := 1; cyclo_poly[1] := X-1

1

 

X-1

(3)

NULL
c_poly := proc (i, kt_poly) local j, hz1, hz2, X; j := i+1; hz1 := X^j-1; hz2 := kt_poly; kt_poly := Quotient(hz1, hz2, X) end proc

cyclo_poly[2] := c_poly(i, cyclo_poly[i])

Error, (in c_poly) illegal use of a formal parameter

 

i := 1; kt_poly := X-1

1

 

X-1

(4)

j := i+1; hz1 := X^j-1; hz2 := kt_poly; kt_poly := Quotient(hz1, hz2, X)

2

 

X^2-1

 

X-1

 

X+1

(5)

NULL

Download Programm_zur_Brechnung_der_Kreisteilungspolynome_2022-04-05_Ki.mw

Good morning

Why doesn't Quotient(x,y,z) not work within a procedure whereas it works well standing alone? See example.

Greetings  Heinz

Dear all,

I'm using Maple to calculate the geodesics of the Poincare' Half Plane:

restart:
with(LinearAlgebra): with(DifferentialGeometry): with(Tensor): with(Tools): with(plots): 
DGsetup([x,y],M1)
g1 := evalDG(1/y^2*(dx &t dx+dy &t dy))
R1 := CurvatureTensor(g1)
K := SectionalCurvature(g1,R1,D_x,D_y)
Gamma := Christoffel(g1)
C := [x(t), y(t)]
V := GeodesicEquations(C, Gamma, t)
DE := Tools:-DGinfo(V, "CoefficientSet")

simplify(dsolve(DE, explicit))

I receive this error message

Error, (in simplify/siderels:-simplify/siderels) specified variables must be names or functions

How can I fix this error?

Thanks, Nicola

Please, how do I find the minimum of the real part of a complex function? I tried min ( ) function it didn't work. 

Find attached the fileFinding_min_zero.mw
 

Import packages

 

restart: with(ArrayTools): with(Student:-Calculus1): with(LinearAlgebra): with(ListTools):with(RootFinding):with(ListTools):

Parameters

 

gamma1 := .1093:
alpha3 := -0.1104e-2:
k[1] := 6*10^(-12):
d:= 0.2e-3:
xi:= -0.01:
theta0:= 0.1e-3:
eta[1]:= 0.240e-1:
alpha:= 1-alpha3^2/(gamma1*eta[1]):
c:= alpha3*xi*alpha/(eta[1]*(4*k[1]*q^2/d^2-alpha3*xi/eta[1])):
theta_init:= theta0*sin(Pi*z/d):
n:= 10:

``

``

Assign g for q and plot g

 

g := q-(1-alpha)*tan(q)-c*tan(q):
plot(g, q = 0 .. 3*Pi, view = [DEFAULT, -30.. 10]);

 

Set q as a complex

 

Assume q = x+I*y and subsitute the result into g and equate the real and complex part to zero, and solve for x and y.

f := subs(q = x+I*y, g):
b1 := evalc(Re(f)) = 0:
b2 := evalc(Im(f)) = 0:

Compute the Special Asymptotes

 

This asymptote is coming from the c from the definition of "q."

``

qstar := (fsolve(1/c = 0, q = 0 .. infinity)):NULLNULL``

``

``

Compute Odd asymptote

 

First, Since tan*q = sin*q*(1/(cos*q)), then an asymptote occurs at cos*q = 0. In general, we have
"q= ((2 k+1)Pi)/(2). "
Next, we compute the entry of the Oddasymptotes that is close to qstar (special asymptote) as assign it to
ModifiedOaddAsym, and then find the minimum of the ModifiedOaddAsym. Searchall Function returns

the index of an entry in a list.

OddAsymptotes := Vector[row]([seq(evalf((1/2*(2*j+1))*Pi), j = 0 .. n)]);
ModifiedOddAsym := abs(`~`[`-`](OddAsymptotes, qstar));
qstarTemporary := min(ModifiedOddAsym);
indexOfqstar2 := SearchAll(qstarTemporary, ModifiedOddAsym);
qstar2 := OddAsymptotes(indexOfqstar2);

OddAsymptotes := Vector(4, {(1) = ` 1 .. 11 `*Vector[row], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

 

ModifiedOddAsym := Vector(4, {(1) = ` 1 .. 11 `*Vector[row], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

 

.6952012913

 

1

 

1.570796327

(4.2.1)

Compute x and y

 

Here, we solve for xand y within the min. and max. of qstar2 and qstar, and substitute the results into q.

AreThereComplexRoots := type(true, 'truefalse');
try
   soln1:= fsolve({b1, b2}, {x = min(qstar2, qstar) .. max(qstar2, qstar), y = 0 .. infinity});
   soln2:= fsolve({b1, b2}, {x = min(qstar2, qstar) .. max(qstar2, qstar), y = -infinity .. 0});
   qcomplex1 := subs(soln1, x+I*y);
   qcomplex2 := subs(soln2, x+I*y);
catch:
   AreThereComplexRoots := type(FAIL, 'truefalse');
end try;

 

true

 

{x = 1.348928550, y = .3589396337}

 

{x = 1.348928550, y = -.3589396337}

 

1.348928550+.3589396337*I

 

1.348928550-.3589396337*I

(4.3.1)

Compute the rest of the Roots

 

In this section we compute the roots between each asymptotes.

OddAsymptotes := Vector[row]([seq(evalf((1/2)*(2*j+1)*Pi), j = 0 .. n)]);
AllAsymptotes := sort(Vector[row]([OddAsymptotes, qstar]));
if AreThereComplexRoots then
gg := [qcomplex1, qcomplex2, op(Roots(g, q = 0.1e-3 .. AllAsymptotes[1])), seq(op(Roots(g, q = AllAsymptotes[i] .. AllAsymptotes[i+1])), i = 1 .. n)];
elif not AreThereComplexRoots then
gg := [op(Roots(g, q = 0.1e-3 .. AllAsymptotes[1])), seq(op(Roots(g, q = AllAsymptotes[i] .. AllAsymptotes[i+1])), i = 1 .. n)];
end if:

OddAsymptotes := Vector(4, {(1) = ` 1 .. 11 `*Vector[row], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

 

AllAsymptotes := Vector(4, {(1) = ` 1 .. 12 `*Vector[row], (2) = `Data Type: `*anything, (3) = `Storage: `*rectangular, (4) = `Order: `*Fortran_order})

(4.4.1)

``

Remove the repeated roots if any

 

qq := MakeUnique(gg):

``

Redefine n

 

m := numelems(qq):

``

Compute the `&tau;_n`time constants

 

for i to m do
p[i] := gamma1*alpha/(4*k[1]*qq[i]^2/d^2-alpha3*xi/eta[1]);
end do;

93.91209918-98.41042341*I

 

93.91209918+98.41042341*I

 

8.521555786

 

2.990232721

 

1.515805379

 

.9145981009

 

.6114591994

 

.4374663448

 

.3284338129

 

.2556221851

 

.2045951722

(4.7.1)

``

Minimum of the Re(`&tau;_n`)

 

for i to m do
p[i] := min(Re(gamma1*alpha/(4*k[1]*qq[i]^2/d^2-alpha3*xi/eta[1])));
end do;

93.91209918

 

93.91209918

 

8.521555786

 

2.990232721

 

1.515805379

 

.9145981009

 

.6114591994

 

.4374663448

 

.3284338129

 

.2556221851

 

.2045951722

(4.7.1.1)

## I expected 0.20459 but return all the entries in the list.

``

Download Finding_min_zero.mw

First 89 90 91 92 93 94 95 Last Page 91 of 2195