From: Jon S. B. <jb...@us...> - 2008-03-09 08:16:08
|
Update of /cvsroot/jsbsim/JSBSim/src/models In directory sc8-pr-cvs17.sourceforge.net:/tmp/cvs-serv21342/src/models Modified Files: FGLGear.cpp FGPropagate.cpp FGPropagate.h Log Message: Enhancements, cleanups, and modifications mostly to the trim code, with a new example Index: FGLGear.cpp =================================================================== RCS file: /cvsroot/jsbsim/JSBSim/src/models/FGLGear.cpp,v retrieving revision 1.37 retrieving revision 1.38 diff -C2 -r1.37 -r1.38 *** FGLGear.cpp 20 Jan 2008 17:46:49 -0000 1.37 --- FGLGear.cpp 9 Mar 2008 08:15:59 -0000 1.38 *************** *** 347,352 **** // Compute the forces in the wheel ground plane. ! RollingForce = ((1.0 - TirePressureNorm) * 30 ! + vLocalForce(eZ) * BrakeFCoeff) * (RollingWhlVel>=0?1.0:-1.0); SideForce = vLocalForce(eZ) * FCoeff; --- 347,352 ---- // Compute the forces in the wheel ground plane. ! double sign = RollingWhlVel>0?1.0:(RollingWhlVel<0?-1.0:0.0); ! RollingForce = ((1.0 - TirePressureNorm) * 30 + vLocalForce(eZ) * BrakeFCoeff) * sign; SideForce = vLocalForce(eZ) * FCoeff; Index: FGPropagate.cpp =================================================================== RCS file: /cvsroot/jsbsim/JSBSim/src/models/FGPropagate.cpp,v retrieving revision 1.24 retrieving revision 1.25 diff -C2 -r1.24 -r1.25 *** FGPropagate.cpp 1 Mar 2008 05:15:21 -0000 1.24 --- FGPropagate.cpp 9 Mar 2008 08:15:59 -0000 1.25 *************** *** 390,394 **** // Include Gravitation accel ! vUVWdot += Tl2b*vGravAccel; } --- 390,395 ---- // Include Gravitation accel ! FGColumnVector3 gravAccel = Tl2b*vGravAccel; ! vUVWdot += gravAccel; } *************** *** 398,402 **** { // Transform the vehicle velocity relative to the ECEF frame, expressed ! // in the body frame, to be expressed in the ECI (inertial) frame. vLocationDot = Tb2ec * VState.vUVW; --- 399,403 ---- { // Transform the vehicle velocity relative to the ECEF frame, expressed ! // in the body frame, to be expressed in the ECEF frame. vLocationDot = Tb2ec * VState.vUVW; Index: FGPropagate.h =================================================================== RCS file: /cvsroot/jsbsim/JSBSim/src/models/FGPropagate.h,v retrieving revision 1.21 retrieving revision 1.22 diff -C2 -r1.21 -r1.22 *** FGPropagate.h 1 Mar 2008 05:15:21 -0000 1.21 --- FGPropagate.h 9 Mar 2008 08:15:59 -0000 1.22 *************** *** 98,102 **** class FGPropagate : public FGModel { public: ! /** Constructor @param Executive a pointer to the parent executive object */ FGPropagate(FGFDMExec* Executive); --- 98,108 ---- class FGPropagate : public FGModel { public: ! /** Constructor. ! The constructor initializes several variables, and sets the initial set ! of integrators to use as follows: ! - integrator, rotational rate = Adams Bashforth 2 ! - integrator, translational rate = Adams Bashforth 2 ! - integrator, rotational position = Trapezoidal ! - integrator, translational position = Trapezoidal @param Executive a pointer to the parent executive object */ FGPropagate(FGFDMExec* Executive); *************** *** 108,120 **** enum eIntegrateType {eNone = 0, eRectEuler, eTrapezoidal, eAdamsBashforth2, eAdamsBashforth3}; ! /// State vector structure. struct VehicleState { ! /// Represents the current location of the vehicle. FGLocation vLocation; ! /// The velocity vector of the vehicle in body frame. FGColumnVector3 vUVW; ! /// The angular velocity vector for the vehicle in body frame. FGColumnVector3 vPQR; ! /// Represents the current orientation of the vehicle. FGQuaternion vQtrn; }; --- 114,134 ---- enum eIntegrateType {eNone = 0, eRectEuler, eTrapezoidal, eAdamsBashforth2, eAdamsBashforth3}; ! /** The current vehicle state vector structure contains the translational and ! angular position, and the translational and angular velocity. */ struct VehicleState { ! /** Represents the current location of the vehicle in Earth centered Earth ! fixed (ECEF) frame. ! @units ft */ FGLocation vLocation; ! /** The velocity vector of the vehicle with respect to the ECEF frame, ! expressed in the body system. ! @units ft/sec */ FGColumnVector3 vUVW; ! /** The angular velocity vector for the vehicle relative to the ECEF frame, ! expressed in the body frame. ! @units rad/sec */ FGColumnVector3 vPQR; ! /** The current orientation of the vehicle, that is, the orientation of the ! body frame relative to the local, vehilce-carried, NED frame. */ FGQuaternion vQtrn; }; *************** *** 122,127 **** /** Initializes the FGPropagate class after instantiation and prior to first execution. The base class FGModel::InitModel is called first, initializing pointers to the ! other FGModel objects (and others). ! */ bool InitModel(void); --- 136,140 ---- /** Initializes the FGPropagate class after instantiation and prior to first execution. The base class FGModel::InitModel is called first, initializing pointers to the ! other FGModel objects (and others). */ bool InitModel(void); |