目录:
一、简介
1、阻抗匹配的计算
2、交流信号经过电容/电感计算
二、复数基本性质运算
三、复数二元运算
四、复数三角函数运算
五、C语言复数运算
1、代码
2、complex.h包含的内容
一、简介
在电路设计中我们会遇到一些诸如阻抗匹配计算,交流信号经过电容、电感的计算等情况,可以借助 Excel 中复数计算函数。软件的下载地址移步:Excel画折线图做定积分。
1、阻抗匹配的计算
详细的介绍请移步:数学的精美之二、虚数的直观图解。
图1.1.1 电原理图
2、交流信号经过电容/电感计算
详细的介绍请移步:交流信号经过电阻、电容计算。
图1.1.2 电原理图
图1.1.3 Excel计算截图
图1.1.4 六路电压采集
二、复数基本性质运算
=COMPLEX(-0.5,0.87,"i") 创建复数 -0.5+0.87i。此处的 i 在电子中常用作 j,可用 =COMPLEX(-0.5,0.87,"j")。
=IMAGINARY(A2) 求出复数的虚部,即虚数i 前面的系数。
=IMREAL(A2) 求出复数的实部,即实数部分。
=IMABS(A2) 求出模,即复数的绝对值。注意:模由公式√(x²+y²) 得到,其中 x实部,y虚部。
=IMARGUMENT(A2) 求出复数的辐角,注意是弧度值。
=DEGREES(IMARGUMENT(A2)) 将弧度转换成角度。
=IMCONJUGATE(A2) 求出共轭复数。
本案例完整内容请移步:电力、电气、电工知识汇总之四、继电保护之5)序分量计算。
三、复数二元运算
注:对包含公式的单元格引用若报错,参见“Excel高级使用技巧汇总之18、绝对引用与相对引用”
=IMSUM(A2,B2) 得到复数的和。
注:两个复数虚数字母风格的书写要一致。
例如:(1+2i) +(3-4j) 在 Excel 中是不规范的,计算不出来结果。
=IMSUB(A2,B2) 求出复数的差。
=IMPRODUCT(A2,B2) 求出复数的乘积。
注:IMPRODUCT 支持多个复数之间相乘(最多支持 255个)
=IMDIV(A2,B2) 求出两个复数之间的商。
=IMPOWER(A2,1) 求出复数的整数幂。
注意,后面的参数可以是复数,即求出复数的倒数
=IMEXP(A2) 求出复数的指数(e 为底)
=IMLN(A2) 求出复数的自然对数。
类似地,可以用对数函数公式
=IMLOG10(A2)
=IMLOG2(A2)
分别求出 10 为底的对数,2 为底的对数。
=IMSQRT(A2) 求出复数的平方根。
其实,也可以用 Excel公式 = IMPOWER(A2,0.5) 得到同样的计算结果,换句话说 Excel 的 IMPOWER 公式,也支持计算复数的小数形式的幂。
本案例完整内容移步:电力、电气、电工知识汇总之四、继电保护之5)序分量计算。
四、复数三角函数运算
=IMSIN(A2) 求出复数的正弦值。
=IMCOS(A2) 求出复数的余弦值。
如果需要正切(正弦函数除以余弦函数)、余切(正切函数的倒数)
另外,像双曲函数、正割、余割函数也可以求解。比较遗憾的是 Excel 不支持复数求反三角函数值(比如 arctan)。
五、C语言复数运算
1、代码
#include "stdio.h"
#include "complex.h"
//加入此头文件需要 C99 模式支持,详见“Keil编译软件的使用汇总之十六、支持C99模式”
int main(void)
{
complex double a = 1.0 + 2.0*I, b = 3.0 + 4.0*I; //a = 1 + 2i, b = 3 + 4i
complex double s_1 = a + b; //加
complex double s_2 = a - b; //减
complex double s_3 = a * b; //乘
complex double s_4 = a / b; //除
printf("s_1的实部为%f, 虚部为%f, 模为%f\n", creal(s_1), cimag(s_1), cabs(s_1));
printf("s_2的实部为%f, 虚部为%f, 模为%f\n", creal(s_2), cimag(s_2), cabs(s_2));
printf("s_3的实部为%f, 虚部为%f, 模为%f\n", creal(s_3), cimag(s_3), cabs(s_3));
printf("s_4的实部为%f, 虚部为%f, 模为%f\n", creal(s_4), cimag(s_4), cabs(s_4));
}
2、complex.h包含的内容
常用函数除了基本的加减乘除之外,complex.h 中还包含如下函数。
1 | 复数的实部 | creal() |
2 | 复数的虚部 | cimag() |
3 | 模 | cabs() |
4 | 相位 | carg() |
5 | 指数 | cexp() |
6 | 自然对数 | clog() |
7 | 幂 | cpow() |
8 | 平方根 | csqrt() |
9 | 复共轭 | cong() |
10 | 正弦 | csin() |
11 | 余弦 | ccos() |
12 | 正切 | ctan() |
13 | 反正弦 | casin() |
14 | 反余弦 | cacos() |
15 | 反正切 | catan() |
16 | 双曲正弦 | csinh() |
17 | 双曲余弦 | ccosh() |
18 | 双曲正切 | ctanh() |
19 | 反双曲正弦 | casinh() |
20 | 反双曲余弦 | cacosh() |
21 | 反双曲正切 | catanh() |
说明:以上函数默认为双精度版本,在函数名后加 f(即 float)表示单精度版本,加 l(即 long)表示长双精度版本。
风之积也不厚,则其负大翼也无力。觉得不错,动动发财的小手点个赞哦!