$$ D = Cd * .5 * rho * V^2 * A $$

其中D等于阻力,rho是空气密度,V是速度,A是参考面积,Cd是阻力系数。

$$ Re = V * rho * l / mu $$

其中l是参考长度,μ是粘性系数。对于大多数空气动力学物体,阻力系数在很大的雷诺数范围内具有几乎恒定的值。由雷诺数范围定下阻力系数Cd。

图1  取自空气粘度网  15℃及25℃时    空气粘度及空气运动粘度

图1 取自空气粘度网 15℃及25℃时 空气粘度及空气运动粘度

图4  取自空气粘度网  标准大气压(不同温度)下空气特性

图4 取自空气粘度网 标准大气压(不同温度)下空气特性

图2  百度百科  不同大气压(25℃)下空气特性

图2 百度百科 不同大气压(25℃)下空气特性

图3  百度百科  空气密度计算公式(已知大气压强与实际温度求空气密度)

图3 百度百科 空气密度计算公式(已知大气压强与实际温度求空气密度)

图5  阻力系数k1,雷诺数取值范围

图5 阻力系数k1,雷诺数取值范围

//关于空气阻力系数
// k1 = k / m , k由空气密度rho(温度T,大气压强P)、迎风面积S(直径d、)、雷诺数(10m/s~30m/s综合速度v)、空气动态粘度系数mu所得
// rho(20℃、101.3k) = 1.204 kg / m³ 
// S(0.042m) = 0.2125 * 0.2125 * PI
// mu = 1.825 e-5 = 0.00001825
// 阻力系数C≈0.5
//42.5mm弹丸	0.009342
//16.8mm弹丸	0.019616	
double k1 = 0.009342;
//收敛速度系数(不宜太大,会爆炸)
//爆炸了暂时没用
//double alpha = 0.1;

代码

mu=2.791e-7 * T ^ 0.7355;        %from a curve fit so could change to a better function
rho=P/(287.058 * T);          %could incorporate reduction in pressure and tempreture with height
c=331.3 * sqrt(T/273.15);     %could use variable adiabatic index/heat capacity ratio
v=(y(3)^2+y(4)^2)^0.5;
Re=rho * v * D/mu;
Ma=min(v/c,1);
Cd0=24.0/Re+2.6*(Re/5)/(1+(Re/5)^1.52)+0.411*(Re/2.63e5)^-7.94/(1+(Re/2.63e5)^-8)+0.25*(Re/1e6)/(1+(Re/1e6));
Cd=Cd0 * (1-0.445*Ma+4.84*Ma^2-9.73*Ma^3+6.93*Ma^4)/sqrt(1+1.2*Ma*Cd0);

参考

RoboMaster弹道解算算法:电控实现 | 搬砖笔记 (sourcelizi.github.io)