积分的可视化

积分的可视化

flyfish

在这里插入图片描述
考虑平方根函数 f ( x ) = x f(x) = \sqrt{x} f(x)=x ,其中 x ∈ [ 0 , 1 ] x \in [0, 1] x[0,1] 。在区间 [ 0 , 1 ] [0, 1] [0,1] 上,函数 f f f 下方的面积是指函数 y = f ( x ) y = f(x) y=f(x) 的图像与 x x x 轴之间的部分面积 S S S。我们把这个面积称为函数 f f f 在区间 [ 0 , 1 ] [0, 1] [0,1] 上的积分,写作: S = ∫ 0 1 x   d x S = \int_0^1 \sqrt{x} \, dx S=01x dx其中, d x dx dx 称为积分变量,表示要求面积的范围是用坐标轴横轴的刻度计算。积分号 ∫ \int 来源于拉长的字母 S S S(拉丁文中的 summa :求和的首字母),表示求和的过程。 ∫ 0 1 \int_0^1 01 则表示积分从 0 开始,到 1 为止,称为积分范围或积分域,其中 0 称为积分下界,1 称为积分上界, x \sqrt{x} x 称为被积函数。为了计算这个积分,我们可以使用近似方法,将区间 [ 0 , 1 ] [0, 1] [0,1] 等分成若干小区间,用小长方形的面积和来逼近这个面积。假设将横轴区间 [ 0 , 1 ] [0, 1] [0,1] 等分成 5 个部分:[0,0.2)、[0.2,0.4)、[0.4,0.6)、[0.6,0.8)、[0.8,1]。然后在每一部分上放一个黄色的长方形,这些长方形的高度分别是函数在每个部分的极大值(即最右侧的值): 0.2 , 0.4 , 0.6 , 0.8 , 1 \sqrt{0.2}, \sqrt{0.4}, \sqrt{0.6}, \sqrt{0.8}, 1 0.2 ,0.4 ,0.6 ,0.8 ,1这样函数下方的部分就被这 5 个黄色长方形覆盖了,所以面积 S S S 小于这 5 个黄色长方形面积之和: 0.2 ( 0.2 − 0 ) + 0.4 ( 0.4 − 0.2 ) + 0.6 ( 0.6 − 0.4 ) + 0.8 ( 0.8 − 0.6 ) + 1 ( 1 − 0.8 ) ≈ 0.7497 \sqrt{0.2} \left(0.2 - 0\right) + \sqrt{0.4} \left(0.4 - 0.2\right) + \sqrt{0.6} \left(0.6 - 0.4\right) + \sqrt{0.8} \left(0.8 - 0.6\right) + \sqrt{1} \left(1 - 0.8\right) \approx 0.7497 0.2 (0.20)+0.4 (0.40.2)+0.6 (0.60.4)+0.8 (0.80.6)+1 (10.8)0.7497求出了 S S S 的上限之后,用类似的方法可以求 S S S 的下限。

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

# 定义函数
def f(x):
    return np.sqrt(x)

# 创建绘图对象
fig, ax = plt.subplots()
x = np.linspace(0, 1, 400)
y = f(x)

# 设置坐标轴和标题
ax.set_xlim(0, 1)
ax.set_ylim(0, 1)
ax.set_xlabel('$x$')
ax.set_ylabel('$f(x)$')
ax.set_title('Integral Approximation of $f(x) = \sqrt{x}$')

# 绘制函数图像
line, = ax.plot(x, y, label='$f(x) = \sqrt{x}$')
rects = []

# 更新函数,用于动画
def update(num):
    ax.clear()
    ax.plot(x, y, label='$f(x) = \sqrt{x}$')
    
    # 设置等分数和间隔
    n = 5
    dx = 1 / n
    xi = np.linspace(0, 1, n + 1)
    
    # 黄色长方形,使用区间的最右侧值
    yi_right = f(xi[1:])
    for i in range(n):
        rect = plt.Rectangle((xi[i], 0), dx, yi_right[i], color='yellow', alpha=0.5)
        ax.add_patch(rect)
        rects.append(rect)
    
    # 计算黄色长方形面积和
    integral_upper = np.sum(yi_right * dx)
    
    # 绿色长方形,使用区间的最左侧值
    yi_left = f(xi[:-1])
    for i in range(n):
        rect = plt.Rectangle((xi[i], 0), dx, yi_left[i], color='green', alpha=0.5)
        ax.add_patch(rect)
        rects.append(rect)
    
    # 计算绿色长方形面积和
    integral_lower = np.sum(yi_left * dx)
    
    # 显示近似积分值
    ax.text(0.5, 0.9, f'Upper Sum = {integral_upper:.4f}', transform=ax.transAxes, ha='center')
    ax.text(0.5, 0.85, f'Lower Sum = {integral_lower:.4f}', transform=ax.transAxes, ha='center')
    
    ax.set_xlim(0, 1)
    ax.set_ylim(0, 1)
    ax.set_xlabel('$x$')
    ax.set_ylabel('$f(x)$')
    ax.set_title('Integral Approximation of $f(x) = \sqrt{x}$')
    ax.legend()

# 创建动画
ani = animation.FuncAnimation(fig, update, frames=1, repeat=False)

# 保存为 GIF
ani.save('integral_approximation_animation.gif', writer='imagemagick')

# 显示动画
plt.show()

在这里插入图片描述
如果将横轴等分成 12 个部分,然后按照以上的方法放上绿色长方形,那么从图中可以看出,面积 S S S 必定大于绿色长方形面积之和: 0 12 ( 1 12 − 0 ) + 1 12 ( 2 12 − 1 12 ) + ⋯ + 11 12 ( 1 − 11 12 ) ≈ 0.6203 \sqrt{\frac{0}{12}} \left(\frac{1}{12} - 0\right) + \sqrt{\frac{1}{12}} \left(\frac{2}{12} - \frac{1}{12}\right) + \cdots + \sqrt{\frac{11}{12}} \left(1 - \frac{11}{12}\right) \approx 0.6203 120 (1210)+121 (122121)++1211 (11211)0.6203于是,面积 S S S 的取值介于 0.6203 和 0.7497 之间。

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation

# 定义函数
def f(x):
    return np.sqrt(x)

# 创建绘图对象
fig, ax = plt.subplots()
x = np.linspace(0, 1, 400)
y = f(x)

# 设置坐标轴和标题
ax.set_xlim(0, 1)
ax.set_ylim(0, 1)
ax.set_xlabel('$x$')
ax.set_ylabel('$f(x)$')
ax.set_title('Integral Approximation of $f(x) = \sqrt{x}$')

# 绘制函数图像
line, = ax.plot(x, y, label='$f(x) = \sqrt{x}$')
rects = []

# 更新函数,用于动画
def update(num):
    ax.clear()
    ax.plot(x, y, label='$f(x) = \sqrt{x}$')
    
    # 设置等分数和间隔
    n = 12
    dx = 1 / n
    xi = np.linspace(0, 1, n + 1)
    
    # 绿色长方形,使用区间的最左侧值
    yi_left = f(xi[:-1])
    for i in range(n):
        rect = plt.Rectangle((xi[i], 0), dx, yi_left[i], color='green', alpha=0.5)
        ax.add_patch(rect)
        rects.append(rect)
    
    # 计算绿色长方形面积和
    integral_lower = np.sum(yi_left * dx)
    
    # 显示近似积分值
    ax.text(0.5, 0.85, f'Lower Sum = {integral_lower:.4f}', transform=ax.transAxes, ha='center')
    
    ax.set_xlim(0, 1)
    ax.set_ylim(0, 1)
    ax.set_xlabel('$x$')
    ax.set_ylabel('$f(x)$')
    ax.set_title('Integral Approximation of $f(x) = \sqrt{x}$')
    ax.legend()

# 创建动画
ani = animation.FuncAnimation(fig, update, frames=1, repeat=False)

# 保存为 GIF
ani.save('integral_approximation_animation_12_parts.gif', writer='imagemagick')

# 显示动画
plt.show()

对于函数 f ( x ) = x f(x) = \sqrt{x} f(x)=x ,在区间 [ 0 , 1 ] [0, 1] [0,1] 上的定积分,我们可以按照以下步骤来求解:

  1. 找到 f ( x ) f(x) f(x) 的不定积分 :我们首先将 f ( x ) = x f(x) = \sqrt{x} f(x)=x 转换成幂函数的形式: f ( x ) = x 1 / 2 f(x) = x^{1/2} f(x)=x1/2

根据幂函数积分法则:
∫ x n   d x = x n + 1 n + 1 + C ( n ≠ − 1 ) \int x^n \, dx = \frac{x^{n+1}}{n+1} + C \quad (n \neq -1) xndx=n+1xn+1+C(n=1)
这里 n = 1 / 2 n = 1/2 n=1/2,所以: ∫ x 1 / 2   d x = x ( 1 / 2 ) + 1 ( 1 / 2 ) + 1 + C = x 3 / 2 3 / 2 + C = 2 3 x 3 / 2 + C \int x^{1/2} \, dx = \frac{x^{(1/2)+1}}{(1/2)+1} + C = \frac{x^{3/2}}{3/2} + C = \frac{2}{3} x^{3/2} + C x1/2dx=(1/2)+1x(1/2)+1+C=3/2x3/2+C=32x3/2+C
因此,函数 x \sqrt{x} x 的不定积分(原函数)是: F ( x ) = 2 3 x 3 / 2 + C F(x) = \frac{2}{3} x^{3/2} + C F(x)=32x3/2+C

  1. 应用牛顿-莱布尼兹公式计算定积分
    牛顿-莱布尼兹公式为:
    ∫ a b f ( x )   d x = F ( b ) − F ( a ) \int_a^b f(x) \, dx = F(b) - F(a) abf(x)dx=F(b)F(a)
    在这里, f ( x ) = x f(x) = \sqrt{x} f(x)=x ,积分的下限 a = 0 a = 0 a=0,上限 b = 1 b = 1 b=1。我们用不定积分 F ( x ) = 2 3 x 3 / 2 + C F(x) = \frac{2}{3} x^{3/2} + C F(x)=32x3/2+C 来计算定积分: ∫ 0 1 x   d x = [ 2 3 x 3 / 2 ] 0 1 \int_0^1 \sqrt{x} \, dx = \left[ \frac{2}{3} x^{3/2} \right]_0^1 01x dx=[32x3/2]01
    计算 F ( 1 ) F(1) F(1) F ( 0 ) F(0) F(0)
    F ( 1 ) = 2 3 ⋅ 1 3 / 2 = 2 3 ⋅ 1 = 2 3 F(1) = \frac{2}{3} \cdot 1^{3/2} = \frac{2}{3} \cdot 1 = \frac{2}{3} F(1)=3213/2=321=32

F ( 0 ) = 2 3 ⋅ 0 3 / 2 = 2 3 ⋅ 0 = 0 F(0) = \frac{2}{3} \cdot 0^{3/2} = \frac{2}{3} \cdot 0 = 0 F(0)=3203/2=320=0

将这些值代入牛顿-莱布尼兹公式:
∫ 0 1 x   d x = 2 3 − 0 = 2 3 \int_0^1 \sqrt{x} \, dx = \frac{2}{3} - 0 = \frac{2}{3} 01x dx=320=32
因此,函数 f ( x ) = x f(x) = \sqrt{x} f(x)=x 在区间 [ 0 , 1 ] [0, 1] [0,1] 上的定积分为: ∫ 0 1 x   d x = 2 3 \int_0^1 \sqrt{x} \, dx = \frac{2}{3} 01x dx=32
牛顿-莱布尼兹公式的意思是:要计算 f ( x ) f(x) f(x) 在区间 [ a , b ] [a, b] [a,b] 上的定积分,我们首先找到 f ( x ) f(x) f(x) 的一个原函数 F ( x ) F(x) F(x),然后在 x = b x = b x=b 处计算 F ( x ) F(x) F(x) 的值,再在 x = a x = a x=a 处计算 F ( x ) F(x) F(x) 的值,最后用 F ( b ) − F ( a ) F(b) - F(a) F(b)F(a) 得到定积分的值。
这个公式的重要性在于它将定积分问题转化为求原函数和计算函数值的问题。牛顿-莱布尼兹公式是微积分中的一个基本公式,它将定积分与导数(微分)联系起来。这个公式的表示形式是:
∫ a b f ( x )   d x = F ( b ) − F ( a ) \int_a^b f(x) \, dx = F(b) - F(a) abf(x)dx=F(b)F(a)

下面解释公式中的每个符号和字母的含义:

  1. ∫ a b \int_a^b ab :这是定积分符号,表示我们要计算函数 f ( x ) f(x) f(x) x = a x = a x=a x = b x = b x=b 这段区间上的面积。

  2. f ( x ) f(x) f(x) :这是被积函数,表示我们要对其求积分的函数。

  3. d x dx dx :这是积分变量,表示我们对变量 x x x 求积分。

  4. a a a :这是积分的下限,表示积分从 x = a x = a x=a 开始。

  5. b b b :这是积分的上限,表示积分在 x = b x = b x=b 结束。

  6. F ( x ) F(x) F(x) :这是函数 f ( x ) f(x) f(x) 的一个原函数(或不定积分),即 F ′ ( x ) = f ( x ) F'(x) = f(x) F(x)=f(x)。也就是说, F ( x ) F(x) F(x) 的导数是 f ( x ) f(x) f(x)

  7. F ( b ) − F ( a ) F(b) - F(a) F(b)F(a) :这是计算 F ( x ) F(x) F(x) 在上限 b b b 处的值减去在下限 a a a 处的值,表示从 x = a x = a x=a x = b x = b x=b 这段区间上 f ( x ) f(x) f(x) 的定积分

幂函数积分法则可以通过反向操作微分来导出。幂函数积分法则的形式是:
∫ x n   d x = x n + 1 n + 1 + C ( n ≠ − 1 ) \int x^n \, dx = \frac{x^{n+1}}{n+1} + C \quad (n \neq -1) xndx=n+1xn+1+C(n=1)
这里的 C C C 是积分常数。

证明过程

1. 基本思路

为了找到 ∫ x n   d x \int x^n \, dx xndx 的结果,我们需要找到一个函数 F ( x ) F(x) F(x),它的导数是 x n x^n xn,即:
d d x F ( x ) = x n \frac{d}{dx} F(x) = x^n dxdF(x)=xn

2. 试探求解

假设 F ( x ) F(x) F(x) 具有以下形式:
F ( x ) = x n + 1 n + 1 F(x) = \frac{x^{n+1}}{n+1} F(x)=n+1xn+1我们来验证这个假设是否正确,即验证它的导数是否等于 x n x^n xn d d x ( x n + 1 n + 1 ) = 1 n + 1 ⋅ d d x ( x n + 1 ) = 1 n + 1 ⋅ ( n + 1 ) x n = x n \frac{d}{dx} \left( \frac{x^{n+1}}{n+1} \right) = \frac{1}{n+1} \cdot \frac{d}{dx} \left( x^{n+1} \right) = \frac{1}{n+1} \cdot (n+1) x^n = x^n dxd(n+1xn+1)=n+11dxd(xn+1)=n+11(n+1)xn=xn
所以,假设 F ( x ) = x n + 1 n + 1 F(x) = \frac{x^{n+1}}{n+1} F(x)=n+1xn+1 的导数确实是 x n x^n xn,因此: ∫ x n   d x = x n + 1 n + 1 + C \int x^n \, dx = \frac{x^{n+1}}{n+1} + C xndx=n+1xn+1+C
特殊情况 n = − 1 n = -1 n=1对于 n = − 1 n = -1 n=1,我们有: ∫ x − 1   d x = ∫ 1 x   d x \int x^{-1} \, dx = \int \frac{1}{x} \, dx x1dx=x1dx

根据对数函数的积分法则,我们知道:
∫ 1 x   d x = ln ⁡ ∣ x ∣ + C \int \frac{1}{x} \, dx = \ln|x| + C x1dx=lnx+C

进一步解释

  1. 基本思想 :积分是微分的逆运算。我们通过找到一个函数的导数等于被积函数来确定它的积分。

  2. 积分常数 C C C :不定积分结果中包含一个任意常数 C C C,因为导数过程中常数项会被消去。

  3. 适用范围 :幂函数积分法则适用于所有 n ≠ − 1 n \neq -1 n=1 的实数。当 n = − 1 n = -1 n=1 时,被积函数是 1 x \frac{1}{x} x1,它的积分是 ln ⁡ ∣ x ∣ \ln|x| lnx,这是一个特殊情况。
    在这里插入图片描述

import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
from matplotlib.patches import Polygon

# 定义函数
def f(x):
    return np.sqrt(x)

# 创建绘图对象
fig, ax = plt.subplots()
x = np.linspace(0, 1, 400)
y = f(x)

line, = ax.plot(x, y, label='$f(x) = \sqrt{x}$')
ax.set_xlim(0, 1)
ax.set_ylim(0, 1)
ax.set_xlabel('$x$')
ax.set_ylabel('$f(x)$')
ax.set_title('Integral of $f(x) = \sqrt{x}$ from 0 to 1')
ax.legend()

# 更新函数,用于动画
def update(num):
    ax.clear()
    ax.plot(x, y, label='$f(x) = \sqrt{x}$')
    ax.fill_between(x[:num], y[:num], color="skyblue", alpha=0.4)
    
    # 计算当前的积分值
    integral_value = np.trapz(y[:num], x[:num])
    
    # 显示当前的积分值和 x 值
    ax.text(0.1, 0.9, f'$x = {x[num]:.2f}$', transform=ax.transAxes)
    ax.text(0.1, 0.85, f'Integral = {integral_value:.2f}', transform=ax.transAxes)
    
    ax.set_xlim(0, 1)
    ax.set_ylim(0, 1)
    ax.set_xlabel('$x$')
    ax.set_ylabel('$f(x)$')
    ax.set_title('Integral of $f(x) = \sqrt{x}$ from 0 to 1')
    ax.legend()

# 创建动画
ani = animation.FuncAnimation(fig, update, frames=len(x), repeat=False)

# 保存为 GIF
ani.save('integral_animation.gif', writer='imagemagick')

# 显示动画
plt.show()

定积分与不定积分

定积分

定义 :定积分是计算一个函数在某个区间上的累积量(通常是面积)。表示 :定积分用符号 ∫ a b f ( x )   d x \int_a^b f(x) \, dx abf(x)dx 表示,其中:

  • ∫ \int 是积分符号。

  • a a a b b b 是积分的下限和上限,分别表示积分的起点和终点。

  • f ( x ) f(x) f(x) 是被积函数。

  • d x dx dx 表示积分变量。
    结果 :定积分的结果是一个数值,它表示函数 f ( x ) f(x) f(x) 在区间 [ a , b ] [a, b] [a,b] 上的累积量。例如,函数图像与 x 轴之间的面积。计算方法 :牛顿-莱布尼兹公式是常用的方法之一: ∫ a b f ( x )   d x = F ( b ) − F ( a ) \int_a^b f(x) \, dx = F(b) - F(a) abf(x)dx=F(b)F(a)
    其中 F ( x ) F(x) F(x) f ( x ) f(x) f(x) 的一个原函数(不定积分),即 F ′ ( x ) = f ( x ) F'(x) = f(x) F(x)=f(x)

不定积分

定义 :不定积分是找到一个函数的所有原函数的过程。表示 :不定积分用符号 ∫ f ( x )   d x \int f(x) \, dx f(x)dx 表示,其中:

  • ∫ \int 是积分符号。

  • f ( x ) f(x) f(x) 是被积函数。

  • d x dx dx 表示积分变量。
    结果 :不定积分的结果是一个函数加上一个任意常数 C C C,表示函数的所有原函数。例如: ∫ f ( x )   d x = F ( x ) + C \int f(x) \, dx = F(x) + C f(x)dx=F(x)+C
    其中 F ( x ) F(x) F(x) f ( x ) f(x) f(x) 的一个原函数,即 F ′ ( x ) = f ( x ) F'(x) = f(x) F(x)=f(x),而 C C C 是积分常数。

定积分有上下限 ∫ a b f ( x )   d x \int_a^b f(x) \, dx abf(x)dx,不定积分没有上下限 ∫ f ( x )   d x \int f(x) \, dx f(x)dx
定积分的结果是一个数值,不定积分的结果是一个函数加上一个常数 C C C
定积分表示累积量(如面积),不定积分表示原函数(反导数)。
定积分常用牛顿-莱布尼兹公式计算,不定积分需要找到反导数并加上积分常数 C C C
举例来说,对于函数 f ( x ) = x 2 f(x) = x^2 f(x)=x2

  • 不定积分是:
    ∫ x 2   d x = x 3 3 + C \int x^2 \, dx = \frac{x^3}{3} + C x2dx=3x3+C

  • 如果求定积分在区间 [ 1 , 2 ] [1, 2] [1,2] 上的面积:
    ∫ 1 2 x 2   d x = [ x 3 3 ] 1 2 = 2 3 3 − 1 3 3 = 8 3 − 1 3 = 7 3 \int_1^2 x^2 \, dx = \left[ \frac{x^3}{3} \right]_1^2 = \frac{2^3}{3} - \frac{1^3}{3} = \frac{8}{3} - \frac{1}{3} = \frac{7}{3} 12x2dx=[3x3]12=323313=3831=37
    最常用的基本积分法则包括以下几条:

  1. 幂函数积分法则 ∫ x n   d x = x n + 1 n + 1 + C (其中  n ≠ − 1 ) \int x^n \, dx = \frac{x^{n+1}}{n+1} + C \quad \text{(其中 } n \neq -1 \text{)} xndx=n+1xn+1+C(其中 n=1)

  2. 常数积分法则 ∫ a   d x = a x + C \int a \, dx = ax + C adx=ax+C

  3. 指数函数积分法则 ∫ e x   d x = e x + C \int e^x \, dx = e^x + C exdx=ex+C

  4. 对数函数积分法则 ∫ 1 x   d x = ln ⁡ ∣ x ∣ + C (其中  x ≠ 0 ) \int \frac{1}{x} \, dx = \ln|x| + C \quad \text{(其中 } x \neq 0 \text{)} x1dx=lnx+C(其中 x=0)

  5. 正弦函数积分法则 ∫ sin ⁡ x   d x = − cos ⁡ x + C \int \sin x \, dx = -\cos x + C sinxdx=cosx+C

  6. 余弦函数积分法则 ∫ cos ⁡ x   d x = sin ⁡ x + C \int \cos x \, dx = \sin x + C cosxdx=sinx+C

  7. 基本积分法则的线性组合 ∫ ( a f ( x ) + b g ( x ) )   d x = a ∫ f ( x )   d x + b ∫ g ( x )   d x \int (af(x) + bg(x)) \, dx = a \int f(x) \, dx + b \int g(x) \, dx (af(x)+bg(x))dx=af(x)dx+bg(x)dx

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/749864.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

一个例子理解傅里叶变换的计算过程

假设我们有一个简单的信号,由两个不同频率的正弦波组成,我们希望通过傅里叶变换来分析其频谱。 示例信号 假设我们有一个信号 : 这个信号由两个频率成分组成:一个50 Hz的正弦波和一个120 Hz的正弦波,后者的振幅是前者…

【C++】——AVL树(详细解读)

目录 一 AVL树的概念 二 AVL树节点的定义 三 AVL树的插入 1.先和搜索二叉树一样,去找插入的结点 2.插入的时候,需要更新平衡因子 3.确定平衡因子的改变,判断AVL树的改变 三 AVL树的旋转 左单旋 右单旋 右左双旋 左右双旋 四 …

学校机器该maven环境

在学校机器上 安装maven配置idea中的maven 后,发现无法运行, 推测是学校电脑上idea版本和我们下的maven 可能不太匹配。 学校的电脑上idea有集成的maven,但默认配置是访问国外的服务器 解决办法: 下载分享给各位同学的压缩包m…

【工具分享】ToolsFx

文章目录 ToolsFx介绍如何安装如何运行运行截图 ToolsFx介绍 基于kotlintornadoFx的跨平台密码学工具箱,包含编解码、编码转换、加解密、哈希、MAC、签名、大数运算、压缩、二维码功能、CTF等实用功能,支持插件。 如何安装 GitHub:https:/…

GPT-5对普通人有何影响

这篇文章对ChatGPT的使用方法和提问技巧进行了讨论,重点强调了背景信息和具体提问的重要性。文章清晰地传达了如何提高ChatGPT回答的质量,以及个人在使用ChatGPT时的体会和建议。然而,文章在逻辑组织和表达方面还有一些可以改进的地方&#x…

C# 异步编程详解(Task,async/await)

文章目录 1.什么是异步2.Task 产生背景3.Thread(线程) 和 Task(异步)的区别3.1 几个名词3.2 Thread 与 Task 的区别 4.Task API4.1 创建和启动任务4.2 Task 等待、延续和组合4.3 task.Result4.4 Task.Delay() 和 Thread.Sleep() 区别 5.CancellationToken 和 CancellationToken…

Linux-笔记 使用SCP命令传输文件报错 :IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!

前言 使用scp命令向开发板传输文件发生报错&#xff0c;报错见下图; 解决 rm -rf /home/<用户名>/.ssh/known_hosts 此方法同样适用于使用ssh命令连接开发板报错的情况。 参考 https://blog.csdn.net/westsource/article/details/6636096

VBA学习(17):使用条件格式制作Excel聚光灯

今天给大家分享的表格小技巧是制作聚光灯。 先说一下啥是聚光灯。所谓聚光灯&#xff0c;可以简单理解为对工作表的行列填充颜色&#xff0c;突出显示被选中的单元格&#xff0c;仿佛该单元格被聚光灯照亮似的。聚光灯有助于肉眼识别所选中的单元格或区域&#xff0c;提高数据…

Zookeeper部署

Zookeeper部署 下载安装包Linux解压安装包修改配置文件编辑zoo.cf配置 启动服务停止服务常用zookeeper指令查看namespace列表创建namespace删除namespace 注意&#xff1a;该文章为简单部署操作&#xff0c;没有复杂的配置内容&#xff0c;用的是3.7.2版本。 下载安装包 进入z…

实践案例:使用Jetpack Navigation创建一个新闻应用

在这个实践案例中&#xff0c;我们将使用Jetpack Navigation创建一个简单的新闻应用。这个应用将包含以下功能&#xff1a; 新闻列表页面&#xff1a;显示一组新闻文章。新闻详情页面&#xff1a;显示选定新闻文章的详细信息。用户资料页面&#xff1a;显示用户的资料信息。 …

内网部署Prometheus-server结合grafana

目录 1.提取依赖包 2.所有节点安装chrony服务 2.1集群角色规划 2.2 所有节点安装chrony服务 2.3添加hosts文件解析(服务端) 2.4修改时间服务器 ​编辑 2.5重启chrony服务&#xff0c;使得配置生效 2.6修改客户端配置&#xff08;注意是客户端其他节点&#xff09; 2.…

【Knowledge Graph Context-Enhanced Diversified Recommendation(MSDM2024)】

Knowledge Graph Context-Enhanced Diversified Recommendation 摘要 推荐系统&#xff08;RecSys&#xff09;领域已被广泛研究&#xff0c;以通过利用用户的历史交互来提高准确性。 尽管如此&#xff0c;这种对准确性的持续追求常常导致多样性的减少&#xff0c;最终导致众所…

Golang | Leetcode Golang题解之第187题重复的DNA序列

题目&#xff1a; 题解&#xff1a; const L 10 var bin map[byte]int{A: 0, C: 1, G: 2, T: 3}func findRepeatedDnaSequences(s string) (ans []string) {n : len(s)if n < L {return}x : 0for _, ch : range s[:L-1] {x x<<2 | bin[byte(ch)]}cnt : map[int]in…

ollama,springAi实现自然语言处理

ollama安装使用&#xff1a; https://ollama.com/ 下载速度比较慢的可以直接使用以下版本0.1.41 https://pan.baidu.com/s/1hCCkYvFjWqxvPyYA2-YElA?pwdotap 直接管理员身份双击安装&#xff0c;安装成功后会在任务栏里出现这个小图标&#xff1a; 打开cmd&#xff0c;输入…

第1章 基础知识

第1章 基础知识 1.1 机器语言 机器语言就是机器指令的集合&#xff0c;机器指令展开来讲就是一台机器可以正确执行的命令 1.2 汇编语言的产生 汇编语言的主题是汇编指令。汇编指令和机器指令的差别在于指令的表示方法上&#xff0c;汇编指令是机器指令便于记忆的书写格式。…

免费分享一套SpringBoot+Vue在线水果(销售)商城管理系统【论文+源码+SQL脚本】,帅呆了~~

大家好&#xff0c;我是java1234_小锋老师&#xff0c;看到一个不错的SpringBootVue在线水果(销售)商城管理系统&#xff0c;分享下哈。 项目视频演示 【免费】SpringBootVue在线水果(销售)商城管理系统 Java毕业设计_哔哩哔哩_bilibili【免费】SpringBootVue在线水果(销售)商…

linux基于wifi,Xshell的远程连接

最近有个比赛&#xff0c;要使用ros小车但是系统是ubuntu20.04无桌面系统刚开始接触linux的我啥都不会&#xff0c;就一个简单的连接wifi都搞了3天才搞通。再此进行一个总结。参考博客原文链接&#xff1a;https://blog.csdn.net/qq_51491920/article/details/126221940 一、什…

非最大值抑制(NMS)函数

非最大值抑制&#xff08;NMS&#xff09;函数 flyfish 非最大值抑制&#xff08;Non-Maximum Suppression, NMS&#xff09;是计算机视觉中常用的一种后处理技术&#xff0c;主要用于目标检测任务。其作用是从一组可能存在大量重叠的候选边界框中&#xff0c;筛选出最具代表…

从CVPR 2024看域适应、域泛化最新研究进展

域适应和域泛化一直以来都是各大顶会的热门研究方向。 域适应指&#xff1a;当我们在源域上训练的模型需要在目标域应用时&#xff0c;如果两域数据分布差异太大&#xff0c;模型性能就有可能降低。这时可以利用目标域的无标签数据&#xff0c;通过设计特定方法减小域间差异&a…

thinksboard 新建子类菜单

新建需要的文件 打开bz-routing.module.ts文件&#xff0c;设置bzRoutes&#xff0c;为下面使用 import { Injectable, NgModule } from angular/core; import { Resolve, RouterModule, Routes } from angular/router; import { Authority } from shared/models/authority.en…