跳到内容

米凯尔·斯莱文斯基/DEQuarture.jl

文件夹和文件

姓名姓名
上次提交消息
上次提交日期

最近一次提交

 
 
 
 
 
 
 
 
 
 
 
 
 

存储库文件导航

数据元素.jl

这样做的目的朱莉娅该软件包将成为茱莉亚最快的通用正交软件包。它在算术上支持标准区间、半无限域和无限域包括BigFloat公司并在复杂情况下支持最大化收敛速度积分轮廓附近存在奇点。因为包可以处理积分代数和对数端点奇点,因为它允许用户考虑其他域,方法是声明类型的新实例,该包是通用的。

该模块的主要功能是计算节点和权重变量变换后的梯形规则双指数终点衰减。此外,变量转换最大化收敛速度,尽管在解区间附近存在复杂奇异点。

该模块的辅助功能计算共形映射小时(吨)式(3.14)中[1].本模块要求使用Julia包Ipopt求解非线性程序。

包装.克隆("https://github.com/MikaelSlevinsky/ScicFun.jl.git网站")包装.克隆("https://github.com/MikaelSlevinsky/DEQuadrature.jl.git")使用SincFun,DEQuarture公司

示例4.1来自[1]

假设我们对计算以下积分感兴趣:

(f)=x个-> 经验(1/绝对值2(x)-z(z)[1]))/绝对值2(x)-z(z)[2])

关于区间[-1,1]奇点:

z(z)=[复杂的(-0.5,1);复杂的(0.5,0.5)]

以及左端点的平方根奇点和右端点的对数奇点。我们使用软件包功能DEMap值计算优化图和函数DENodes和Weights计算节点和权重。在几何递增阶上循环,我们可以非常准确地近似积分:

小时= DEMap值(z;域=有限(-1,1,-0.5,0,0,1))对于= 1以下为:6x、 w个= DENodes和Weights(h,2^i;b2因子=0.5,域=有限(-1,1,-0.5,0,0,1))val值= ((f).(x),w)错误= 防抱死制动系统(有效值-解析(浮点64,DE正交.示例4p1))打印ln(@冲刺("顺序:%2i值:%19.16e相对错误:%6.2e",i,val,err))结束

示例4.2来自[1]

该软件包同样支持BigFloat公司s、 轻松实现高精度计算!假设我们对计算以下积分感兴趣:

(f)=x个-> 经验(10/绝对值2(x)-z(z)[1]))*余弦(10/绝对值2(x)-z(z)[2]))/绝对值2(x)-z(z)[])/防抱死制动系统(x)-z(z)[4])

在奇点的实线上:

z(z)=[复杂的(大的(-2),1);复杂的(-1,.5);复杂的(1,0.25);复杂的(2,1)]

我们首先设置数字我们希望:

DE正交.数字(100)

然后,我们使用package函数DEMap值计算优化后的映射和函数DENodes和Weights计算节点和权重。在几何递增阶上循环,我们可以非常准确地近似积分:

小时= DEMap值(z;域=无限1(大浮动)对于= 1以下为:10x、 w个= DENodes和Weights(h,2^i;领域=无限1(大浮动)val值= ((f).(x),w)错误= 防抱死制动系统(有效值-解析(BigFloat、DEQuarture.示例4p2))打印ln(@冲刺("顺序:%2i值:%19.16e相对错误:%6.2e",i,val,err))结束

示例4.4来自[1]

假设我们对计算以下积分感兴趣:

(f)=x个->x个/防抱死制动系统(x)-z(z)[1])/绝对值2(x)-z(z)[2])/绝对值2(x)-z(z)[])

[0,∞)奇点:

z(z)=[复杂的(大的(1),1);复杂的(2,.5);复杂的(,1//)]

我们使用包函数辛帕德多根自适应计算奇异点的近似位置。然后,我们使用package函数DENodes和Weights计算优化的节点和权重。在几何递增阶上循环,我们可以非常准确地近似积分:

x个= 0(BigFloat,5);对于= 1以下为:4x、 周= DENodes和Weights(复杂{BigFloat}[],2^i;领域=半无限2(大浮动)val值= ((f).(x),w)错误= 防抱死制动系统(有效值-解析(BigFloat、DEQuarture.示例4p4))打印ln(@冲刺("顺序:%2i值:%19.16e相对错误:%6.2e",i,val,err))结束
对于= 5以下为:8(p,q)= 辛帕德((f).(x),x,div公司(长度(x)-1,2),我-2,我+2)根vec= 多根(q)x、 周= DENodes和Weights(转换(向量{Complex{BigFloat}},rootvec[结束-4以下为:2以下为:结束]),2^i;领域=半无限2(BigFloat),提示=25)val值= ((f).(x),w)错误= 防抱死制动系统(有效值-解析(BigFloat、DEQuarture.示例4p4))打印ln(@短跑("顺序:%2i值:%19.16e相对错误:%6.2e",i,val,err))结束

参考文献:

  1. R.M.Slevinsky和S.Olver。关于保角映射的使用关于梯形规则收敛的加速和Sinc数值方法,SIAM J.科学。计算。,37:A676--A700,2015年。此处显示早期版本:arXiv:1406.3320.

关于

用于高精度正交的Julia封装

资源

许可证

星星

观察者

叉子

发布

未发布版本

包装

未发布包

语言文字