MATLAB简单潮流计算程序如下:
function lianxuchaoliu
clear
clc
n=9%节点数;
nl=9%支路数;
isb=1%平衡节点号;
pr=0.00001%误差精度;
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中。
MATLAB和Mathematica、Maple并称为三大数学软件。它在数学类科技应用软件中在数值计算方面首屈一指。MATLAB可以进行矩阵运算、绘制函数和数据、实现算法、创建用户界面、连接其他编程语言的程序等,主要应用于工程计算、控制设计、信号处理与通讯、图像处理、信号检测、金融建模设计与分析等领域。
比如说你的数组是A(1,N)那么
clear,clc
n=mod(N,2)
if
(n==1)
for
x=1:(N+1)/2
A(1,2*x-1)
end
else
for
y=1:N/2
A(1,2*y-1)
end
end
上面这一段是输出奇数个,如果要输出偶数个的话就是把2*x-1和2*y-1替换为2*x和2*y。
把值付给四个变量wp=2*pi*5000ws=2*pi*12000Rp=2As=30
1. buttord
(1)[N,wc]=buttord(wp,ws,αp,αs)
调用参数wp,ws分别为数字滤波器的通带、阻带截止频率的归一化值,要求:0≤wp≤1,0≤ws≤1。1表示数字频率pi。
αp,αs分别为通带最大衰减和组带最小衰减(dB)。
当ws≤wp时,为高通滤波器;
当wp和ws为二元矢量时,为带通或带阻滤波器,这时wc也是二元向量。
N,wc作为butter函数的调用参数。
(2)[N,Ωc]=buttord(Ωp,Ωs,αp,αs,‘s’)
用于计算巴特沃斯模拟滤波器的阶数N和3dB截止频率Ωc。
Ωp,Ωs,Ωc均为实际模拟角频率。
说明:buttord函数使用阻带指标计算3dB截止频率,这样阻带会刚好满足要求,而通带会有富余。
2.buttap(N)
[z0,p0,k0]=buttap(N)
用于计算N阶巴特沃斯归一化(3dB截止频率Ωc=1)模拟低通原型滤波器系统函数的零、极点和增益因子。
说明:如果要从零、极点模型得到系统函数的分子、分母多项式系数向量ba、aa,可调用
[B,A]=zp2tf(z0,p0,k0)
3.butter
(1)[b,a]=butter(N,wc,‘ftype’)
计算N阶巴特沃斯数字滤波器系统函数分子、分母多项式的系数向量b、a。
调用参数N和wc分别为巴特沃斯数字滤波器的阶数和3dB截止频率的归一化值(关于pi归一化),一般是调用buttord(1)格式计算N和wc。
系数b、a是按照z-1的升幂排列。
(2)[B,A]=butter(N,Ωc,‘ftype’,‘s’)
计算巴特沃斯模拟滤波器系统函数的分子、分母多项式系数向量ba、aa。
调用参数N和Ωc分别为巴特沃斯模拟滤波器的阶数和3dB截止频率(实际角频率),可调用buttord(2)格式计算N和Ωc。
系数B、A按s的正降幂排列。
tfype为滤波器的类型:
◇ftype=high时,高通;Ωc只有1个值。
◇ftype=stop时,带阻阻;此时Ωc=[Ωcl,Ωcu],分别为带阻滤波器的通带3dB下截止频率和上截止频率。
◇ ftype缺省时:
若Ωc只有1个值,则默认为低通;
若Ωc有2个值,则默认为带通;其通带频率区间Ωcl <Ω <Ωcu。
注意:所设计的带通和带阻滤波器系统函数是2N阶。因为带通滤波器相当于N阶低通滤波器与N阶高通滤波器级联。
[N,wc]=buttord(wp,ws,Rp,As,'s')
[B,A]=butter(N,wc,'s')
k=0:511fk=0:14000/512:14000wk=2*pi*fk
Hk=freqs(B,A,wk)
画图,两行两列
subplot(2,2,1)
plot(fk/1000,20*log10(abs(Hk)))grid on
坐标轴意义
xlabel('频率(kHz)')ylabel('幅度(dB)')
坐标的取值范围
axis([0,14,-40,5])
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)