第六章 MATLAB IN ENGINEERING

Polynomial Differentiation多项式微分

 %幂级数
 f(x) = x^3-2x-5;
 p = [1 0 -2 -5]  %自变量前系数
 ​
 polyval()
 eg:
 a = [9, -5, 3, 7];
 x = -2:0.01:5;
 f = polyval(a,x);  %表示a系数下的X处的微商数值
 plot(x,f,'LineWidth',2);
 xlabel('x');
 ylabel('f(x)');
 set(gca,'FontSize',14)
 ​
 polyder()  %给的是微商式子
 eg:
 p = [5 0 -2 0 1];
 polyder(p)    %微分符号
 eg:
 p = [5 0 -2 0 1];
 polyder(p);
 polyval(polyder(p),7)

Polynomial Integration多项式积分

 polyint()  %不定积分
 eg:
 p = [5 0 -2 0 1];
 polyint(p,3);    %积分后的常数项是3
 polyval(polyint(p,3),7)    %不定积分7处的积分值

Numerical Differentiation

 diff()    %计算前后差异  
 eg1:
 x = [1 2 5 2 1];
 diff(x)   % ans = [1 3 -3 -1];
 eg2(两点斜率(1,5),(2,7)):
 x = [1 2];
 y = [5 7];
 slope = diff(y)./diff(x)
 ​
 eg3:
 x0 = pi/2;
 h = 0.1;
 x = [x0 x0+h];
 y = [sin(x0) sin(x0+h)];
 m = diff(y)./diff(x)
 eg4:
 h = 0.5;
 x = 0:h:2*pi;
 y = sin(x);
 m = diff(y)./diff(x);
 //h的大小对于导函数的影响:
 g = colormap(lines);
 hold on;
 for i = 1:4
  x = 0:power(10,-i):pi;
  y = sin(x);
  m = diff(y)./diff(x);
  plot(x(1:end-1),m,'Color',g(i,:));
 end
 hold off;
 set(gca,'XLim',[0,pi/2]);
 set(gca,'YLim',[0,1.2]);
 set(gca,'FontSize',18);
 set(gca,'FontName','symbol');
 set(gca,'XTick',0:pi/4:pi/2);
 set(gca,'XTickLabel',{'0','p/4','p/2'});
 h = legend('h = 0.1','h = 0.01','h = 0.001','h = 0.0001');
 set(h,'FontName','Times New Roman');
 box on;

Second and Third Derivatives

 x = -2:0.005:2;
 y = x.^3;
 m = diff(y)./diff(x);
 m2 = diff(m)./diff(x(1:end-1));
 ​
 plot(x,y,x(1:end-1),m,x(1:end-2),m2);
 xlabel('x','FontSize',18);
 ylabel('y','FontSize',18);
 legend('f(x) = x^3','f''(x)','f''''(x)');
 set(gca, 'FontSize',18);

Numerical Integration

Midpoint Rule用矩形去逼近

 h = 0.05;
 x = 0:h:2;
 midpoint = (x(1:end-1)+x(2:end))./2;
 y = 4*midpoint.^3;   %f(x) = 4*x^3;
 s = sum(h*y)

Trapezoid Rule用梯形去逼近

 trapz();%梯形数值积分
 eg:
 h = 0.05;
 x = 0:h:2;
 y = 4*x.^3;
 s = h*trapz(y);  
 OR:
 h = 0.05;
 x = 0:h:2;
 y = 4*x.^3;
 trapezoid = (y(1:end-1)+y(2:end))/2;
 s = h*sum(trapezoid);

Simpson's Rule

 h = 0.05;
 x = 0:h:2;
 y = 4*x.^3;
 s = h/3*(y(1)+2*sum(y(3:2:end-2))+4*sum(y(2:2:end))+y(end))

Funtion Handles(@)

function [y] = xy_plot(input,x)   %丢入类似@sin ; 一个函数不能作为input
% xy_plot receives the handle of a function and plots that
%function of x
y = input(x);
plot(x,y,'r--');
xlabel('x');
ylabel('function(x)');
end integral();
eg:
y = @(x) 1/(x.^3-2*x-5);
integral(y,0,2) %0,2是上下限

Double and Triple Integrals

eg1:
f = @(x,y) y.*sin(x)+x.*cos(y);
integral2(f,pi,2*pi,0,pi) %二重积分,顺序跟书写的一样 eg2:
f = @(x,y,z) y.*sin(x)+z.*cos(y);
integral3(f,0,pi,0,1,-1,1);

Matlab %陆的更多相关文章

  1. Matlab 绘制三维立体图(以地质异常体为例)

    前言:在地球物理勘探,流体空间分布等多种场景中,定位空间点P(x,y,x)的物理属性值Q,并绘制三维空间分布图,对我们洞察空间场景有十分重要的意义. 1. 三维立体图的基本要件: 全空间网格化 网格节 ...

  2. Matlab slice方法和包络法绘制三维立体图

    前言:在地球物理勘探,流体空间分布等多种场景中,定位空间点P(x,y,x)的物理属性值Q,并绘制三维空间分布图,对我们洞察空间场景有十分重要的意义. 1. 三维立体图的基本要件: 全空间网格化 网格节 ...

  3. Matlab 高斯_拉普拉斯滤波器处理医学图像

    前言:本程序是我去年实现论文算法时所做.主要功能为标记切割肝脏区域.时间有点久,很多细节已经模糊加上代码做了很多注释,因此在博客中不再详述. NOTE: 程序分几大段功能模块,仔细阅读,对解决医学图像 ...

  4. MATLAB中绘制质点轨迹动图并保存成GIF

    工作需要在MATLAB中绘制质点轨迹并保存成GIF以便展示. 绘制质点轨迹动图可用comet和comet3命令,使用例子如下: t = 0:.01:2*pi;x = cos(2*t).*(cos(t) ...

  5. linux下配置matlab运行环境(MCR)

    在安装好的matlab下有MCR(MatlabCompilerRuntime)在matlab2011/toolbox/compiler/deploy/glnxa64下找到MCRInstaller.zi ...

  6. EMD分析 Matlab 精华总结 附开源工具箱(全)

    前言: 本贴写于2016年12与15日,UK.最近在学习EMD(Empirical Mode Decomposition)和HHT(Hilbert-Huang Transform)多分辨信号处理,FQ ...

  7. Atitit MATLAB 图像处理 经典书籍attilax总结

    Atitit MATLAB 图像处理 经典书籍attilax总结 1.1. MATLAB数字图像处理1 1.2. <MATLAB实用教程(第二版)>((美)穆尔 著)[简介_书评_在线阅读 ...

  8. Atitit MATLAB 图像处理attilax总结

    Atitit MATLAB 图像处理attilax总结 1.1. 下载 Matlab7.0官方下载_Matlab2012 v7.0 官方简体中文版-办公软件-系统大全.html1 1.2. Matla ...

  9. Atitit java c# php c++ js跨语言调用matlab实现边缘检测等功能attilax总结

    Atitit java c# php c++ js跨语言调用matlab实现边缘检测等功能attilax总结 1.1. 边缘检测的基本方法Canny最常用了1 1.2. 编写matlab边缘检测代码, ...

  10. 使用MATLAB对图像处理的几种方法(下)

     试验报告 一.试验原理: 图像点处理是图像处理系列的基础,主要用于让我们熟悉Matlab图像处理的编程环境.灰度线性变换和灰度拉伸是对像素灰度值的变换操作,直方图是对像素灰度值的统计,直方图均衡是对 ...

随机推荐

  1. 关于sql json数据的处理

    $resultProductPrice = DB::update("update lev_product_price set detail=json_set(detail,'$.颜色','红 ...

  2. python中的platform模块

    platform模块给我们提供了很多方法去获取操作系统的信息: import platform print(platform.platform())# 获取操作系统名称和版本号:macOS-10.14 ...

  3. unity task

    https://blog.csdn.net/weixin_43405845/article/details/105028291

  4. unity animation instance

    animation instance piti6/UnityGpuInstancedAnimation https://github.com/piti6/UnityGpuInstancedAnimat ...

  5. Python学习笔记文件读写之遍历目录树

    随笔记录方便自己和同路人查阅. #------------------------------------------------我是可耻的分割线--------------------------- ...

  6. java-正确打日志

    使用 slf4j 使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一. 实现方式统一使用: Logback 框架 打日志的正确方式 什么时候应该打日志 当你遇到问题的时候,只能通过 debu ...

  7. C++ 读取文本, 读取( 单字符/ 一行/ 全部 )

    C++ 读取文本 介绍三种读取方式: 逐字符读取(注意不是字节) 读取一行 读取全部 示例代码: #include <iostream> #include <string> # ...

  8. python ElementTree 节点标签修改

    在网上能找到很多关于xml库ElementTree的增删改查用法,这里我就不重复写那么多了. 主要记录一个,不是很容易查到的用法,比如一个标签,<name></name>,我需 ...

  9. Windows MFC HTTP 函数流程

    Windows MFC HTTP 函数流程 1 //建立连接 2 pInternetSession = new CInternetSession(AfxGetAppName()); 3 4 5 6 / ...

  10. 20191317 Exp2-后门原理与实践

    20191317 Exp2-后门原理与实践 实验基础 本次实验需要我们掌握后门的基础知识,学习使用nc实现Windows,Linux之间的后门连接,学习使用Metaspolit的msfvenom指令生 ...