[Date Index]
[Thread Index]
[Author Index]
NDSolve in matrix form
*To*: mathgroup at smc.vnet.net
*Subject*: [mg120464] NDSolve in matrix form
*From*: Glenn Carlson <g.crlsn at gmail.com>
*Date*: Sun, 24 Jul 2011 03:19:46 -0400 (EDT)
*Delivered-to*: l-mathgroup@mail-archive0.wolfram.com
I am trying to numerically solve systems of ODEs using Mathematica 7.
The desired accuracy that I am striving for depends on the number of solution functions so I want to structure my solution algorithm to allow different numbers of solution functions. Solving the problem as a system of ODEs in matrix form seems the logical choice:
dX/dt = f[X[t]],
where f[X[t]] is a specified function, and X[t] is a vector of solution functions {x1[t],x2[t],...}. The initial conditions are specified by a vector X[0] = {x1[0],x2[0],...}.
In my problem, the number of solution functions will usually vary from 3 to 7, but could be any number.
One approach that doesn't work is:
f := {f[[1]][t], f[[2]][t], f[[3]][t]}
fInit := {0, 0, 2}
mat := {(-3*f[[1]][t] - f[[2]][t]), 26.5*f[[1]][t] - f[[2]][t] - f[[1]][t]*f[[3]][t], f[[1]][t]*f[[2]][t] - f[[3]][t]}
solution = NDSolve[{Derivative[1][f][t] == mat, f[0] == fInit}, f, {t, 0, 17}]
I don't know if the problem is in the way f is specified or in my expression for NDSolve.
I'd appreciate any assistance.
Thanks and regards,
Glenn
Prev by Date:
**TransformedDistribution -- odd problem**
Next by Date:
**NDSolve in matrix form**
Previous by thread:
**Re: TransformedDistribution -- odd problem**
Next by thread:
**Re: NDSolve in matrix form**
| |