开始学微分方程,用汤家凤的基础课配他的辅导讲义。然后再来看代码。我要国二!!!!
代码全打一遍是防止思维跳跃,切忌形式主义
尽量做到,学一次,用一年。
求符号解

  1. 定义符号变量
  2. 调用dsolve函数
[y1,...,yN]=dsolve(eqns,conds,Name,Value)

eqns为符号微分方程或符号微分方程组;conds为初值条件或边界条件;Name和Value为可选的成对参数。

x 2 + y + ( x − 2 y ) y ′ = 0 x^2+y+\left( x-2y \right) y'=0 x2+y+(x−2y)y′=0

clc,clear
syms y(x)%定义符号变量
dsolve(x^2+y+(x-2*y)*diff(y)==0)

结果

ans =x/2 + ((4*x^3)/3 + x^2 + C1)^(1/2)/2x/2 - ((4*x^3)/3 + x^2 + C1)^(1/2)/2

这里的dsolve只有一个参数
下面升级
y ′ ′ ′ − y ′ ′ = x , y ( 1 ) = 8 , y ′ ( 1 ) = 7 , y ′ ′ ( 2 ) = 4 y^{'''}-y''=x,y\left( 1 \right) =8,y'\left( 1 \right) =7,y''\left( 2 \right) =4 y′′′−y′′=x,y(1)=8,y′(1)=7,y′′(2)=4

clc,clear
syms y(x)%定义符号变量
dy=diff(y);d2y=diff(y,2);
y=dsolve(diff(y,3)-diff(y,2)==x,y(1)==8,dy(1)==7,d2y(2)==4)%定义一阶导数和二阶导数,用于初值和边值条件的赋值
y=simplify(y)%把计算结果化简

结果

y =
x*((exp(-1)*(19*exp(1) - 14))/2 - 1) + 7*exp(-2)*exp(x) - x^2/2 - x^3/6 + (exp(-1)*(19*exp(1) - 14))/2 - (exp(-1)*(25*exp(1) - 21))/3 - 1
y =
(17*x)/2 + 7*exp(x - 2) - 7*x*exp(-1) - x^2/2 - x^3/6 + 1/6

注意:我用的是新版的matlab2018b,化简统一用simplify()
遇到问题照着套就好。
进阶,常微分方程组
{ f ′ ′ + 3 g = sin ⁡ x g ′ + f ′ = cos ⁡ x \begin{cases} f^{''}+3g=\sin x\\ g'+f'=\cos x\\ \end{cases} {f′′+3g=sinxg′+f′=cosx​
求通解和在初编值条件为 f ′ ′ ( 2 ) = 0 , f^{''}(2)=0, f′′(2)=0, f ′ ′ ( 3 ) = 3 , g ′ ′ ( 5 ) = 1 f^{''}(3)=3,g^{''}(5)=1 f′′(3)=3,g′′(5)=1的解

clc,clear
syms f(x) g(x)%定义符号变量
df=diff(f)%定义f的一阶导数,用于初值或边值条件的赋值
[f1,g1]=dsolve(diff(f,2)+3*g==sin(x),diff(g)+df==cos(x))%求通解
f1=simplify(f1),g1=simplify(g1)%对符号解进行求解
[f2,g2]=dsolve(diff(f,2)+3*g==sin(x),diff(g)+df==cos(x),df(2)==0,f(3)==3,g(5)==1)
f2=simplify(f2),g=simplify(g2)%对符号解进行化简

学习笔记10 微分方程的matlab符号求解方法相关推荐

  1. matlab 绘制符号函数,DAY8 MATLAB学习笔记—simulink入门、MATLAB符号函数的图形绘制...

    如何打开simulink: 启动simulink: 先打开MATLAB软件界面 第一步打开simulink 第二步在command windows输入 simulink然后enter,等待 有很多模块 ...

  2. 数学建模学习笔记(19)Matlab符号运算

    % Matlab的符号运算% 1.符号变量的创建 % syms 符号变量名 % 注释:可以用一个syms语句同时创建多个变量 syms y; syms a b;% 2.符号方程的创建 % 符号方程可以 ...

  3. Linux学习笔记10

    Linux学习笔记10 Linux学习笔记10 正则表达式 源码包约定目录 Shell脚本约定目录 Shell脚本的创建与执行 date命令 同步时间 Shell脚本预设变量 与用户交互 数学计算 S ...

  4. 史上最牛最强的linux学习笔记 10.shell基础

    史上最牛最强的linux学习笔记 10.shell基础 写在最前面: 本文是基于某站的视频学习所得,第一个链接如下: https://www.bilibili.com/video/BV1mW411i7 ...

  5. thinkphp学习笔记10—看不懂的路由规则

    原文:thinkphp学习笔记10-看不懂的路由规则 路由这部分貌似在实际工作中没有怎么设计过,只是在用默认的设置,在手册里面看到部分,艰涩难懂. 1.路由定义 要使用路由功能需要支持PATH_INF ...

  6. SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传

    SpringMVC:学习笔记(10)--整合Ckeditor且实现图片上传 配置CKEDITOR 精简文件 解压之后可以看到ckeditor/lang下面有很多语言的js,如果不需要那么多种语言的,可 ...

  7. springmvc学习笔记(10)-springmvc注解开发之商品改动功能

    springmvc学习笔记(10)-springmvc注解开发之商品改动功能 springmvc学习笔记(10)-springmvc注解开发之商品改动功能 标签: springmvc springmv ...

  8. Hadoop学习笔记—10.Shuffle过程那点事儿

    Hadoop学习笔记-10.Shuffle过程那点事儿 一.回顾Reduce阶段三大步骤 在第四篇博文<初识MapReduce>中,我们认识了MapReduce的八大步骤,其中在Reduc ...

  9. HALCON 20.11:深度学习笔记(10)---分类

    HALCON 20.11:深度学习笔记(10)---分类 HALCON 20.11.0.0中,实现了深度学习方法. 本章解释了如何在训练和推理阶段使用基于深度学习的分类. 基于深度学习的分类是一种对一 ...

最新文章

  1. 《Generative Face Completion》论文笔记
  2. 心得丨对于机器学习,到底该选择哪种编程语言
  3. Linux版本_linux版本信息解析
  4. SpringMVC中使用@ResponseBody注解标注业务方法
  5. 细数MQ那些不得不说的8大好处
  6. pythonseleniumide使用_selenium第二课(脚本录制seleniumIDE的使用)
  7. 黑马博客——详细步骤(二)项目功能的实现之登录功能
  8. Akka的Actor生命周期《Eight》译
  9. 云网络开山之作,揭秘云上高速公路的十年技术成果!
  10. html——点击a标签打开新的标签页
  11. 鹏业安装算量NETDWGCOM接口创建失败处理办法
  12. oracle投毒漏洞检测,Oracle Database Server 'TNS Listener'远程数据投毒漏洞(CVE-2012-1675)的完美解决方法...
  13. android页面布局计算机,Android Studio制作简单计算器App
  14. [渝粤教育] 西南科技大学 电子测量与仪表 在线考试复习资料(1)
  15. 【OpenGL】笔记三、着色器
  16. SQLServer将日期转换成字符串格式
  17. Servlet电子商城项目(入门级一)
  18. 弘辽科技:如何修改老链接不被降权。
  19. Android手游SDK那点事(二)SDK项目结构设计(初版,废弃)
  20. idea的英文翻译插件安装(Translation)

热门文章

  1. 计算机狐狸标志的程序,Firefox 推出新 logo,这只狐狸长这样子
  2. 外贸知识通俗教程(中)
  3. css点击字变颜色_使用CSS颜色关键字
  4. java 前后台json的传递
  5. 风电场风速两参数weibull(威布尔)分布研究(Matlab代码实现)
  6. 洗衣液洗衣粉可以上飞机吗
  7. 技术小白真能通过IT培训高薪就业吗?
  8. 第二章 大教堂与市集
  9. 微软学生开发者峰会参加体验
  10. VR眼镜和AR眼镜的区别