大学电路实验.ppt

大学电路实验.ppt

ID:56469534

大小:862.00 KB

页数:26页

时间:2020-06-19

大学电路实验.ppt_第1页
大学电路实验.ppt_第2页
大学电路实验.ppt_第3页
大学电路实验.ppt_第4页
大学电路实验.ppt_第5页
资源描述:

《大学电路实验.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、电路实验节点电压法Orcad/Pspice谢谢观赏!组员:孙文健毛文俊沈繁呈尚岸任鸣C语言节点电压法课本上提供的程序虽然能进行一些简单电路的求解,但仍有很多不足之处,我们组重新编写了程序。我们的新程序拥有更广泛的适用性,更人性化的人机交互。该程序以十五章的矩阵法为基础,并在此基础上进行了创新与改进了,解决了矩阵法难以处理无伴随独立源的问题。程序使用流程程序功能上的优势更广泛的适用性错误自检功能重输入功能人机交互导纳阵地生成输入完成,求的各节点电压无伴随独立源的处理课本15章介绍的矩阵法无法直接处理无伴随对立源支路,必需通过电路理论将无伴随独立源合并到其它支路中才能求解。而本程序用了

2、一种简单而又有效的方法解决了这一问题。拿无伴随电压源为例,一个无伴随电压源相当于一个电压源和一个电阻阻值为0的电阻串联,所以使用者在使用程序求解时,只要输入该支路的电阻为0即可表示该支路为无伴随电压源支路。但如果直接把这个0带入矩阵方程中,是无解的。所以这里用近似法对其进行处理。程序会自动的用一个数值非常小,约等于0却不等于0的数来代替这个0,从而即可保证方程有解,又可使计算结果十分接近真实数值。为了保证处理不同电路时有相同的计算精度,程序中没有预设一个固定的数值来代替0电阻。而是找到所有非0电阻中,绝对值最小的一个,将该最小值除以一个常数N(程序中N=10000),用得到的结果代

3、替0电阻。实践证明,在保留两位小数的情况下,程序的计算结果与真实数值完全相等。如果要得到更高精度的结果,可以通过提高常数N的数值来实现。较为规范的设计风格模块化的编程预处理命令的使用更广泛的适用性在程序的开始,由使用者自己输入电路的节点数与支路数,使得该程序可适用于各种无耦合的电路。错误自检功能该程序在很多地方都可以对错误的输入做出反应,最典型的是对A矩阵的错误检测。由于电路的拓扑图的限制,很多输入组合是不可能出现的。比如图中的一行全为0”的情况和一列中有两个1”的情况。当程序检测到A矩阵输入错误时,会提示Dataerror.”,并在用户按下任意键后要求用户重新输入。重输入功能每输

4、入完一个矩阵,程序都会提示是重新输入还是继续输入,这样就不会因为一个数据输入错误,使得一切都要从头来过。人机交互在输入各支路的相关信息时,程序会显示正在输入的是哪个支路,从而方便使用者的操作导纳阵地生成对于一些含有受控源的电路,导纳阵的计算往往比较麻烦,所以该程序提供了Y矩阵自动生成功能。用户只需输入各支路的电阻(电导)、各支路的受控源类型、各受控源的控制量所在位置以及各受控源的控制系数。图为用户选择是否需要程序生成Y矩阵。模块化的编程/*输入模块*/voidinput_data(void);/*数据输入*/voidinput_n_b(intpos);/*输入节点数与支路数*/vo

5、idinput_A(intpos);/*输入关联矩阵*/voidinput_us_is(intpos);/*输入各支路独立电压(电流)源*/voidinput_y_z_b(intpos);/*输入各支路阻抗(导纳)*/voidinput_y_z(intpos);/*输入阻抗(导纳)矩阵*/voidinput_con(intpos);/*输入有关受控源的信息*/voidinput_branch(float*a,floatmin,floatmax,intpos);/*支路信息标准输入函数*/intreinput(intpos);/*重输入调控函数(返回1表重输)*//*数据处理模块*/

6、voidcreate_Y(void);/*生成导纳阵*/voidcreate_Z(void);/*生成阻抗阵*/voidcreate_Yn(void);/*生成节点导纳阵*/voidcreate_Jn(void);/*生成注入结点电流列向量*/intsolve_equation(void);/*求解方程组*//*矩阵处理模块*/intinput_matrix(matrix*x,intm,intn,intpos);/*矩阵输入*/intoutput_matrix(matrixx,intpos);/*矩阵显示*/matrixtrans_matrix(matrixx);/*矩阵转置*/m

7、atrixadd_matrix(matrixx1,matrixx2);/*矩阵相加*/matrixmul_matrix_c(matrixx,floats);/*矩阵乘常数*/matrixmul_matrix_matrix(matrixx1,matrixx2);/*矩阵乘矩阵*/floatsolve_deter(matrixt);/*求解行列式*/matrixsolve_matrix_A_(matrixa);/*求伴随矩阵(A*)*/matrixinverse_matr

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。