Amir Saman Mir

85 Reputation

3 Badges

5 years, 27 days

MaplePrimes Activity


These are questions asked by Amir Saman Mir

Hey guys, how can I apply multiplication to a sequence of matrices like A[1], A[2]...A[n] so it becomes A[1]*A[2]...*A[n] ? thanks in advance

hey guys, I'm curious if there is any way to do a group assignment like the following

JointNum := 3;
                    
seq(alpha[i], i = 1 .. JointNum) := 0, 0, 0;

which should as result be the following assignment

alpha[1], alpha[2], alpha[3]:=0,0,0

which is a valid assignment standalone but not works in the sequence style form . how can I implement this type of assignment

Hi guys I showing the problem in the following document, and the file is attached

restart; Setup(mathematicalnotation = true); with(Physics); Setup(op = {A, B, S, omega, v, x, x_, `ω_`})

_______________________________________________________; "_noterminate"

(1)

 

 

ok now here is the question: I first initialize some matrices (noncommutative objects) with Setup(op = {A, B, S, omega, v, x, x_, `ω_`}) then I have an expression which is:

 

(Iota[c][i]*Dagger(diff(x[i](t), t)).Dagger(A[i]).A[i].(diff(x[i](t), t)))/L[i](t)^2

Iota[c][i]*Physics:-`*`(Physics:-Dagger(diff(x[i](t), t)), Physics:-Dagger(A[i]), A[i], diff(x[i](t), t))/L[i](t)^2

(2)

 

Now I want to substitute the expression Dagger(A[i])*A[i]with -A[i]^2,so I write
eval(Iota[c][i]*Physics[`*`](Physics[Dagger](diff(x[i](t), t)), Physics[Dagger](A[i]), A[i], diff(x[i](t), t))/L[i](t)^2, Dagger(A[i])*A[i] = -A[i]^2)

Iota[c][i]*Physics:-`*`(Physics:-Dagger(diff(x[i](t), t)), Physics:-Dagger(A[i]), A[i], diff(x[i](t), t))/L[i](t)^2

(3)

now guess what it doesn't substitute the expression. Help me please !!. for now I have some clues:
1-its because I initialize the Matrices as noncommutative objects.
2-altering the substitution expression to this one will fix the issue (but what the hell!! let's say I beside of x I have y so now I most write a similar expression for y and so on)

  Dagger(diff(x[i](t), t))*Dagger(A[i])*A[i]*(diff(x[i](t), t)) = -Dagger(diff(x[i](t), t))*A[i]^2*(diff(x[i](t), t))

Physics:-`*`(Physics:-Dagger(diff(x[i](t), t)), Physics:-Dagger(A[i]), A[i], diff(x[i](t), t)) = -Physics:-`*`(Physics:-Dagger(diff(x[i](t), t)), Physics:-`^`(A[i], 2), diff(x[i](t), t))

(4)

eval(Iota[c][i]*Physics[`*`](Physics[Dagger](diff(x[i](t), t)), Physics[Dagger](A[i]), A[i], diff(x[i](t), t))/L[i](t)^2, Physics[`*`](Physics[Dagger](diff(x[i](t), t)), Physics[Dagger](A[i]), A[i], diff(x[i](t), t)) = -Physics[`*`](Physics[Dagger](diff(x[i](t), t)), Physics[`^`](A[i], 2), diff(x[i](t), t)))

-Iota[c][i]*Physics:-`*`(Physics:-Dagger(diff(x[i](t), t)), Physics:-`^`(A[i], 2), diff(x[i](t), t))/L[i](t)^2

(5)

 

``


 

Download MapleProblem.mw

 

Hi, I have a problem that needs excessive use of symbolic matrix-vector manipulation. I'm using maple physics vector package. my first problem is that it seems this package don't support symbolic vector transpose and the related rules is there a way to implement this, for example, I want to write in symbolic form: V_*Transpose(V_) but maple eliminate the Transpose head function and evaluate this as V_^2 which is wrong, or I want maple automatically simplify the transpose rule which state that (ab)'=b'a' which a and b are symbolic matrices if maple doesn't understand this, so is there a way I can implement this.
my second question is how can I state that for example, A*B is not equal to B*A with just assuming A and B are Matrix with Airbtrary dimension and not define A and B indices so that whenever i type: A*B+B*A it doesn't evaluate it as 2*AB

1 2 Page 2 of 2