2017-07-31 50 views
2

y = | sin(x)| + 5 * EXP(-x^100)* cos(x)的從-3到3

x = np.linspace(-3,3) 
y = np.mod(np.sin(x)) + 5*np.exp(-x**100)*np.cos(x) #from -3 to 3 

ValueError: invalid number of arguments 

我想繪製這個方程,但不能編譯它方程中參數的個數無效

+0

請注意,'np.exp(-x ** 100)'將受到上溢和下溢。結果可能並不像您想要的那樣準確。 – MSeifert

回答

4

函數np.mod不是您期待它的絕對值函數,而是modular arithmetic,而您需要提供兩個值才能正確計算結果。例如np.mod(5, 3) == 2因爲5與2的模3一致。

函數調用你想要的是np.absolute,它會給你提供的參數的絕對值。

4

np.mod你需要指定第二個參數(除數)。例如,

np.mod(np.sin(x),2) 

此外,@Jake Conkerton - 達比在他的anwers提到的,如果你要計算絕對值,你應該使用np.absolute而不是np.mod。