数值计算笔记之数值积分(一)

2023-11-13

目录

0、引言

一、数值积分的积分思想

1、中矩形公式

2、梯形公式

3、辛普森公式

二、求积公式的余项和代数精度

三、插值型求积公式

四、牛顿--柯特斯公式 (N-C公式)

五、复化求积法

1、复化梯形公式

2、复化辛普森公式 (要求 n 为偶数)

六、代码实现


0、引言

在高数中,可以根据 \int_{a}^{b}f(x)dx = F(b)-F(a),求得积分。但是如果f(x)存在以下两种情况:

  1. f(x)是离散函数
  2. 无法求得原函数F(x)

那么对于这种情况,就可以利用数值积分

所谓数值积分,指利用被积函数f(x)在有限个点上的函数值来计算积分近似值的一种方法。

一、数值积分的积分思想

积分中值定理: \int_{a}^{b}f(x)dx = (b-a)f(\xi ),\xi \in [a,b]

一重积分可以理解为求面积,积分中值定理可以看成:在x\in [a,b]上,函数f(x)x轴的面积等于以(b-a)为长,\xi \in [a,b]中一点函数值f(\xi )为宽的矩形的面积。

1、中矩形公式

                 \int_{a}^{b}f(x)dx \approx (b-a)\cdot f(\frac{a+b}{2})

2、梯形公式

                \int_{a}^{b}f(x)dx\approx (b-a)\cdot \frac{f(a)+f(b)}{2}

3、辛普森公式

               \int_{a}^{b}f(x)dx\approx (b-a)\cdot \frac{1}{6}[f(a)+4f(\frac{a+b}{2})+f(b)]

一般情况下,可用: f(\xi )\approx \sum_{k=0}^{n}w_{k}\cdot f(x_{k})

\Rightarrow \int_{a}^{b}f(x)dx = (b-a)\cdot f(\xi )\approx (b-a)\cdot \sum_{k=0}^{n}w_{k}\cdot f(x_{k}) = \sum_{k=0}^{n}A_{k}f(x_{k})  ,其中 A_{k}=(b-1)w_{k} 。

上式称为数值积分的基本公式,x_{k}称为求积节点,A_{k}称为求积系数

二、求积公式的余项和代数精度

1、余项

R\begin{bmatrix} f \end{bmatrix}=\int_{a}^{b}f(x)dx-\sum_{k=0}^{n}A_{k}\cdot f(x_{k})

2、代数精度

若数值积分公式对任意的 \leq m 次的代数多项式都准确成立,而对于x^{m+1}却不能成立,则称该数值积分公式的代数精度为 m 。

举个例子理解一下: 求梯形公式的代数精度。

解: \int_{a}^{b}f(x)dx\approx (b-a)\cdot \frac{f(a)+f(b)}{2}

  1. f(x)=1left = b-a = right
  2. f(x)=x,  left = \frac{1}{2}(b^{2}-a^{2})= right
  3. F(x)=x^{2}left =\frac{1}{3}(b^{3}-a^{3})   ;right = \frac{b-a}{2}(a^2+b^{2})  \therefore left \neq right

\therefore梯形公式的代数精度为1。

定理:含有 n+1 个节点的插值型数值积分公式的代数精度至少为 n 。

三、插值型求积公式

已知

x x_{0} x_{1} \cdots x_{n}
f(x) f(x_{0}) f(x_{1}) \cdots f(x_{n})

拉格朗日插值可表示为: L_{n}(x)=\sum_{k=0}^{n}f(x_{k})\cdot l_{k}(x)   ,l_{k}(x) = \prod_{j=0;j\neq k}^{n}\frac{x-x_{j}}{x_{k}-x_{j}}  为 基函数。

\therefore \int_{a}^{b}f(x)dx \approx \int_{a}^{b}L_{n}(x)\cdot dx

= \int_{a}^{b}\sum_{k}^{n}f(x_{k})\cdot l_{k}(x)\cdot dx

= \sum f(x_{k})\cdot \int_{a}^{b}l_{k}(x)dx

= \sum A_{k}\cdot f(x_{k})

即为 插值型求积公式。其中 A_{k}=\int_{a}^{b}l_{k}(x)dx

四、牛顿--柯特斯公式 (N-C公式)

牛顿-柯斯特求积公式是插值型求积公式特殊形式,在插值型求积公式中所取节点是等距时称为牛顿-柯斯特公式。

即,N-C公式为等距节点的插值型求积公式。

 

在[[a,b]区间内设置等距的插值节点a=x0<x<\cdots <x_{n}=b .

设节点步长为h=\frac{b-a}{n} 

则节点 x_{k}=a+k\cdot h ,(k=0,1,\cdots ,n)

\forall x\in [a,b] ,有 x = a+t\cdot h    (0\leq t\leq n)

则插值型求积系数:

A_{k}=\int_{a}^{b}l_{k}(x)dx =\int_{a}^{b}\prod_{j=0;j\neq k}^{n}\frac{x-x_{j}}{x_{k}-x_{j}}dx

= \int_{0}^{n}\prod_{j=0;j\neq k}^{n} \frac{(a+th)-(a+jh)}{(a+kh)-(a+jh)}\cdot hdt              变量由 x\rightarrow t ,所以变量范围由[a,b]\rightarrow [0,n]dx = h\cdot dt

=\int_{0}^{n}\prod_{j=0;j\neq k}^{n}\frac{t-j}{k-j}\cdot hdt

=\int_{0}^{n}\frac{1}{k(k-1)\cdots (k-(k-1))(k-(k+1))\cdots (k-n)}\prod_{j=0;j\neq k}^{n}(t-j)\cdot hdt    

=\int_{0}^{n}\frac{1}{k(k-1)\cdots 1(-1)(-2)\cdots (-(n-k))}\prod_{j=0;j\neq k}^{n}(t-j)\cdot hdt          ,与t无关的提到积分号之外

=\frac{h}{k(k-1)\cdots 1(-1)(-2)\cdots (-(n-k))}\int_{0}^{n}\prod_{j=0;j\neq k}^{n}(t-j)\cdot dt

=\frac{\frac{b-a}{n}}{k!(n-k)!}(-1)^{n-k}\int_{0}^{n}\prod_{j=0;j\neq k}^{n}(t-j)\cdot dt

=(b-a)\frac{(-1)^{n-k}}{k!(n-k)!\cdot n}\int_{0}^{n}\prod_{j=0;j\neq k}^{n}(t-j)\cdot dt

因为 \frac{(-1)^{n-k}}{k!(n-k)!\cdot n}\int_{0}^{n}\prod_{j=0;j\neq k}^{n}(t-j)\cdot dt 只与 k,n 有关,与 a,b,f(x),步长h均无关

而该表达式称之为柯斯特求积系数,记为

C_{k}^{(n)}=\frac{(-1)^{n-k}}{k!(n-k)!\cdot n}\int_{0}^{n}\prod_{j=0;j\neq k}^{n}(t-j)\cdot dt

\therefore 求积系数  A_{k} = (b-a)C_{k}^{(n)}

N-C公式为:\int_{a}^{b}f(x)dx = \sum_{k=0}^{n}A_{k}\cdot f(x_{k})=(b-a)\sum_{k=0}^{n}C_{k}^{(n)}\cdot f(x_{k})

1、n = 1 (梯形公式)

C_{k=0}^{(1)}=\frac{(-1)^{1-0}}{0!(1-0)!\cdot 1}\int_{0}^{1}(t-1)dt=\frac{1}{2}

C_{k=1}^{(1)}=\frac{(-1)^{1-1}}{1!(1-1)!\cdot 1}\int_{0}^{1}(t-0)dt=\frac{1}{2}

\therefore \int_{a}^{b}f(x)dx =(b-a)\cdot \frac{1}{2}\begin{bmatrix} f(a)+f(b) \end{bmatrix}       就变成了梯形公式

2、n = 2  (辛普森公式)

C_{k=0}^{2} = \frac{(-1)^{2-0}}{0!(2-0)!\cdot 2}\int_{0}^{2}(t-1)(t-2)dt = \frac{1}{6}   ,C_{k=1}^{2} = \frac{4}{6}   ,C_{k=2}^{2} = \frac{1}{6}

\therefore \int_{a}^{b}f(x)dx = (b-a)\begin{bmatrix} \frac{1}{6}f(x_{0}+\frac{4}{6}f(x_{1})+\frac{1}{6}f(x_{2}) \end{bmatrix}=\frac{(b-a)}{6} \begin{bmatrix} f(a)+4f(\frac{a+b}{2})+f(b) \end{bmatrix}          辛普森公式

3、n=4

\int_{a}^{b}f(x)dx = \frac{b-a}{90}[7f(x_{0})+ 32f(x_{1})+12f(x_{2})+32f(x_{3})+7(x_{4})]    ,其中 x_{k} = a+k\cdot \frac{b-a}{4}

五、复化求积法

        当积分区间较大时,C-N求积公式的误差会很大。为减少误差,可以考虑增加节点,但用高次多项式插值导出的公式稳定性不好。所以可以考虑用分段插值函数来代替被积函数。

       把[a,b]分成n 个区间[x_{k-1},x_{k}] (k=1,2,\cdots ,n),然后给每个区间上用低阶N-C公式求积(设为I_{k}),则

\int_{a}^{b}f(x)dx \approx \sum_{k=1}^{n}I_{k}

1、复化梯形公式

T_{n}= \frac{h}{2}[f(x_{0})+f(x_{1})] + \frac{h}{2}[f(x_{1})+f(x_{2})] + \cdots + \frac{h}{2}[f(x_{n-1})+f(x_{n})]

= \frac{h}{2}[f(a)+ 2\sum_{k=1}^{n-1}f(x_{k}) + f(b)]          ,其中h = \frac{b-a}{n}

拓展:变步长梯形公式

        定步长复化求积公式的一个明显缺点是:事先很难估计分划数n使结果达到预期精度。由于适当加密分点,精度会有所改善,为此采用自动加密分点的方法,并利用事后估计来控制加密次数,以判断是否达到预期精度,从而停止计算。

  1. 对所有已存在的子区间进行二分化,区间数由n变为2n
  2. 利用区间数为n时的积分值Tn以及新增的节点(即原来各子区间的中点)递推出区间数为2n时的积分值T2n
  3. 利用两次计算结果的差来估计误差,直到满足精度

公式如下:

T_{2n} = \frac{1}{2}(T_{n}(h) + H_{n}(h))     ,其中 H_{n}(h) = h\sum_{k=0}^{n-1}f(a+(k+\frac{1}{2})h)

2、复化辛普森公式 (要求 n 为偶数)

S_{n} = \frac{h}{3}[f(a) + 2\sum_{k=1}^{m-1}f(x_{2k}) + 4\sum_{k=1}^{m}f(x_{2k-1}) +f(b)]     ,其中m = \frac{n}{2}

六、代码实现

1、C++实现

先计算一个简单的,可以求原函数的。如  f(x) = \int_{1}^{2}\frac{1}{x} ,标准答案为 ln2 \approx 0.69314718  。程序运行结果为:

可以看出,复化公式的精度更高一些。

现在,如果要求原函数不可求的,如 f(x) = \int_{1}^{2}\frac{log(3+x^{2})}{1+x^{2}}      ,程序结果为:

C++代码:

main文件

#include<iostream>
#include"integral.h"
#include<iomanip>
using namespace std;

const double eps = 1e-8;

int main()
{
	double resultT = T(fun2,  1, 2);
	cout << "梯形公式计算结果" << "\t" << setprecision(8) << resultT << endl;

	double resultS = S(fun2, 1, 2);
	cout << "辛普森公式计算结果" << "\t" << setprecision(8) << resultS << endl;

	double resultTn = Tn(fun2, 1, 2, 100);
	cout << "复化梯形公式计算结果" << "\t" << setprecision(8) << resultTn << endl;

	double resultT2n = T2n(fun2, 1, 2, eps);
	cout << "变步长梯形公式计算结果" << "\t" << setprecision(8) << resultT2n << endl;

	cout << endl;
	double resultSn = Sn(fun2, 1, 2);
	cout << "复化辛普森公式计算结果" << "\t" << setprecision(8) << resultSn << endl;
}

.h头文件(积分实现部分)

#pragma once
#include<iostream>
using namespace std;
double fun1(double x) {
	double y = 1 / x;
	return y;
}
double fun2(double x) {
	double y = log(3 + pow(x,2)) / (1 + pow(x, 2));
	return y;
}


//梯形公式
double T(double(*f)(double), double a, double b) {
	double result = 0.0;
	result = 0.5 * (b - a) * (f(a) + f(b));
	return result;
}

//辛普森公式
double S(double(*f)(double), double a, double b) {
	double result = 0.0;
	result = 1 / 6.0 * (b - a) * ( f(a) + f(b) + 4 * f( (a + b) / 2.0) );
	return result;
}

//复化梯形公式
double Tn(double(*f)(double), double a, double b, int n) {
	double result = 0.0;
	double h = (b - a) / n;
	result = h / 2.0 * (f(a) + f(b));
	for (int k = 1; k < n; k++) {
		double x = a + k * h;
		result += h * f(x);
	}
	return result;
}

//变步长梯形积分
double T2n(double(*f)(double), double a, double b, double error) {
	int n = 1;   
	double h = (b - a) / n;
	double Tn = (f(a) + f(b)) * h / 2.0;  //计算 n=1 时的积分,粗略值
	double T2n;     //步长变为一半后的积分值
	bool key = false;
	do {    //至少循环一次
		double Hn = 0.0;
		for (int k = 0; k < n; k++) {
			double x = a + (k + 0.5) * h;
			Hn += h * f(x);
		}
		T2n = (Tn + Hn) / 2.0;
		//判断误差
		if (fabs(Tn - T2n) < error) {
			key = true;
		}
		else {
			Tn = T2n;
			n *= 2;
			h /= 2;
		}

	} while (!key);
	return T2n;
}

//复化辛普森公式
double Sn(double(*f)(double), double a, double b) {
	int n;
	cout << "正在使用复化辛普森公式,请输入分段个数n, 要求为偶数。 n =";
	cin >> n;
	/*cout << endl;*/
	while (n % 2) {
		cout << "输入n要求为偶数,请重新输入, n = ";
		cin >> n;
		cout << endl;
	}
	double result = 0.0;
	double h = (b - a) / n;
	result = h / 3.0 * (f(a) + f(b));
	for (int k = 1; k < n; k++) {
		double x = a + k * h;
		if (k % 2 == 0) {
			result += h / 3.0 * 2 * f(x);
		}
		else {
			result += h / 3.0 * 4 * f(x);
		}
	}
	return result;
}

2、matlab实现

matlab中自带了函数,例如, quadtx 函数、quadgui 函数。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

数值计算笔记之数值积分(一) 的相关文章

  • 使用 gcc 在 Linux 上运行线程构建块 (Intel TBB)

    我正在尝试为线程构建块构建一些测试 不幸的是 我无法配置 tbb 库 链接器找不到库 tbb 我尝试在 bin 目录中运行脚本 但这没有帮助 我什至尝试将库文件移动到 usr local lib 但这又失败了 任何的意见都将会有帮助 确定您
  • C# 异步等待澄清?

    我读了here http blog stephencleary com 2012 02 async and await html that 等待检查等待的看看它是否有already完全的 如果 可等待已经完成 那么该方法将继续 运行 同步
  • 在一个数据访问层中处理多个连接字符串

    我有一个有趣的困境 我目前有一个数据访问层 它必须与多个域一起使用 并且每个域都有多个数据库存储库 具体取决于所调用的存储过程 目前 我只需使用 SWITCH 语句来确定应用程序正在运行的计算机 并从 Web config 返回适当的连接字
  • 通过引用传递 [C++]、[Qt]

    我写了这样的东西 class Storage public Storage QString key const int value const void add item QString int private QMap
  • std::list 线程push_back、front、pop_front

    std list 线程安全吗 我假设不是这样 所以我添加了自己的同步机制 我认为我有正确的术语 但我仍然遇到问题 每个函数都由单独的线程调用 Thread1 不能等待 它必须尽可能快 std list
  • std::vector 与 std::stack

    有什么区别std vector and std stack 显然 向量可以删除集合中的项目 尽管比列表慢得多 而堆栈被构建为仅后进先出的集合 然而 堆栈对于最终物品操作是否更快 它是链表还是动态重新分配的数组 我找不到关于堆栈的太多信息 但
  • 如何在 C++ 中标记字符串?

    Java有一个方便的分割方法 String str The quick brown fox String results str split 在 C 中是否有一种简单的方法可以做到这一点 The 增强分词器 http www boost o
  • 用于 FTP 的文件系统观察器

    我怎样才能实现FileSystemWatcherFTP 位置 在 C 中 这个想法是 每当 FTP 位置添加任何内容时 我都希望将其复制到我的本地计算机 任何想法都会有所帮助 这是我之前问题的后续使用 NET 进行选择性 FTP 下载 ht
  • ASP.NET Core 3.1登录后如何获取用户信息

    我试图在登录 ASP NET Core 3 1 后获取用户信息 如姓名 电子邮件 id 等信息 这是我在登录操作中的代码 var claims new List
  • 结构体的内存大小不同?

    为什么第一种情况不是12 测试环境 最新版本的 gcc 和 clang 64 位 Linux struct desc int parts int nr sizeof desc Output 16 struct desc int parts
  • 为什么这个字符串用AesCryptoServiceProvider第二次解密时不相等?

    我在 C VS2012 NET 4 5 中的文本加密和解密方面遇到问题 具体来说 当我加密并随后解密字符串时 输出与输入不同 然而 奇怪的是 如果我复制加密的输出并将其硬编码为字符串文字 解密就会起作用 以下代码示例说明了该问题 我究竟做错
  • 为什么 C# 2.0 之后没有 ISO 或 ECMA 标准化?

    我已经开始学习 C 并正在寻找标准规范 但发现大于 2 0 的 C 版本并未由 ISO 或 ECMA 标准化 或者是我从 Wikipedia 收集到的 这有什么原因吗 因为编写 审查 验证 发布 处理反馈 修订 重新发布等复杂的规范文档需要
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • 如何在 Linq to SQL 中使用distinct 和 group by

    我正在尝试将以下 sql 转换为 Linq 2 SQL select groupId count distinct userId from processroundissueinstance group by groupId 这是我的代码
  • 有没有办法让 doxygen 自动处理未记录的 C 代码?

    通常它会忽略未记录的 C 文件 但我想测试 Callgraph 功能 例如 您知道在不更改 C 文件的情况下解决此问题的方法吗 设置变量EXTRACT ALL YES在你的 Doxyfile 中
  • C# 中的 IPC 机制 - 用法和最佳实践

    不久前我在 Win32 代码中使用了 IPC 临界区 事件和信号量 NET环境下场景如何 是否有任何教程解释所有可用选项以及何时使用以及为什么 微软最近在IPC方面的东西是Windows 通信基础 http en wikipedia org
  • C# 中最小化字符串长度

    我想减少字符串的长度 喜欢 这串 string foo Lorem ipsum dolor sit amet consectetur adipiscing elit Aenean in vehicula nulla Phasellus li
  • C# 使用“?” if else 语句设置值这叫什么

    嘿 我刚刚看到以下声明 return name null name NA 我只是想知道这在 NET 中叫什么 是吗 代表即然后执行此操作 这是一个俗称的 条件运算符 三元运算符 http en wikipedia org wiki Tern
  • MySQL Connector C/C API - 使用特殊字符进行查询

    我是一个 C 程序 我有一个接受域名参数的函数 void db domains query char name 使用 mysql query 我测试数据库中是否存在域名 如果不是这种情况 我插入新域名 char query 400 spri
  • 从 mvc 控制器使用 Web api 控制器操作

    我有两个控制器 一个mvc控制器和一个api控制器 它们都在同一个项目中 HomeController Controller DataController ApiController 如果我想从 HomeController 中使用 Dat

随机推荐

  • C++初探 5-1(for循环)

    目录 注 for循环 for循环的组成部分 1 表达式和语句 2 非表达式和语句 3 修改规则 for循环的使用例 阶乘的计算与存储 修改循环更新的步长 使用for循环访问字符串 递增运算符 和 递减运算符 副作用和顺序点 前缀格式和后缀格
  • NoSQL简介和兴起的原因

    NoSQL简介和兴起的原因 NoSQL数据库具有以下几个特点 1 灵活的可扩展性 2 灵活的数据模型 3 与云计算紧密融合 怎么理解横向扩展和纵向扩展 纵向扩展 传统思想 把电脑的CPU配到顶配 内存扩展 硬盘扩大 就可以让单机更高效率地处
  • 用字节数截取字符串

    昨天去参加中科软的笔试 编程题有一道是关于字符串的 用字节数来截取字符串 如果出现中文被截断了 应该丢去中文的那个字节 如 String a 中aaa国ccc 截取6个字节的字符串 即 中aaa 国 的前一部分 设计一个函数 把截到的中文的
  • 电路设计中发光二极管用作指示灯时的限流电阻如何选择

    在设计电路时经常要用到发光二极管作为指示灯 按照网上所查到的限流电阻计算方法一般得到的限流电阻阻止在几十到一百多欧姆 电源为5V或者3 3V 但是在实际使用中我们一般使用的限流电阻不会这么小 下面是限流电阻的计算公式 R VCC VF IF
  • 表格单元格td设置宽度无效的解决办法

    http zzstudy offcn com archives 11366 在做table页面时 有时对td设置的宽度是无效的 td的宽度始终有内部的内容撑开 可以设置padding 但直接设置width却无效 下面我们来具体看下这个示例
  • 如何更好的理解PFC(功率因数校正)

    功率因数补偿 在上世纪五十年代 已经针对具有感性负载的交流用电器具的电压和电流不同相 图1 从而引起的供电效率低下提出了改进方法 由于感性负载的电流滞后所加电压 由于电压和电流的相位不同使供电线路的负担加重导致供电线路效率下降 这就要求在感
  • redis面试题(转)

    转自 https blog csdn net xiaozhegaa article details 80692017 1 什么是Redis Redis本质上是一个Key Value类型的内存数据库 很像memcached 整个数据库统统加载
  • CSerialPort教程4.3.x (5) - CSerialPort在cmake中的使用

    CSerialPort教程4 3 x 5 CSerialPort在cmake中的使用 环境 系统 windows 10 64位 QT 5 12 9 5 9及以上版本支持cmake构建 MFC vs2008 前言 CSerialPort项目是
  • Vsftp安装与配置

    在linux环境下 使用最多的FTP服务端软件就是Vsftpd 系统用户模式虽然可以控制访问 但是如果用户过多 就会影响服务器系统的管理 对服务器安全造成威胁 而且我们需要的仅仅是可以使用搭建在服务器的FTP服务而已 那么就需要我们设置虚拟
  • Elasticsearch实战(六)---高级搜索 boost控制权重实现搜索结果排名

    Elasticsearch实战 Boost 搜索结果排名 文章目录 Elasticsearch实战 Boost 搜索结果排名 1 Boost权重控制 1 1 准备数据 1 2 默认查询 1 3 boost控制修改权重 2 多Shard Bo
  • 十七、定时任务

    一 为什么需要定时任务 相关业务场景多 例如 1 凌晨一点进行相关数据同步 2 定时发送文章 3 半小时全量推送某些数据给用户 二 单机定时任务 Timer java util Timer是 JDK 1 3 开始就已经支持的一种定时任务的实
  • 多线程面试手撕题

    按序打印 我们提供了一个类 public class Foo public void one print one public void two print two public void three print three 三个不同的线程
  • 【雕爷学编程】Arduino动手做(93)--- 有关OLED屏的两个非常重要的知识点:像素点点阵和坐标系

    37款传感器与执行器的提法 在网络上广泛流传 其实Arduino能够兼容的传感器模块肯定是不止这37种的 鉴于本人手头积累了一些传感器和执行器模块 依照实践出真知 一定要动手做 的理念 以学习和交流为目的 这里准备逐一动手尝试系列实验 不管
  • Redis(一)单实例部署配置

    一 下载 安装 安装环境 CentOS 7 下载地址 http download redis io releases redis 4 0 11 tar gz 下载后通过FTP工具上传到服务器 app redis package 或者使用命令
  • 如何在Windows PowerShell中获取当前的用户名?

    本文翻译自 How do I get the current username in Windows PowerShell 如何在Windows PowerShell中获取当前的用户名 1楼 参考 https stackoom com qu
  • 第一章 Centos7.5介绍与安装部署-centos7.5知识

    一 历史发展 Linux 操作系统的鼻祖Unix 肯 汤姆逊和丹尼斯 里 奇于1969年在贝尔实验室建立了Unix操作系统 一款同时支持多人登录的操作系统 为了开发此系统他们发明了C语言 并于1983年俩人获得了图灵奖 GNU社区的建立 1
  • docker(二)基础命令

    一 docker命令 镜像 1 查看docker版本 docker v docker version decker info 可以查看所有运行容器的镜像数量 运行容器的版本 可以分配的CPU 总的内存等信息 docker的工作目录 var
  • 计算机网络期末复习总结大全(持续更新中)

    计算机网络知识点总结大全 第一章 概述 知识点1 第一次理论课 互联网的两个基本特点 联通性和资源共享 互联网 多个网络通过一些路由器相互连接起来 构成一个覆盖范围更大的计算机网络 即互联网 互联网不等于互连网 1969年ARPANET诞生
  • robot framework 使用四:分层设计和截图以及注意事项

    再说一下目前的主要环境信息和版本 操作系统 win7 64位 python版本 2 7 6 RIDE版本 1 2 3 selenium2library 1 5 0 selenium 2 40 0 pip 1 5 4 setuptools 0
  • 数值计算笔记之数值积分(一)

    目录 0 引言 一 数值积分的积分思想 1 中矩形公式 2 梯形公式 3 辛普森公式 二 求积公式的余项和代数精度 三 插值型求积公式 四 牛顿 柯特斯公式 N C公式 五 复化求积法 1 复化梯形公式 2 复化辛普森公式 要求 n 为偶数