Maple 2015 Questions and Posts

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

Hello,

I tried to solve below equation, but it gives me zeros result. Please help me to find their inverse laplace. 

 It will be clearer if was pasted on Maple:

 

restart

Ps := [P[0], P[1], P[2], P[3], P[4]]:

eqs := [P[0](s) =~ (P[1](s)*mu[1]+P[2](s)*mu[2]+P[3](s)*mu[3]+P[4](s)*mu[4])/(s+lambda[1]+lambda[2]+lambda[3]+lambda[4]), P[1](s) = lambda[1]*P[0](s)/(s+mu[1]), P[2](s) = lambda[2]*P[0](s)/(s+mu[2]), P[3](s) = lambda[3]*P[0](s)/(s+mu[3]), P[4](s) = lambda[4]*P[0](s)/(s+mu[4])];

Ls := solve(eqs, Ps(s))[];

P(t)=~inttrans[invlaplace]~(rhs~(Ls), s, t);

 

Thank you

 

 

How do I make maple to show the values of my variables in my calculation automatically? I want it to look somewhat like this:

https://gyazo.com/df9fe1193091fb771ff99d6187c9195f

Instead of this:

https://gyazo.com/936894920a6cb89082fb94d66f8e4291

 

Hello

I have a complex set of Markov Processes in reliability application. To make them simpler for me, as a beginner in Maplesoft, I solve them manually to reach a point where I need inverse Laplace for a set of equations. For illustration, I used a simple example below. If I get the concepts for below example, I can apply them on more complicated systems, as following:

P0(s) = 1/(s+λ)+υ*P1(s)/(s+λ)

P1(s)=γ*P0(s)/(s+υ)

Mannuly I find that:

P0(t)=υ/(s+λ)+λ*exp(-(λ+υ)t)/(υ+λ)

P1(t)=υ/(s+λ)-λ*exp(-(λ+υ)t)/(υ+λ)

Please help me step by step to understand how to solve such inverse Laplace. 

Thank you,

Hi,

     I have a list of 603 integrals that I want to evaluate. Unfortunately, I can't get Maple to do most of them. Mathematica can do some that Maple can't, and returns an answer in terms of BesselJ functions. So my question is 2-fold

1) Is there a way to make Maple do this integral?
2) If not, is there a way to efficiently convert 603 expessions to Mathematica and back?

 

EXAMPLE INTEGRAL
restart;
assume(k1::real, k2::real, R::real, R>0);
a :=cos(x)*exp(I*(k1*R*sin(x)+k2*R*sin(x)-4*x))*sin(x):
int(a, x=-Pi/2..Pi/2) assuming real;


Thanks! 

restart;

assume(k1::real, k2::real, R::real, R>0);

a :=cos(x)*exp(I*(k1*R*sin(x)+k2*R*sin(x)-4*x))*sin(x)

cos(x)*exp(I*(k1*R*sin(x)+k2*R*sin(x)-4*x))*sin(x)

(1)

int(a, x=-Pi/2..Pi/2) assuming real;

int(cos(x)*exp(I*(k1*R*sin(x)+k2*R*sin(x)-4*x))*sin(x), x = -(1/2)*Pi .. (1/2)*Pi)

(2)

Mathematica Answer

ans := -(1/((k1 + k2)^6*R^6))*2*I*Pi*
(
10*(k1 + k2)^4*Pi*R^4*BesselJ(2, sqrt((k1 + k2)^2*R^2))
+ 2*Pi ((k1 + k2)^2*R^2)^(3/2) (-30 + (k1 + k2)^2*R^2) *BesselJ(3, sqrt((k1 + k2)^2*R^2))
- (k1 + k2)^4*R^4*(-(k1 + k2)*R*cos((k1 + k2)*R) + sin((k1 + k2)*R))
+ 8*(k1 + k2)^2*R^2*(-(k1 + k2)*R*(-6 + (k1 + k2)^2*R^2)*cos((k1 + k2)*R) + 3*(-2 + (k1 + k2)^2*R^2)*sin((k1 + k2)*R))
- 8*(-(k1 + k2)*R*(
120 - 20*k2^2*R^2 + k1^4*R^4 + 4*k1^3*k2*R^4 +

 k2^4*R^4 + 4*k1*k2*R^2*(-10 + k2^2*R^2) +

 k1^2*(-20*R^2 + 6*k2^2*R^4))*cos((k1 + k2)*R) +

 5*(24 - 12*k2^2*R^2 + k1^4*R^4 + 4*k1^3*k2*R^4 + k2^4*R^4 +

 4*k1*k2*R^2*(-6 + k2^2*R^2) +

 6*k1^2*R^2*(-2 + k2^2*R^2))*sin((k1 + k2)*R)
)
);

-(2*I)*Pi*(10*(k1+k2)^4*Pi*R^4*BesselJ(2, (k1+k2)*R)+2*Pi((k1+k2)^2*R^2)^(3/2)*BesselJ(3, (k1+k2)*R)-(k1+k2)^4*R^4*(-(k1+k2)*R*cos((k1+k2)*R)+sin((k1+k2)*R))+8*(k1+k2)^2*R^2*(-(k1+k2)*R*(-6+(k1+k2)^2*R^2)*cos((k1+k2)*R)+3*(-2+(k1+k2)^2*R^2)*sin((k1+k2)*R))+8*(k1+k2)*R*(120-20*R^2*k2^2+k1^4*R^4+4*k1^3*k2*R^4+k2^4*R^4+4*k1*k2*R^2*(R^2*k2^2-10)+k1^2*(6*R^4*k2^2-20*R^2))*cos((k1+k2)*R)-40*(24-12*R^2*k2^2+k1^4*R^4+4*k1^3*k2*R^4+k2^4*R^4+4*k1*k2*R^2*(R^2*k2^2-6)+6*k1^2*R^2*(R^2*k2^2-2))*sin((k1+k2)*R))/((k1+k2)^6*R^6)

(3)

 

 


Download ToughIntegral.mw

 

Hello,
I have defined a function f (x, e, y).  I give values of n: = i * h as follows:

f (x (n), w (n), t) = w * t * x;
n: = i * h;
r (n) = n;
Then I need to do this operation:
w (n) = w (n) + r (n);

w(n):=15; r(n):=30;

w(n):=w(n)+r(n);

w(n);
Error, (in w) too many levels of recursion.

How i can operate?.

Regards.

 

 

Wonder if this can be accomplished in Maple.

so I have a list of 100 items labeled {1..100} of various value {$100, $160, $220, ......  , }

the task is to distribute these items among 3 people A,B,C so they get an approximately equal share.

Adding the values and dividing by 3 gives the dollar total to aim for. 

This post has C.Love procedure for evenly sized groups

 http://www.mapleprimes.com/questions/200480-Product-Grouping

but what i want is a method for different sized groups. ie 25 items for A, 35 for B and 40 for C (user defined).

additionally there is a fixed constraint: A has been bequeathed items 1,4,8; B items 2 and 20; C item 50.

 

restart:
S:= {3, 4, 5, 6, 8, 9, 28, 30, 35}:
SL:= [A,B,C,D,E,F,G,H,I]:
assign(Labels ~ (S) =~ SL); #Create remember table.
AllP:= [seq(P, P= Iterator:-SetPartitions(S, [[3,3]], compile= false))]:
lnp:= evalf(ln((`*`(S[]))^(1/3))):

Var:= proc(P::({list,set}(set)))
local r:= evalf(`+`(map(b-> abs(ln(`*`(b[]))-lnp), P)[]));
end proc:

Min:= proc(S::{list,set}, P::procedure)
local M:= infinity, X:= (), x, v;
     for x in S do
          v:= P(x);
          if v < M then  M:= v;  X:= x  end if
     end do;
     X
end proc:

ans:= Min(AllP, Var);
              [{3, 9, 35}, {4, 8, 28}, {5, 6, 30}]
subsindets(ans, posint, Labels);
               [{I, A, F}, {B, E, G}, {C, D, H}]

 

 

I am attempting to write a Gaussian elimination routine to solve a system Ax = b using loops, but I have been having trouble.  Any help would be mcuh appreciated.  Thanks!

ABSTRACT. In this paper we demonstrate how the simulation of dynamic systems engineering has been implemented with graphics software algorithms using maple and MapleSim. Today, many of our researchers the computational modeling performed by inserting a piece of code from static work; with these packages we have implemented through the automation components of kinematics and dynamics of solids simple to complex.

It is very important to note that once developed equations study; recently we can move to the simulation; to thereby start the physical construction of the system. We will use mathematical and computational methods using the embedded buttons which lie in the dynamics leaves and viewing platform cloud of Maplesoft and power MapleNet for online evaluation of specialists in the area. Finally they will see some work done; which integrate various mechanical and computational concepts implemented for companies in real time and pattern of credibility.

 

Selasi_2015.pdf

(in spanish)

 

Lenin Araujo Castillo

 

 

Is there a command in Maple that directly divides one equation by another and produce the result as one equation directly? I wanted to verify the text book, where it says

      x^2-y^2 = a*z^2   ----- (1)
      x-y          = a*z       ------(2)
dividing (1) by (2) gives

      x+y = z  ---(3)

So I typed this in Maple:

restart;
eq1:=x^2-y^2=a*z^2;
eq2:=x-y=a*z;

But now what to do? I can see the answer in book is correct by doing

   solve( {eq1,eq2}, {x,y} );

And adding the solution given above, which shows it is z indeed.  But I'd like to get Maple to generate equation (3) above automatically.  Is this possible?

Maple 2015, windows 7

Hey.

I just got this document and can't seem to open it as a .mv file - I tried to attatch it here, but it wouldn't let me for some reason, so I saved it as a .txt and attatched it instead. Is my file broken, and if so, is there any sort of tool to fix it?

Thanks

I have two linear algebra texts [1, 2]  with examples of the process of constructing the transition matrix Q that brings a matrix A to its Jordan form J. In each, the authors make what seems to be arbitrary selections of basis vectors via processes that do not seem algorithmic. So recently, while looking at some other calculations in linear algebra, I decided to revisit these calculations in as orderly a way as possible.

 

First, I needed a matrix A with a prescribed Jordan form. Actually, I started with a Jordan form, and then constructed A via a similarity transform on J. To avoid introducing fractions, I sought transition matrices P with determinant 1.

 

Let's begin with J, obtained with Maple's JordanBlockMatrix command.

 

• 

Tools_Load Package: Linear Algebra

Loading LinearAlgebra

J := JordanBlockMatrix([[2, 3], [2, 2], [2, 1]])

Matrix([[2, 1, 0, 0, 0, 0], [0, 2, 1, 0, 0, 0], [0, 0, 2, 0, 0, 0], [0, 0, 0, 2, 1, 0], [0, 0, 0, 0, 2, 0], [0, 0, 0, 0, 0, 2]])

 

``

The eigenvalue lambda = 2 has algebraic multiplicity 6. There are sub-blocks of size 3×3, 2×2, and 1×1. Consequently, there will be three eigenvectors, supporting chains of generalized eigenvectors having total lengths 3, 2, and 1. Before delving further into structural theory, we next find a transition matrix P with which to fabricate A = P*J*(1/P).

 

The following code generates random 6×6 matrices of determinant 1, and with integer entries in the interval [-2, 2]. For each, the matrix A = P*J*(1/P) is computed. From these candidates, one A is then chosen.

 

L := NULL:

 

 

After several such trials, the matrix A was chosen as

 

A := Matrix(6, 6, {(1, 1) = -8, (1, 2) = -8, (1, 3) = 4, (1, 4) = -8, (1, 5) = -1, (1, 6) = 5, (2, 1) = -1, (2, 2) = 3, (2, 3) = 1, (2, 4) = -2, (2, 5) = 2, (2, 6) = -1, (3, 1) = -13, (3, 2) = -9, (3, 3) = 8, (3, 4) = -11, (3, 5) = 1, (3, 6) = 5, (4, 1) = 3, (4, 2) = 3, (4, 3) = -1, (4, 4) = 4, (4, 5) = 1, (4, 6) = -2, (5, 1) = 7, (5, 2) = 5, (5, 3) = -3, (5, 4) = 6, (5, 5) = 2, (5, 6) = -3, (6, 1) = -6, (6, 2) = -2, (6, 3) = 3, (6, 4) = -7, (6, 5) = 2, (6, 6) = 3})

 

 

for which the characteristic and minimal polynomials are

 

factor(CharacteristicPolynomial(A, lambda))

(lambda-2)^6

factor(MinimalPolynomial(A, lambda))

(lambda-2)^3

 

 

So, if we had started with just A, we'd now know that the algebraic multiplicity of its one eigenvalue lambda = 2 is 6, and there is at least one 3×3 sub-block in the Jordan form. We would not know if the other sub-blocks were all 1×1, or a 1×1 and a 2×2, or another 3×3. Here is where some additional theory must be invoked.

``

The null spaces M[k] of the matrices (A-2*I)^k are nested: `&sub;`(`&sub;`(M[1], M[2]), M[3]) .. (), as depicted in Figure 1, where the vectors a[k], k = 1, () .. (), 6, are basis vectors.

 

Figure 1   The nesting of the null spaces M[k] 

 

 

The vectors a[1], a[2], a[3] are eigenvectors, and form a basis for the eigenspace M[1]. The vectors a[k], k = 1, () .. (), 5, form a basis for the subspace M[2], and the vectors a[k], k = 1, () .. (), 6, for a basis for the space M[3], but the vectors a[4], a[5], a[6] are not yet the generalized eigenvectors. The vector a[6] must be replaced with a vector b[6] that lies in M[3] but is not in M[2]. Once such a vector is found, then a[4] can be replaced with the generalized eigenvector `&equiv;`(b[4], (A-2*I)^2)*b[6], and a[1] can be replaced with `&equiv;`(b[1], A-2*I)*b[4]. The vectors b[1], b[4], b[6] are then said to form a chain, with b[1] being the eigenvector, and b[4] and b[6] being the generalized eigenvectors.

 

If we could carry out these steps, we'd be in the state depicted in Figure 2.

 

Figure 2   The null spaces M[k] with the longest chain determined

 

 

Next, basis vector a[5] is to be replaced with b[5], a vector in M[2] but not in M[1], and linearly independent of b[4]. If such a b[5] is found, then a[2] is replaced with the generalized eigenvector `&equiv;`(b[2], A-2*I)*b[5]. The vectors b[2] and b[5] would form a second chain, with b[2] as the eigenvector, and b[5] as the generalized eigenvector.

``

Define the matrix C = A-2*I by the Maple calculation

 

C := A-2

Matrix([[-10, -8, 4, -8, -1, 5], [-1, 1, 1, -2, 2, -1], [-13, -9, 6, -11, 1, 5], [3, 3, -1, 2, 1, -2], [7, 5, -3, 6, 0, -3], [-6, -2, 3, -7, 2, 1]])

 

``

and note

 

N := convert(NullSpace(C), list)

[Vector(6, {(1) = 1/2, (2) = 1/2, (3) = 1, (4) = 0, (5) = 0, (6) = 1}), Vector(6, {(1) = -1/2, (2) = -1/2, (3) = -2, (4) = 0, (5) = 1, (6) = 0}), Vector(6, {(1) = -2, (2) = 1, (3) = -1, (4) = 1, (5) = 0, (6) = 0})]

NN := convert(LinearAlgebra:-NullSpace(C^2), list)

[Vector(6, {(1) = 2/5, (2) = 0, (3) = 0, (4) = 0, (5) = 0, (6) = 1}), Vector(6, {(1) = 0, (2) = 0, (3) = 0, (4) = 0, (5) = 1, (6) = 0}), Vector(6, {(1) = -1, (2) = 0, (3) = 0, (4) = 1, (5) = 0, (6) = 0}), Vector(6, {(1) = 2/5, (2) = 0, (3) = 1, (4) = 0, (5) = 0, (6) = 0}), Vector(6, {(1) = -3/5, (2) = 1, (3) = 0, (4) = 0, (5) = 0, (6) = 0})]

 

``

The dimension of M[1] is 3, and of M[2], 5. However, the basis vectors Maple has chosen for M[2] do not include the exact basis vectors chosen for M[1].

 

We now come to the crucial step, finding b[6], a vector in M[3] that is not in M[2] (and consequently, not in M[1] either). The examples in [1, 2] are simple enough that the authors can "guess" at the vector to be taken as b[6]. What we will do is take an arbitrary vector in M[3] and project it onto the 5-dimensional subspace M[2], and take the orthogonal complement as b[6].

``

A general vector in M[3] is

 

Z := `<,>`(u || (1 .. 6))

Vector[column]([[u1], [u2], [u3], [u4], [u5], [u6]])

 

``

A matrix that projects onto M[2] is

 

P := ProjectionMatrix(NN)

Matrix([[42/67, -15/67, 10/67, -25/67, 0, 10/67], [-15/67, 58/67, 6/67, -15/67, 0, 6/67], [10/67, 6/67, 63/67, 10/67, 0, -4/67], [-25/67, -15/67, 10/67, 42/67, 0, 10/67], [0, 0, 0, 0, 1, 0], [10/67, 6/67, -4/67, 10/67, 0, 63/67]])

 

``

The orthogonal complement of the projection of Z onto M[2] is then -P*Z+Z. This vector can be simplified by choosing the parameters in Z appropriately. The result is taken as b[6].

 

b[6] := 67*(eval(Z-Typesetting:-delayDotProduct(P, Z), Equate(Z, UnitVector(1, 6))))*(1/5)

Vector[column]([[5], [3], [-2], [5], [0], [-2]])

NULL

 

``

The other two members of this chain are then

 

b[4] := Typesetting:-delayDotProduct(C, b[6])

Vector[column]([[-132], [-12], [-169], [40], [92], [-79]])

b[1] := Typesetting:-delayDotProduct(C, b[4])

Vector[column]([[-67], [134], [67], [67], [0], [134]])

 

``

A general vector in M[2] is a linear combination of the five vectors that span the null space of C^2, namely, the vectors in the list NN. We obtain this vector as

 

ZZ := add(u || k*NN[k], k = 1 .. 5)

Vector[column]([[(2/5)*u1-u3+(2/5)*u4-(3/5)*u5], [u5], [u4], [u3], [u2], [u1]])

 

``

A vector in M[2] that is not in M[1] is the orthogonal complement of the projection of ZZ onto the space spanned by the eigenvectors spanning M[1] and the vector b[4]. This projection matrix is

 

PP := LinearAlgebra:-ProjectionMatrix(convert(`union`(LinearAlgebra:-NullSpace(C), {b[4]}), list))

Matrix([[69/112, -33/112, 19/112, -17/56, 0, 19/112], [-33/112, 45/112, 25/112, 13/56, 0, 25/112], [19/112, 25/112, 101/112, 1/56, 0, -11/112], [-17/56, 13/56, 1/56, 5/28, 0, 1/56], [0, 0, 0, 0, 1, 0], [19/112, 25/112, -11/112, 1/56, 0, 101/112]])

 

``

The orthogonal complement of ZZ, taken as b[5], is then

 

b[5] := 560*(eval(ZZ-Typesetting:-delayDotProduct(PP, ZZ), Equate(`<,>`(u || (1 .. 5)), LinearAlgebra:-UnitVector(4, 5))))

Vector[column]([[-9], [-59], [17], [58], [0], [17]])

 

``

Replace the vector a[2] with b[2], obtained as

 

b[2] := Typesetting:-delayDotProduct(C, b[5])

Vector[column]([[251], [-166], [197], [-139], [-112], [-166]])

 

 

The columns of the transition matrix Q can be taken as the vectors b[1], b[4], b[6], b[2], b[5], and the eigenvector a[3]. Hence, Q is the matrix

 

Q := `<|>`(b[1], b[4], b[6], b[2], b[5], N[3])

Matrix([[-67, -132, 5, 251, -9, -2], [134, -12, 3, -166, -59, 1], [67, -169, -2, 197, 17, -1], [67, 40, 5, -139, 58, 1], [0, 92, 0, -112, 0, 0], [134, -79, -2, -166, 17, 0]])

 

``

Proof that this matrix Q indeed sends A to its Jordan form consists in the calculation

 

1/Q.A.Q = Matrix([[2, 1, 0, 0, 0, 0], [0, 2, 1, 0, 0, 0], [0, 0, 2, 0, 0, 0], [0, 0, 0, 2, 1, 0], [0, 0, 0, 0, 2, 0], [0, 0, 0, 0, 0, 2]])``

 

NULL

The bases for M[k], k = 1, 2, 3, are not unique. The columns of the matrix Q provide one set of basis vectors, but the columns of the transition matrix generated by Maple, shown below, provide another.

 

JordanForm(A, output = 'Q')

Matrix([[-5, -43/5, -9/5, 7/5, -14/5, -3/5], [10, -4/5, -6/25, 1/5, -6/25, -3/25], [5, -52/5, -78/25, 13/5, -78/25, -39/25], [5, 13/5, 38/25, -2/5, 38/25, 4/25], [0, 6, 42/25, -1, 42/25, 21/25], [10, -29/5, -11/25, 1/5, -11/25, 7/25]])

 

``

I've therefore added to my to-do list the investigation into Maple's algorithm for determining an appropriate set of basis vectors that will support the Jordan form of a matrix.

 

References

 

NULL

[1] Linear Algebra and Matrix Theory, Evar Nering, John Wiley and Sons, Inc., 1963

[2] Matrix Methods: An Introduction, Richard Bronson, Academic Press, 1969

 

NULL

``

Download JordanForm_blog.mw

Need help for manipulating tensor with the physics package.

I ask some questions about this.  But each time, I am refer to the help pages.  If I ask again some help, it is because I can't not start with the information on the help file.  It is written for people that already know General Relativity (GR).

 

So this time, I have created a document (attach to this post) where I ask specific queations on manipulations.  My goal is to ccrreate a document that I will put on the Applications Center.  I promess that those who will help me on this will be cited in the document.  This way, I hope to create an introduction on how to use tensors for beginner like me.

 

Then, with this help, I am sure I will be able to better understand the help page of the packages.  I am doing this as someone who is starting to learn GR and have to be able to better understand the manipulations of tensor and getting the grasp of teh meaning of all those tensor.  For exemple, the concept of parallel transport on a curve surface.

 

Thank you in advance for all the troubling I give you with this demand.

 

Regards,Parallel_Transport.mw

 

 

 

 

 

 

 

--------------------------------------
Mario Lemelin
Maple 2015 Ubuntu 14.04 - 64 bits
Maple 2015 Win 7 - 64 bits messagerie : mario.lemelin@cgocable.ca téléphone :  (819) 376-0987

Hi,

I'm relatively new to using Maple.

I'm looking for information on how the "factor" function works. I printed its definition, and it refers to "factor/factor" and I can't find any more information on this. I'd like to know so that I could have more trust that it works correctly. Specifically, I'd like to be able to believe that if it does not factor a cubic, then the cubic is irreducible.

I'm specifically looking for rational roots of cubic polynomials. The "solve" function seems to work, and gives me the roots in terms of square roots, cubic roots and rationals. I have no idea why I should believe that "type(x,rational)" would work when the description of "x" is quite complicated.

Does anyone know anything about how "factor" works, or how "type" works when testing whether an expression evaluates to a rational number? Any information would be much appreciated.

 

Thanks,
Matt

I ran into a problem with the physics package that I subsequently solved. But I am wondering whether this would be a candidate for an SCR and/or be considered a bug.

The calculation I am trying is actually (so far) very simple.

I define a Hamiltonian H:

H := sqrt(p_^2*c^2+m^2*c^4); # note the square of vector p_

p_:=p1*_i+p2*_j+p3*_k;

H;

So far so good. Now I want to take the differentials of H against the components of p:

diff(H,p1) assuming c::real;

Hmm... I am not sure why the p2 and p3 still show up; but then, the product between the unit vectors should be 0 for different ones and one for equal unit vectors so maybe this is ok.

But H behaves weird: I can simplify it:

but if I try to do anything with it, it barfs:

dH+0;

Error, (in Physics:-Vectors:-+) invalid operation * between vectors _i and _j

As it turns out the issue is the square of the vector p_. Maple (or rather, Physics) does not recognize that it needs to expand p_^2 as p_.p_ and seems to treat is like p_*p_.

I would like Edgardo---& others more experienced with the Physics package than I am---to look at this. I do not understand the Physics package well enough to judge whether overloading the exponentiation operator to make this work is the right thing.

The example works once I replace p_^2 by p_.p_. But the ^2 notation is fairly standard usage so it feels slightly awkward.

Thanks,

Mac Dude.

Derivation_of_H.mw

hello 

 

if you have a function lets say: 2x+1/4-x3

 

 

Now if you have to plot the graf, how should you know what the x and y shoud be? I mean you do like: plot(f(x),x=..

 

what should it be? i find it hard :(

First 44 45 46 47 48 49 50 Last Page 46 of 56