Python考研:2024年第17题二重积分

2023-12-26 14:28

本文主要是介绍Python考研:2024年第17题二重积分,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

    • sympy符号计算
    • scipy数值计算

已知平面区域 D = { ( x , y ) ∣ 1 − y 2 ≤ x ≤ 1 , − 1 ≤ y ≤ 1 } D=\{(x,y)\vert \sqrt{1-y^2}\leq x\leq1, -1\leq y\leq1\} D={(x,y)1y2 x1,1y1},计算 ∬ D x x 2 + y 2 d x d y \iint_{D}\frac{x}{\sqrt{x^2+y^2}}\text dx\text dy Dx2+y2 xdxdy

sympy符号计算

这个式子可以变为

∫ − 1 1 ∫ 1 − y 2 1 x x 2 + y 2 d x d y \int^1_{-1}\int^1_{\sqrt{1-y^2}}\frac{x}{\sqrt{x^2+y^2}}\text dx\text dy 111y2 1x2+y2 xdxdy

然后就是个简单的二重积分了,可以用sympy进行符号计算

from sympy.abc import x,y,z
from sympy import sqrt, integrate, print_latexz = integrate(x/sqrt(x**2+y**2), (x, sqrt(1-y**2), 1), (y, -1, 1))
print_latex(z)

− 2 + log ⁡ ( 1 + 2 ) 2 − log ⁡ ( − 1 + 2 ) 2 + 2 -2 + \frac{\log{\left(1 + \sqrt{2} \right)}}{2} - \frac{\log{\left(-1 + \sqrt{2} \right)}}{2} + \sqrt{2} 2+2log(1+2 )2log(1+2 )+2

sympy输出的 log ⁡ \log log其实就是 ln ⁡ \ln ln,而且可以略微化简一下

1 2 ln ⁡ 2 + 1 2 − 1 = 1 2 ln ⁡ ( 2 + 1 ) 2 2 − 1 = ln ⁡ ( 2 + 1 ) \begin{aligned} &\frac{1}{2}\ln\frac{\sqrt2+1}{\sqrt2-1}\\ =&\frac{1}{2}\ln\frac{(\sqrt2+1)^2}{2-1}\\ =&\ln(\sqrt2+1) \end{aligned} ==21ln2 12 +121ln21(2 +1)2ln(2 +1)

最后得到积分的值为

2 − 2 + ln ⁡ ( 2 + 1 ) \sqrt2-2+\ln(\sqrt2+1) 2 2+ln(2 +1)

scipy数值计算

这道题最后得到了数值解,所以也可以用scipy来做,就是不知道数值解给不给分[doge]。

from scipy.integrate import dblquad
import numpy as np
func = lambda x,y : x/np.sqrt(x**2+y**2)
gf = lambda x: np.sqrt(1-x**2)
hf = lambda x: 1
dblquad(func, -1, 1, gf, hf)
# (0.2955871493926381, 1.5482781481064242e-10)

这个结果与符号计算的结果一致

np.sqrt(2)-2+np.log(np.sqrt(2)+1)
# 0.2955871493926381

这篇关于Python考研:2024年第17题二重积分的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/539759

相关文章

Python中edge-tts实现便捷语音合成

《Python中edge-tts实现便捷语音合成》edge-tts是一个功能强大的Python库,支持多种语言和声音选项,本文主要介绍了Python中edge-tts实现便捷语音合成,具有一定的参考价... 目录安装与环境设置文本转语音查找音色更改语音参数生成音频与字幕总结edge-tts 是一个功能强大的

使用Python和PaddleOCR实现图文识别的代码和步骤

《使用Python和PaddleOCR实现图文识别的代码和步骤》在当今数字化时代,图文识别技术的应用越来越广泛,如文档数字化、信息提取等,PaddleOCR是百度开源的一款强大的OCR工具包,它集成了... 目录一、引言二、环境准备2.1 安装 python2.2 安装 PaddlePaddle2.3 安装

Python+PyQt5开发一个Windows电脑启动项管理神器

《Python+PyQt5开发一个Windows电脑启动项管理神器》:本文主要介绍如何使用PyQt5开发一款颜值与功能并存的Windows启动项管理工具,不仅能查看/删除现有启动项,还能智能添加新... 目录开篇:为什么我们需要启动项管理工具功能全景图核心技术解析1. Windows注册表操作2. 启动文件

Python datetime 模块概述及应用场景

《Pythondatetime模块概述及应用场景》Python的datetime模块是标准库中用于处理日期和时间的核心模块,本文给大家介绍Pythondatetime模块概述及应用场景,感兴趣的朋... 目录一、python datetime 模块概述二、datetime 模块核心类解析三、日期时间格式化与

Java调用Python的四种方法小结

《Java调用Python的四种方法小结》在现代开发中,结合不同编程语言的优势往往能达到事半功倍的效果,本文将详细介绍四种在Java中调用Python的方法,并推荐一种最常用且实用的方法,希望对大家有... 目录一、在Java类中直接执行python语句二、在Java中直接调用Python脚本三、使用Run

使用Python开发Markdown兼容公式格式转换工具

《使用Python开发Markdown兼容公式格式转换工具》在技术写作中我们经常遇到公式格式问题,例如MathML无法显示,LaTeX格式错乱等,所以本文我们将使用Python开发Markdown兼容... 目录一、工具背景二、环境配置(Windows 10/11)1. 创建conda环境2. 获取XSLT

Python如何调用指定路径的模块

《Python如何调用指定路径的模块》要在Python中调用指定路径的模块,可以使用sys.path.append,importlib.util.spec_from_file_location和exe... 目录一、sys.path.append() 方法1. 方法简介2. 使用示例3. 注意事项二、imp

PyQt5+Python-docx实现一键生成测试报告

《PyQt5+Python-docx实现一键生成测试报告》作为一名测试工程师,你是否经历过手动填写测试报告的痛苦,本文将用Python的PyQt5和python-docx库,打造一款测试报告一键生成工... 目录引言工具功能亮点工具设计思路1. 界面设计:PyQt5实现数据输入2. 文档生成:python-

Python中Flask模板的使用与高级技巧详解

《Python中Flask模板的使用与高级技巧详解》在Web开发中,直接将HTML代码写在Python文件中会导致诸多问题,Flask内置了Jinja2模板引擎,完美解决了这些问题,下面我们就来看看F... 目录一、模板渲染基础1.1 为什么需要模板引擎1.2 第一个模板渲染示例1.3 模板渲染原理二、模板

使用Python创建一个功能完整的Windows风格计算器程序

《使用Python创建一个功能完整的Windows风格计算器程序》:本文主要介绍如何使用Python和Tkinter创建一个功能完整的Windows风格计算器程序,包括基本运算、高级科学计算(如三... 目录python实现Windows系统计算器程序(含高级功能)1. 使用Tkinter实现基础计算器2.