C++
zhaopeng162
这个作者很懒,什么都没留下…
展开
-
cgdb调试命令集合
r 运行s单步进入n下一步b断点info b 断电信息display 监视(一直输出)print输出 只输出当前步原创 2021-03-11 19:32:43 · 235 阅读 · 0 评论 -
使用Box–Muller transform随机生成服从Gaussian以及log-normal分布的点
随机生成服从Gaussian分布点的方法有很多种,具体可以参考链接;本文采用的是Box-Muller transform方法。#include<stdio.h>#include<stdlib.h>#include<math.h>#define M_PI 3.14159265358979323846double generateGaussianNoise(double mu, double sigma){ double twopi = 2.0 * M_PI;原创 2020-10-14 19:22:18 · 753 阅读 · 0 评论 -
为什么C++交换函数传入数据无法完成交换
#include <iostream>using namespace std;void swap(int a, int b) { int x = a; int y = b; a = y; b = x; cout<<"swap "<<&a<<" "<<&b<<endl;}int main(){ int a = 2; int b = 8; swap原创 2020-07-23 19:53:06 · 329 阅读 · 0 评论 -
将stl文件中vertex顶点由顺时针(clockwise)排列改为逆时针(counterclockwise)
最近需要读取solidWork软件生成的复杂几何体(stl格式),用于识别一系列点位于复杂几何体内部还是外部,发现识别函数需要stl文件符合右手规则,即点的排布要逆时针顺序,而且法线方向朝外,但是solidWork生成的文件不符合这个特征,所以写了一个c++的小程序,用来实现该过程,具体内容如下:1. stl文件格式: facet normal -0.996195 0.0871562 ...原创 2020-01-08 19:35:53 · 853 阅读 · 0 评论 -
OpenFOAM按进程输出和输入文件
在某些前处理过程中需要按进程输入或者输出某些文件,例如输出网格中心高度大于0.2m的网格中心点: const volVectorField& C = mesh_.C(); string nProc = std::to_string(Pstream::myProcNo());//不同编译器形式不同 fileName gamma = "gamma" + "-" + n...原创 2019-03-19 16:52:04 · 1975 阅读 · 0 评论