]> git.mxchange.org Git - flightgear.git/blobdiff - src/FDM/UIUCModel/uiuc_coef_roll.cpp
Port over remaining Point3D usage to the more type and unit safe SG* classes.
[flightgear.git] / src / FDM / UIUCModel / uiuc_coef_roll.cpp
index 57026aaaacd4091841efdfb77e1cd3ca6a9b6c38..2545c79574f654a8439102d83c51c8469d8063a2 100644 (file)
@@ -81,8 +81,7 @@
 
  You should have received a copy of the GNU General Public License
  along with this program; if not, write to the Free Software
- Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
- USA or view http://www.gnu.org/copyleft/gpl.html.
+ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
 
 **********************************************************************/
 
@@ -114,7 +113,7 @@ void uiuc_coef_roll()
                 Clo = uiuc_ice_filter(Clo_clean,kClo);
               }
            Clo_save = Clo;
-            Cl += Clo;
+            Cl += Clo_save;
             break;
           }
         case Cl_beta_flag:
@@ -123,8 +122,15 @@ void uiuc_coef_roll()
               {
                 Cl_beta = uiuc_ice_filter(Cl_beta_clean,kCl_beta);
               }
-           Cl_beta_save = Cl_beta * Beta;
-            Cl += Cl_beta * Beta;
+           Cl_beta_save = Cl_beta * Std_Beta;
+           if (eta_q_Cl_beta_fac)
+             {
+               Cl += Cl_beta_save * eta_q_Cl_beta_fac;
+             }
+           else
+             {
+               Cl += Cl_beta_save;
+             }
             break;
           }
         case Cl_p_flag:
@@ -136,7 +142,20 @@ void uiuc_coef_roll()
             /* Cl_p must be mulitplied by b/2U 
                (see Roskam Control book, Part 1, pg. 147) */
            Cl_p_save = Cl_p * P_body * b_2U;
-            Cl += Cl_p * P_body * b_2U;
+//         if (Cl_p_save > 0.1) {
+//           Cl_p_save = 0.1;
+//         }
+//         if (Cl_p_save < -0.1) {
+//           Cl_p_save = -0.1;
+//         }
+           if (eta_q_Cl_p_fac)
+             {
+               Cl += Cl_p_save * eta_q_Cl_p_fac;
+             }
+           else
+             {
+               Cl += Cl_p_save;
+             }
             break;
           }
         case Cl_r_flag:
@@ -148,7 +167,14 @@ void uiuc_coef_roll()
             /* Cl_r must be mulitplied by b/2U 
                (see Roskam Control book, Part 1, pg. 147) */
            Cl_r_save = Cl_r * R_body * b_2U;
-            Cl += Cl_r * R_body * b_2U;
+           if (eta_q_Cl_r_fac)
+             {
+               Cl += Cl_r_save * eta_q_Cl_r_fac;
+             }
+           else
+             {
+               Cl += Cl_r_save;
+             }
             break;
           }
         case Cl_da_flag:
@@ -158,7 +184,7 @@ void uiuc_coef_roll()
                 Cl_da = uiuc_ice_filter(Cl_da_clean,kCl_da);
               }
            Cl_da_save = Cl_da * aileron;
-            Cl += Cl_da * aileron;
+            Cl += Cl_da_save;
             break;
           }
         case Cl_dr_flag:
@@ -168,7 +194,14 @@ void uiuc_coef_roll()
                 Cl_dr = uiuc_ice_filter(Cl_dr_clean,kCl_dr);
               }
            Cl_dr_save = Cl_dr * rudder;
-            Cl += Cl_dr * rudder;
+           if (eta_q_Cl_dr_fac)
+             {
+               Cl += Cl_dr_save * eta_q_Cl_dr_fac;
+             }
+           else
+             {
+               Cl += Cl_dr_save;
+             }
             break;
           }
         case Cl_daa_flag:
@@ -177,8 +210,8 @@ void uiuc_coef_roll()
               {
                 Cl_daa = uiuc_ice_filter(Cl_daa_clean,kCl_daa);
               }
-           Cl_daa_save = Cl_daa * aileron * Alpha;
-            Cl += Cl_daa * aileron * Alpha;
+           Cl_daa_save = Cl_daa * aileron * Std_Alpha;
+            Cl += Cl_daa_save;
             break;
           }
         case Clfada_flag:
@@ -188,7 +221,7 @@ void uiuc_coef_roll()
                                            Clfada_ClArray,
                                            Clfada_nAlphaArray,
                                            Clfada_nda,
-                                           Alpha,
+                                           Std_Alpha,
                                            aileron);
             Cl += ClfadaI;
             break;
@@ -200,7 +233,7 @@ void uiuc_coef_roll()
                                               Clfbetadr_ClArray,
                                               Clfbetadr_nBetaArray,
                                               Clfbetadr_ndr,
-                                              Beta,
+                                              Std_Beta,
                                               rudder);
             Cl += ClfbetadrI;
             break;
@@ -216,8 +249,8 @@ void uiuc_coef_roll()
                                               Clfabetaf_nb_nice,
                                               Clfabetaf_nf,
                                               flap_pos,
-                                              Alpha,
-                                              Beta);
+                                              Std_Alpha,
+                                              Std_Beta);
            else
              ClfabetafI = uiuc_3Dinterpolation(Clfabetaf_fArray,
                                                Clfabetaf_aArray,
@@ -227,8 +260,8 @@ void uiuc_coef_roll()
                                                Clfabetaf_nbeta,
                                                Clfabetaf_nf,
                                                flap_pos,
-                                               Alpha,
-                                               Beta);
+                                               Std_Alpha,
+                                               Std_Beta);
             Cl += ClfabetafI;
             break;
           }
@@ -243,7 +276,7 @@ void uiuc_coef_roll()
                                             Clfadaf_nda_nice,
                                             Clfadaf_nf,
                                             flap_pos,
-                                            Alpha,
+                                            Std_Alpha,
                                             aileron);
            else
              ClfadafI = uiuc_3Dinterpolation(Clfadaf_fArray,
@@ -254,7 +287,7 @@ void uiuc_coef_roll()
                                              Clfadaf_nda,
                                              Clfadaf_nf,
                                              flap_pos,
-                                             Alpha,
+                                             Std_Alpha,
                                              aileron);
             Cl += ClfadafI;
             break;
@@ -270,7 +303,7 @@ void uiuc_coef_roll()
                                             Clfadrf_ndr_nice,
                                             Clfadrf_nf,
                                             flap_pos,
-                                            Alpha,
+                                            Std_Alpha,
                                             rudder);
            else
              ClfadrfI = uiuc_3Dinterpolation(Clfadrf_fArray,
@@ -281,7 +314,7 @@ void uiuc_coef_roll()
                                              Clfadrf_ndr,
                                              Clfadrf_nf,
                                              flap_pos,
-                                             Alpha,
+                                             Std_Alpha,
                                              rudder);
             Cl += ClfadrfI;
             break;
@@ -298,7 +331,7 @@ void uiuc_coef_roll()
                                            Clfapf_np_nice,
                                            Clfapf_nf,
                                            flap_pos,
-                                           Alpha,
+                                           Std_Alpha,
                                            p_nondim);
            else
              ClfapfI = uiuc_3Dinterpolation(Clfapf_fArray,
@@ -309,7 +342,7 @@ void uiuc_coef_roll()
                                             Clfapf_np,
                                             Clfapf_nf,
                                             flap_pos,
-                                            Alpha,
+                                            Std_Alpha,
                                             p_nondim);
             Cl += ClfapfI;
             break;
@@ -326,7 +359,7 @@ void uiuc_coef_roll()
                                            Clfarf_nr_nice,
                                            Clfarf_nf,
                                            flap_pos,
-                                           Alpha,
+                                           Std_Alpha,
                                            r_nondim);
            else
              ClfarfI = uiuc_3Dinterpolation(Clfarf_fArray,
@@ -337,7 +370,7 @@ void uiuc_coef_roll()
                                             Clfarf_nr,
                                             Clfarf_nf,
                                             flap_pos,
-                                            Alpha,
+                                            Std_Alpha,
                                             r_nondim);
             Cl += ClfarfI;
             break;