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之使用Python操作数据库(1)
Nov 25 Python
Python实现自动登录百度空间的方法
Jun 10 Python
numpy自动生成数组详解
Dec 15 Python
python编程嵌套函数实例代码
Feb 11 Python
Python实现读取Properties配置文件的方法
Mar 29 Python
python检索特定内容的文本文件实例
Jun 05 Python
对pycharm代码整体左移和右移缩进快捷键的介绍
Jul 16 Python
python虚拟环境迁移方法
Jan 03 Python
Python3实现定时任务的四种方式
Jun 03 Python
python中如何使用insert函数
Jan 09 Python
python实战之一步一步教你绘制小猪佩奇
Apr 22 Python
Python一些基本的图像操作和处理总结
Jun 23 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 文件类型判断代码
2009/03/13 PHP
了解Joomla 这款来自国外的php网站管理系统
2010/03/11 PHP
php的memcached客户端memcached
2011/06/14 PHP
PHP学习笔记(一) 简单了解PHP
2014/08/04 PHP
一文掌握PHP Xdebug 本地与远程调试(小结)
2019/04/23 PHP
设定php简写功能的方法
2019/11/28 PHP
解决FLASH需要点击激活的代码
2006/12/20 Javascript
Extjs4.0设置Ext.data.Store传参的请求方式(默认为GET)
2013/04/02 Javascript
详解JavaScript中shift()方法的使用
2015/06/09 Javascript
jquery实现选中单选按钮下拉伸缩效果
2015/08/06 Javascript
JS根据浏览器窗口大小实时动态改变网页文字大小的方法
2016/02/25 Javascript
无缝滚动的简单实现代码(推荐)
2016/06/07 Javascript
js多个物体运动功能实例分析
2016/12/20 Javascript
JS动态修改网页body的背景色实例代码
2017/10/07 Javascript
浅谈Angular HttpClient简单入门
2018/05/04 Javascript
swiper 自动图片无限轮播实现代码
2018/05/21 Javascript
如何使用puppet替换文件中的string
2018/12/06 Javascript
Vue实现开心消消乐游戏算法
2019/10/22 Javascript
webgl实现物体描边效果的方法介绍
2019/11/27 Javascript
如何基于JavaScript判断图片是否加载完成
2019/12/28 Javascript
在Vue中使用antv的示例代码
2020/06/29 Javascript
python查找指定具有相同内容文件的方法
2015/06/28 Python
Python3实现Web网页图片下载
2016/01/28 Python
Python操作excel的方法总结(xlrd、xlwt、openpyxl)
2019/09/02 Python
python如何保存文本文件
2020/06/07 Python
世界上最大的乐器零售商:Guitar Center
2017/11/07 全球购物
生物制药专业自我鉴定
2014/02/19 职场文书
送餐员岗位职责范本
2014/02/21 职场文书
2014三八妇女节活动总结
2014/03/01 职场文书
最新大学生创业计划书写作攻略
2014/04/02 职场文书
淘宝好评语大全
2014/05/05 职场文书
低碳环保标语
2014/06/12 职场文书
质检员岗位职责
2015/02/03 职场文书
综合素质评价思想道德自我评价
2015/03/09 职场文书
2015年度残疾人工作总结
2015/05/14 职场文书
护士旷工检讨书
2015/08/15 职场文书