mugwort

40 Reputation

4 Badges

6 years, 181 days

MaplePrimes Activity


These are replies submitted by mugwort

@acer 

Yep my bad, it was a functional operator created using unapply on an expression. (Didn't know this was a type of procedure!)

Using an unassigned x was exactly the solution I was looking for and I'm kind of ashamed I didn't think of that myself😪😪😪

@tomleslie 

Sorry, I forgot to say they're currently in a fractional format, they aren't evaluated to decimals at all, so changing the display precision had no effect:(

Also I've been trying to avoid printf because I prefer maples pretty font and centred printout, but if there's no other option I guess I'll have to learn them.

Thanks though

Both good answers, permutation output is most convenient!

@acer Thanks for the speedy response!

I've updated my badly named variables as yours make more sense.

Also, this NullSpace of the characteristic equation is just moving the RHS of the equations I had over to the left, so I tried that with my equations:
eigsolve := [(eigscale - evals[1]*evecs[1])[1] = 0, (eigscale - evals[1]*evecs[1])[2] = 0, (eigscale - evals[1]*evecs[1])[2] = 0];

and now the solve function works as it should!

solve(eigsolve,[e11,e12,e13]);

>> [e11 = e11, e12 = 4.730757864*e11, e13 = 1.174206729*e11]

I'm not too sure why it wouldn't work before as all I've done is simplify them through subtraction.

Anyway it was a pain to reassign the components back into evecs[1], even when using assign it seemed to not want to replace e11,e12 & e13 even though when I print e12 it would resolve to 4.730757864*e11. For this reason I've decided your solution is much more elegant as it doesnt require any nasty local variables. However I'm glad I sort of solved it how I was hoping to as I think it will be a more general solution in future.

Or maybe I just need to learn how to maniupulate my forms so that these magic subspace functions will always do the trick!

Thanks

@Kitonum 

That will do the trick! Yep I hadn't realised I could just wrap the sequence around the whole line so the iterator would be the same.

But saying this, it would be nice if the arrow function could do the same thing implicitly, so if you were to give it a set of vectors, and also a set of colours(or any other parameter) would automatically pair them up...

arrows:=arrow(v,...,color=c);

Where c is defined as you had it. There's little difference really but I suppose it could reduce memory by having a single arrow plot rather than a combined sequence of them.

Anyways, thanks again

 

1 2 Page 2 of 2