python用quad、dblquad实现一维二维积分的实例详解


Posted in Python onNovember 20, 2019

背景:

python函数库scipy的quad、dblquad实现一维二维积分的范例。需要注意dblquad的积分顺序问题。

代码:

import numpy as np
from scipy import integrate
 
 
def half_circle(x):
  """
  原心:(1,0),半径为1
  半圆函数:(x-1)^2+y^2 = 1
  """
  return (1-(x-1)**2)**0.5
 
"""
梯形法求积分:半圆线和x轴包围的面积
"""
N = 10000
x = np.linspace(0,2,num=N)#,endpoint=True)
dh = (2-0)/N
y = half_circle(x)
"""
梯形法求积分:(上底+ 下底)*高/2
"""
S = sum((y[1:]+y[:-1])*dh/2)
 
print("=========%s=========="%"梯形法")
print("面积:%f"%S)
 
"""
直接调用intergrate的积分函数quad
"""
S2,err = integrate.quad(half_circle,0,2)
 
print("=========%s=========="%"quad")
print("面积:%f"%S2)
 
 
"""
多重定积分:注意积分顺序
"""
def half_sphere(y,x):
  """
  球心:(1,0,0)
  半径:1
  半球:(x-1)^2+y^2+z^2=1
  """
  return (1-(x-1)**2-y**2)**0.5
 
"""
积分顺序:
v = V x in [0,2] :V y in [-g(x),h(x)]
"""
V3,err = integrate.dblquad(half_sphere,0,2,lambda x:-half_circle(x),lambda x:half_circle(x))
print("========%s==========="%"dblquad")
print("体积:%f"%V3)

结果:

========
=========梯形法==========
面积:1.570638
=========quad==========
面积:1.570796
========dblquad===========
体积:2.094395

以上这篇python用quad、dblquad实现一维二维积分的实例详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
使用Python下载Bing图片(代码)
Nov 07 Python
树莓派中python获取GY-85九轴模块信息示例
Dec 05 Python
python 解析XML python模块xml.dom解析xml实例代码
Feb 07 Python
Python多进程同步简单实现代码
Apr 27 Python
python numpy 部分排序 寻找最大的前几个数的方法
Jun 27 Python
Python实现图片拼接的代码
Jul 02 Python
python正则表达式匹配IP代码实例
Dec 28 Python
Python中的sys.stdout.write实现打印刷新功能
Feb 21 Python
Python 多线程共享变量的实现示例
Apr 17 Python
Python 在 VSCode 中使用 IPython Kernel 的方法详解
Sep 05 Python
基于Python组装jmx并调用JMeter实现压力测试
Nov 03 Python
详解解决jupyter不能使用pytorch的问题
Feb 18 Python
利用python实现AR教程
Nov 20 #Python
使用python实现画AR模型时序图
Nov 20 #Python
Python笔记之工厂模式
Nov 20 #Python
Python常用模块logging——日志输出功能(示例代码)
Nov 20 #Python
将python2.7添加进64位系统的注册表方式
Nov 20 #Python
10个Python面试常问的问题(小结)
Nov 20 #Python
python使用pip安装SciPy、SymPy、matplotlib教程
Nov 20 #Python
You might like
针对初学PHP者的疑难问答(1)
2006/10/09 PHP
利用浏览器的Javascript控制台调试PHP程序
2014/01/08 PHP
PHP jQuery表单,带验证具体实现方法
2014/02/15 PHP
PHP中让curl支持sock5的代码实例
2015/01/21 PHP
php基于GD库画五星红旗的方法
2015/02/24 PHP
php计算多维数组中所有值总和的方法
2015/06/24 PHP
用javascript编写的第一人称射击游戏
2007/02/25 Javascript
Extjs学习笔记之六 面版
2010/01/08 Javascript
Javascript学习笔记6 prototype的提出
2010/01/11 Javascript
为JavaScript类型增加方法的实现代码(增加功能)
2011/12/29 Javascript
为什么JavaScript没有块级作用域
2016/05/22 Javascript
js传值后台中文出现乱码的解决方法
2016/06/30 Javascript
关于数据与后端进行交流匹配(点亮星星)
2016/08/03 Javascript
微信小程序 时间格式化(util.formatTime(new Date))详解
2016/11/16 Javascript
JavaScript 监控微信浏览器且自带返回按钮时间
2016/11/27 Javascript
详谈jQuery中使用attr(), prop(), val()获取value的异同
2017/04/25 jQuery
js下载文件并修改文件名
2017/05/08 Javascript
从对象列表中获取一个对象的方法,依据关键字和值
2017/09/20 Javascript
javascript中神奇的 Date对象小结
2017/10/12 Javascript
Javascript和jquery在selenium的使用过程
2019/10/31 jQuery
vue祖孙组件之间的数据传递案例
2020/12/07 Vue.js
python类中super()和__init__()的区别
2016/10/18 Python
Python面向对象编程基础解析(二)
2017/10/26 Python
Python基于分析Ajax请求实现抓取今日头条街拍图集功能示例
2018/07/19 Python
对python中的控制条件、循环和跳出详解
2019/06/24 Python
让你的Python代码实现类型提示功能
2019/11/19 Python
python每5分钟从kafka中提取数据的例子
2019/12/23 Python
keras中的backend.clip用法
2020/05/22 Python
拉斯维加斯酒店、演出、旅游、俱乐部及更多:Vegas.com
2019/02/28 全球购物
店长岗位的工作内容
2013/11/12 职场文书
酒吧创业计划书
2014/01/18 职场文书
幼儿园家长评语大全
2014/04/16 职场文书
龙潭大峡谷导游词
2015/02/10 职场文书
《狮子和鹿》教学反思
2016/02/16 职场文书
python tkinter实现定时关机
2021/04/21 Python
Python基于百度AI实现抓取表情包
2021/06/27 Python