- 博客(526)
- 收藏
- 关注

原创 shell命令资料
xargs是 Unix/Linux 系统中的一个强大命令,用于从标准输入构建和执行命令行。它的主要作用是将输入数据转换为命令行参数,解决"参数列表过长"的问题,并提高命令执行的效率。find是 Linux/Unix 系统中一个非常强大的文件查找工具,它可以根据各种条件(如文件名、类型、大小、修改时间等)在目录树中搜索文件,并对找到的文件执行操作。
2025-05-31 20:27:22
1103
原创 开源高频电磁场与电磁波数值仿真软件
这些工具通常需要一定的编程基础,但社区文档和示例较为丰富。商业软件(如CST、HFSS)的替代方案中,OpenEMS和Meep是最接近的开源选择。
2025-06-10 17:24:59
394
原创 libfmt: 现代C++的格式化工具库介绍与酷炫功能
类型安全:编译时类型检查高性能:比printf和iostream更快简洁API:类似Python的格式化语法可扩展:支持自定义类型的格式化兼容性:支持C++11及以上标准// 自定义格式化// 使用// 输出: Point: (1.2, 4.6)类型安全的格式化自定义类型支持彩色输出容器和复杂类型格式化编译时检查和优化高性能实现如果你还在使用printf或iostream。
2025-06-09 19:46:19
311
原创 spdlog 介绍与使用指南
/ 获取默认日志器并设置格式// 格式说明:// %Y - 年// %m - 月// %d - 日// %H - 小时// %M - 分钟// %S - 秒// %e - 毫秒// %l - 日志级别// %t - 线程ID// %v - 实际消息return 0;spdlog 是一个功能强大且易于使用的 C++ 日志库,适合从简单到复杂的各种应用场景。它的高性能和灵活性使其成为许多 C++ 项目的首选日志解决方案。
2025-06-09 19:40:22
483
原创 使用 std::span视图容器
是 C++20 引入的一个轻量级非拥有(non-owning)视图容器,用于表示连续内存序列的视图。它不管理内存,只是提供对现有连续内存的安全访问接口。2. 创建 span3. 访问元素4. 子视图操作5. 其他常用操作高级用法1. 固定大小的 span2. 与标准算法一起使用3. 作为函数参数注意事项 不拥有其元素,它只是视图确保 的生命周期不超过底层数据对于只读访问,使用 固定大小的 可以提供更好的编译时检查 是替代原始指针和大小对的一种更安全的方式,特
2025-06-07 10:00:35
314
原创 boost::qvm 使用示例
boost::qvm (Quaternions, Vectors and Matrices) 是 Boost 库中的一个组件,专门用于处理向量、矩阵和四元数运算。
2025-06-06 20:07:10
228
原创 Unigine游戏渲染引擎
Unigine 是小众但强大的引擎,适合对图形保真度、物理仿真或大规模环境有极高要求的项目,尤其在非游戏领域(如科研、工业)表现突出。但对于独立游戏开发者,可能需要权衡其学习成本和专业性需求。
2025-06-03 10:26:36
1308
原创 Pygubu: A GUI Designer for Python and Tkinter
【代码】Pygubu: A GUI Designer for Python and Tkinter。
2025-06-03 10:08:47
732
原创 NAMD分子动力学工具介绍和使用指南
NAMD (Nanoscale Molecular Dynamics) 是一款高性能的并行分子动力学模拟软件,由伊利诺伊大学厄巴纳-香槟分校的理论与计算生物物理组开发。它特别适用于大规模的生物分子系统模拟。
2025-06-02 14:13:08
441
原创 Ceres Solver 简介与使用指南
Ceres Solver 是一个功能强大且灵活的非线性优化库,特别适合解决最小二乘问题。通过定义合适的代价函数和配置求解器选项,可以解决各种优化问题。在实际应用中,合理选择损失函数和线性求解器对优化效果和效率有很大影响。更多详细信息和高级用法,可以参考 Ceres Solver 的官方文档:http://ceres-solver.org/
2025-06-02 14:06:32
790
原创 GTSAM 库介绍与使用指南
GTSAM (Georgia Tech Smoothing and Mapping) 是一个开源的C++库,用于解决机器人技术中的传感器融合问题,特别是同时定位与地图构建(SLAM)和运动结构恢复(SfM)问题。它实现了因子图模型和贝叶斯网络,提供了高效的推理算法。
2025-06-02 14:03:06
552
原创 FVM中场梯度计算方法比较
在有限体积法(FVM)中,计算场梯度的准确性对数值模拟结果至关重要,尤其是对质量差的网格(如高纵横比、非正交性或扭曲的网格)。通过合理选择梯度计算方法,即使网格质量较差,也能保证模拟的稳定性和精度。
2025-05-31 20:45:54
611
原创 Qlib量化工具介绍与使用指南
Qlib是微软亚洲研究院开发的一个面向AI的量化投资平台,旨在为量化研究人员和从业者提供从数据处理到模型训练、回测的一站式解决方案。
2025-05-31 20:35:02
533
原创 AMBER软件介绍
AMBER(Assisted Model Building with Energy Refinement)是一套广泛应用于分子动力学(MD)模拟和生物分子结构分析的软件工具集,尤其在蛋白质、核酸、多糖等生物大分子的模拟中表现突出。1. AMBER软件组成AmberTools:免费的开源工具包,包含预处理、模拟、分析工具。sander(MD引擎)、pmemd(优化版)、(小分子参数化)、tleap(拓扑文件生成)等。AMBER主程序:商业许可的高性能版本(如pmemd.CUDA支持GPU加速)。
2025-05-31 18:48:33
602
原创 GROMACS 软件包介绍与使用指南
GROMACS (GROningen MAchine for Chemical Simulations) 是一款高性能的分子动力学模拟软件包,主要用于生物分子体系的模拟。高效性:高度优化的代码,特别擅长在CPU上运行多功能:支持常规MD、拉伸动力学、自由能计算等多种模拟方法开源免费:遵循LGPL许可证跨平台:支持Linux、Windows和macOS活跃社区:拥有广泛的用户群体和活跃的开发团队。
2025-05-30 18:16:40
734
原创 OpenInventor 介绍和使用指南
OpenInventor是一种面向对象的3D图形工具包,最初由Silicon Graphics公司(SGI)在20世纪90年代早期开发。它基于OpenGL构建,提供了一种高级别的、面向对象的场景图API,用于开发3D图形应用程序。public:protected:// 实现自定义几何生成。
2025-05-30 14:52:30
477
原创 PRECICE 工具介绍与使用示例
PRECICE (Precise Code Interaction Coupling Environment) 是一个开源的耦合库,用于实现多物理场仿真中不同求解器之间的协同仿真。它允许不同的仿真软件(如计算流体力学(CFD)和结构力学(CSM)工具)在运行时交换数据并进行耦合计算。支持并行计算提供灵活的耦合配置可处理非匹配网格支持显式和隐式耦合方案提供多种数据映射方法。
2025-05-30 14:13:52
998
原创 接触力学教学教程资料
接触力学是固体力学的重要分支,涉及弹性/塑性体接触时的应力、变形、摩擦、磨损等复杂问题。可根据学生背景灵活调整理论深度与工程案例的比例,建议搭配COMSOL或Python的Jupyter Notebook互动建模提升学习效果。
2025-05-26 17:59:00
249
原创 OpenFOAM中实现UDF(User Defined Function)的方法
创建继承自的类实现自定义功能。创建文件和内容如下:// 类定义public:// 构造函数等// 获取速度场// 类定义 public :// 构造函数等 virtual bool execute();// 获取速度场 const volVectorField & U = mesh_ . lookupObject < volVectorField >("U");// 自定义计算 scalar maxVel = max(mag(U)) . value();("U");
2025-05-26 16:57:47
456
原创 OpenFOAM 字典系统与求解器配置解析机制
OpenFOAM 使用一套独特的字典(dictionary)系统来管理求解器的配置和参数设置。这套系统是 OpenFOAM 的核心组成部分,负责配置文件的解析、加载和访问。字典系统是 OpenFOAM 灵活配置的核心,理解其工作原理有助于更好地编写和调试 OpenFOAM 求解器和工具。
2025-05-26 16:55:23
511
原创 使用Python解析CGNS文件中的zone-zone链接信息
CGNS (CFD General Notation System) 是一种用于计算流体动力学(CFD)数据的标准文件格式。要解析CGNS文件并提取zone之间的链接信息,可以使用Python的CGNS库。希望这些代码示例能帮助你解析CGNS文件中的zone-zone连接信息!CGNS文件可能有不同的版本和结构,上述代码可能需要根据实际情况调整。如果遇到复杂的CGNS结构,可能需要结合CGNS标准文档进行分析。对于大型CGNS文件,考虑使用内存映射或分块读取以提高性能。
2025-05-26 15:15:34
378
原创 MPI实现中对消息传递的优化
在MPI实现中,消息传递的优化是核心设计目标之一。等性能工具分析,不同应用模式(如halo交换与all-to-all)可能需要相反的参数设置。建议通过微基准测试(如OSU Benchmark)确定最佳配置。
2025-05-26 12:05:59
1183
原创 MPI实现大数据Ring Broadcast逻辑
Ring Broadcast是一种在并行计算中高效传播大数据的技术,特别适合在MPI环境中使用。下面我将介绍如何用MPI实现这种广播逻辑。这个实现提供了基本的Ring Broadcast功能,可以根据具体应用场景进行进一步优化。
2025-05-26 11:59:48
361
原创 MPI与多线程(如OpenMP)混合编程注意事项与性能优化
通过合理结合MPI的进程级并行和OpenMP的线程级并行,可以充分利用现代集群的计算资源,实现更高的并行效率和更好的性能扩展性。
2025-05-26 11:42:08
1318
原创 MPI函数中TAG参数的解释与使用
tag参数是MPI消息传递中非常重要的一个特性,合理使用可以使程序逻辑更清晰,通信更可靠。在MPI(Message Passing Interface)中,参数是一个整数值,用于区分不同类型的消息。
2025-05-26 11:38:52
456
原创 GitHub 上关于 HDF5 使用教程的资源
包含 C、C++、Fortran 和 Python 的官方示例代码。是 Python 中最常用的 HDF5 库,官方仓库包含示例代码。包含 C、Python 和 Fortran 的 HDF5 使用示例。提供 C++ 的 HDF5 读写示例,适用于科学计算和数据存储。一个现代 C++ 封装的 HDF5 库,提供更友好的 API。一个简单的 Fortran HDF5 教程,适合初学者。提供 Python 使用 HDF5 的示例代码,包括。一个完整的 HDF5 课程,涵盖多种编程语言的使用。
2025-05-23 15:21:47
840
原创 Linux 操作文本文件列数据的常用命令
这些命令可以单独使用,也可以通过管道组合使用,形成强大的文本处理流水线。工具集(需安装) - 专门处理CSV文件。- 字符转换(常用于列数据)- 强大的文本处理工具。- 基于共同列合并文件。
2025-05-23 14:24:51
426
原创 在MPI中将全局通信子划分为节点本地通信子
在MPI (Message Passing Interface) 中,将全局通信子(communicator)划分为每个节点上的本地通信子是一个常见的需求,特别是在混合并行编程(MPI+OpenMP)或节点内通信优化时。
2025-05-22 15:12:22
210
原创 MPI中近邻(neighborhood)之间的All-to-All通信
近邻All-to-All通信允许在非规则拓扑结构中,每个进程只与其"邻居"进程进行通信,而不是与通信器中的所有进程通信。这种通信模式特别适用于图结构或网格拓扑。
2025-05-22 15:07:07
231
原创 SCons构建工具使用指南及示例
CPPPATH=['/usr/local/include', '/opt/include'], # 头文件搜索路径LIBPATH=['/usr/local/lib', '/opt/lib'], # 库文件搜索路径LIBS=['m', 'pthread'], # 链接的库CCFLAGS='-O2 -Wall' # 编译选项# 自定义命令示例# target[0]是输出目录# source是输入文件列表使用Python脚本作为构建配置文件自动依赖分析跨平台支持高度可扩展。
2025-05-22 14:51:13
276
原创 MPI中通信耗时模型
在MPI(Message Passing Interface)通信模型中,通信耗时模型用于量化不同通信操作的时间成本。实际性能需结合具体MPI实现(如OpenMPI、MPICH)和硬件(InfiniBand、以太网)调整参数。集体操作的耗时通常与**进程数 (P)消息大小 (n)**相关。
2025-05-22 14:43:40
474
原创 Eigen库介绍与使用指南
/ 固定大小矩阵// 3x3 float矩阵4, 5, 6,7, 8, 9;// 动态大小矩阵// 2x3 double矩阵// 向量// 3维float向量// 动态大小double向量// 特殊矩阵// 单位矩阵// 零矩阵// 随机矩阵cout << "3x3矩阵:\n" << mat3x3 << endl;cout << "动态矩阵:\n" << mat_dynamic << endl;
2025-05-22 14:22:17
450
原创 Armadillo C++ 线性代数库介绍与使用
Armadillo 是一个高质量的 C++ 线性代数库,提供了类似于 MATLAB 的高级语法和功能。它专注于快速开发,同时保持高性能。
2025-05-22 14:11:12
502
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人