python - 使用 Python 的狄拉克 Delta 函数
问题描述
我试图在 Python 2.7 代码中绘制 Dirac Delta 矩形函数,这样:
from __future__ import division
import numpy as np
import matplotlib.pyplot as plt
def ddf(x,sig):
if -(1/(2*sig))<=x and x<=(1/(2*sig)):
val=sig
else:
val=0
return val
X=np.linspace(-5,5,1000)
for sig in np.arange(1,5,0.1):
plt.cla()
plt.grid()
plt.title('Dirac Delta function',size=20)
plt.xlabel('X values',size=10)
plt.ylabel("Dirac Delta functions' values",size=10)
plt.ylim(0,1)
plt.plot(X,ddf(X,sig),color='black')
plt.pause(0.5)
plt.show()
但是当我运行代码时,它给出了错误:
Traceback (most recent call last):
File "c:/Users/Shubhadeep/Desktop/dff.py", line 22, in <module>
plt.plot(X,ddf(X,sig),color='black')
File "c:/Users/Shubhadeep/Desktop/dff.py", line 7, in ddf
if -(1/(2*sig))<=x and x<=(1/(2*sig)):
ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
谁能解决这个问题?
解决方案
推荐阅读
- c# - 使用数据保护 API 存储签名密钥
- php - 获取laravel关系时将键设置为差异键
- sql - Postgres 中的唯一约束是否创建索引?
- java - 在 Java 中使用 For 循环打印模式
- reactjs - 接口根据其定义的属性推断类型
- python - 为什么我的代码不允许我循环某段代码,而是循环整个代码?
- spring - 如何使用 JUnit 5(在 Kotlin 中)设置 Spring Data Neo4j 集成测试?
- reactjs - datapicker reactjs inout 日期格式
- hyperledger-fabric - 超级账本结构上的智能合约升级超时
- react-native - 任务 :app:compileDebugJavaWithJavac 失败