学习笔记——利用CC++语言计算二重积分
二重积分定义如下(来源百度百科)
以z=xy在区域0<=y<=1,0<=x<=y內的二重积分为例,经计算理论值为:0.125,下面用C语言实现二重积分的离散计算
#include <iostream>
using namespace std;
double fun_dbjf(double step,double low_y, double high_y, double(*p_y_1)(double), double(*p_y_2)(double), double(*p_f_x_y)(double, double));//计算f(x,y)的二次积分
double fun_jf_fxy(double step, double low_x, double high_x, double y, double(*p_x)(double, double));//计算函数f(x,y0)的积分
double fun_fxy(double x, double y);//函数f(x,y)
double fun_y_l(double x);//下限积分
double fun_y_h(double x);//上限积分
int main(int argc, char*argv[])
{cout << "二次积分值为:" << fun_dbjf(0.00001, 0, 1, fun_y_l, fun_y_h, fun_fxy) << endl;cout << "理论值为:" << 1.0 / 8.0;}
double fun_dbjf(double step,double low_y, double high_y, double(*p_y_l)(double), double(*p_y_h)(double), double(*p_f_x_y)(double, double))
{double sum = 0;for (double t = low_y; t < high_y; t += step){sum += fun_jf_fxy(step, (*p_y_l)(t), (*p_y_h)(t), t, p_f_x_y)*step;}return sum;
}
double fun_jf_fxy(double step, double low_x, double high_x, double y,double(*p_x)(double,double))
{double sum = 0;for (double t = low_x; t < high_x; t += step){sum += (*p_x)(t, y)*step;}return sum;
}
double fun_fxy(double x, double y)
{return x*y;
}
double fun_y_l(double x)
{return 0;//f(x)=0
}
double fun_y_h(double x)
{return x;//f(x)=x
}
运行结果:
运行时间较长,但结果与理论值十分接近
学习笔记——利用CC++语言计算二重积分相关推荐
- Java快速入门学习笔记3 | Java语言中的表达式与操作符
有人相爱,有人夜里开车看海,有人却连LeetCode第一题都解不出来!虽然之前系统地学习过java课程,但是到现在一年多没有碰过Java的代码,遇到LeetCode不知是喜是悲,思来想去,然后清空自己 ...
- 【学习笔记】C++语言程序设计(郑莉):数组、指针与字符串
[学习笔记]C++语言程序设计(郑莉):数组.指针与字符串 1. 数组 1.1 数组的声明与使用 1.2 数组的存储与初始化 1.3 数组作为函数参数 1.4 对象数组 2. 指针 2.1 内存空间的 ...
- Java快速入门学习笔记9 | Java语言中的方法
有人相爱,有人夜里开车看海,有人却连LeetCode第一题都解不出来!虽然之前系统地学习过java课程,但是到现在一年多没有碰过Java的代码,遇到LeetCode不知是喜是悲,思来想去,然后清空自己 ...
- Java快速入门学习笔记8 | Java语言中的数组
有人相爱,有人夜里开车看海,有人却连LeetCode第一题都解不出来!虽然之前系统地学习过java课程,但是到现在一年多没有碰过Java的代码,遇到LeetCode不知是喜是悲,思来想去,然后清空自己 ...
- Java快速入门学习笔记7 | Java语言中的类与对象
有人相爱,有人夜里开车看海,有人却连LeetCode第一题都解不出来!虽然之前系统地学习过java课程,但是到现在一年多没有碰过Java的代码,遇到LeetCode不知是喜是悲,思来想去,然后清空自己 ...
- Java快速入门学习笔记2 | Java语言中的基本类型
有人相爱,有人夜里开车看海,有人却连LeetCode第一题都解不出来!虽然之前系统地学习过java课程,但是到现在一年多没有碰过Java的代码,遇到LeetCode不知是喜是悲,思来想去,然后清空自己 ...
- sizzle.js学习笔记利用闭包模拟实现数据结构:字典(Map)
sizzle.js学习笔记利用闭包模拟实现数据结构:字典(Map) 这几天学习和查看了jQuery和Property这两个很流行的前端库的御用选择器组件Sizzle.js的源代码,收获还是相对多的!之 ...
- [UVMC]UVMC学习笔记之跨语言作用域的config操作
UVMC学习笔记二 --- 跨语言作用域的config操作 前言:UVMC引入了特定的内存共享方法,可以在UVM/SystemVerilog与SystemC模块之间传递记名的半全局变量,在使用方式上类 ...
- 23 DesignPatterns学习笔记:C++语言实现 --- 2.2 Adapter
23 DesignPatterns学习笔记:C++语言实现 --- 2.2 Adapter 2016-07-22 (www.cnblogs.com/icmzn) 模式理解 1. Adapter 定义 ...
最新文章
- js经典校验之注册与登录校验
- 分享5个可视化的正则表达式编辑工具
- 【小白学PyTorch】扩展之Tensorflow2.0 | 20 TF2的eager模式与求导
- CGRectInset CGRectoffset UIEdgeInsetsInsetRect 这三个函数的使用情况
- LeetCode 58. 最后一个单词的长度
- 堆排序可运行完整C语言,Java语言,python实现
- 服务器上tomcat运行php文件路径,如何在同一服务器环境上运行PHP和Tomcat?
- 前华为、魅族CMO加盟小米,雷军这样评价
- 什么叫“职业年金”,与养老保险有什么关系?
- 用Python生成测试数据
- Pytorch的可视化工具tensorboardX
- 使用Bartend提取K3领料数据以实现发料包装标识批量自动打印
- 【Java基础-3】吃透Java IO:字节流、字符流、缓冲流
- springboot 调用萤石Saas平台
- [BZOJ2286] [Sdoi2011]消耗战
- mysql如何提高查询效率_MySQL调优系列——如何提高MySQL的查询效率
- WinForm 无边框窗体四周阴影 窗体可拖动 无边框自定义标题栏
- 重磅!!微软终于对 JDK 下手了…
- 瑞萨电子RZ/G2L开发板上手评测
- 深度学习数学基础——矩阵微分篇