.

符号运算

科学计算包括数值计算和符号计算两种计算,数值计算是近似计算;而符号计算则是绝对精确的计算。

符号变量的生成和使用

1、符号变量、符号表达式和符号方程的生成 (1)、使用sym函数定义符号变量和符号表达式 单个符号变量 sqrt(2)

sym(sqrt(2)) %显示精确结果 a=sqrt(sym(2)) %显示精确结果 double(a)

sym(2)/sym(3) %显示精确结果 2/5+1/3

sym(2/5+1/3) %显示精确结果 sym(2)/sym(5)+sym(1)/sym(3) %显示精确结果

sym函数定义符号表达式:单个变量定义法,整体定义法 单个变量定义法 a=sym('a') b=sym('b') c=sym('c') x=sym('x')

f=a*x^2+b*x+c 整体定义法

f=sym('a*x^2+b*x+c') g=f^2+4*f-2 (2)、使用syms函数定义符号变量和符号表达式 一次可以创建任意多个符号变量syms var1 var2 var3… syms a b c x f=a*x^2+b*x+c g=f^2+4*f-2 (3)、符号方程的生成

函数:数字和变量组陈的代数式 方程:函数和等号组成的等式 用sym函数生成符号方程: equation1=sym('sin(x)+cos(x)=1') 2、符号变量的基本操作 (1)、findsym函数用于寻找符号变量 findsym(f):找出f表达式中的符号变量

findsym(s,n):找出表达式s中n个与x接近的变量 syms a alpha b x1 y findsym(alpha+a+b)

..

.

findsym(cos(alpha)*b*x1+14*y,2) findsym(y*(4+3i)+6j)

findsym(cos(alpha)*b*x1+14*y,1) findsym(cos(alpha)*b*x1+14*y,3)

%x1,y %x1 %x1,y,b

(2)、任意精确度的符号表达式

digits函数设定所用数值的精度

digits:在command window显示当前设定的数值精度 digits(D):设置数值的精度为D

D=digits:在command window中返回当前设定数值精度 digits

digits(100) D=digits

vpa函数进行可控精度运算

R=vpa(S):显示符号表达式S在当前精度D下的值,D是使用digits函数设置的数值精度 vpa(S,D):显示符号表达式S在精度D下的值,D不是当前精度值,只是临时设置的 r=vpa(pi)

r=vpa(pi,1000) q=vpa(hilb(2)) q=vpa(hilb(2),6) (3)、数值型变量与符号型变量的转换形式 数值型变量t转换成符号型变量 有理数形式:sym(t)或sym(t,’r’) 浮点数形式:sym(t,’f’) 指数形式:sym(t,’e’)

指数精度形式:sym(t,’d’) t=0.1 sym(t) sym(t,'r') sym(t,'f') sym(t,'e') sym(t,'d')

可以通过digits函数改变精度 digits(7) sym(t,'d')

也可以用于矩阵,但是矩阵只能转换为有理数形式 A=hilb(4) A=sym(A)

A=sym(A,'d') %报错 A=sym(A,'e') %报错 A=sym(A,'f') %报错

3、符号表达式(符号函数)的操作 (1)、四则运算(与通常算术式一样) syms x y a b

fun1=sin(x)+cos(y)

..

.

fun2=a+b fun1+fun2 (2)、合并同类项

collect(S,v):将符号矩阵S中所有同类项合并,并以v为符号变量输出 collect(S):使用findsym函数规定的默认变量,代替上式的v syms x y

collect(x^2*y+y*x-x^2-2*x)

f=-1/4*x*exp(-2*x)+3/16*exp(-2*x) collect(f)

(3)、因式分解

horner(P):将表达式P进行因式分解 syms x

fun1=2*x^3+2*x^2-32*x+40 horner(fun1)

fun2=x^3-6*x^2+11*x-6 horner(fun2)

(4)、简化

simplify(S):将表达式S中的每个元素都进行简化,即便使用多次simplify也不一定能得到最简形式 syms x

fun1=(1/x+7/x^2+12/x+8)^(1/3) sfy1=simplify(fun1) sfy2=simplify(sfy1)

simplify(sin(x)^2+cos(x)^2)

simple(S):使用多种代数方法对S进行简化,显其中最简单的结果 [R,how]=simple(S):R为最简结果,how为简化方法的字符串 s=2*cos(x)^2-sin(x)^2 simple(s)

[R how]=simple(s) simple(f)

(5)、subs函数用于替换求值

subs函数可以将符号表达式的符号变量替换为数值变量

subs(S) :将S中自由符号变量用调用函数中的值或是MATLAB工作区间值替换 subs(S,new):将S中自由符号变量用数值型变量或表达式new替换 subs(S,old,new):将S中符号变量old用 数值型变量或表达式new替换 syms x y

f=x^2*y+5*x*sqrt(y) subs(f) subs(f,x,3) subs(f,y,3) subs(f,3) %与subs(f,x,3)结果相同

用户没指定被替换的符号变量,对单个字母的变量,MATLAB选择在字母表中与x接近的字母,若有两个变量离x一样近,则选择字母表中靠后的那个 findsym(f,1)

..

.

syms s t g=s+t

findsym(g,1) %找到t subs(g,1) %替换为s+1 多个变量替换 syms a b

subs(cos(a)+sin(b),{a,b},{sym('alpha'),2}) 用矩阵替换 syms t x y

subs(exp(a*t),a,-magic(2))

subs(x*y,{x,y},{[0 1;-1 -1],[1 -1;-2 1]}) (6)、反函数

g=finverse(f):求函数f的反函数,返回g也是符号函数

g=finverse(f,v):设定f的自变量是v,当f包括不止一个变量时最好使用该命令 syms x y f=x^2+y finverse(f,y) finverse(f) syms x f=x^2

%由于没指明自变量,给出警告

g=finverse(f) %x^2的反函数不唯一,默认给出正值 fg=simple(compose(g,f)) %验证反函数正确性 (7)、复合函数

compose(f,g):返回f=f(x),g=g(y)的复合函数f(g(y)),x是findsym定义的f的符号变量,y是findsym定义的g的符号变量

compose(f,g,z):返回f=f(x),g=g(y)的复合函数f(g(z)),返回函数以z为自变量 compose(f,g,x,z):返回f(g(z)),x为函数f的独立变量

compose(f,g,x,y,z):返回f(g(z)),x为函数f的独立变量,y为函数g的独立变量 syms x y z t u f=1/(1+x^2) g=sin(y) h=x^t

p=exp(-y/u) compose(f,g) compose(f,g,t) compose(h,g,x,z) compose(h,g,t,z) compose(h,p,x,y,z) compose(h,p,t,u,z)

符号矩阵的生成和运算 1、符号矩阵的生成 (1)、使用sym函数直接生成符号矩阵

a1=sym('[1/3 2/3 5/7;9/11 11/13 13/17;17/19 19/23 23/29]')

..

matlab word几级标题,完整word版,MATLAB符号运算相关推荐

  1. 大学计算机模拟系统word第四套,完整word版数学建模第四套

    <完整word版数学建模第四套>由会员分享,可在线阅读,更多相关<完整word版数学建模第四套(6页珍藏版)>请在人人文库网上搜索. 1.徐州工程学院个性化教育 数学建模(大作 ...

  2. matlab用双精度编程,西安电子科技大学版matlab知识要点

    1. 下列关于MATLAB变量和运算说法不正确的是:(C) (A)每个变量代表一个矩阵,变量中的每个元素都看做复数 (B)MATLAB中所有的运算都对矩阵和复数有效 (C)MATLAB程序中使用的矩阵 ...

  3. python word 英语音标_(完整word版)英语音标大全,推荐文档

    集中双元音 (3 个 ) [i ə ] [u ə ] [ ɛə ] 辅音 (28 个 ) 清 辅 音 (11 个 ) [p] [t] [k] [f] [s] [θ] [ ʃ ] [t ʃ ] [tr] ...

  4. matlab给程序加总标题,【转】matlab标题,给figure加标题,subplot的部分用法

    这段时间正在进行matlab做论文的图片,用到了几个觉得不错的小用法. 不做详细整理了,简单自己做个小笔记.内容均来自网站 1. 用set给figure加标题,改窗口名称. h=figure(1); ...

  5. matlab整定串级pid,PID算法在Matlab串级控制中的应用

    PID算法在Matlab串级控制中的应用 自114 1112002039 陈艳 前言:这个专题是由王娟老师给我们授课,我感觉收获挺大的,尤其是matlab仿真软件的使用,为我以后的实验课打下良好的基础 ...

  6. matlab刘卫国课后答案第三版,MATLAB程序设计与应用(刘卫国编)课后实验答案

    实验一 MATLAB 运算基础 1. 先求下列表达式的值,然后显示MATLAB 工作空间的使用情况并保存全部变量. (1) 012 2sin851z e =+ (2) 221 ln(1)2z x x ...

  7. matlab判定hurwitz_[转载]劳斯(Routh-Hurwitz)稳定判据-符号运算版

    来自Matlab Central,很强大,本文进行了一些改动. function [RA,s_out] = routh(poli,epsilon); %  ROUTH Routh array. %   ...

  8. 矩阵实验室matlab下载,matlab matlab(矩阵实验室) v6.5.0迷你版

    matlab matlab(矩阵实验室) v6.5.0迷你版 matlab(矩阵实验室)使用方法很简单,解压后运行:binmatlab.bat即可运行.matlab(矩阵实验室)目录列表.MINI版m ...

  9. matlab符号函数绘图法_《MATLAB符号运算及其应用》(黄忠霖著).pdf

    <MATLAB符号运算及其应用>(黄忠霖著).pdf [General Information] 书名=MATLAB符号运算及其应用 作者=黄忠霖,黄京编著 页数=425 出版社=北京市: ...

最新文章

  1. MessageBox不能应用皮肤的解决办法
  2. c语言键盘连续双击程序,编了个C语言的键盘程序有点问题,请指点下!
  3. 通过OWA修改密码,提示输入的密码不符合最低安全要求
  4. 图说世界编程语言排行
  5. MFC TabCtrl用法
  6. java按比例之原图生成缩略图
  7. 理正深基坑弹性计算方法_理正深基坑软件应用全参数说明书
  8. 干货!面向多源数据融合的睡眠时序分类方法研究
  9. oracle的报表工具有哪些,报表开发常用的六款小工具
  10. matlab存取面shp
  11. 记:EVE模拟器拓扑配置的保存及导入
  12. win10 ST-GCN复现
  13. 计算机学院刘岗,刘岗-中国科学院大学-UCAS
  14. 如何利用番茄工作法提高学习和工作的效率
  15. 关于在Word2013中安装MathType的问题
  16. 服务端与客户端加密解密思路
  17. 形式逻辑(02)逻辑概述 负判断
  18. 一加手机怎么root权限_一加手机OnePlus卡刷获取root权限图文教程
  19. 博图region用法_西门子1200PLC的OB块用法讲解
  20. Doxygen 配置详解

热门文章

  1. DNS被劫持,导致Unable to connect'to the remote server,修改Hosts解决
  2. IEEE2022/遥感:Stagewise UnsupervisedDomain Adaptation WithAdversarial Self-Training for Road Segmentat
  3. QT学习之QMainWindow详解
  4. RPA优势解密丨到底能做什么?为何深受追捧?
  5. BP神经网络实现风功率预测
  6. docker中 gitlab 安装、配置和初始化
  7. unity如何支持stl文件的导入
  8. 大学生必学练习题 - Java 语言经典50例
  9. C语言静态链接库的制作和使用
  10. 龙王传说古月_龙王传说:小舞对古月娜不满,婆媳关系紧张,这四点让她难以接受...