当前位置: 首页 > news >正文

Python和MATLAB谐波生成导图

🎯要点

  1. 绘制三次谐波生成透射功率谱、对数对数图表示
  2. 半导体曲面二次谐波生成,分析判断材料特性
  3. 谐波均值估计计算边际似然(贝叶斯统计)
  4. 二次谐波散射分析胶体染料分子结构
  5. 交流电谐波波形傅立叶分析
  6. 分析旋转各向异性谐波
  7. 高次谐波非线性相互作用过程分析

谐波生成导图

在这里插入图片描述

通用谐波方程

Python 脚本建模通用谐波方程。请注意,方波仅具有奇次谐波。
y ( t ) = ∑ k = 1 N + 1 k − 1 sin ⁡ ( 2 ω k f t ) y ( t )=\sum_{k=1}^{ N +1} k^{-1} \sin (2 \omega kft ) y(t)=k=1N+1k1sin(2ωkft)

import matplotlib.pylab as plt
import numpy as np
import argparseVERSION = '0.2'def factor(shape, k, i):if shape == "triangle":return (1/(k*k) * (-1)**i)else:return (1/k)if __name__ == '__main__':parser = argparse.ArgumentParser(description='plot harmonics',epilog='Version: ' + VERSION)parser.add_argument('-f','--frequency',default=4,type=int, help='specify the frequency',action='store')parser.add_argument('-n','--harmonics',default=0,type=int, help='specify the number of harmonics',action='store')parser.add_argument('-t','--type',default='odd',type=str, help='specify the type of harmonics (even, odd, or all)',action='store')parser.add_argument('-s','--shape',default='square',type=str, help='specify the shaping factor (square, triangle)',action='store')args = parser.parse_args()f = args.frequencyif args.type == 'even':odd = 0mult = 2elif args.type == 'odd':odd = 1mult = 2else:   odd = 0mult = 1t = np.linspace(0, 1, num=8000)y = np.zeros(8000)for i in range(int(args.harmonics)+1):k = i * mult + oddyh = factor(args.shape,k,i) * np.sin(2 * np.pi * k *  f * t)y = y + yhplt.plot(t, y)plt.xlabel('time')plt.ylabel('harmonics {0}'.format(args.harmonics))plt.axis('tight')plt.show()print('finished')

脚本命令行参数:

$ python3 harmonic.py -h
usage: harmonics.py [-h] [-f FREQUENCY] [-n HARMONICS] [-t TYPE] [-s SHAPE]plot harmonicsoptional arguments:-h, --help            show this help message and exit-f FREQUENCY, --frequency FREQUENCYspecify the frequency-n HARMONICS, --harmonics HARMONICSspecify the number of harmonics-t TYPE, --type TYPE  specify the type of harmonics (even, odd, or all)-s SHAPE, --shape SHAPEspecify the shaping factor (square, triangle)

生成基波(正弦波)

$ python3 harmonic.py

生成基波(正弦波)+ 2 次谐波。我们可以看到方波正在形成,并带有大的波纹。

$ python3 harmonic.py -n 2

让我们调高谐波,看看我们开始近似理想的方波。

$ python3 harmonic.py -n 1000

产生三角波。请注意,由于谐波的缩放比例不同,方程现在有所不同。

$ python3 harmonic.py -n 1000 -s triangle

👉更新:亚图跨际


http://www.mrgr.cn/news/4295.html

相关文章:

  • 推荐并整理一波vscode插件(哪些内置了,哪些好用)
  • Springcloud从零开始--Eureka(一)
  • 如何学习品牌策划和活动策划?
  • (五)Flink Sink 数据输出
  • 深入探索CSS的:local-link伪类:选择指向同一文档的链接
  • 一款功能强大的本地数据全文搜索引擎Anytxt Searcher
  • 中控室控制台怎样选择合适的款式?
  • [鹏城杯 2022]简单的php
  • [C++] C++11详解 (一)
  • Python知识点:如何使用Terraform与Python进行基础设施即代码管理
  • 的卢易表:批量处理Excel数据的自动化工具
  • [000-01-022].第06节:RabbitMQ中的交换机介绍
  • 力扣221题详解:最大正方形的多种解法与模拟面试问答
  • DrissionPage自动化获取城市数据内容
  • C++ //练习 19.5 在什么情况下你应该使用dynamic_cast替代虚函数?
  • 【通用】C++ union(联合体)
  • 嵌入式堆栈、ARM寄存器
  • React+TS+useReducer手撕一个todoList
  • MySQL中的EXPLAIN的详解
  • CentOS 上安装 Java 17