SciPy 积分 | Python技能树征题

本文通过实例解析如何使用SciPy库进行积分运算,包括已知函数表达式的积分求解和基于数据点的积分估算。首先,讲解如何计算e^(-x^2)在-1到1范围内的积分,然后演示如何处理仅有数据点的函数求积分过程。

0. 前言

积分在科学和工程应用中具有许多重要的应用,本文利用 SciPy 解决积分相关问题。

1. 第 1 题:具有函数表达式的被积函数求积分

知识点描述:具有函数表达式的被积函数求积分。
问题描述:求解积分 ∫ − 1 1 e − x 2 d x \int _{-1}^1 e^{-x^2}dx 11ex2dx,请从以下选项中选出你认为正确的答案:
A.

from scipy import integrate
import numpy as np
def func(x):
    return np.exp(-x**2)
val, err = integrate.quad(func(x), -1, 1)
print(val)

B.

from scipy import integrate
import numpy as np
def func(x, a=-1, b=1):
    return np.exp(-x**2)
val, err = integrate.quad(func)
print(val)

C.

from scipy import integrate
import numpy as np
def func(x, a=-1, b=1):
    return np.exp(-x**2)
val, err = integrate.quad(func(x))
print(val)

D.

from scipy import integrate
import numpy as np
def func(x):
    return np.exp(-x**2)
val, err = integrate.quad(func, -1, 1)
print(val)

正确答案: D

2. 第 2 题:函数表达式未知的积分求解

知识点描述:函数表达式未知的积分求解。
问题描述:假设仅知道某一函数其中一些点的值,并不知道其具体函数表达式,求解其积分,请从以下选项中选出你认为正确的答案:
A.

from scipy import integrate
import numpy as np
func = lambda x: np.sqrt(x)
x = np.linspace(0, 2, 25)
y = func(x)
val = integrate.trapz(y, 0, 2)
print(val)

B.

from scipy import integrate
import numpy as np
func = lambda x: np.sqrt(x)
x = np.linspace(0, 2, 25)
y = func(x)
val = integrate.trapz(y, x)
print(val)

C.

from scipy import integrate
import numpy as np
func = lambda x: np.sqrt(x)
x = np.linspace(0, 2, 25)
y = func(x)
val, err = integrate.quad(y, 0, 2)
print(val)

D.

from scipy import integrate
import numpy as np
func = lambda x: np.sqrt(x)
x = np.linspace(0, 2, 25)
y = func(x)
val, err = integrate.quad(y, x)
print(val)

正确答案: B

试题代码地址

https://codechina.csdn.net/LOVEmy134611/python_problem

评论 32
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

盼小辉丶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值