数值积分

numpy 定积分案例

允我心安 提交于 2019-12-23 02:37:28
定积分: 直观的说,对于一个给定的正实值函数,在一个实数区间上的定积分可以理解为坐标平面上由曲线、直线以及轴围城的去边梯形的面积值(一个确定的实数值) 案例 求二次函数y = 2x^2 + 3x + 4在[-5,5]区间内的积分 import numpy as np import matplotlib . pyplot as mp #画图用 import matplotlib . patches as mc #图像打补丁用 import scipy . integrate as si #numpy求定积分用 #声明曲线函数 def f ( x ) : return 2 * x ** 2 + 3 * 4 + 4 #1. 在区间[-5,5]间拆出1000个满足f(x)的点,画出该函数曲线 a , b = - 5 , 5 x1 = np . linspace ( a , b , 1001 ) y1 = f ( x1 ) mp . figure ( 'Integral' , facecolor = 'lightgray' ) mp . title ( 'Integral' , fontsize = 20 ) mp . xlabel ( 'x' , fontsize = 14 ) mp . ylabel ( 'y' , fontsize = 14 ) #设置刻度参数

小小知识点(二十)利用MATLAB计算定积分

匿名 (未验证) 提交于 2019-12-02 23:39:01
一重定积分 1. Z = trapz(X,Y,dim) 梯形数值积分,通过已知参数x,y按dim维使用梯形公式进行积分 %举例说明 1clc clear all % int ( sin ( x ), 0 , pi ) x = 0 : pi / 100 : pi ; %积分区间 y = sin ( x ); %被积函数 z = trapz ( x , y ) %计算方式一 z = pi / 100 * trapz ( y ) %计算方式二 运行结果 被积函数曲线 2、[q,fcnt]= quad(fun,a,b,tol,trace,p1,p2...) 自适应simpson公式数值积分,适用于精度要求低,积分限[a,b]必须是有限的,被积函数平滑性较差的数值积分. [q,fcnt] = quadl(fun,a,b,tol,trace,p1,p2...) 自适应龙贝格数值积分,适用于精度要求高,积分限[a,b]必须是有限的,被积函数曲线比较平滑的数值积分 %举例说明 2 % 被积函数 1 /( x ^ 3 - 2 * x - p ),其中参数 p = 5 ,积分区间为[ 0 , 2 ] clc clear all F = @( x , n ) 1. /( x .^ 3 - 2 * x - n ); %被积函数 Q1 = quad (@( x ) F ( x , 5 ), 0 , 2 )

数值计算day8-数值积分

China☆狼群 提交于 2019-11-27 02:24:43
上节课主要介绍了计算微分的几种数值方法,对一阶微分,最简单的莫过于两点前向差分、后向差分和中心差分这三种方法,其中中心差分的精度最高,这三种差分公式都可以通过推导泰勒展开式得到,而通过泰勒展开式还可以推导出三点前向差分和三点后向差分。对二阶微分,则可以推导出三点中心差分、三点前向差分、三点后向差分公式。这些数值方法均可以推广到数值偏微分的领域,且对于两个精度不高的数值算法,还可以使用Richardson外推加速算法得到一个精度更高的算法。本节课主要介绍计算积分的数值方法。 1. 矩形和中点法 区间$[a,b]$上的积分表示的是曲线$f(x) \(在\) [a,b] \(内的面积,若将\) [a,b]$分解为$n$个小区间: \(a=x_0<x_1<\cdots<x_n=b\) ,$J_i=[x_,x_i]$区间内的面积可以估算为一个黎曼和: \(A_i=f(x^*_i)\Delta x_i\) ,其中$x^*_i$表示$J_i$内的某个点, \(\Delta x_i = x_i-x_{i-1}\) ,此时积分即为黎曼求和的极限: \(I(f)=\int^b_{a}f(x)dx=\lim_{n \rightarrow \infty,\Delta x \rightarrow 0}\sum^n_{i=1}f(x^*_i)\Delta x_i\) 其中$\Delta x = \max {