Maple Questions and Posts

These are Posts and Questions associated with the product, Maple

Hello,

     I have a very large expression I'm tring to average (by doing limit(1/L*int(<expr>,t=-L..L),L=infinty) ). However, given that this expression is so large (sum of 11k terms), I'm was looking for ways to speed up the calculation and use less RAM.

     I found that applying the lim@int seperately to each term of the sum helps. Also, since my integrand has various functions of other variables (eg. f(x), g(y), etc), Maple seems to go faster if I freeze those functions using frontend.

     However, the problem I'm running into is that, as I'm running through my for-loop to apply lim@int to each term, Maple starts running slower and slower, as well as taking more and more RAM. Additionally, it doesn't go to completion because it runs out of stack space.

     Is there an optimization trick to avoid this problem? I've tried garbage collecting after each iteration; that helps the RAM problem (at a cost of speed), but it still slows down over time.

      I've attached my code: MWE.maple. Fair warning: on a non-server computer, it is liable to run very slow.

Is it possible to convert E1(x) to Ei(x) explicitly?

In particular I have this expression which is real, but imaginary numbers appear due to the definition of Ei1 for negative arguments.

(-exp(j*z)*Ei(1, j*z)+I*Pi*exp(-j*z)+exp(-j*z)*Ei(1, -j*z))/(2*j)

 

j>0,z>0

 

Thank you

In the application whose link is below, an error message results when I right click the fsolve command and select explore.

https://www.maplesoft.com/applications/view.aspx?SID=119851

I would like to explore changes to several of the parameters in the equations named "sys", especially the value of Qoutflow. Can this be done and, If so, how can the solved values, Q1, Q2, Q3, and H be graphed as the slider values of individual parameters values are modified?

1) How can i get the event time. This example 0.69313.

2) I don't want to see the Warning.How can i do it? 

 

Warning, cannot evaluate the solution further right of .69314729, event #1 triggered a halt

how i can dsolve this equations and  convert the equations to an explicit first-order system ?

Also parameter 'p' is unknown and shoud be found.

Error, (in dsolve/numeric/bvp/convertsys) unable to convert to an explicit first-order system
error2.mw

``

restart

with(PDEtools, casesplit, declare);L:=0.75e-4:

[casesplit, declare]

(1)

eq1:=0.2079268293e-3*(diff(psi(x), x, x))-101.2059621*(diff(u(x), x, x))-101.2059621*(diff(w(x), x))*(diff(w(x), x, x));
##
eq2:=0.2079248162e-3+29.57317072*psi(x)-29.57317072*(diff(w(x), x))-1.996189024*10^(-9)*(diff(psi(x), x, x))-1.996189024*10^(-9)*(diff(w(x), x, x, x));
##
eq3:=151.8089432*(diff(w(x), x))^2*(diff(w(x), x, x))+101.2059621*(diff(u(x), x, x))*(diff(w(x), x))+101.2059621*(diff(u(x), x))*(diff(w(x), x, x))-0.2079268293e-3*(diff(psi(x), x, x))*(diff(w(x), x))-0.2079268293e-3*(diff(w(x), x, x))*(diff(psi(x), x))+29.57317070*(diff(w(x), x, x))-29.57317072*(diff(psi(x), x))-1.996189024*10^(-9)*(diff(psi(x), x, x, x))-1.996189024*10^(-9)*(diff(w(x), x, x, x, x))-p*(diff(w(x), x, x));

0.2079268293e-3*(diff(diff(psi(x), x), x))-101.2059621*(diff(diff(u(x), x), x))-101.2059621*(diff(w(x), x))*(diff(diff(w(x), x), x))

 

0.2079248162e-3+29.57317072*psi(x)-29.57317072*(diff(w(x), x))-0.1996189024e-8*(diff(diff(psi(x), x), x))-0.1996189024e-8*(diff(diff(diff(w(x), x), x), x))

 

151.8089432*(diff(w(x), x))^2*(diff(diff(w(x), x), x))+101.2059621*(diff(diff(u(x), x), x))*(diff(w(x), x))+101.2059621*(diff(u(x), x))*(diff(diff(w(x), x), x))-0.2079268293e-3*(diff(diff(psi(x), x), x))*(diff(w(x), x))-0.2079268293e-3*(diff(diff(w(x), x), x))*(diff(psi(x), x))+29.57317070*(diff(diff(w(x), x), x))-29.57317072*(diff(psi(x), x))-0.1996189024e-8*(diff(diff(diff(psi(x), x), x), x))-0.1996189024e-8*(diff(diff(diff(diff(w(x), x), x), x), x))-p*(diff(diff(w(x), x), x))

(2)

dsys3 := {eq1, eq2, eq3, psi(0) = 0, psi(L) = 0, u(0) = 0, u(L) = 0, w(0) = 0, w(L) = 0, ((D@@1)(psi))(0) = 0, ((D@@1)(w))(0) = 0, ((D@@1)(w))(L) = 0}; dsol5 := dsolve(dsys3, 'maxmesh' = 1200, numeric, abserr = .1, output = array([L]))

Error, (in dsolve/numeric/bvp/convertsys) unable to convert to an explicit first-order system

 

L

0.75e-4

(3)

``


 

Download error2.mw

 

 

The procedure F computes the smallest prime factor of  ithprime(n)-2

F := n -> ifactors((ithprime(n)-2))[2][1][1]:

F(11);
                               29
Strangely, print(F)  must be interrupted!
print(F);
Warning,  computation interrupted
 
Also,

F := n -> ifactors((ithprime(n)-2))[2][1][1];

Warning,  computation interrupted
Warning,  computation interrupted

(F is defined, only the display fails).
This happens only for interface(typesetting=extended).
In Maple 2017 it was OK.

 

how I can remove this error.

Error, numeric exception: division by zero

code2.mw

Hello,

      I was trying to apply some assumptions to a pdsolve command and noticed a strange error. Here's a minimal working example.

restart():

pdsolve(diff(f(t,x),t) = 0, {f(t,x)}, ivars = {x, t}) assuming x::real:

returns

Error, (in simpl/relopsum) invalid terms in sum: diff(f(t,x),t) = 0

Is this indeed a bug, or is it expected behavior?

Hello I don't mean this to the discredit of any others, and attempted to use the "contact user" feature, but the emails bounced, anyway I was hoping to get the user @Carl Love or @acer to assist me with this subject https://math.stackexchange.com/questions/2814343/finding-a-better-approximation-to-a-prime-number-relation

with(numtheory):

q := proc (h) options operator, arrow; min(`minus`(divisors(h*floor(ithprime(h)/h)), {1})) end proc;

DATA := [seq([h, simplify((h*igcd(h, h*q(h))-floor(sqrt(h))*igcd(floor(sqrt(h)), q(h)))^(1/2), 'radical')], h = 1 .. 300)];

 


plots[:-pointplot](DATA, color = "Black");
 

 

 

We have released an update to Maple, Maple 2018.1. This release provides enhancements to the mathematical computation engine, including physics and DEs.  It also provides substantial improvements to the command line version, easier access to group management tools in the MapleCloud, and a few other interface improvements.

This update is available through Tools>Check for Updates in Maple, and is also available from our website on the Maple 2018.1 download page, where you can also find more details.

I was using the following idea to get the computation time of my computations in Maple;

s:=time():
my computation
print(time()-s);

But it seems if I use

Grid:-Map(m->My computation(m),[some sequence]);

Where the sequence has more than one element, this idea doesn't work! It seems Maple time() remains fixed during this Grid:-Map when the sequence has more than one element. So then how should I check the computation time?

In the following pictures you can see when the sequence has one element, it works normal, but when it has two elements, it doesn't work the same.

What is the best way to solve the coupled differential equation sets (like below) in Maple?

 

Letter_M.mwsLetter_M.txt

Attached are two similar files: one written in Maple 7 code, and a similar text file.

    My original intention was to have the two dimensional letter M do an animated "knees up" in just one color.  However the program works - but not as I intended.  The individual four sections danced around - and I thought it was rather novel - but decided to make each one a different color - red, blue, white and turquoise.  I was surprised to find the polygons were all the same turquise color - that of the fourth polygon.   Is there an easy fix, or must I write four separate procs for the four polygons?

Thanks in advance for any advice.  David 

I am attempting to reproduce the results claimed by analog.com for a band pass filter.

I have checked the circuit specification and found no errors.

Am I expecting too much or am I doing something wrong?

## www.analog.com/designtools/en/filterwizard/
## Filter Requirements for Band-Pass, 4th order Butterworth
## Specifications: Optimize for Power, +Vs= 5, -Vs= -5
## Gain: 10 dB
## Passband: -3dB at 2kHz
## Stopband: -40dB at 40kHz
## Component Tolerances: Capacitor = 5%; Resistor = 1%; Inductor = 5%; Op Amp GBW = 20%

restart;
with(Syrup); Version;
with(DynamicSystems):

ckt := "*60 kHz Band Pass Filter  \n\
vin 1   0 \n\
R1A 1   2 165k \n\
R1B 5   7 169k \n\
R2A 2   0 976 \n\
R2B 7   0 1k \n\
R3A 6   0 221 \n\
R3B 11  0 226 \n\
R4A 5   6 12.7k \n\
R4B 10 11 12.7k \n\
R5A 4   3 97.6k \n\
R5B 9   8 100k \n\
R98 3   0 1e9 \n\
R99 8   0 1e9 \n\
C1A 2   4 270pF \n\
C1B 7   9 270pF \n\
C2A 2   3 270pF \n\
C2B 7   8 270pF \n\
* \n\
X1A 6  3 5  NonIdealOpAmp \n\
X1B 11 8 10 NonIdealOpAmp \n\
.include Library:-NonIdealOpAmp \n\
.end";

volts, others := Solve(ckt, 'ac', 'returnall');
gain := eval(v[10]/vin, volts);
H := subs({A=80000, f0=15*10^6, Ro=100}, gain);
evalf(H);
tf := evalf(H);
sys := TransferFunction(tf);
PrintSystem(sys);
plotsetup(maplet);
MagnitudePlot(sys);

 

please see maple attachment below.

btw, what i'm really trying to do is represent spin 1/2 states, along with the usual spin operators, and be able to take tensor products of the spin states. any hints on how to do that would be greatly appreciated. 

btw, the physics package is amazing! 

thanks, 

larry

bug.mw

 

1 2 3 4 5 6 7 Last Page 1 of 1423