使用C++ Matlab中的lp2lp函数教程详解
(相关资料图)
目录
1. matlab的lp2lp函数的作用2. matlab的lp2lp函数的使用方法3. C++ 实现3.1 complex.h 文件3.2 lp2lp.h 文件4. 测试结果4.1 测试文件4.2 测试3阶的情况4.3 测试9阶的情况1. matlab的lp2lp函数的作用
去归一化 H(s) 的分母
2. matlab的lp2lp函数的使用方法
[z, p, k]=buttap(3); disp("零点:"+z); disp("极点:"+p); disp("增益:"+k); [Bap,Aap]=zp2tf(z,p,k);% 由零极点和增益确定归一化Han(s)系数 disp("Bap="+Bap); disp("Aap="+Aap); [Bbs,Abs]=lp2lp(Bap,Aap,86.178823974858318);% 低通到低通 计算去归一化Ha(s),最后一个参数就是去归一化的 截止频率 disp("Bbs="+Bbs); disp("Abs="+Abs);
3. C++ 实现
3.1 complex.h 文件
#pragma once #includetypedef struct Complex { double real;// 实数 double img;// 虚数 Complex() { real = 0.0; img = 0.0; } Complex(double r, double i) { real = r; img = i; } }Complex; /*复数乘法*/ int complex_mul(Complex* input_1, Complex* input_2, Complex* output) { if (input_1 == NULL || input_2 == NULL || output == NULL) { std::cout << "complex_mul error!" << std::endl; return -1; } output->real = input_1->real * input_2->real - input_1->img * input_2->img; output->img = input_1->real * input_2->img + input_1->img * input_2->real; return 0; }
3.2 lp2lp.h 文件
实现方法很简单,将 H(s) 的分母的系数乘以 pow(wc, 这一项的指数) 即可
#pragma once #include#include #include #include "complex.h" using namespace std; vector > lp2lp(vector > tf, double wc) { vector > result; if (tf.size() <= 0 || wc <= 0.001) { return result; } result.resize(tf.size()); for (int i = 0; i < tf.size(); i++) { double coeff = pow(wc, tf[i].second); Complex* c = (Complex*)malloc(sizeof(Complex)); c->real = coeff * tf[i].first->real; c->img = coeff * tf[i].first->img; pair p(c, tf[i].second); result[i] = p; } return result; }
4. 测试结果
4.1 测试文件
#include#include #include #include #include "buttap.h" #include "zp2tf.h" #include "lp2lp.h" using namespace std; #define pi ((double)3.141592653589793) int main() { vector poles = buttap(3); vector > tf = zp2tf(poles); // 去归一化后的 H(s) 的分母 vector > ap = lp2lp(tf, 86.178823974858318); return 0; }
4.2 测试3阶的情况
4.3 测试9阶的情况
可以看出二者结果一样,大家可以自行验证
到此这篇关于使用C++ Matlab中的lp2lp函数教程详解的文章就介绍到这了,更多相关C++ Matlab中的lp2lp函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
关键词:
上一篇:末日剧场钢琴曲(末日剧场)
下一篇:最后一页
- 不愧电动爹?零下25度暴风雪中的特斯拉Model 3:电池预热45分钟后才充上电
- 12月29日基金净值:前海开源沪港深优势精选混合A最新净值1.636,涨0.62%-全球聚看点
- 杭州钱塘区下沙派出所新地址在哪里?
- 第十四届“全国文化企业30强”发布
- 【环球新视野】2022张家港市人力资源和社会保障局招聘2名人员报名时间+方式
- 河北省保定市和涉县在列 第一批全民运动健身模范市、县命名
- 焦点滚动:建信国证新能源车电池ETF净值下跌2.28% 请保持关注
- 实时:离别句子文案【离别的句子最走心文案】
- 2023济宁元旦滑雪好去处
- 贤丰控股:您提问的同样问题公司已请参阅
-
海南聚焦种业、深海、航天产业加强科技攻关—— “关键变量”成为“最大增量”(高质量发展调研行)
时值盛夏,三亚崖州湾科技城内一派火热景象。围绕南繁种业和深海科技两
-
首批高价值发明专利拟培育项目名单公布
为加快推动企业拥有关键核心技术,培育建设一批知识产权竞争力强、
-
好玩的捕鱼游戏有哪些 好玩的捕鱼游戏大全2023
好玩的捕鱼游戏有哪些,捕鱼游戏是时下备受欢迎的游戏类型,以其独特的
-
荐书 宜囤的三本“精神食粮”
世界名作背后的玄机《幕后玩家》菲利普·胡克著商务印书馆跳出艺术史类
-
中报净利润同比预增14倍 长青集团开盘一字涨停
金融界7月7日消息早盘多只中报预增股开盘大涨,长青集团、三星医疗一字
-
后续报道:清代盐商郭信的后人找到了
昨日下午,记者经过多方打听,找到了清代盐商郭信的后人、今年57岁的郭
-
广东新会推进国家食品安全示范城市创建工作
本报讯(记者谢伟通讯员萧萧罗思睿)广东省江门市新会区近日召开食品安
-
官方通报集中释疑!
针对互联网上热传的山西介休未成年人遭欺凌事件,7月6日,介休市未成年
-
大学四年如何不虚度,这份攻略送给准大学生
高考录取工作正在进行中,大批05后要上大学了,你准备好了吗?大学四年
-
育碧夏季促销开启:消费满120元送60元余额
根据游戏开发公司育碧的最新消息,其夏季促销活动于7月5日晚上9点正式
X 关闭
使用C++ Matlab中的lp2lp函数教程详解
末日剧场钢琴曲(末日剧场)
「 喜运达」完成数千万元Pre-A轮融资
算命什么的能相信吗(算命可以相信吗有科学依据吗简介介绍)
在 ROG Ally 上运行 Linux 并不能延长电池寿命
X 关闭
得知西安疫情防控“升级” 男子夜骑共享单车回咸阳淳化
中国医生将任SIU主席背后:从追随者同行者到引领者
海南省通报政法队伍教育整顿成果
云南两地发现核酸阳性人员 西安实行最严格的社会面管控
广东梅州大埔中央红色交通线沿线发现多株百岁古树