Maple 2015 Questions and Posts

These are Posts and Questions associated with the product, Maple 2015

I'm trying to better understand the Black and Scholes model; which is a scalar function on (positive reals)^5.
a maplesoft worksheet defines it as


I am trying to understand the parameter vectors (r ,T,K,S[0],sigma) that give the same values of BS_Price - and particularly whether these form curves, closed curves, surfaces or similar.

Right now, I am not sure how to procede.

I've just put together  a procedure that evaluates BS at points in R^5 - and i think i can move forward by using the curry or rcurry functions to get a 5d tensor of the values of BS, that i can start to look for patterns within.

BS_Price := proc (InterestRate, StockPrice, StrikePrice, Duration, Volatility) evalf(subs([r = InterestRate, S[0] = StockPrice, K = StrikePrice, T = Duration, sigma = Volatility], exp(-r*T)*(-(1/2)*erf((1/4)*sqrt(2)*(sigma^2*T-2*r*T+2*ln(K)-2*ln(S[0]))/(sigma*sqrt(T)))+1/2))) end proc

could anyone give me advice on doing this?

is it possible to use maple on high performance clusters?

i can only think to use c program to call cmaple with MPI in linux to use high performance clusters.

is there any other official method to do this?

if i upload my maple 2015 version to amazon for this computing, will it used up all license in this first chance of installation leading to that i can not install maple 2015 linux version to other machine?

which virtual machine should i install the maple 12? on one virtual machine or all compute nodes?


how many compute nodes are need to compute dsolve 100,000 systems which may or may not have solution in maple 12?

Hi! For a process control exercise I'm trying to obtain the coefficients of different powers of the variable to design a PID controller. I have obtained the following equation :

Gc := (s^2*t^2+2*s*t*x+1)*(-b*s+1)/(k(-b*s+1)*s(tc+b))


I want to simplify it into an equation of the following form :

Gc = a( 1 + 1/(b*s) + c*s )

where a, b and c would be determined by Maple from the previous equation. I've tried using simplify() expand(simplify()) in different ways from the documentation and other threads, but to no avail. Any help would be greatly appreciated!


Thanks a lot!



Could you explain me where the third output comes from?

print~([a, b]);
   [ ]

Thanks in advance


How do I tell maple which branch to choose when calculating an asymptotic series of a RootOf expression. e.g.





Now the series contains RootOf(_Z^6-_Z^5) which occurs in the denominator to order 1/n and thus blows up if 0 is chosen. I know that the solution must be greater zero and smaller than n/2.

I'm trying to make a Least-Squares curve fitting plot.  I need to sequence two rows from a data file I imported (see attached worksheet  More specifically, I need to sequence the data in

X:=Row(T,1) with the data in y:=Row(T,2).  It should look like

([41115.0,6.97],[41257.0,18.9],[41270.0,15.67]...[43495.0,4.06]) when complete.  I tried seq[X_k,Y_k], that didn't work.  Also tried using an index of 1 to 25 (the number of elements in each row), that didn't work.  Any help with this appreciated, thanks in advance!


I have a hard to understand quotient of multivariate polynomials- my intuition is that the denominator nearly divides the numerator - and it could be rewritten as:

remainder+(much simpler numerator)/denominator

as far as I can see the functions quo and rem aren't designed for this - but I'm certain that people in the maple community must have overcome this kind of problem before

I have an object in 6d I'd like to visualise. The region of 6d space I am interested in is described by these equations:

{f[10] = -(.2000000000*(5.*f[21]*f[20]*f[22]-5.*f[20]*f[22]^2+20.*f[20]*f[21]-20.*f[20]*f[22]+135.*f[20]+46.*f[21]))/(f[21]*(f[21]-1.*f[22])),
f[11] = -1.*f[22]-4.,
f[12] = -(1.*(f[22]^2+4.*f[22]-27.))/f[21],
f[20] = f[20],
f[21] = f[21],
f[22] = f[22]}

clearly the first three variables are dependant, and the latter three are independant. I'd like to graph the first three as the latter three vary between bounds and then colour the points on the output based on where they came from in the input, so i can get some intuition about what these equations mean.

Consider f is a polynomial which is constructed from some polynomials. In other words, f=g_1^{k_1}*g_2^{k_2}*...*g_n^{k_n} where  g_1,g_2,..,g_n are some polynomials and also  k_1,k_2,..,k_n are positive integer numbers.

My question: How to define a procedure such that the output of proc(f) is the following list [g_1 , g_2 , ... g_n]. In fact, the procedure separates the factors of the polynomial f into  a list and also removes the powers of the factors. 

For example, suppose that f=x*(x+1)^4*(x^2+x+1)*(x^3+x^2+1)^5. Then, the output of the proc(f) be as follows [x , x+1 , x^2+x+1 , x^3+x^2+1].

Thanks in advance

An n*n matrix A is called an MDS matrix over an arbitrary field if all determinant of square sub-matrices of A are non-zero over the field. It is not difficult to prove that the number of all square sub-matrices of A is binomial(2*n, n)-1. The code that I use to check whether A is an MDS matrix is in the following form 

 u := 1;
 for k to n do
 P := choose(n, k);
   for i to nops(P) do
    for j to nops(P) do
         F := A(P[i], P[j]);
         r := Determinant(F);
        if r = 0 then

           u := 0; k:=n+1;

            i := nops(P)+1; j := nops(P)+1;

        end if;

    end do;

      end do; 
   if u = 1 then

      print(A is an MDS Matrix) 

   end if; 
  end do:

When I run the mentioned code for n=16, it takes long time since we need to check binomial(32, 16)-1=601080389 cases to verify that A is an MDS matrix or not. 

My Question: Is there a modified procedure which can be used to check that an n*n matrix is  whether an MDS matrix for n>=16. 


Assume that a[1],a[2],..a[k] are positive integer numbers. Let n be a positive integer number. 

Suppose that igcd(a[1],a[2],..a[k])=1. 

My question: Is there a command in Maple such that the output of the this command be true provided that there are "non-negative integer numbers" x[1],x[2],..x[k] which satisfy the following condition:


Thanks in advance

Recently I examined a piece of code of mine in an attempt to possibly convert it to another language as it is a numeric code and as such slower in Maple than I'd like it to run. In doing this I ran across the following strangeness, here reproduced in a minimum working example (file attached).

Consider this trivial integral:

x1:=Int(3.52*10^8, ti = 0 .. 1);

and also this one:


I can then evaluate (4) and take sine(2Pi * the evaluation of (4)):



Hmm... let's evaluate x2, which should be the same, right

0.00000556012229902952                                                              (8)

Oddly enough, it is not. Now the reason they are not 0 is due to round-off error (running the same sheet with Digits := 40 confirms that); but at the same time, (6) is in fact exact. More oddly, if I wrap the input leading to (7) in evalf() then it outputs 0., i.e. exact and correct. I suspect the problem must lie in the different treatments of Pi in the three cases.

I am not ready to call this behaviour a bug since I can see that different ways of evaluating what is essentially the same expression leads to a diffferent round-off. What strikes me is the relatively large errors in this case. The sheet was run with Digits being 15 (my default set in my .mapleinint), I initially expected somewhat more accuracy in the sine function than a mere 6 digits or so. On second thought, however, what is going on seems to be that the evaluation of the integral must be numerical and the large no. of cycles limits the accuracy; if one replaces 3.52E8 (a float) with 352E6 (an exact number) then (7) becomes 0 (exact) while (8) remains at the above value. Why


yields an exact value I do not quite understand.

So, caveat computor once again. This example, while it may look contrived, actually arose from a real-world case I was dealing with (the 352E6 is a frequency in Hz, in my actual application it can vary in time therefore the integration to get the no. of cycles in a given time interval). One annoyance here is that the "right" way to do this is not obvious, at least not to me.


Is there any facility to apply Finite Volume Method to Partial idifferential equation on MAPLE?
Any comand?

Any Code?

How can we remove 0=0 from the above by single comand if it lie in any position from the set?


How I can solve algebraic differential equation of index 2 in Mae 15?

4 5 6 7 8 9 10 Last Page 6 of 62