# Parabolic Cylinder Functions C++ Version
This project is a faster version of MATLAB code original from E. Cojocaru. Parabolic Cylinder Functions (https://www.mathworks.com/matlabcentral/fileexchange/22620-parabolic-cylinder-functions)
The API is similar to original functions, such as `val = pwlx(a,x);` -> `val = pcf_mex(a,x,'pwlx');`
The MATLAB toolbox only support scalar inputs, pcf_mex now support 1D array of size (1,n) or (n,1), return value will have size(n,1).
Intel compiler, OPENMP, AVX2 or AVX512 are utilized to speed up the calculation.
I tested it with simple benchmark : pcf_mex(-1,linspace(4,5,1e6),'pwlx'), unit is seconds
% 0.3994 intel compiler 2021 + openmp + avx2
% 1.0733 vs + openmp + avx2
% 1.0858 vs + openmp
% 9.7933 vs
% 4.476539 original + parfor
% 32.521651 original
The first one is compiled with Visual Studio + Intel OneAPI, intel compiler 2021 is much more faster.
没有合适的资源?快使用搜索试试~ 我知道了~
matlab_抛物线圆柱函数C++快速版
共10个文件
m:4个
cpp:2个
md:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 200 浏览量
2022-06-27
02:27:16
上传
评论
收藏 38KB ZIP 举报
温馨提示
比原始Matlab代码快11倍
资源推荐
资源详情
资源评论
收起资源包目录
Cylinder.zip (10个子文件)
README.md 916B
pcf.mexw64 74KB
LICENSE 1KB
compile.m 2KB
src
parabolic_cylinder_function.cpp 31KB
pcf_mex.cpp 659B
pcf_mex.m 823B
includes
parabolic_cylinder_function.h 925B
pcf.m 816B
benchmark.m 364B
共 10 条
- 1
资源评论
自不量力的A同学
- 粉丝: 61
- 资源: 2709
下载权益
C知道特权
VIP文章
课程特权
开通VIP
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功