前提・実現したいこと
まだ、慣れておらず何をどうしたらいいかわからない
グラフプロットしたいが、途中のエラーでプロットの項まで進めない。
発生している問題・エラーメッセージ
NameError Traceback (most recent call last) <ipython-input-1-18ad85d14bbd> in <module> 5 6 ----> 7 y = integrate.quad(lambda z: special.kv(5/3,z),x,np.inf) 8 F=x*y 9 plot((F),(x,0,10),title='test',xlabel='x',ylabel='F') NameError: name 'x' is not defined
該当のソースコード
import numpy as np import matplotlib.pyplot as plt import scipy.integrate as integrate import scipy.special as special y = integrate.quad(lambda z: special.kv(5/3,z),x,np.inf) F=x*y plot((F),(x,0,10),title='test',xlabel='x',ylabel='F')
試したこと
x=symbols('x')を行える。
from sympy import *
を入れるとエラー
AttributeError: 'function' object has no attribute 'quad
が出てしまい積分自体ができない。
補足情報(FW/ツールのバージョンなど)
windowsのWSLでanacondaを通して、jupyter notebookを使用。
積分範囲(x,inf)を変えて結果をプロットしたいのだと思うのですが、積分したいのは
∫ (special.kv(5/3,z)) dz ということですか? 更にその結果とxの積を取りたいのでしょうか。
具体的な数式を、手書きでもいいので載せてもらったほうが回答がつくと思います。
「該当のソースコード」のコードにはxが定義されてませんので、「NameError: name 'x' is not defined」のエラーが出るのは当然かと思いますが、どこか別の場所で定義済なのでしょうか?
ご指摘ありがとうございます。
x=変数
y=∫ (special.kv(5/3,z)) dz 範囲[x~∞]
F=x*y
最終的にはグラフ横軸 x 縦軸 F での描画を行いたいのでxは定義していないですね。
回答1件
あなたの回答
tips
プレビュー