• 大小: 516KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-06-18
  • 语言: 其他
  • 标签: C++  matlab  西工大  

资源简介

。。。。。。。。。。。。。一门课程设计的代码,学这专业的自然懂。。。。。。。。。。。。。。。。。。。。。

资源截图

代码片段和文件信息

#include 
#include 
#include 
#include 
#include 
#include
#include

using namespace std;


#define Cx 0.160
#define d 0.299
#define q 216.5
#define g 9.806
const double pi=3.141592653;


bool RungeKutta(int n
double x0
vector initValue
vector)>fun
double stepLength
double stepNum
map >&result);

//标准弹丸阻力系数Cx0
const double Cx0Low[14][10]=
{
0.2590.2610.2620.2630.2650.2670.2680.2710.2750.281
0.2840.2890.2940.3010.3100.3200.3330.3550.3620.378
0.3930.4100.4250.4420.4560.4720.4880.5040.5190.534
0.5460.5570.5670.5770.5870.5970.6080.6160.6240.631
0.6390.6460.6530.6590.6640.6680.6730.6770.6820.686
0.6900.6940.6980.7010.7040.7070.7090.7120.7140.717
0.7190.7200.7220.7230.7250.7260.7270.7280.7290.730
0.7310.7320.7330.7330.7340.7350.7360.7360.7370.737
0.7370.7370.7370.7370.7360.7360.7360.7360.7350.735
0.7350.7340.7330.7330.7320.7320.7310.7300.7290.729
0.7280.7270.7260.7250.7250.7240.7230.7220.7210.720
0.7190.7180.7170.7160.7150.7140.7130.7120.7110.710
0.7090.7070.7060.7050.7030.7020.7010.7000.6990.698
0.6970.6950.6940.6920.6910.6890.6880.6870.6850.684
};

const double Cx0High[3][10]={
0.6970.6830.6670.6550.6400.6270.6130.5970.5880.574
0.5610.5480.5380.5250.5140.5030.4930.4830.4740.465
0.4570.4480.4400.4330.4260.4200.0000.0000.0000.000
};

//计算标准弹丸阻力系数,附表 6
double GetCx0(double vdouble a)
{
    double Ma=v/a;
    if(Ma<0.7)
{
     return 0.259;
}
    else if(Ma >= 2.10)
{
     int row = int(Ma);
     int col = int((Ma - int(Ma))*10);
     return Cx0High[row-2][col];
}
    else
{
     int row = int(Ma * 10) - 7;
     int col = int((Ma * 10 - int(Ma * 10))*10);
     return Cx0Low[row][col];
}
}

//定义pi常数,设定初速度的初始角
const double theta01 = (-5)*pi/180;


//计算标准空速,式(1-37)
double GetStdAirSpeed(double tao)
{
    return sqrt(1.404 * 9.806 * 29.27 * tao);
}

//计算虚拟温度tao t = t0 – Gy G = 5.862E-3
double GetTao(double tao0double H)
{
    return (tao0 - (H * 5.862E-3)/(1 - ((3*8.4)/(760*8))));
}

//计算考虑虚拟温度的比重函数
double GetHtao(double H)
{
    return sqrt(GetTao(288.4H)/288.4) *((20000 - H)/(20000 + H) + pow(1-2.1905E-5 * H5.4))/2.0;
}

//计算弹道系数,式(1-43)
double GetC(double Hdouble v)
{
    return (Cx * pow(d * 1E-22))*1E3 /(GetCx0(vGetStdAirSpeed(GetTao(288.4H))) * q);;//i公式?
}

//计算空气阻力函数
double GetGVtao(double Hdouble v)
{
    return sqrt(GetTao(288.4H)/288.4) * 4.737E-4 *v * v * GetCx0(vGetStdAirSpeed(GetTao(288.4H)));
}


//**********方程组*********
//计算 du/dt
double du_dt(double xvector y)
{
    double H = 2000 + y[3] * sin(theta01) - y[4];
    double v = sqrt(pow(y[0]2) + pow(y[1]2)- 2 * y[0] * y[1] * cos(pi/2.0 - theta0

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     目录           0  2019-05-01 18:04  代码\
     目录           0  2019-05-01 18:04  代码\C\
     目录           0  2019-05-01 18:04  代码\C\wdd\
     目录           0  2019-05-01 18:04  代码\C\wdd\bin\
     目录           0  2019-05-01 18:04  代码\C\wdd\bin\Debug\
     文件     1795740  2019-04-24 17:24  代码\C\wdd\bin\Debug\wdd.exe
     文件        9147  2019-04-24 17:23  代码\C\wdd\main.cpp
     目录           0  2019-05-01 18:04  代码\C\wdd\obj\
     目录           0  2019-05-01 18:04  代码\C\wdd\obj\Debug\
     文件      321968  2019-04-24 17:23  代码\C\wdd\obj\Debug\main.o
     文件       17637  2019-04-24 15:49  代码\C\wdd\out.txt
     文件       17634  2019-04-24 17:24  代码\C\wdd\out1.txt
     文件        1094  2019-01-18 17:53  代码\C\wdd\wdd.cbp
     文件         151  2019-04-24 15:35  代码\C\wdd\wdd.depend
     文件         360  2019-04-24 19:02  代码\C\wdd\wdd.layout
     目录           0  2019-05-01 18:04  代码\MATLAB\
     文件         277  2019-04-24 19:06  代码\MATLAB\wdd1.m
     文件         486  2019-04-24 19:05  代码\MATLAB\wdd2.m

评论

共有 条评论