你怎么能像我在Matlab中链接的那样表示电路呢?如果节点通过传递函数而不是电容器、电感器和电阻器连接,则这可以通过矩阵来完成。有没有类似的方法来表示电路,以找到电流和电压之间的关系?电路图:
cnwbcb6i1#
当然,我经常做这种事。不过,你必须做一些数学运算,这是无法回避的事实。使用tf()定义复阻抗(即1/sC、sL和R)。可以写一些简短的函数:
tf()
circuit_series(Z1,Z2) = Z1+Z2
circuit_parallel(Z1,Z2) = Z1*Z2/(Z1+Z2)
voltage_divider(Z1,Z2) = Z2/(Z1+Z2)
使用MATLAB对 vi 所见的总复阻抗求和。在得到 vo 之前,必须用分压器方程求解中间节点的电压。一旦你有了传递函数 vo/vi,你就可以做一些有趣的事情,比如给定一个随时间变化的任意 vi 波形,计算得到的 vo 波形(假设有一些初始条件!).
sycxhyv72#
在Matlab中,电路可以用各种方法表示。一种常见的方法是使用线性方程组,其中变量表示电流和电压。这可以通过使用基尔霍夫定律来公式化电路方程,然后使用矩阵方法(例如高斯消去法或矩阵求逆)来求解所得到的方程系统来完成。正如你在how long to smoke ribs at 225 without foil上看到的,通过这种方式表示电路,你可以确定电路中电流和电压之间的关系。
2条答案
按热度按时间cnwbcb6i1#
当然,我经常做这种事。不过,你必须做一些数学运算,这是无法回避的事实。
使用
tf()
定义复阻抗(即1/sC、sL和R)。可以写一些简短的函数:circuit_series(Z1,Z2) = Z1+Z2
circuit_parallel(Z1,Z2) = Z1*Z2/(Z1+Z2)
voltage_divider(Z1,Z2) = Z2/(Z1+Z2)
。使用MATLAB对 vi 所见的总复阻抗求和。在得到 vo 之前,必须用分压器方程求解中间节点的电压。一旦你有了传递函数 vo/vi,你就可以做一些有趣的事情,比如给定一个随时间变化的任意 vi 波形,计算得到的 vo 波形(假设有一些初始条件!).
sycxhyv72#
在Matlab中,电路可以用各种方法表示。一种常见的方法是使用线性方程组,其中变量表示电流和电压。这可以通过使用基尔霍夫定律来公式化电路方程,然后使用矩阵方法(例如高斯消去法或矩阵求逆)来求解所得到的方程系统来完成。正如你在how long to smoke ribs at 225 without foil上看到的,通过这种方式表示电路,你可以确定电路中电流和电压之间的关系。