问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

Excel与C语言复数运算

创作时间:
作者:
@小白创作中心

Excel与C语言复数运算

引用
CSDN
1.
https://blog.csdn.net/liht_1634/article/details/124360778

本内容包括电路复数应用场景,基本性质运算、二元运算、三角函数运算,C语言复数运算示例等。紫色文字是超链接,点击自动跳转至相关博文。持续更新,原创不易。

目录:

一、简介
1、阻抗匹配的计算
2、交流信号经过电容/电感计算
二、复数基本性质运算
三、复数二元运算
四、复数三角函数运算
五、C语言复数运算
1、代码
2、complex.h包含的内容

一、简介

在电路设计中我们会遇到一些诸如阻抗匹配计算,交流信号经过电容、电感的计算等情况,可以借助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中还包含如下函数。

复数的实部 creal()

复数的虚部 cimag()

模 cabs()

相位 carg()

指数 cexp()

自然对数 clog()

幂 cpow()

平方根 csqrt()

复共轭 cong()

正弦 csin()

余弦 ccos()

正切 ctan()

反正弦 casin()

反余弦 cacos()

反正切 catan()

双曲正弦 csinh()

双曲余弦 ccosh()

双曲正切 ctanh()

反双曲正弦 casinh()

反双曲余弦 cacosh()

反双曲正切 catanh()

说明:以上函数默认为双精度版本,在函数名后加f(即float)表示单精度版本,加l(即long)表示长双精度版本。

风之积也不厚,则其负大翼也无力。觉得不错,动动发财的小手点个赞哦!

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号