Arduino中的复数运算
RobTillart 的 Complex 库有助于在 Arduino 中执行复数数学运算。要安装此库,您可以在库管理器中搜索“Complex”。该库可以在 GitHub 上找到。(请注意自述文件。该库不适用于 Due 和 Teensy 3.5。其中提供了解决方案)。
安装完成后,转到:文件 → 示例 → Complex 并打开 complex.ino 示例。
此示例涵盖了您可以对复数执行的所有运算。虽然示例太大,无法在此处复制,但以下是一些需要注意的要点:
复数定义为Complex var(实部, 虚部)。例如 - Complex c1(10.0, -2.0);
可以使用c1.real()访问实部。类似地,可以使用
c1.imag()访问虚部。您可以使用
.set(实部,虚部)设置现有复数的实部和虚部。例如 - c3.set(0,0)。相等运算符 == 和 != 可用于复数。要使两个复数相等,其实部和虚部都必须匹配。
否定 (c = -c) 应用于实部和虚部。因此,(10-2i) 变为 (-10+2i)。
复数的加法和减法分别对实部和虚部进行运算。因此,(10-2i) + (3+0i) 得到 (13-2i)
复数的乘法和除法遵循复数代数规则。
可以使用.modulus()获取复数的模数或幅度,使用.phase()获取相位。
可以使用幅度 (m) 和相位 (p) 使用.polar(m,p)设置复数的值
可以使用.conjugate()和.reciprocal()获得复数的共轭(负虚部)和倒数 (1/c1)。
可以使用相应的函数执行其他一些数学运算,如幂、平方、平方根、log10等。
类似地,复数的三角表达式和双曲表达式也可以使用相应的函数计算。
广告