开始
该库包含一系列地理加权模型的 C++ 实现。目前已经实现的模型有:
地理加权回归
地理加权汇总统计
地理加权主成分分析
与其他库相比,该库具有下列特性:
[x] 高效的纯 C++ 实现
[x] 可以作为动态库或静态库引入
[x] 使用 OpenMP 进行算法加速
[x] 使用 CUDA 以实现极高性能
[x] 基于 CMake 实现跨平台配置和构建
[x] 基于 Cython 的 Python 外壳
借助于面向对象的代码风格,该类很容易被集成进其他 C++ 项目。
安装
可以使用 CMake 进行编译和安装。需要下列依赖项:
Armadillo 以及一个 BLAS 和 LAPACK 实现。例如 OpenBLAS 和 Intel MKL。
OpenMP (如果
ENABLE_OPENMP
被定义),通常由编译器提供。在 macOS 上,默认不支持 OpenMP。CUDA 和 cuBLAS (如果
ENABLE_CUDA
被定义,目前相关功能尚未实现)Cython (如果定义了
WITH_PYTHON
)
然后使用 cmake
命令配置项目,例如
mkdir build
cd build
cmake ..
然后编译项目,例如
cmake --build . --config Release -T host=x64
目前,还不支持自动安装。
用法
通常,在项目中包含 gwmodel.h
头文件即可。
查看测试项目中的 static.cpp
或 shared.cpp
文件以获取更多信息。
未来将提供在 Python 调用的案例。
对于 Python 的支持已经归档。请查看标签
v0.2.0
。
开发
该仓库提供了 VSCode 容器开发环境配置。开发者可以创建一个开箱即用的容器。使用方法如下,
安装 Docker。
使用 VSCode 打开该仓库。
按下
Ctrl+P
以打开命令面板,然后选择“在容器中打开”。等待容器构建完成。
当容器构建完成,就可以进行开发和测试了。