matlab empty sym,matlab解方程时返回[ empty sym ]
匿名用户
1级
2017-03-13 回答
你好
你的方程这么复杂,matlab在符号计算没有mathmatic等强(可能这个软件业解不出来),它求出来显示解(机器不是万能的),像这么复杂的方程,给你点建议:
手工加电脑简化方程,再试试。
用数值算法(fsolve)计算。不能求出omega与T的关系。(推荐)
假设你用数值算法,可以把这些方程保存为一个函数,给omega和T一个任意初始值,求最后的方程eq=gp-gpt为0的解。
例如:将下面的代码保存为testt.m函数。
function eq=testt(OT)
omega=OT(1);
T=OT(2);
f=3.125;
w=8.2;
% syms omega;
gp=(((100*(omega-5).*f)./(((omega-5).^2-w^2).^2+(2*(omega-5).*f).^2))+0.55)/1.6;
a=(w^2-2*f^2)/2;
b=sqrt(w^4+4*f^4-4*f^2)/2;
m=sqrt(a+b);
n=sqrt(b-a);
c=125*f/(16*m*n*(n^2+m^2));
% syms T;
d1=-n*(m^2+n^2)*exp(-n*T)*cos((5-m+omega)*T);
d2=(m^2+n^2)*(5-m+omega)*exp(-n*T)*sin((5-m+omega)*T);
d3=n*(m^2+n^2);
dm=2*(n^2+(5-m+omega)^2);
d=(d1+d2+d3)/dm;
e1=-n*(m^2+n^2)*exp(-n*T)*cos((5-m-omega)*T);
e2=(m^2+n^2)*(5-m-omega)*exp(-n*T)*sin((5-m-omega)*T);
e3=n*(m^2+n^2);
em=2*(n^2+(5-m-omega)^2);
e=(e1+e2+e3)/em;
g1=(n*(m^2-n^2)-2*m*n*(5+m+omega))*exp(-n*T)*cos((5+m+omega)*T);
g2=(-(m^2-n^2)*(5+m+omega)-2*m*n^2)*exp(-n*T)*sin((5+m+omega)*T);
g3=-n*(m^2-n^2)+2*m*n*(5+m+omega);
gm=2*(n^2+(5+m+omega)^2);
g=(g1+g2+g3)/gm;
k1=(n*(m^2-n^2)-2*m*n*(5+m-omega))*exp(-n*T)*cos((5+m-omega)*T);
k2=(-(m^2-n^2)*(5+m-omega)-2*m*n^2)*exp(-n*T)*sin((5+m-omega)*T);
k3=-n*(m^2-n^2)+2*m*n*(5+m-omega);
km=2*(n^2+(5+m-omega)^2);
k=(k1+k2+k3)/km;
gpt=d+e-g-k;
eq=gp-gpt;
然后在命令窗口中输入下面的代码:
clear,clc
x0=[2 2];
[xj,fval]=fsolve(@testt,x0)
求解结果如下:
xj = -56.2901 42.6107;
fval = -2.5612e-010;
fval 已经接近于0,说明求解已经收敛,
这只是另外一种变通的方法,有时matlab无法求解符号问题,只能采用这种方法。这种方法对更加复杂的模型,也同样适应。
希望对你有帮助!
matlab empty sym,matlab解方程时返回[ empty sym ]相关推荐
- matlab数据处理之批量解方程
背景:处理excel表格中的各年沉速数据,在matlab当中对其进行数据变换--解方程,得到分界粒径数据. 批量解复杂方程 一.导入数据 二.写解方程函数 三.批量求解,引用函数 **就按照一二三做一 ...
- matlab索引必须为正整数或逻辑值,MATLAB编程求解湍流k-e方程时,总是遇见‘下标索引必须为正整数类型或逻辑类型’错误...
%%%%%%%%%%%%%%%参数设置%%%%%%%%%%%%% tic clear clc %1.模型参数 LD=1;H=0.04; mu=0.01; %动力粘度 rou=1100; ...
- matlab 条件方程组的解,solve 时解方程组的限制条件问题
本帖最后由 oldlybaby 于 2017-5-28 14:43 编辑 简单来说,需要求解a1,a2,a3,但只有两个关于a1,a2,a3的方程f1,f2,附加条件是a1+a2+a3最小,请问怎么求 ...
- Mathematica解方程
示例方程:-(6/13) x^2 + x + 4=0 输入格式:Reduce[-(6/13) x^2 + x + 4 == 0, x] 输出结果: 但是我们需要注意一点,如果方程中的变量之前已经被赋值 ...
- MATLAB解隐函数方程时符号表达式转化为数值的方法-用vpa函数
今天在解决一个小问题时,遇到解隐函数方程,中间涉及一个解的传递问题,才好好研究了一下 syms这个语句的一些语法规则,最终用vpa这个函数解决了符号表达式到double数值的转化. syms是符号函数 ...
- matlab解方程、方程组
1.解方程.方程组 x^2-4=12,求x: syms x; f=x^2-4-12; solve(f) 最近有多人问如何用matlab解方程组的问题,其实在matlab中解方程组还是很方便的,例如,对 ...
- matlab 解函数方程,MATLAB程序设计教程(7)—MATLAB解方程与函数极值
MATLAB程序设计教程(7)--MATLAB解方程与函数极值 第7章MATLAB解方程与函数极值 7.1 线性方程组求解 7.2 非线性方程数值求解 7.3 常微分方程初值问题的数值解法 7. ...
- matlab解方程教程,MATLAB程序设计教程(7)—MATLAB解方程与函数极值
第7章 MATLAB解方程与函数极值 7.1 线性方程组求解 7.2 非线性方程数值求解 7.3 常微分方程初值问题的数值解法 7.4 函数极值 7.1 线性方程组求解 7.1.1 直接解法 1.利用 ...
- matlab求函数极值教程,MATLAB程序设计教程(7)—MATLAB解方程与函数极值
MATLAB程序设计教程(7)--MATLAB解方程与函数极值 第7章MATLAB解方程与函数极值 7.1 线性方程组求解 7.2 非线性方程数值求解 7.3 常微分方程初值问题的数值解法 7. ...
最新文章
- SpringMVC中IOC容器启动
- QT学习笔记(1)----- QT简介
- [转载] Java面试题全集(上)
- PostgreSQL 视图、子查询
- linux 关闭自动升级,开启关闭Centos的自动更新(转)
- 31岁了学python还是arm_学嵌入式的,学完了51单片机,下一步呢,是学stm32还是学arm呢.有些迷茫还有Linux等。怎么一步步学好...
- 阶段5 3.微服务项目【学成在线】_day01 搭建环境 CMS服务端开发_08-CMS需求分析-CMS页面管理需求...
- Python黑帽子--黑客与渗透测试编程之道
- 如何将ThinkPad T490拆机加内存条
- 算法分析与设计实验报告二——贪心算法实验
- html5对浏览器支持的情况及开发工具
- 指纹匹配算法matlab,指纹识别算法matlab程序
- Python matplotlib画图表
- 批量生成pdf书签目录之目录自动格式化(Python实现)
- matlab表格数据输入方式,matlab输入excel表格数据-matlab怎么把数据写入excel
- [毕业设计]基于springboot线上教学平台的管理系统
- 机器学习经典算法总结之线性回归
- 十个著名的思想实验-黑客帝国思想原来是(Brain in a Vat)
- Python中使用Type hinting 和 annotations
- (计算机视觉笔记)1、初入计算机视觉
热门文章
- 【Android】相对布局(RelativeLayout)最全解析
- php填补空缺变量,php怎样去除空缺字符_后端开发
- Android Handler机制 - handleMessage究竟在哪个线程执行
- I2C中的时钟同步与仲裁
- ACM 深搜 SeedingTempter of the Bone
- Molly 正式加入微软 IE team
- openEuler 22.09环境二进制安装Kubernetes(k8s) v1.26
- j2objc_Google工具J2ObjC将Java转换为Objective-C
- 强化学习(一)Fundamentals of Reinforcement Learning
- 奥兹医生秀下载_奥兹肘的隐性成本