MATLAB求數值積分方法(一)

2021-12-25 雲龍派

程序如下:

clc;clear all;close all;format compacta= 0;b = 3;n =60;x = linspace(a,b,n);%生成[a,b]等間距的n個值y = x.^2;plot(x,y,'r-')hold onfor i = 1:length(x)-1    plot([x(i) x(i) x(i+1)],[0 y(i) y(i)],'b-')    hold onendtitle('y=x^2,n=60')

程序如下:

clc;clear all;close all;%例: 試用梯形法求出x∈(0,π/2)區間內,函數sin x的定積分值。x = linspace(0,1/2*pi,10000);y= sin(x);S= sum((2*y(1:end-1)+diff(y)).*(diff(x)))/2

蒙特卡洛積分

Monte Carlo法是通過大量實驗來求取隨機變量近似值的一種常用的方法,在現代科學研究中經常用來求解一些建模困難的問題。

考慮圖中給出的示意圖。假設正方形的邊長為1,可見,四分之一圓的面積是π/4,其面積和正方形面積的比是π/4:1 ,換句話說,如果產生一個均勻分布的隨機數,它落到四分之一圓的概率為π/4 。生成N組隨機數x和y,使其均為區間[0,1]內均勻分布的隨機數。這樣記滿足x^2+y^2<1 概率為Ni,則對大量的實驗數據,有Ni/N≈π/4,.如果N足夠大,則可以通過下面的式子近似求出π的值。

clc;clear all;close all;n=1e6;x= rand(n,1);y = rand(n,1);I = (x.^2+y.^2)<1;p = sum(I)/n*4

clc;clear all;close all;N=1e3;x= rand(N,1);y = rand(N,1);i = (x.^2+y.^2)<1;j = (x.^2+y.^2)>=1;p = sum(i)/N*4r =1;theta=0:0.01:pi/2;x1 = r*cos(theta);y1 =r*sin(theta);plot(x1,y1,'r-','linewidth',2)axis equalaxis([0 1 0 1])box ongrid onhold onscatter(x(i),y(i),'b')scatter(x(j),y(j),'g')

MATLAB相關內容往期回顧

MATLAB中繪製三維圖形

MATLAB的輸入輸出input函數

matlab詳細介紹畫柱形圖

matlab中矩陣的入門知識

matlab中legend函數的用法

matlab繪圖--線性規劃圖解法示意

Matlab 進度條的製作

Matlab對fig文件導出數據

Matlab中plot函數全功能解析

Matlab的fmincon函數求解非線性規劃

MATLAB線性規劃函數求解線性規劃

MATLAB求解混合整數線性規劃

電子書推薦(一)《MATLAB在數學建模中的應用》

matlab GUI實現導入txt文件(含字符和數據的文本)

matlab 畫圖——誤差條圖errorbar函數(含視頻講解)

matlab多項式(定義、四則計算、求根)

Matlab中繪製不同坐標的圖形

Matlab 多項式擬合函數關係

層次分析法(AHP)在MATLAB中的應用

MATLAB的lsqcurvefit函數擬合非線性式子中的未知參數

MATLAB的fgoalattain()函數求解多目標規劃

基於MATLAB的灰色預測模型GM(1,1)計算的GUI界面

電子書推薦(二)《Matlab 從入門到精通 》

MATLAB曲線擬合工具箱

MATLAB的主成分分析的GUI界面計算

MATLAB《自動控制原理》相關編程

MATLAB的switch選擇語句和input輸入語句

MATLAB的switch選擇語句和input輸入語句視頻

MATLAB實例講解—求二元函數的極值

MATLAB實例講解—求二元函數的極值視頻

MATLAB的ode45函數實例求常微分方程數值解

MATLAB求解微分方程組—以一種傳染病的動力學模型求解為例

Matlab編程並繪製函數或者信號包絡線

MATLAB中regress函數用法(多元線性回歸)

MATLAB實例編程之一個成績分析和處理的程序實例講解

matlab中的歸一化處理的三種方法

電子書推薦(三)《運籌學基礎及其MATLAB應用》

MATLAB非線性擬合函數nlinfit函數

Matlab作圖後的調整—線條、坐標、標題、圖例

 MATLAB用GUI計算十進位轉換為二、八、十六進位

MATLAB的solve函數求非線性解方程或方程組

視頻講解MATLAB的solve函數求非線性解方程或方程組

Matlab非線性方程求解器fsolve總結

視頻講解Matlab非線性方程求解器fsolve總結

MATLAB的fzero函數求解單變量非線性方程求解

視頻講解MATLAB的fzero函數求解單變量非線性方程求解

MATLAB GUI實現簡單的計算器

視頻講解MATLAB GUI實現簡單的計算器

MATLAB的fittype函數的非線性擬合未知參數

視頻講解MATLAB的fittype函數的非線性擬合未知參數

總結MATLAB的線性擬合和非線性擬合函數參數

視頻講解總結MATLAB的線性擬合和非線性擬合函數參數

MATLAB中的數據插值函數

視頻講解MATLAB中的數據插值函數

MATLAB的拉格朗日插值

視頻講解MATLAB的拉格朗日插值

基於MATLAB的BP神經網絡預測計算GUI界面

視頻講解基於MATLAB的BP神經網絡預測計算GUI界面

MATLAB求函數的導數和偏導

視頻講解MATLAB求函數的導數和偏導

相關焦點

  • MATLAB數值微分與數值積分
    /diff(x);plot(x(1:end-1),f1);打開matlab的工作區查看f1在100處的值,即就是導函數在1處的值(如圖):值為1.005,與理論值1相差0.005,可能是由於x=0:0.01:10;這一語句導致,發現當取點越多時,結果越接近1,再看圖像,其符合1/x的函數圖像。
  • MATLAB數值求導與積分
    4.4.1  導數與梯度導數的數值計算是數值計算的基本操作之一。如牛頓法求根、微分方程求解、泰勒級數展開等,都離不開導數。1.導數在MATLAB中,diff函數被用來計算數值差分或者符號導數。本小節只介紹diff函數如何用來計算差分,符號導數的計算將在下一章介紹。diff函數的調用語法如下。
  • Matlab中幾個數值積分函數的比較和優缺點
  • MATLAB的ode45函數實例求常微分方程數值解
    ode45函數ode45,常微分方程的數值求解。MATLAB提供了求常微分方程數值解的函數。當難以求得微分方程的解析解時,可以求其數值解,Matlab中求微分方程數值解的函數有七個:ode45,ode23,ode113,ode15s,ode23s,ode23t,ode23tb 。ode是Matlab專門用於解微分方程的功能函數。
  • 數值微分與數值積分(一)
    一、數值微分(1)數值差分與差商微積分中,任意函數f(x)在x0點的導數是通過極限定義的:如果去掉極限定義中h趨向於0的極限過程,得到函數在x0點處以h(h>0)為步長的向前差分、向後差分和中心差分差分公式:
  • MATLAB中圖片保存的五種方法(一)
    中矩陣的入門知識MATLAB的輸入輸出input函數Matlab對fig文件導出數據matlab多項式(定義、四則計算、求根)MATLAB的switch選擇語句和input輸入語句視頻講解MATLAB的switch選擇語句和input輸入語句matlab中的歸一化處理的三種方法MATLAB求函數的導數和偏導
  • MATLAB 蒙特卡洛方法編程並舉例分析
    前言:在計算機出現之前,我們對數學模型的研究只能通過數學推導和實驗研究兩種方法。在此之後,我們可以通過在計算機上對實際問題的模擬、仿真求解模型,蒙特卡洛法則是計算機仿真中的一個重要方法。用蒙特卡洛方法求積分
  • MATLAB在高等數學中的應用(極限、導數、積分)
    (一)求極限matlab中求極限的命令為limit(expr, x, a)limit(expr, a)limit(expr)limit(expr, xmatlab的求導數命令為diff(expr)diff(expr, v)diff(expr, sym('v'))diff(expr, n)diff(expr, v, n)diff(expr, n, v)其中:diff(expr)表示求表達式expr,關於默認變量的1階導數;diff(expr,
  • MATLAB的dsolve函數求微分方程的符號解
    ⑧ 若該命令找不到解析解,則返回一警告信息,同時返回一空的sym 對象。這時,用戶可以用命令ode23 或ode45 求解方程組的數值解。MATLAB求解混合整數線性規劃電子書推薦(一)《MATLAB在數學建模中的應用》matlab GUI實現導入txt文件(含字符和數據的文本)matlab 畫圖——誤差條圖errorbar函數(含視頻講解)matlab多項式(定義、四則計算、求根)Matlab中繪製不同坐標的圖形Matlab 多項式擬合函數關係
  • MATLAB二分法求方程的根(實例加程序)
    詳細介紹畫柱形圖matlab中矩陣的入門知識matlab中legend函數的用法matlab繪圖--線性規劃圖解法示意Matlab 進度條的製作Matlab對fig文件導出數據Matlab中plot函數全功能解析Matlab的fmincon函數求解非線性規劃MATLAB線性規劃函數求解線性規劃
  • Matlab基礎(三)
    求不定積分微積分中求積分是第三基本操作。在matlab中求不定積分的指令為int(f,var),即對函數f的某個變量var求積分。求定積分定積分就是在不定積分基礎上加上積分上下限,有多種方法。方法一,符號表達式利用int(f,x0,x1)求函數f在x0到x1區間的積分。
  • 數值積分公式的推廣:龍格庫塔法(一)
    數值積分帶給我們的啟示現在讓我們來考慮下面的一階常微分方程初值問題為了保證解的存在唯一性,通常假定右端函數 f 足夠光滑且關於z 滿足李普希茨條件。注意,此方程組不是簡單的常微分方程組,右端函數 f 依賴於函數 z,但本身 z 未知,一般不能直接求出解析解 -- 當然不排除某些特殊方程組可以利用某些特別的技巧求得解析解,但大多數情況下是無法得到解析解的。因此,實際當中我們往往會考慮使用合適的數值方法來求近似解。設精確解 z 在一系列離散時間點 處的近似值為 ,我們稱由  計算 的數值方法為單步法。
  • 熱導方程的Matlab數值解方法
    讀者需要注意的是熱導方程的形式是和邊界條件有關係的,不同的邊界條件最終的形式差別是很大的,我們來看一下代碼:x=0:0.1*pi:pi;y=0:0.04:1;[x,t]=meshgrid(x,y);s=0;m=length(j);%matlab可計算的最大數   for i=1:m s=s+(200*(1-(-1)^i))/(i*pi)*(sin
  • 數值分析和有限元的課程筆記
    首先在第一章,講的時數值分析中需要預備的數學基礎,絕大部分時高數裡面的知識,比如說微積分的內容,像積分中值定理,羅爾定理,羅爾定理的推廣形式,介值定理等等,當然除了這些定理,還有一些概念,如函數的連續,數列的極限,函數可微等等。
  • [優化] 《MATLAB高效編程技巧與應用:25個案例分析》源程序+數據
    1.2.3 一個「囧」的動畫    1.2.4 編寫第一個matlab函數    1.2.5 用matlab運行windows系統命令    1.2.6 用matlab發送電子郵件   1.3 m語言介紹    1.3.1 數值和變量    1.3.2 matlab程序流程控制   1.4 學習matlab的方法  第2章 重新認識矢量
  • MATLAB的solve函數求非線性解方程或方程組
    %數值解(numerical solution):無法用嚴格的公式表示,是採用某種計算方法(有限元、逼近、插值)得到的。%symbolic solver無法找到精確的用符號表示的解,因此在調用numeric solver之前會事先聲明(warning)。因為等式不是多項式,所以想要找到全部可能的解需要很長時間。
  • MATLAB處理NAN數據程序(含實例)
    中矩陣的入門知識MATLAB的輸入輸出input函數Matlab對fig文件導出數據matlab多項式(定義、四則計算、求根)MATLAB的switch選擇語句和input輸入語句視頻講解MATLAB的switch選擇語句和input輸入語句matlab中的歸一化處理的三種方法MATLAB求函數的導數和偏導
  • MATLAB繪製交互式圖形
    MATLAB求解混合整數線性規劃電子書推薦(一)《MATLAB在數學建模中的應用》matlab GUI實現導入txt文件(含字符和數據的文本)matlab 畫圖——誤差條圖errorbar函數(含視頻講解)matlab多項式(定義、四則計算、求根)Matlab中繪製不同坐標的圖形Matlab 多項式擬合函數關係
  • MATLAB繪製雙y軸圖形兩種方法
    yyaxis leftclaMATLAB相關內容往期回顧MATLAB中繪製三維圖形MATLAB的輸入輸出input函數matlab詳細介紹畫柱形圖matlab中矩陣的入門知識matlab中legend函數的用法matlab繪圖-
  • MATLAB-07 數值微積分
    ()積分的數值是什麼?p=[5 0 -2 0 1];polyint(p,3)梯形法則(一階近似)作為平均高度f(ζ)的近似值而獲得的一種數值積分方法。辛普森積分公式是一種用拋物線近似函數曲線來求定積分數值解的方法。