matlab的solve用法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了matlab的solve用法相关的知识,希望对你有一定的参考价值。
定义syms x y a1 a2
equ1=1/120 - ((2*a2)/81 + (pi*a1)/12 + pi^2*(a2/405 + 1/12) + (pi^3*a1)/120)/pi^4
equ2=-(a2/128 + (2*pi*a1)/81 + pi^2*(a2/960 + 2/81) + (pi^3*a1)/405 - pi^4/405)/pi^5
输入solve('方程1', '方程2',, 'a1', 'a1')
为什么最后a1和a2 有时候不是数值,而是仅仅只是a1 和a2
在matlab里面solve命令主要是用来求解代数方程(即多项式)的解,但是也不是说其它方程一个也不能解,不过求解非代数方程的能力相当有限,通常只能给出很特殊的实数解。(该问题给出的方程就是典型的超越方程,非代数方程)
拓展资料:
1、solve 这个命令用来求解符号方程、方程组等。
x=solve('eqn1','eqn2',...,'var1','var2',...)
例子:
解方程组:x^2+y-6=0;y^2+x-6=0
程序设计:[x,y]=solve('x^2+y-6','y^2+x-6','x','y')
2、subs可以把符号表达式里面的符号变量替换为新的变量
F=subs(f,old,new)
例子:
用符号表达式计算x^2+x-1在x=2时的值
程序设计:g=sym('x^2+x-1');
G=subs(g,'x',2)
3、从计算机的编程实现角度讲,如今的任何算法都无法准确的给出任意非代数方程的所有解,但是我们有很多成熟的算法来实现求解在某点附近的解。
4、matlab也不例外,它也只能给出任意非代数方程在某点附近的解,函数有两个:fzero和fsolve,具体用法请用help或doc命令查询吧。
5、如果还是不行,你还可以将问题转化为非线性最优化问题,求解非线性最优化问题的最优解,可以用的命令有:fminbnd, fminsearch, fmincon等等。
参考技术AMatlab中solve函数主要是用来求解线性方程组的解析解或者精确解。
对于得出的结果是符号变量,可以通过vpa()得出任意位数的数值解。
solve函数的语法定义主要有以下四种:
g = solve(eq1, eq2, …, eqn, var1, var2, …, varn)
solve(eq1, eq2, …, eqn)
solve(eq, var)
solve(eq)
拓展资料:
MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。
它将数值分析、矩阵计算、科学数据可视化以及非线性动态系统的建模和仿真等诸多强大功能集成在一个易于使用的视窗环境中,为科学研究、工程设计以及必须进行有效数值计算的众多科学领域提供了一种全面的解决方案,并在很大程度上摆脱了传统非交互式程序设计语言(如C、Fortran)的编辑模式,代表了当今国际科学计算软件的先进水平。
参考技术B 1、solve 这个命令用来求解符号方程、方程组等。x=solve('eqn1','eqn2',...,'var1','var2',...)
例子:
解方程组:x^2+y-6=0;y^2+x-6=0
程序设计:[x,y]=solve('x^2+y-6','y^2+x-6','x','y')
2、subs可以把符号表达式里面的符号变量替换为新的变量
F=subs(f,old,new)
例子:
用符号表达式计算x^2+x-1在x=2时的值
程序设计:g=sym('x^2+x-1');
G=subs(g,'x',2) 参考技术C %kkkkaaaa67720| 五级 回答正确。详细步骤是:
syms x y a1 a2
equ1=1/120 - ((2*a2)/81 + (pi*a1)/12 + pi^2*(a2/405 + 1/12) + (pi^3*a1)/120)/pi^4
equ2=-(a2/128 + (2*pi*a1)/81 + pi^2*(a2/960 + 2/81) + (pi^3*a1)/405 - pi^4/405)/pi^5
[a1,a2]=solve(equ1, equ2, 'a1', 'a2')
a1=vpa(a1)
a2=vpa(a2)
运行结果:
a1 = -50761304626263552301236414542950/140129736313387243/(2814749767106560*pi+8727491006471547)
a2 = -675/280259472626774486
a1 = -.20616910499519232147350835793861e-1
a2 = -.24084823741137452008216073646926e-14本回答被提问者和网友采纳 参考技术D 你没有把solve的结果赋给a1和a2;
[a1 a2] = solve(equ1,equ2)
这样就行了。
matlab 中mod的用法
matlab中函数MOD可以借用函数 INT 来使用并表示:MOD(n, d) = n - d*INT(n/d)。
示例:
MOD(3, 2) 等于 1;
MOD(-3, 2) 等于-1;
MOD(3, -2) 等于1;
MOD(-3, -2) 等于-1;
MOD(-3, 0) 等于-3;
MOD(3, 0) 等于3;
MOD(2,0) 等于2;
注意:以上为Oracle中MOD函数的计算方法,在Pl/sql Dev中测试过。
在EXCEL中:
MOD(-3, 2) 等于1(与后面的数符号相同)。
MOD(3, -2) 等于-1(与后面的数符号相同)。
mod(3,0)则出错#DIV/0!
扩展资料:
一、两个异号整数求余:
1.函数值符号规律(余数的符号) mod(负,正)=正 mod(正,负)=负
结论:两个整数求余时,其值的符号为除数的符号。
2.取值规律 先将两个整数看作是正数,再作除法运算
1)能整除时,其值为0 (或没有显示)
2)不能整除时,其值=除数×(整商+1)-被除数
例:mod(36,-10)=-4 即:36除以10的整数商为3,加1后为4;其与除数之积为40;再与被除数之差为(40-36=4);取除数的符号。所以值为-4。
二、两个小数求余,取值规律:
被除数-(整商×除数)之后在第一位小数位进行四舍五入。
例:mod(9,1.2)=0.6即:9除1.2其整商为7;7与除数1.2之积为8.4;被除数9与8.4之差为0.6。故结果为0.6。
例:mod(9,2.2)=0.2 即:9除2.2其整商为4;4与除数2.2这积为8.8;被除数9与8.8之差为0.2,故结果为0.2。
三、在VB中,定义为被除数和除数先四舍五入,然后再相除求余数。
参考资料来源:百度百科—MOD (MATLAB函数)
参考技术Amod函数是求余函数,用法如下:
b = mod(a,m) 返回用 m 除以 a 后的余数
其中 a 是被除数,m 是除数。
注意:正负号不同的两个数使用mod函数所得值得正负问题
1、mod(负 , 正)=正
2、mod(正 , 负)=负
例子:
一、mod(-x , y):所得到的值为正
>> mod(-1,2)
ans =
1
二、mod(x , -y):所得到的值为负
>>mod(1,-2)
ans =
-1
扩展资料:
MATLAB是一个包含大量计算算法的集合。其拥有600多个工程中要用到的数学运算函数,可以方便的实现用户所需的各种计算功能。
函数中所使用的算法都是科研和工程计算中的最新研究成果,而且经过了各种优化和容错处理。在通常情况下,可以用它来代替底层编程语言,如C和C++ 。
在计算要求相同的情况下,使用MATLAB的编程工作量会大大减少。MATLAB的这些函数集包括从最简单最基本的函数到诸如矩阵,特征向量、快速傅立叶变换的复杂函数。
函数所能解决的问题其大致包括矩阵运算和线性方程组的求解、微分方程及偏微分方程的组的求解、符号运算、傅立叶变换和数据的统计分析、工程中的优化问题、稀疏矩阵运算、复数的各种运算、三角函数和其他初等数学运算、多维数组操作以及建模动态仿真等。
参考资料:百度百科MATLAB
参考技术B 简单的说mod(a,b)就是求的是a除以b的余数。比方说mod(100,3)=1,mod(17,6)=5详细用法见下
mod
Modulus after division
Syntax
M = mod(X,Y)
Description
M = mod(X,Y) if Y ~= 0, returns X - n.*Y where n = floor(X./Y). If Y is not an integer and the quotient X./Y is within roundoff error of an integer, then n is that integer. The inputs X and Y must be real arrays of the same size, or real scalars.
The following are true by convention: mod(X,0) is X mod(X,X) is 0 mod(X,Y) for X~=Y and Y~=0 has the same sign as Y.
Remarks
rem(X,Y) for X~=Y and Y~=0 has the same sign as X.
mod(X,Y) and rem(X,Y) are equal if X and Y have the same sign, but differ by Y if X and Y have different signs.
The mod function is useful for congruence relationships: x and y are congruent (mod m) if and only if mod(x,m) == mod(y,m).
Examples
mod(13,5)
ans =
3
mod([1:5],3)
ans =
1 2 0 1 2
mod(magic(3),3)
ans =
2 1 0
0 2 1
1 0 2本回答被提问者采纳 参考技术C mod(a,m)
即a÷m=x……y
mod(a,m)的值的正负取决于m的正负,即m为正,值就为正,m为负,值就为负。
当a,m同号时,mod(a,m)的值等于y
当a,m异号时,mod(a,m)的值等于(x+1)×m-a
以上是关于matlab的solve用法的主要内容,如果未能解决你的问题,请参考以下文章