seakeeping 是一个适用于船舶耐波性相关计算的函数包。
基于编程经验,对特定领域编写更详实的表达型代码,有助于从底层提高代码的可读性、可维护性、可描述性。
于是,形成了这个包,用于表达、计算船舶耐波性问题。事实证明,本包的确提高了我的编码效率与代码复用。
除此之外,还有 fffc 通用函数库,kissfft-f 快速傅里叶变换库,以及其他一些包,可以用于船舶耐波性问题的求解。
本包也支持使用 meson 构建,可以使用 meson 的 subproject 功能,将 seakeeping 作为子项目引入。
> meson setup _build  # 配置 meson 构建目录
> meson compile -C _build  # 编译
在 meson.build 中,可以使用 subproject 函数引入 seakeeping:
seakeeping_dep = subproject('seakeeping').get_variable('seakeeping_dep')
理论上,Meson 支持 Windows/macOS/Linux 下的 gfortran, macOS/Linux 下的 ifort。 若需要支持 Windows 下的 ifort, 可搭配 VS2022 进行编译。
这里列举其他适用于船舶耐波性问题的包:
此外,还有 CAE 模型的解析和数值模型可视化,技术细节层面如函数积分、统计、排序、特殊函数等内容。