计算GuassLegendre 积分
来源:互联网 发布:航天开票软件开票流程 编辑:程序博客网 时间:2024/05/03 08:35
! GuassLegendre.f90 !! FUNCTIONS:!! 计算GuassLegendre 积分! 封建湖, 车刚明, 聶玉峰, 等. 数值分析原理[M]. 科学出版社, 2001.! P116例4.4! 日期:2015/07/28! BY: Wlq!****************************************************************************!! PROGRAM: GuassLegendre!! PURPOSE: Entry point for the console application.!!**************************************************************************** PROGRAM GuassLegendre IMPLICIT NONE INTEGER I, J ,K INTEGER ORDER !选取几阶高斯积分 REAL(KIND=8) GT(7,7),GC(7,7) !高斯点矩阵,高斯系数矩阵 REAL(KIND=8) xk,Ak !高斯积分点和高斯系数 REAL(KIND=8) fx !高斯积分求解结果 REAL(KIND=8),PARAMETER:: pi = 4.*atan(1.) REAL(KIND=8),PARAMETER:: half = 0.5 REAL(KIND=8) tmp1,tmp2,tmp3 !用于表达被积函数 !高斯点(按行赋值,只对矩阵下三角的元素赋值,积分时需要几阶精度就把矩阵的第几行取出来) DATA ((GT(I, J), J=1, I), I=1,7) /& 0.0, & -0.5773502693, 0.5773502693, & -0.7745966692, 0.0, 0.7745966692, & -0.8611363114, -0.3399810437, 0.3399810437, 0.8611363114, & -0.9061798457, -0.5384693100, 0.0, 0.5384693100, 0.9061798457, & -0.9324695142, -0.6612093865, -0.2386191861, 0.2386191861, 0.6612093865, 0.9324695142, & -0.9491079123, -0.7415311856, -0.4058451514, 0.0, 0.4058451514, 0.7415311856, 0.9491079123/ !高斯系数(按行赋值,只对矩阵下三角的元素赋值,积分时需要几阶精度就把矩阵的第几行取出来) DATA ((GC(I, J), J=1, I), I=1,7) /& 2.0, & 1.0, 1.0, & 0.5555555556, 0.8888888889, 0.5555555556, & 0.3478548451, 0.6521451549, 0.6521451549, 0.3478548451, & 0.2369268851, 0.4786286705, 0.5688888889, 0.4786286705, 0.2369268851, & 0.1713244924, 0.3607615730, 0.4679139346, 0.4679139346, 0.3607615730, 0.1713244924, & 0.1294849662, 0.2797053915, 0.3818300505, 0.4179591837, 0.3818300505, 0.2797053915, 0.1294849662/ !积分精度可选1阶至7阶 DO ORDER=1,7 fx = 0.0 DO K=1,ORDER !积分精度为几阶,就使用GT和GC矩阵里的第几行的系数 xk = GT(ORDER,K) Ak = GC(ORDER,K) !计算高斯点处被积函数的函数值 tmp1 = half*pi*(xk+1.0) tmp2 = exp(tmp1)*cos(tmp1) !高斯点处被积函数的函数值乘以权重 tmp3 = Ak*tmp2 !各高斯点累加 fx = fx+tmp3 fx = half*pi*fx !变量代换后积分号外面有个系数(b-a)/2 END DO WRITE(*,*) ORDER,"阶高斯积分结果:" WRITE(*,*) fx END DO END PROGRAM GuassLegendre
0 0
- 计算GuassLegendre 积分
- 计算积分的function
- 用龙贝格法计算积分
- 一些积分计算技巧
- simulink计算积分
- matlab计算积分
- openCV计算积分图
- opencv积分图计算
- 快速计算积分图
- 计算积分图
- 快速计算积分图
- csdn积分计算详解
- Adaboost-积分图计算
- 计算定积分
- 快速计算积分图
- 反常积分计算细节
- 使用MPI 计算积分
- Ronberg算法计算积分
- 常用chrome快捷键
- 新手转入Linux引导--安装
- HDU 3460 Ancient Printer (字典树)
- C++: 复制构造函数
- hdu3117
- 计算GuassLegendre 积分
- Unity Assets目录下的特殊文件夹名称(作用和是否会被打包到build中)
- 线程的创建
- hdu1568
- hdu 1757
- 献给初学者的10个Git技巧
- oracle dblink 在存储过程里执行效率很慢,单独执行很快的问题解决
- 【Python基础】Python中的协程
- 华为0J之---字符逆序(出现问题)