![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
はじめまして。物理学が専門の大学院生です。Mathematica初心者ですがアドバイスをもらえると嬉しいです。
現在、ある滑らかな2変数関数f(x,y)=cをみたす座標(x,y)の集合を手に入れる必要があります。もちろんContourplotを使えばすぐに等高線図は書けます。しかし、欲しいのは等高線プロットではなく、f(x,y)=cを満たす座標(x,y)の集合です。そこで私はMathematicaで次のようにコードをかきました。
Table[{y, FindRoot[x^2 + y^2 == 4, {x, 1}]}, {y, -1, 1, 0.1}]
いま、話をわかりやすくするために、実定数cを4として,2変数関数f(x,y)をf(x,y)=x^2 + y^2としていますが、実際はもっと複雑な方程式です(微分方程式ではありません)。そのため、NsolveではなくFindRootを用いてます。このコードを実行すると、x^2 + y^2 == 4を満たす数値解(p,q)が{p,x→q}という形で20個求まります(実際は20個じゃ足りないのでもっと増やします)。
質問1.求まった数値解(p,q)の集合をリストとしてエクスポートしたいのですが、どうしたらよいでしょうか。このままでは、リストは(p,x→q)という風に変なところに矢印がついています。この矢印を消して、txtファイルやdatファイルに数値解の集合をエクスポートしたいのですが、その方法を教えてくれませんか。
質問2.上の方法では、明らかに等高線を引くにあたって求め欠けている解があります。具体的にはyが負の解が一切リストアップされません。この問題を解決するには解の探索の初期値を変える必要があると思いますが、他に方法はないのでしょうか。正直、上のやり方はなんだかとてもどんくさい気がして、f(x,y)=cをみたす(x,y)の集合をリストとして手に入れるもっと簡単な方法はないのでしょうか。
(できればMathematicaを用いて求めたいのですが、C言語やFortranで2分法などのアルゴリズムを用いて(x,y)の座標の集合を手に入れるのもありかなぁと思っています)。
よろしくお願いします。
No.1ベストアンサー
- 回答日時:
FindInstanceという関数があります。
http://reference.wolfram.com/language/ref/FindIn …
FindInstance[x^2 + y^2 == 4, {x,y}, Reals, 100]
とか
x->1 の -> は置換規則を表しているので
x ./ x->1
って置換(ReplaceAll)してやると、1 になります。
ありがとうございます!!
ものすごく便利な関数ですね!
とりあえず、
Export["x.dat",
List[x /. FindInstance[x^2 + y^2 == 4, {x, y}, Reals, 1000] //
N ], "Data"]
Export["y.dat",
List[y /. FindInstance[x^2 + y^2 == 4, {x, y}, Reals, 1000] //
N ], "Data"]
とすることでf(x,y)=4をみたす解の集合(x,y)のxをx.datにyをy.datにエクスポートすることができました。
ただ、理想を言えば、解の集合を一つのファイル内で
x1 y1
x2 y2
x3 y3
というように、並べた状態で手に入れたいです(1段ずつ改行もさせておきたい)。その方が何かと便利で…。一応、エクセルにはりつけたりして手動でこの形にすることはできるのですが、これから大きな数値計算をするので毎回手動でやるのは大変です。
なんとか良い方法ないでしょうか。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 数学 球面と接する直線の軌跡が表す領域 4 2023/07/30 12:37
- 数学 数2Bの数列の問題です。 自分は、 まず数列 an=ar^(n-1)と置き こちらの問題の、y= の 1 2022/07/07 16:26
- 高校 対数方程式につきまして 4 2022/05/05 07:55
- 数学 数学1の問題がわかりません。 次の関数において、頂点の座標と、[]内のxの値に対するyの値を求めよ。 3 2023/02/13 00:36
- 物理学 量子力学 球面調和関数 導出 方位角成分 微分方程式の解 2 2022/07/02 13:40
- 物理学 ベクトルと座標系につきまして 1 2022/04/03 06:23
- 中学校 中1数学 比例のグラフの座標の読み取り 4 2023/03/28 12:26
- 大学受験 娘の大学受験勉強 6 2022/06/30 19:58
- 数学 2次関数y=ax^2のグラフは点A(4,2)を通っている。y軸上に点BをAB=OB(Oは原点)となる 1 2022/04/08 00:05
- 高校受験 数学の問題いくつか捨てても大丈夫?残り1ヶ月、点数が取れない教科ばっか勉強しても大丈夫? 高校受験 2 2023/01/07 17:55
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
高1の数学でこんな感じに解の公...
-
数が大きい式の因数分解をする...
-
二次方程式の解の書き方
-
小学生の時(40年前)に、18÷...
-
2次方程式でX^2-3x+2k=0 が...
-
なぜ「異なる2つの実数解」と書...
-
求伏見稻荷大社和難波八阪神社...
-
対称行列同士の積は対称行列?
-
二次方程式の虚数解と複素数の...
-
数学IIの問題です。答えと解説...
-
3次方程式においてaを求めると...
-
3次と2次の方程式の共通解
-
数学Ⅲです。 f(x)=2x+ax/(x^2+1...
-
だれか分解してください!
-
Mathematicaを用いてf(x,y)=cを...
-
11月の進研模試のトライ問題...
-
なんでx軸と接しているところが...
-
数学2の解と係数との関係につい...
-
解き方を教えて下さい
-
「解せません」という表現
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
小学生の時(40年前)に、18÷...
-
求伏見稻荷大社和難波八阪神社...
-
高1の数学でこんな感じに解の公...
-
2次方程式x²+px+q=0の2つの異な...
-
二次方程式の虚数解と複素数の...
-
なぜ「異なる2つの実数解」と書...
-
共通解の問題についてです。こ...
-
二次方程式の解の書き方
-
なんでx軸と接しているところが...
-
2次方程式でX^2-3x+2k=0 が...
-
3次と2次の方程式の共通解
-
対称行列同士の積は対称行列?
-
【数Ⅰ】次の2次方程式が重解を...
-
方程式の問題です。
-
a又はb及びc
-
判別式はyにおいても使えますか...
-
Excelで3次方程式を解く方法
-
2次不等式X^2+MX+M<0が実数...
-
たすきがけと解の公式の答えが...
-
異なる4つの解
おすすめ情報