项目难题之MFC调用MATLAB失败的一些小问题
2015-04-20 09:42
363 查看
1、报错:cannot access the imaginnary part of a pure-real array
原因是MFC调用完matlab后返回了一个全实数的矩阵,我使用mwArray的复数对象存放,然后提取其中的虚部。个人认为:无法提取全实数矩阵的虚数部分。
解决方法:在提取虚部时先判断这个矩阵对象是否为复数,代码如下:
if(ArrayoutP.IsComplex())
{
ArrayoutP.Real().GetData(pp_real,degree0+1);
ArrayoutP.Imag().GetData(pp_imag,degree0+1);
}else
{
ArrayoutP.Real().GetData(pp_real,degree0+1);
int jj;
for(jj=0;jj<degree0+1;jj++)
*(pp_imag+jj)=0;
}
// ArrayoutP是声明存放复数的 mwArray对象,pp_real和pp_imag分别是指针变量,degree0+1是矩阵长度
2、MATALB计算得到的系统零极点矩阵是列向量。
传函转零极点形式的函数:tf2zpk(num,den)的输入 矩阵den(传函分母系数阵)的第一个元素不能为零。如果是零必须删除,并且保证den和num长度一致(即num的首零也要删除),不然MATLAB默认添加一个为0的极点。如果den的首零不删除,则报错:
??? Error using ==> tf2zp at 42
Denominator must have non-zero leading coefficient.
原因是MFC调用完matlab后返回了一个全实数的矩阵,我使用mwArray的复数对象存放,然后提取其中的虚部。个人认为:无法提取全实数矩阵的虚数部分。
解决方法:在提取虚部时先判断这个矩阵对象是否为复数,代码如下:
if(ArrayoutP.IsComplex())
{
ArrayoutP.Real().GetData(pp_real,degree0+1);
ArrayoutP.Imag().GetData(pp_imag,degree0+1);
}else
{
ArrayoutP.Real().GetData(pp_real,degree0+1);
int jj;
for(jj=0;jj<degree0+1;jj++)
*(pp_imag+jj)=0;
}
// ArrayoutP是声明存放复数的 mwArray对象,pp_real和pp_imag分别是指针变量,degree0+1是矩阵长度
2、MATALB计算得到的系统零极点矩阵是列向量。
传函转零极点形式的函数:tf2zpk(num,den)的输入 矩阵den(传函分母系数阵)的第一个元素不能为零。如果是零必须删除,并且保证den和num长度一致(即num的首零也要删除),不然MATLAB默认添加一个为0的极点。如果den的首零不删除,则报错:
??? Error using ==> tf2zp at 42
Denominator must have non-zero leading coefficient.
相关文章推荐
- 关于JAVA调用Matlab遇到的问题+JDK重装后原有项目报错的解决办法
- C#调用MFC程序DLL库——MFC项目DLL生成问题、DLL引用链问题、DLL读取配置文件路径问题
- 项目难题之生成发布版调用matlab时提示--“0x7c939af2” 指令引用的“0x33ce7fcc” 内存。。。
- 关于npm run dev 启动项目时一些底层包因版本问题,启动失败问题
- 在vc++ 中调用Matlab engine的一些心得(关于libeng.lib无法找到的问题)
- asp.net 调用 生成word 后excel 权限不足的问题的一些使用经验
- 项目从unity4升级到unity5遇到的一些问题。
- 多模块项目xml配置文件调用问题和打包问题
- MFC不同dll中对话框的调用问题
- 项目遇到的一些问题 实现思路
- 在控制台环境下调用MFC DLL崩溃的问题小结
- mac java调用终端 的一些问题解决方法
- 关于一些新手MFC入门时,在vs上运行孙鑫老师代码时可能碰到的问题。
- c++调用matlab笔记(MFC)
- 完整安卓项目开发过程和一些细节问题
- 软件项目后期收官时的一些问题和想法
- 【web】PHP网页调用Matlab代码的实现以及一些需要注意的bug~
- [转]小问题: windows组件调用失败,无法加载安装安装程序:Wbemupgd.dll
- 奇葩问题:spring+mybaits项目突然出现其中一些Mapper类找不到
- 最近做网页前端项目时遇到的一些问题以及解决方案