MATLAB用solve求解普通二元高次方程

MATLAB用solve求解普通二元高次方程

先说问题:
在这里插入图片描述在这里插入图片描述
有这两个式子,其中除了u和λ,其他都是已知参数。所以,不必恐慌,看着很复杂,但是这个条件一加,其实就是很简单的二元高次方程组,把2式带到1式,然后用MATLAB自带的solve函数一解就出来了。

我的MATLAB代码如下:

function[u,lamda]=fun()
clear
syms u lamda_1;
syms rho_a rho_0 xi_1 xi_2 xi_3 xi_4 xi_5 xi_6 l_1 l_2 l_3 l_4 l_5 d k_1 k_2 u_H1 u_H2 cos_beta g h
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%输入基本参数
rho_a=0.7; rho_0=0.9;
xi_1=0.5; xi_2=0.5; xi_3=0.5; xi_4=0.5; xi_5=0.5; xi_6=0.5;
l_1=1; l_2=1; l_3=1; l_4=1; l_5=1;
d=0.21;
k_1=0.7; k_2=-0.8  ; 
u_H1=1.2; u_H2=1.0; 
cos_beta=1;
g=10;
h=1;
k=0.3;
v=3e-5;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%方程1化简系数
a_1=rho_a*(1+xi_1+xi_2+xi_3+xi_4+xi_5+xi_6);
b_1=(l_1+l_2+l_3+l_4+l_5)/d;
c_1=rho_0*(k_1*(u_H1*cos_beta)*(u_H1*cos_beta)-k_2*u_H2*u_H2)+2*(rho_0-rho_a)*g*h;
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%解方程
%%最终把方程化成(a_1+b_1*lamda)*u^2=c_1的形式
eq1=(a_1+b_1*0.11*(k/d+68*v/(u*d))^(0.25))*u^2-c_1;
u=double(solve(eq1,u))
%%再将u带回求解lamda
eq2=lamda_1-(0.11*(k/d+68*v/(u*d)).^(0.25));
lamda=double(solve(eq2,lamda_1))

一个小技巧就是用a,b,c 把比较复杂的一坨参数看做一个整体,反正都是已知量,不影响。
然后把2式λ带到1式中,那1式就是关于u的一元高次方程,用solve求解即可;
double的意思是把solve的结果表示成double类型
在这里插入图片描述

关于solve函数的扩展与该问题的补充说明

1.首先是对方程的求解

在这里插入图片描述

完美的算出了方程的解
现在对上面的代码进行一些说明

1.syms x;是必要的,这将会把x设为符号变量。
2.eq=x^2 +2x+1;eq也会变为一个符号变量用于储存方程
x^ 2+2x+1
2.s=solve(eq,x);中方程的结果由solve函数返回,存储在s里。注意(eq,x)中x是说明eq这个方程中x为变量。
这个看起来没有什么用但是对下面这个方程就有些意思了:
a*x+2=0
如果把a看为变量的话方程的解就是-2/x。
如果把x看为变量的话方程的解就是-2/a。
我们看一下下面的结果:
在这里插入图片描述
是不是很有意思?

2.接下来是对方程组的求解

例子如下(和上面差不多就是solve的参数变成了两个方程)

结果及例子如下图:
在这里插入图片描述

这代表:x,y各有一解
由于答案存储在s中,所以可以用s.x和s.y调出方程的具体解

3.三元方程组也是一样

在这里插入图片描述

4.所以,这题也可以在一个solve函数里面直接把两个方程放一起,然后solve的变量参数分别用u和λ。

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/43998.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

常微分方程的解法 (三): 龙格—库塔(Runge—Kutta)方法 、线性多步法

常微分方程的解法求解系列博文: 常微分方程的解法 (一): 常微分方程的离散化 :差商近似导数、数值积分方法、Taylor 多项式近似 常微分方程的解法 (二): 欧拉(Euler)方法 常微分方程的解法 (三): 龙格—库塔(Runge—Kutta&…

用ode45解微分方程遇到的实际问题

最近在用ode45解微分方程数值解,试图复现论文中的图。一般来说说微分方程(组)只要按照响应的条件去撰写好对应的回调函数即可,基本没什么难度,但对于本文遇到的的这个问题,可能还需要一些技巧去实现解法&am…

MATLAB-常微分方程求解

MATLAB中可以用来求解常微分方程(组)的函数有ode23、 ode23s、 ode23t、 ode23tb 、ode45、ode15s和odel13等,见下表。它们的具体调用方法类似,为了方便后面的描述, 在后面的介绍中将使用solver统一代替它们。 函数的具体调用方法如下。 [T,Y…

Mathematica解一个精巧的差分方程

Mathematica解差分方程很方便,记住一个词就可以了RSolve或者RSolveValue就可以了。以下这个例子比较特殊,存在解析解,但是软件算不出。 问题: 已知: a [ 1 ] 1 2 a[1]\sqrt{1\over2} a[1]21​ ​ a [ n 1 ] ( 1 …

解方程C++

数学上经常需要解方程。现在有函数: f(x) 2x^57x^3100,求f(x)y解。 提示:下面是goc程序画出的函数图形,可以看出函数是单调上升的。 输入格式 第一行1个实数:y,范围在[-1000000000,1000000000]。 输出格式 一个实数x…

matlab 差分方程的解(解答qq网友)

1、问题见图 2、解题代码 clear x(1)0; ybuchang0.01; y0:ybuchang:10; for n1:length(y)x(n1)x(n)ybuchang^(1/0.23)0.01*ybuchang; end plot(x(1:(end-1)),y,r) 3 结果:

计算物理中matlab处理微分方程解析解和欧拉法数值解的算法演示

我先来看一个问题的引入: 我们根据题目给出的微分方程编写matlab求解代码如下: syms cd m g v(t); eqn diff(v,t) g - cd/m*v^2; vt dsolve(eqn,cond)求解结果如下: 在得知相关初始条件后,对代码进一步设置求解: …

chatgpt赋能python:Python解代数方程,让你轻松求解复杂方程!

Python解代数方程,让你轻松求解复杂方程! 代数方程一直都是数学领域一个非常关键的研究领域,而求解这些方程也是一个非常复杂而又繁琐的任务。Python作为一门高效且强大的编程语言,可以帮助我们快速、准确地解决代数方程问题。在…

matlab解方程

工具/材料 matlab 2016a 打开matlab,首先定义变量x: syms x; matlab中solve函数的格式是solve(f(x), x),求解的是f(x) 0的解。 第一个例子,求解最常见的一元二次方程x^2-3*x10: solve(x^2-3*x1,x),解出的结果用精确的…

欧拉法与梯形法求解微分方程【含matlab源代码】

本文介绍两种入门级求解微分方程的方法 —— 梯形法与欧拉法。 将上述方程组改写成matlab语言: function F fun(t,Y)%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % % 程序作…

【计算方法】python求解常微分方程|显式欧拉、改进欧拉、龙格库塔

显式欧拉 import numpy as np from scipy.integrate import odeintdef f(x,y):return y-2*x/y def f_ode(y,x):return y-2*x/ydef Explicit_Euler(f,a,b,y0,h):x_p np.linspace(a,b,int(1/h)1)n len(x_p)value np.zeros(n)value[0] y0for i in range(1,n):value[i] value…

【Matlab】求解微分方程{上}(通解和特解)

求解微分方程 desolve函数实例1实例2实例3实例4 求解有条件的微分方程微分方程显示隐式解未找到显式解决方案时查找隐式解决方案求微分方程级数解为具有不同单边限制的函数指定初始条件(特解)练习题 desolve函数 S dsolve(eqn)求解微分方程eqn&#xf…

常微分方程数值解——差商、欧拉公式详细推导及代码实现

引言 在自然科学的许多领域特别是科学与工程计算中,经常会遇到常微分方程的求解问题。然而只有非常少数且十分简单的微分方程可以用初值等方法求得它们的解,多数只能近似方法求解。 一、预备知识 (差商的推导) 二、 一阶常微分方…

PINN解偏微分方程实例3(Allen-Cahn方程)

PINN解偏微分方程实例3之Allen-Cahn方程 1. Allen-Cahn方程2. 损失函数如下定义3. 代码4. 实验细节及复现结果参考资料 1. Allen-Cahn方程 考虑偏微分方程如下: u t − 0.0001 u x x 5 u 3 − 5 u 0 u ( 0 , x ) x 2 c o s ( π x ) u ( t , − 1 ) u ( t , 1 …

chatgpt赋能python:用Python解方程

用Python解方程 介绍 解方程是数学中最基础的技能之一,也是很多实际问题中必须掌握的技能。Python是一种功能强大的编程语言,通过它,我们可以编写程序来解方程。在本篇文章中,我们将介绍如何使用Python来解方程。 Python中的方…

PINN解偏微分方程--程函方程

目录 前言 一、什么是程函方程? 二、配置环境及库的导入 三、构建训练数据集 四、用Pytorch搭建PINN网络 1.网络搭建 2.一些基本参数变量的确定以及数据格式的转换 五、用Pytorch搭建PINN网络 六、查看loss下降情况 七、导入网络模型,输入验证数据&#…

【免费下载】2023年1月份热门报告合集(附下载链接)

省时查报告-专业、及时、全面的报告库 省时查方案-专业、及时、全面的方案库 2023年1月份省时查报告平台十大热门报告新鲜出炉,本期的热门报告关键词有:2023、趋势、投资、房地产、展望、消费、短视频、抖音、直播电商、零售等;快来看看都谁上…

【免费下载】2023年2月份热门报告合集(附下载链接)

省时查报告-专业、及时、全面的报告库 省时查方案-专业、及时、全面的方案库 2023年2月份省时查报告平台十大热门报告新鲜出炉,本期的热门报告关键词有:ChatGPT、AIGC、人工智能、情人节、营销、直播电商、跨境电商、数字化等;快来看看都谁上…

【免费下载】2023年3月份热门报告合集(附下载链接)

省时查报告-专业、及时、全面的报告库 省时查方案-专业、及时、全面的方案库 【限时免费】无需翻墙,ChatGPT4直接使用 2023年2月十大热门报告盘点 2023年3月份省时查报告平台十大热门报告新鲜出炉,本期的热门报告关键词有:ChatGPT、GPT4、小红…

初学Python到月入过万最快的兼职途径(纯干货)

不错过任何一次干赚钱干货 1.兼职薪资,附行哥工资单 2.兼职门槛,附学习知识清单 3.兼职途径,附入职考核过程 4.行哥的兼职感受 答应行友的第一篇赚钱干货推文来啦,行哥第一个在读书期间通过兼职赚到的10w收入,这也…