- ベストアンサー
Mathematicaのプログラム
Mathematicaの以下のプログラムでエラーがでてしまうのですが どこが間違っているのか教えてほしいです f[x_]:=x g[x_,y_]:=Integrate[f[x+y],x] Plot3D[g[x,y],{x,-3,3},{y,-3,3},PlotPoints->200] やりたいことはf(x)=xとしてf(x+y)をxで不定積分しその結果を変数x,yの2変数関数g(x,y)としてPlot3Dで表示したいのですが
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 Mathematicaをからは離れたので、参考意見程度になってしまうのですが・・・ まず、不定積分なので積分定数を考慮しないといけないと思うのですが、Mathematicaでは積分定数はどう処理されるのでしょう? また、やりたいことが >やりたいことはf(x)=xとしてf(x+y)をxで不定積分 と具体的にあるのなら、不定積分後の原始関数を手計算して、 その式に関してプロットすればいいのではないでしょうか。
その他の回答 (2)
- tsukita
- ベストアンサー率50% (41/82)
>確かに今の場合被積分関数が簡単なので手計算で積分し、その結果をプロットすれば出来ます。ただ私が最終的にやりたいことが、手計算で積分できない解析的に解けない場合に、数値計算で2次元プロットすることなので、まず、簡単な例としてこのやりかたでやりたいです プログラミングでは、基本が大事ですので、その考え方よくわかります。では、もう少しプログラミングの観点から調べてみませんか? 例えば、 f[x_]:=x の後に、 f[2]やf[-1]と入力してみて、きちんと値が出力されますか? 同様に、 g[x_,y_]:=Integrate[f[x+y],x] の後に、 g[0,0]やg[1,1]と入力してみて、きちんと値が出力されますか? また、エラーがでてしまったということですが、 エラーメッセージにヒントはありませんか?
- inara1
- ベストアンサー率78% (652/834)
補足
回答ありがとうございます 確かに今の場合被積分関数が簡単なので手計算で積分し、その結果をプロットすれば出来ます。ただ私が最終的にやりたいことが、手計算で積分できない解析的に解けない場合に、数値計算で2次元プロットすることなので、まず、簡単な例としてこのやりかたでやりたいです