/*  
***************************************************************************
**
** PURPOSE: Sway/Yaw Dynamics for the Altex Vehicle.  Header File
** AUTHOR:  Rob McEwen
** DATE:    99/2/23
**
** NOTES: 
** 1) All units are in SI (mks & radians) unless otherwise noted.
**
***************************************************************************
*/
#define DIM_M 6
/*
** Index into the Parameter array, P.  P is passed in from the Matlab stack, 
** where it is created by run.m
*/
#ifndef _TAILCONE
#define _TAILCONE
enum PIndex{  MIx,
              massIx = DIM_M * DIM_M,
	      IxxIx,
	      IyyIx,
	      IzzIx,
	      IxyIx,
	      IyzIx,
	      IzxIx,        
              WIx,
              xGIx,
              yGIx,
              zGIx,
              BIx,
              xBIx,
              yBIx,
              zBIx,
              MSurgeIx,
              velIx,
              XrvIx,
              XrrIx,
              XuuIx,
              XvvIx,
              XqqIx,
              XwqIx,
              XwwIx,
              YvIx,
              YrIx,
              YwpIx,
              YrabsrIx,
              YvabsrIx,
              YvabsvIx,
              ZqIx,
              ZwIx,
              ZvpIx,
              ZqabsqIx,
              ZwabswIx,
              KpabspIx,
              MqIx,
              MwIx,
              MprIx,
              MqabsqIx,
              MwabswIx,
              NvIx,
              NrIx,
              NpqIx,
              NrabsvIx,
              NvabsvIx,
              NrabsrIx,
              DecoupleIx,
              xRIx,          /* Vehicle CG to ring CP; < 0 in Body Coord      */
              xPIx,          /* Veh CG to elevator pivot; < 0 in Body Coord   */
              xPRIx,         /* Dist frm Elev pivot to rudder pivot, < 0      */
              r_Ro_S1_R0Ix,  /* Do not insert any other params in this block; */
              r_Ro_S1_R1Ix,  /* these are assumed by the code to be in this   */
              r_Ro_S1_R2Ix,  /* order.                                        */
              r_Ro_S2_R0Ix,
              r_Ro_S2_R1Ix,
              r_Ro_S2_R2Ix,
              r_Ro_S3_R0Ix,
              r_Ro_S3_R1Ix,
              r_Ro_S3_R2Ix,
              r_Ro_S4_R0Ix,
              r_Ro_S4_R1Ix,
              r_Ro_S4_R2Ix,
              r_Ro_S5_R0Ix,
              r_Ro_S5_R1Ix,
              r_Ro_S5_R2Ix,
              r_Ro_S6_R0Ix,
              r_Ro_S6_R1Ix,
              r_Ro_S6_R2Ix,
              r_Ro_S7_R0Ix,
              r_Ro_S7_R1Ix,
              r_Ro_S7_R2Ix,
              r_Ro_S8_R0Ix,
              r_Ro_S8_R1Ix,
              r_Ro_S8_R2Ix,
              aRIx,
              rR1Ix,         /* See notes, 99/4/20 p.15, Eqns. 74 & 75.*/
              rR2Ix,
              xRRIx,         /* = xR as defined on p. 13. */
              dClIx,
              Cl2Ix,         /* Cdc/Ar */
              Cd0Ix,
              Cd2Ix,         /* 1/pi/Ar/Ef */
              halfRhoSIx,    /* .5*rho*ControlArea */
              dClRIx,
              Cl2RIx,        /* CdcR/ArR */
              Cd0RIx,
              Cd2RIx,        /* 1/pi/ArR/EfR */
              halfRhoSRIx,   /* .5*rho*RingArea */
              StallIx,       /* Strut & Ring stall angle */
              u0,
              v0,
              w0,
              p0,
              q0,
              r0,
              x0,
              y00,           /* Compile error: y0 already declared??? */
              z0,
              phi0,
              theta0,
              psi0,
              NPARAMS
      };

#endif
