FBudget:

Path: Orbit/OrbitMechanics

% Computes a fuel budget from a list of events. 
 You need only fill in the data structure with the data needed for the types of
 maneuver used. The first event should always be 'initial'.

 For delta-V maneuvers if some of the delta-V thrusters are chosen for acs use,
 those thrusters will be off-pulsed.
--------------------------------------------------------------------------
   Form:
   b = FBudget( event, x, file, title, html )
--------------------------------------------------------------------------

   ------
   Inputs
   ------
   event           (:)    Event data structure
                          event.description   (1,:) String describing the event
                          event.type          (1,:) 'initial', 'delta-v', 'delta-h', 'acs','pulses', 'circular'
                          event.aCSThruster   (1,:) List of ACS thrusters to use    <-  all
                          event.dVThruster    (1,:) List of deltaV thrusters to use <- 'delta-V'
                          event.dVTotal       (1,1) Total delta-V                   <- 'delta-V'
                          event.dTControl     (1,1) Control period                  <- 'delta-V', 'acs'
                          event.burnEff       (1,1) Burn efficiency                 <- 'delta-V'
                          event.dHTotal       (1,1) Total delta-H                   <- 'delta-H'
                          event.disturbance   (3,1) Attitude disturbance            <- 'acs'
                          event.pulsewidth    (1,1) Pulsewidth to be used           <-  all
                          event.nPulses       (1,1) Number of pulses                <-  pulse
                          event.duration      (1,1) Used for attitude control       <- 'acs'
                          event.regulated     (1,1) 1 if regulated at following level
                          event.cM            (3,1) Center of mass
                          event.circular      (1,1) struct('period',p,'radius',r,'duration',t)                 <- 'circular'

   x               (1,1)  Spacecraft data
                          x.regulatedPressure(1,:) Regulated pressure (if any)
                          x.systemTemp       (1,:) Temperature of each system
                          x.systemVol        (1,:) Volume of each system
                          x.systemFuel       (1,:) Fuel per system
                          x.pressurantMass   (1,:) Pressurant mass per system
                          x.pressurantR      (1,1) Pressurant gas constant
                          x.thrusterData     (:)   Data
                                                   .systemID  (1,1)  System it is attached to
                                                   .iSP       (1,:)  ISP coefficients*
                                                   .thrust    (1,:)  Thrust coefficients*
                                                   .riseTime  (1,:)  Thruster pulse rise time
                                                   .fallTime  (1,:)  Thruster pulse fall time
                                                   .u         (3,1)
                                                   .r         (3,1)
                          x.dryMass          (1,1) Dry mass
                          x.fuelDensity      (1,1) Fuel density
                          x.controlDT        (1,1) Control period
   file           (1,:)   File name
   title          (1,:)   Budget title
   html           (1,:)   Any argument here gives html
                   
   -------
   Outputs
   -------
   b	             (:)     b.description      (1,:) String describing the event
                          b.massTotal        (1,1) Total mass
                          b.massFuel         (1,:) Mass of fuel per system
                          b.fuelUsed         (1,:) Fuel used per system
                          b.pressure         (1,:) Pressure per system
                          b.iSpACS           (1,:) Average ACS Isp
                          by.iSpDV           (1,:) Average DV Isp

   * Note: These coefficients model the thrust an Isp for short pulses. Please see
           the functions ISp and Thrust below.
--------------------------------------------------------------------------

Children:

Common: General/CreateHTMLTable
Common: General/CreateLatexTable
Common: General/StringToTokens
Math: Analysis/Simplex
Math: Linear/Cross
Math: Linear/Mag
Math: Linear/SumV
Orbit: OrbitManeuver/CircularManeuver
SC: Actuator/BloDown

Back to the Orbit Module page