# LaRCsim Files

Here is my attempt to organize descriptions of the various LaRCsim files required to implement the equations of flight. 99% of the following text is copied straight out of email from Bruce, source code comments, or the LaRCsim manual.

### Core LaRCsim Header Files

ls_generic.h:
  1 LaRCSim generic parameters header file. Defines the ``GENERIC'' structure which holds the current value of the flight model parameters and states.
ls_types.h:
  LaRCSim type definitions header file. Defines the following types: SCALAR, VECTOR_3, and DATA.
ls_constants.h:
  LaRCSim constants definition header file. Defines various constants and various units conversions.
ls_sim_control.h:
  LaRCSim simulation control parameters header file

### Core LaRCsim Routines

The following share the ls_generic.h, ls_types.h, and ls_constants.h header files.

ls_accel.c:
  ls_accel() sums the forces and moments from aero, engine, gear, transfer them to the center of gravity, and calculate resulting accelerations.
ls_step.c:
  ls_step() Integration routine for equations of motion (vehicle states.) Integrates accels velocities and velocities positions.
ls_aux.c:
  ls_aux() Takes the new state information (velocities and positions) and calculates other information, like Mach, pressures & temps, alpha, beta, etc. for the new state. It does this by calling atmos_62() ls_geodesy() and ls_gravity().
atmos_62.c
  atmos_62() 1962 standard atmosphere table lookups.
ls_geodesy.c
  ls_geoc_to_geod(lat_geoc, radius, lat_geod, alt, sea_level_r) ls_geod_to_geoc(lat_geod, alt, sl_radius, lat_geoc) since vehicle position is in geocentric lat/lon/radius, this routine calculates geodetic positions lat/lon/alt ls_gravity - calculates local gravity, based on latitude & altitude.
ls_gravity:
  ls_gravity( SCALAR radius, SCALAR lat, SCALAR *gravity ) Gravity model for LaRCsim.

### Secondary LaRCsim Routines

The following routines help manage the simulation

ls_model.c:
  ls_model() Model loop executive. Calls the user supplied routines: inertias(), subsystems(), engine(), aero(), and gear().
default_model_routines.c:
  Provides stub routines for the routines that are normally provided by the user.

### Navion Specific Routines

ls_cockpit.h:
  Header for cockpit IO. Stores the current state of all the control inputs.
navion_aero.c:
  aero() Linear aerodynamics model. Initializes all the specific parameters if not initialized. The expected outputs from aero() are the aerodynamic forces and moments about the reference point, in lbs and ft-lbs, respectively, being stored in the F_aero_v and M_aero_v vectors.
navion_engine.c:
  engine() Calculate the forces generated by the engine.
navion_gear.c:
  gear() Landing gear model for example simulation.
navion_init.c:
  model_init() Initializes navion math model

### About this document ...

This document was generated using the LaTeX2`HTML` translator Version 96.1 (Feb 5, 1996) Copyright © 1993, 1994, 1995, 1996, Nikos Drakos, Computer Based Learning Unit, University of Leeds.

The command line arguments were:
latex2html `-split 0 LaRCsim-notes.tex`.

The translation was initiated by Curtis L. Olson on Mon Dec 15 13:14:31 CST 1997

### Google Advertisements - Click to support FlightGear

### Latest Version

v2.0.0 - 18 Feb 2010

A new major update of the FligtGear simulator. Please check the readme

### Notam

Would all pilots try and avoid mpserver02 as its often overloaded.