• ベストアンサー

<Mathematica>微分方程式の計算結果をファイルに出力する方法?

denebolaの回答

  • ベストアンサー
  • denebola
  • ベストアンサー率32% (23/70)
回答No.1

今、手元にmathematicaがないのでアバウトな回答しかできませんが、 1.OpenWriteかOpenAppend(追記時)で出力ファイルを指定する 2.Writeでデータを書き込む 3.データ書き込みが終わったら、Closeでファイルを閉じる という手順でよかったと思います。 stmp = OpenWrite["tmp"] Write[stmp, t," ", x(t)] .... Close[stmp]

参考URL:
http://documents.wolfram.com/v5/TheMathematicaBook/PrinciplesOfMathematica/FilesAndStreams/2.12.3.html
djf2002
質問者

お礼

ありがとうございます.教えていただいた内容を自分流にアレンジしてなんとかできました.助かりました~

関連するQ&A

  • Mathematicaでの微分方程式の解き方を教えてください。

    最近Mathematicaをはじめたのですが、ある微分方程式をMthematicaで解こうとしたとき、理解できない回答が出力されます。 f[x_] := Tan[x]/x; と定義して DSolve[{y'[x] == f[x], y[1] == 2}, y[x], x] のように解こうとすると、 {{y[x] -> 2 + ∫(Tan[K$196]/K$196)[DifferentialD]K$196}} ※∫の積分範囲は(1~x) のように出力されます。 ”K$”の意味を教えてください。よろしくお願いします。もしくは、この微分方程式は解くことができないのでしょうか?

  • Mathematicaを用いて連立微分方程式を解く

    私はMathematicaについては素人ですが、頑張って勉強しています。 2種間の競争を表すモデルを解いていますが、うまくいきません。 微分方程式は以下のようです。 dx/dt=r1x(1-(x+ay)/K1) dy/dt=r2y(1-(bx+y)/K2) 上記の方程式をMathematicaで次のように書きました。 r1 = 1; r2 = 2; K1 = 80; K2 = 70; a = 0.7; b = 1.1; ok = Dsolve[{x'[t] == r1 x [t](1 - (x[t] + a y[t])/K1), y'[t] == r2 y[t](1 - (b x[t] + y[t]/K2)), x[0] == 0, y[0] == 0}, {x[t], y[t]}, t]; これでいいのですか?また、これをx,y軸の範囲が0から100としてPlotしたいですが、どのように書けばいいのですか? よろしくお願いします。

  • mathematicaで微分方程式を…

    こんにちは。 現在、mathematicaを用いて微分方程式をとこうと思ってるのですが、「DSolve::deqn: 3の最初の引数には3ではなく,方程式か方程式のリストが必要です」とエラーがでてしまい解けません。 わかる方、ぜひ教えてください。お願いします。問題自体は y''[x]=3 と非常に簡単なのですが、 DSolve[y''[x] = 3, y, x] と入力してもとけません。よろしくお願いします。

  • Mathematica で2元4次連立方程式を解くには・・・

    教えて下さい! 2元4次連立方程式{f(x,y)=0, g(x,y)=0} (関数fとgはxとyの4次方程式です。)について、 例えば、[x,-10,10]のような限定された範囲で 実数解(x,y)を Mathematicaを使って、30桁精度で数値的に求め、 それをx,yの2次元プロットしたいと思っております。 Mathematica のどのような関数を組み合わせれば これができるか、ご教示下さいませんでしょうか? よろしくお願いいたします。 (自分でC言語でプログラムした場合、解けるには解け るのですが、有効数字の桁数が十分でなく、部分的に 数値が丸まってしまい、プロットがとぎれてしまう問題 があったので、有効数字を自在に調節できるMathematica でやってみようと思ったのですが、例えば、安直に Plot[N[Solve[{f == 0, g == 0}], 30], {x, -10, 10, 0.01}] としてもダメでした。NRootなども検討しましたがうまく 行きません。)

  • 微分方程式

    x=x(t)に関する微分方程式 (dx/dt) = -2x^(2)+t^(-2) , t>0 であるとき v(t) = {x(t)-t^(-1)}^(-1)とおきv(t)に関する微分方程式作れとあるのですが 問題が解けずに困っています。 どなたか教えていただけないでしょうか

  • Mathematicaによる記号計算

    Mathematicaでは、数学で習うような数式の解析解を記号を使った解の式として出力する機能がありますが、これは既知の解法や数式の変換手法などの組み合わせのみで作られているのでしょうか? また、Mathematicaでは解析解を出せない変微分方程式などがあったら教えていただきたいです。

  • 分数を含む2階の微分方程式の解き方

    解析力学の問題の中でラグランジアンから運動方程式を導くと、 x'' = x + M/x^3 という微分方程式がでてきました。(xの2階微分を「x''」で表しました) これを解いて x(t) を t の具体的な関数として求めるというのが問題なのですが、この微分方程式をどうやって解けばいいのかわかりません・・。 わかる方がいらっしゃれば教えてください!よろしくお願いします。

  • 微分方程式について

    微分方程式について。 yやdy/dxの形ならば解けるのですが ちょっと変わった形になると解けずに困っております。 回答お願いします。 1 未知関数x(t),y(t)に関する微分方程式 x´(t)=y(t), y´(t)=-x(t)を 初期条件x(0)=a, y(0)=bの下で解け。 2 x=x(t)を変数tのC^∞級関数とする。 このとき、 d^2x/dt^2 +(dx/dt)^2 -4=0 を解け。 3 tの関数x(t)が次の微分方程式を満たすとする x´+x^2+a(t)x+b(t)=0 ただしx´=dx/dtである。 ・x(t)=u´(t)/u(t)のとき、関数u(t)の満たす微分方程式を求めよ。 ・微分方程式 x´=x(1-x)の一般解を求めよ。 長いですが回答お願いします

  • 微分方程式を向きに解きたい

    常微分方程式を時刻Tでの初期値x(T)を与えてx(0)まで逆向きに解きたいのですがどうしたらよいのでしょうか? ここで解くというのは数値的にということです。 普通に解くルンゲクッタのプログラムをもとにしてプログラムをかきたいのですがどうしたらよいのでしょうか? よろしくお願いします.

  • 微分方程式

    t≧0で,x = x(t) に関する以下の微分方程式    (dx/dt) + (1/τ)x = (1/τ) cost が成り立つとき,以下の問いに答えよ。ただし,定数τは0ではない実数である。 (1) 微分方程式を解きなさい。ただし,x(0)=0とする。 (2) |τ|= 1 のとき,t → ∞ における(1)の解を求めよ。 よろしくお願いします。