Re: DSolve and matrix form of system of equations
- To: mathgroup at smc.vnet.net
- Subject: [mg61348] Re: [mg61294] DSolve and matrix form of system of equations
- From: Chris Chiasson <chris.chiasson at gmail.com>
- Date: Sun, 16 Oct 2005 00:18:02 -0400 (EDT)
- References: <200510140956.FAA28648@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
Thinking about it a little further,
And@@Sequence@@@MapThread[Equal,List@@eqn,2]
or
MapThread[Equal,List@@eqn,2]/.List->And
would be more appropriate than my first response.
On 10/14/05, Matt <anonmous69 at netscape.net> wrote:
> Hello,
> I've been generally taking the 2 dimensional systems of differential
> equations that I've been working with and typing them out explicitly
> (e.g. x'[t] == x[t] + 2 y[t], y'[t] == -2 x[t] + y[t]), but tonight I
> decided to enter them into Mathematica in the matrix form:
>
> Cell[BoxData[
> RowBox[{
> RowBox[{"eqn", " ", "=", " ",
> RowBox[{
> RowBox[{"(", GridBox[{
> {
> RowBox[{
> RowBox[{"x", "'"}], "[", "t", "]"}]},
> {
> RowBox[{
> RowBox[{"y", "'"}], "[", "t", "]"}]}
> }], ")"}], "\[Equal]",
> RowBox[{
> RowBox[{"(", GridBox[{
> {"a",
> RowBox[{
> SqrtBox["2"], " ", "+", " ",
> RowBox[{"a", "/", "2"}]}]},
> {
> RowBox[{
> SqrtBox["2"], " ", "-", " ",
> RowBox[{"a", "/", "2"}]}], "0"}
> }], ")"}], ".",
> RowBox[{"(", GridBox[{
> {
> RowBox[{"x", "[", "t", "]"}]},
> {
> RowBox[{"y", "[", "t", "]"}]}
> }], ")"}]}]}]}], ";"}]], "Input"]
>
> and I was wondering what would be the preferred/efficient method of
> getting the actual equations back out of the expression denoted by
> 'eqn' above?
>
> What I did was this:
>
> Cell[BoxData[
> RowBox[{"sols", " ", "=", " ",
> RowBox[{"Table", "[",
> RowBox[{
> RowBox[{"DSolve", "[",
> RowBox[{
> RowBox[{"{",
> RowBox[{
> RowBox[{
> RowBox[{
> RowBox[{"eqn", "[",
> RowBox[{"[",
> RowBox[{"1", ",", "1"}], "]"}], "]"}], "[",
>
> RowBox[{"[", "1", "]"}], "]"}], " ", "\[Equal]",
> " ",
> RowBox[{
> RowBox[{"eqn", "[",
> RowBox[{"[",
> RowBox[{"2", ",", "1"}], "]"}], "]"}], "[",
>
> RowBox[{"[", "1", "]"}], "]"}]}], ",",
> RowBox[{
> RowBox[{
> RowBox[{"eqn", "[",
> RowBox[{"[",
> RowBox[{"1", ",", "2"}], "]"}], "]"}], "[",
>
> RowBox[{"[", "1", "]"}], "]"}], " ", "\[Equal]",
> " ",
> RowBox[{
> RowBox[{"eqn", "[",
> RowBox[{"[",
> RowBox[{"2", ",", "2"}], "]"}], "]"}], "[",
>
> RowBox[{"[", "1", "]"}], "]"}]}]}], "}"}], ",",
> " ",
> RowBox[{"{",
> RowBox[{
> RowBox[{"x", "[", "t", "]"}], ",",
> RowBox[{"y", "[", "t", "]"}]}], "}"}], ",", "t"}],
> "]"}], ",",
> RowBox[{"{",
> RowBox[{"a", ",",
> RowBox[{"-", "2"}], ",", "2"}], "}"}]}],
> "]"}]}]], "Input"]
>
> which worked for me, but again, I'm sure there's a better or more
> elegant Mathematica way to get the equations back out of 'eqn'.
>
> Thanks for any insight,
>
> Matt
>
>
--
Chris Chiasson
http://chrischiasson.com/contact/chris_chiasson
- References:
- DSolve and matrix form of system of equations
- From: "Matt" <anonmous69@netscape.net>
- DSolve and matrix form of system of equations