Dan, it looks like the basic problem is that Maxima treats lists and
matrices in ways that are somewhat less than obvious.
I'll try to clarify some points.
On 1/25/07, Jaime E. Villate <villate at fe.up.pt> wrote:
> On Thu, 2007-01-25 at 06:12 -0500, Dan Solomon wrote:
> > I don't understand your comment. Don't I have x as a 3-vector?
>
> No, you don't. x[1], x[2], x[3] have no relation to the variable x.
> x and x[1] are considered different variables in Maxima.
Well, if the user writes x:[a, b, c] (i.e. assign a list to x) then
x[1], x[2], and x[3] are indeed related to x; those are the three
elements of x.
Dan, I think you want x:[a, b, c], not x[1]:a, etc -- in the latter
form, x doesn't refer collectively to a, b, and c.
Whether that's a design flaw is a topic for a rainy day ....
> The first argument given to rk must be a list of expressions. You first
> tried with a 3x1 matrix dxdtau. It won't work. You then tried
> [dxdtau[1],dxdtau[2],dxdtau[3]]
>
> this is not a list of expressions either. Please notice that since
> dxdtau is a matrix, dxdtau[1] is the first row of that matrix; namely,
> it is a list itself.
Lists are not row or column matrices, and the elements of a
row or column matrix must be indexed by 2 indices (one of which
is always 1). Dan, probably what you want is to make dxdtau a list.
Hope this helps -- I'm sorry if the treatment of lists and matrices
is confusing. I would be interested to hear your comments on this
point.
Robert Dodier