当前位置 : 主页 > 编程语言 > python >

【物理应用】基于Matlab模拟高精度轨道传播器

来源:互联网 收集:自由互联 发布时间:2022-09-29
1 内容介绍 Studying and modeling perturbations are key disciplines in astrodynamics. Although most of the solution techniques have been known for a long time, the literature only recently has begun to present (with increasing exactness)

1 内容介绍

Studying and modeling perturbations are key disciplines in astrodynamics. Although most of the solution techniques have been known for a long time, the literature only recently has begun to present (with increasing exactness) the precise methods needed to satisfactorily solve these problems. Leon Blitzer (1970) developed the Handbook of Orbital Perturbations Perturbations central body any central body. For missions to other planets, the Earth may not be the central body. Indeed, the formulas work equally well for the Earth, Mars, Saturn, and so on⎯assuming, of course, that we have accurately determined the data constants and coefficients for each central body. Bate, Mueller, and White (1971:385-386) introduce perturbations as follows. We’re familiar with random perturbations in almost every area of life. Seldom does anything go exactly as planned; rather, it is perturbed by unpredictable circumstances. An excellent example is an aircraft encountering a wind gust. All directional controls and power are kept constant; yet, the path changes abruptly from the predicted course that was based on previous measurements. In this example, the wind gust is a random perturbing force. Fortunately, most of the perturbing forces considered in orbital mechanics are more predictable and analytically tractable than a wind gust. The usual perturbing forces we consider for the orbit problem are both random and predictable. They include the asphericity of the central body, atmospheric drag and lift, third body effects, solar-radiation pressure, thrust, magnetic fields, solid-Earth and ocean tides, Earth re-radiation (albedo), relativistic effects, and others. I’ll show how to analyze most of these later. Don’t get the idea that all deviations are small—they can be comparable to the primary attracting force (two-body gravitation). Whenever they’re this large, they cease to be perturbations because the fundamental nature of the problem is different. Examples are atmospheric drag during reentry and the third body in the restricted three-body problem. In fact, many interplanetary missions would miss their target entirely if the perturbing effect of other attracting bodies weren’t taken into account! Ignoring the effects of the central body’s oblateness on any satellite keeps us from accurately predicting its position over a long time. Without analyzing perturbations, we couldn’t explain or accurately predict the orbit of the Moon about the Earth. We’ll look at the three main approaches to examine the effects of perturbations: special perturbation techniques (using numerical methods—Sec. 8.5), general perturbation techniques (using analytical methods—Chap. 9), and semianalytical techniques (a combination of analytical and numerical techniques—Chap. 9). Special perturbation techniques numerically integrate the equations of motion including all necessary perturbing accelerations. Because numerical integration is involved, we can think of numerical formulations as producing a specific, or specialanswer that is valid only for the given data (initial conditions and force-model parameters). Although numerical methods can give very accurate results and often establish the “truth” in analyses, they suffer from their specificity, which keeps us from using them in a different problem. Thus, new data means new integration, which can add lengthy computing times. NASA began the first complex numerical integrations during the late 1960s and early 1970s. Personal computers now compute sufficiently fast enough to perform complex perturbation analyses using numerical techniques. However, numerical methods suffer from errors that build up with truncation and round-off due to fixed computer wordlength. These errors can cause numerical solutions to degrade as the propagation interval lengthens. Let’s look at an example to illustrate the strengths and weaknesses of a numerical method. Start with the equation of motion in Example 8-1, which is simple, first order, and defined with a given initial condition. Find the value of this system when time, t, equals 0.5, assuming q = 1 rad/s. Obviously, this example permits a direct solution if we recognize the integral as (SIN(qt)/q).

2 部分代码

%--------------------------------------------------------------------------

%

% AccelSolrad: Computes the acceleration due to solar radiation pressure

%

%

% Inputs:

%   r           Spacecraft position vector 

%   r_Earth

%   r_Moon Moon position vector (geocentric)

%   r_Sun       Sun position vector (geocentric)

%   r_SunSSB    Sun position vector (Barycentric)

%   Area        Cross-section 

%   mass        Spacecraft mass

%   Cr          Solar radiation pressure coefficient

%   P0          Solar radiation pressure at 1 AU 

%   AU          Length of one Astronomical Unit

%   shm         Shadow model (geometrical or cylindrical)

%

% Output:

%   a     Acceleration (a=d^2r/dt^2)

%

% Notes:

%   r, r_sun, Area, mass, P0 and AU must be given in consistent units,

%   e.g. m, m^2, kg and N/m^2. 

%

% Last modified:   2018/01/27   Meysam Mahooti

%--------------------------------------------------------------------------

function a = AccelSolrad(r,r_Earth,r_Moon,r_Sun,r_SunSSB,Area,mass,Cr,P0,AU,shm)


%        Moon wrt Earth          pccor      rpc

%        Earth wrt Sun           ccor       rc

%        Moon wrt Sun            pscor      rps   

%        Satellite wrt Earth     sbcor      rsb  

%        Satellite wrt Sun       bcor       rb 

%        Satellite wrt Moon      sbpcor     rsbp

pccor = r_Moon;

ccor = r_Earth-r_SunSSB;

pscor = r_Moon-r_Sun;

sbcor = r;

bcor = r-r_Sun;

sbpcor = r-r_Moon;


if ( strcmp(shm,'cylindrical') )

    nu = Cylindrical(r,r_Sun);

else

    [nu,~] = Shadow(pccor,ccor,pscor,sbcor,bcor,sbpcor);

end


% Acceleration

a = nu*Cr*(Area/mass)*P0*(AU*AU)*bcor/(norm(bcor)^3);


3 运行结果

【物理应用】基于Matlab模拟高精度轨道传播器_ide

【物理应用】基于Matlab模拟高精度轨道传播器_ide_02

【物理应用】基于Matlab模拟高精度轨道传播器_matlab代码_03

【物理应用】基于Matlab模拟高精度轨道传播器_solr_04

4 参考文献

部分理论引用网络文献,若有侵权联系博主删除。


上一篇:【图像去雾】Matlab实现9种去雾图像评价
下一篇:没有了
网友评论