diff --git a/hdw-a333x/src/base/headwindsim-aircraft-a330-300/SimObjects/Airplanes/Headwind_A330_300/flight_model.cfg b/hdw-a333x/src/base/headwindsim-aircraft-a330-300/SimObjects/Airplanes/Headwind_A330_300/flight_model.cfg index d9928422..3034cc78 100644 --- a/hdw-a333x/src/base/headwindsim-aircraft-a330-300/SimObjects/Airplanes/Headwind_A330_300/flight_model.cfg +++ b/hdw-a333x/src/base/headwindsim-aircraft-a330-300/SimObjects/Airplanes/Headwind_A330_300/flight_model.cfg @@ -5,14 +5,14 @@ minor = 0 [WEIGHT_AND_BALANCE] max_gross_weight = 518086 ; Maximum takeoff weight, (LBS) empty_weight = 271168 ; Empty weight, (LBS); Includes weight to account for crew, pantry, galleys, lavs, potable water, emergency equipment etc. -reference_datum_position = 0, 0, 0 +reference_datum_position = 0, 0, 0 ; Position of reference datum relative to FS(0,0,0) (FEET), z, x, y ; adjust empty weight CG position to ensure 26.2% MAC at Empty Weight -empty_weight_CG_position = -28.276, 0, 0 ; Position of airplane empty weight CG relative to reference datum (FEET), z, x, y +empty_weight_CG_position = -27.56, 0, 0 ; Position of airplane empty weight CG relative to reference datum (FEET), z, x, y CG_forward_limit = 0.15 ; Gravity center forward limit (longitudinal offset) for longitudinal stability CG_aft_limit = 0.41 ; Gravity center after limit (longitudinal offset z) w.r.t reference datum for longitudinal stability (FEET) -empty_weight_pitch_MOI = 28163472 ; Empty pitch moment of inertia, Jxx (SLUG SQ FEET) -empty_weight_roll_MOI = 9217827 ; Empty roll moment of inertia, Jzz (SLUG SQ FEET) -empty_weight_yaw_MOI = 36117016 ; Empty yaw moment of inertia, Jyy (SLUG SQ FEET) +empty_weight_pitch_MOI = 23228924 ; Empty pitch moment of inertia, Jxx (SLUG SQ FEET) +empty_weight_roll_MOI = 14300433 ; Empty roll moment of inertia, Jzz (SLUG SQ FEET) +empty_weight_yaw_MOI = 35047716 ; Empty yaw moment of inertia, Jyy (SLUG SQ FEET) empty_weight_coupled_MOI = 10000 ; Empty transverse moment of inertia, Jyz (SLUG SQ FEET) activate_mach_limit_based_on_cg = 0 ; Activate mach limitation depending on CG position (true if > 0 /false othewise). Mostly for Concorde). activate_cg_limit_based_on_mach = 0 ; Activate cg limitation depending on mach value (true if > 0 /false othewise). Mostly for Concorde). @@ -23,7 +23,7 @@ activate_cg_limit_based_on_mach = 0 ; Activate cg limitation depending on mach v ; MZFW = 173000 kg/381400 lbs ; OEW = 123000 kg/271168 lbs ; Max Payload = 44836 kg/98846 lbs -; Max Fuel = 97530 ltrs (111665 kg)/36743 us gal (246179 lbs) @ specific gravity of 0.8 ISA conditions +; Max Fuel = 139087 ltrs (111665 kg)/36743 us gal (246179 lbs) @ specific gravity of 0.8 ISA conditions ; Average Adult pax assumed to be 185lbs/84kg ; Passenger baggage weight of 20 kg/pax is also added, making total pax + baggage weight = 104 kg/pax (i.e. Passenger weight on Simbrief) ; Starting load is 0% of capacity @@ -177,7 +177,7 @@ Trigger.10 = Name:CloseLeftOuterTankValves5MinAfterLowFuelLevel#Target:LeftOuter Trigger.11 = Name:CloseRightOuterTankValves5MinAfterLowFuelLevel#Target:LeftOuter#Threshold:1#Condition:TankQuantityBelow#DelayTrue:300#EffectTrue:CloseValve.RightTransferValve1,CloseValve.RightTransferValve2 [AIRPLANE_GEOMETRY] -aileron_area=160.60 +aileron_area=200 aileron_down_limit=25 aileron_elasticity_table = 0:1, 400:1 ;; A32NX PR #5842 aileron_to_rudder_scale=0 @@ -187,7 +187,7 @@ air_spoiler_limit=45 auto_spoiler_auto_retracts=0 auto_spoiler_available=0 auto_spoiler_min_speed=72 -elevator_area=211.40 +elevator_area=300 elevator_down_limit=17 elevator_elasticity_table = 0:1, 400:1 ;; A32NX PR #7516 elevator_trim_elasticity_table= 0:0.3, 100:0.35, 120:1, 400:1 @@ -197,15 +197,15 @@ elevator_trim_neutral=0 elevator_up_limit=25 flap_to_aileron_scale=0 fly_by_wire=0 -fuselage_center_pos=-24.987358, 0, 3.121224 -fuselage_diameter=18.5 -fuselage_length=208.86 -htail_area = 883.29 -htail_incidence=0 +fuselage_center_pos=-26.0, 0, 2.5 +fuselage_diameter=9.25 +fuselage_length=204.0 +htail_area = 900 +htail_incidence= 0 htail_pos_lon = -120 htail_pos_vert = 10 htail_span = 63.65 -htail_sweep= 32 +htail_sweep=32 htail_thickness_ratio=0.02 load_safety_factor=1.5 min_ailerons_for_spoilerons=5 @@ -215,7 +215,7 @@ negative_g_limit_flaps_up=-1 oswald_efficiency_factor=0.72 positive_g_limit_flaps_down=2 positive_g_limit_flaps_up=2.5 -rudder_area=116.14 +rudder_area=250 rudder_elasticity_table=0:1, 85:1, 110:0.7, 445:0.136 rudder_limit=25 rudder_trim_limit = 0 ; Rudder trim max deflection angle (absolute value) (DEGREES) @@ -223,21 +223,21 @@ spoiler_extension_time=0.1 spoiler_handle_available=1 spoiler_limit=45 spoilerons_available=0 -vtail_area=486.85 -vtail_pos_lon=-107 -vtail_pos_vert=23.5 -vtail_span=28.87 -vtail_sweep=43 -vtail_thickness_ratio=0.028 -wing_area=3892.23 -wing_camber=3 -wing_dihedral=8 -wing_incidence=0 -wing_pos_apex_lon=25.193029 +vtail_area=1000 +vtail_pos_lon=-108 +vtail_pos_vert=25 +vtail_span=27.2 +vtail_sweep=45 +vtail_thickness_ratio=0.02 +wing_area=3500 +wing_camber=1 +wing_dihedral=5 +wing_incidence=2 +wing_pos_apex_lon=-50 ; NOT USED wing_pos_apex_vert=-2.8 -wing_root_chord=34.61 +wing_root_chord=70 wing_span=209.97 -wing_sweep=30 +wing_sweep=33 wing_thickness_ratio=0.03 wing_twist=-1 wing_winglets_flag = 1 ; Has winglets true/false (not currently used by MSFS) @@ -250,7 +250,7 @@ lift_coef_delta_elevator = -1.652 ; The change in lift per change in elevator de lift_coef_horizontal_incidence = 0 ; The change in lift per change in horizontal incidence angle lift_coef_flaps = 1.2 ; Change in lift due to flaps lift_coef_spoilers = -0.25 ; Change in lift due to spoilers- Full extension at MMO/VMO -0.34, at M0.90 0, Ground spoilers -0.60, Partial ground spoilers -0.425 -drag_coef_zero_lift = 0.0200 ; The zero lift drag polar +drag_coef_zero_lift = 0.0280 ; The zero lift drag polar drag_coef_flaps = 0.0602 drag_coef_gear = 0.030 drag_coef_spoilers = 0.05775; Change in drag due to spoilers @@ -285,7 +285,7 @@ yaw_moment_delta_rudder = 1.321 ; (control)The change in yaw moment per change i yaw_moment_delta_rudder_propwash = 1.321 ; (control) yaw_moment_delta_rudder_trim_scalar = 1.321 ; Change in yaw moment due to rudder trim compute_aero_center = 0 -aero_center_lift = -28.0 ; Init to center +aero_center_lift = -27.0 ; Init to center lift_coef_aoa_table = -3.150000:0.000000, 0.000000:0.224000, 0.139000:1.390000, 0.200000:1.480000, 0.260000:1.760000, 0.290000:1.750000, 0.320000:1.600000, 0.500000:1.500000, 3.150000:0.000000 lift_coef_ground_effect_mach_table = 0.0:1.178, 0.15:1.178, 0.19:1.178, 0.20:1.176, 0.22:1.173, 0.25:1.17, 0.27:1.1675, 0.30:1.164, 0.35:1.159, 1.0:1 lift_coef_mach_table = 0:1 diff --git a/hdw-a333x/src/base/headwindsim-aircraft-a330-300/SimObjects/Airplanes/Headwind_A330_300/target_performance.cfg b/hdw-a333x/src/base/headwindsim-aircraft-a330-300/SimObjects/Airplanes/Headwind_A330_300/target_performance.cfg index b25494c1..4221ce38 100644 --- a/hdw-a333x/src/base/headwindsim-aircraft-a330-300/SimObjects/Airplanes/Headwind_A330_300/target_performance.cfg +++ b/hdw-a333x/src/base/headwindsim-aircraft-a330-300/SimObjects/Airplanes/Headwind_A330_300/target_performance.cfg @@ -48,15 +48,15 @@ full_flap_max_vert_dive_speed_0pctpower = 511.8,1; no_flap_max_flat_fall_speed_0pctpower = 143.1,1; [DOUBLE_CHECKS] -wing_area = 1313.0,0.1; -wing_span = 117.45,0.1; -htail_area = 67.10,0.1; -htail_span = 22.3,0.1; -vtail_area = 55.0,0.1; -vtail_span = 7.5,0.1; -max_gross_weight = 507063,1.0; -empty_weight = 266760,1.0; -max_hp = 37828,0.1; +wing_area = 3500.0,0.1; +wing_span = 209.97,0.1; +htail_area = 900,0.1; +htail_span = 63.65,0.1; +vtail_area = 1000.0,0.1; +vtail_span = 27.2,0.1; +max_gross_weight = 553360,1.0; +empty_weight = 279987,1.0; +max_hp = 1631,0.1; [PERFORMANCE_REPORT] //file_path="C:\Users\golivier\Desktop\JUNK_MESH\perf_report.csv" diff --git a/hdw-a333x/src/base/headwindsim-aircraft-a330-300/html_ui/Pages/A333X_Core/A32NX_PayloadManager.js b/hdw-a333x/src/base/headwindsim-aircraft-a330-300/html_ui/Pages/A333X_Core/A32NX_PayloadManager.js index 8b510918..66441a90 100644 --- a/hdw-a333x/src/base/headwindsim-aircraft-a330-300/html_ui/Pages/A333X_Core/A32NX_PayloadManager.js +++ b/hdw-a333x/src/base/headwindsim-aircraft-a330-300/html_ui/Pages/A333X_Core/A32NX_PayloadManager.js @@ -134,11 +134,11 @@ const MAX_SEAT_AVAILABLE = 436; * Calculate %MAC ZWFCG of all stations */ function getZfwcg() { - const leMacZ = -22.20; // Accurate to 3 decimals, replaces debug weight values - const macSize = 23.19; // Accurate to 3 decimals, replaces debug weight values + const leMacZ = -15.33; // Accurate to 3 decimals, replaces debug weight values + const macSize = 46.69; // Accurate to 3 decimals, replaces debug weight values const emptyWeight = (SimVar.GetSimVarValue("EMPTY WEIGHT", getUserUnit())); - const emptyPosition = -28.276; // Value from flight_model.cfg + const emptyPosition = -27.56; // Value from flight_model.cfg const emptyMoment = emptyPosition * emptyWeight; const PAX_WEIGHT = SimVar.GetSimVarValue("L:A32NX_WB_PER_PAX_WEIGHT", "Number"); diff --git a/hdw-a333x/src/systems/fmgc/src/guidance/vnav/FlightModel.ts b/hdw-a333x/src/systems/fmgc/src/guidance/vnav/FlightModel.ts index 12991c11..f1da9587 100644 --- a/hdw-a333x/src/systems/fmgc/src/guidance/vnav/FlightModel.ts +++ b/hdw-a333x/src/systems/fmgc/src/guidance/vnav/FlightModel.ts @@ -2,13 +2,13 @@ import { MathUtils } from '@flybywiresim/fbw-sdk'; import { Common, FlapConf } from './common'; export class FlightModel { - static Cd0 = 0.026; + static Cd0 = 0.0280; - static wingSpan = 197.83; + static wingSpan = 209.97; - static wingArea = 3892.23; + static wingArea = 3500.00; - static wingEffcyFactor = 0.9199; + static wingEffcyFactor = 0.72; static requiredAccelRateKNS = 1.33; // in knots/second diff --git a/hdw-a333x/src/systems/instruments/src/EFB/Ground/Pages/Payload/A330_343/a333x.json b/hdw-a333x/src/systems/instruments/src/EFB/Ground/Pages/Payload/A330_343/a333x.json index 5ba583d8..05319bee 100644 --- a/hdw-a333x/src/systems/instruments/src/EFB/Ground/Pages/Payload/A330_343/a333x.json +++ b/hdw-a333x/src/systems/instruments/src/EFB/Ground/Pages/Payload/A330_343/a333x.json @@ -1,9 +1,9 @@ { "specs": { "prefix": "A333X", - "emptyPosition": -28.276, - "macSize": 23.19, - "leMacZ": -22.20, + "emptyPosition": -27.56, + "macSize": 46.69, + "leMacZ": -15.33, "weights": { "maxGw": 235000, "maxZfw": 173000, diff --git a/hdw-a333x/src/wasm/fadec_a330/src/RegPolynomials.h b/hdw-a333x/src/wasm/fadec_a330/src/RegPolynomials.h index 64fc4cff..107bba5a 100644 --- a/hdw-a333x/src/wasm/fadec_a330/src/RegPolynomials.h +++ b/hdw-a333x/src/wasm/fadec_a330/src/RegPolynomials.h @@ -187,15 +187,16 @@ class Polynomial { /// double correctedEGT(double cn1, double cff, double mach, double alt) { double outCEGT = 0; - cff = cff / 2; // to account for the A380 double fuel flow. Will have to be taken care of + double cff_a330 = 2.7; - double c_EGT[16] = {3.2636e+02, 0.0000e+00, 9.2893e-01, 3.9505e-02, 3.9070e+02, -4.7911e-04, 7.7679e-03, 5.8361e-05, - -2.5566e+00, 5.1227e-06, 1.0178e-07, -7.4602e-03, 1.2106e-07, -5.1639e+01, -2.7356e-03, 1.9312e-08}; + double c_EGT[16] = {443.3145034, 0.0000000e+00, 3.0141710e+00, 3.9132758e-02, -4.8488279e+02, -1.2890964e-03, + -2.2332050e-02, 8.3849683e-05, 6.0478647e+00, 6.9171710e-05, -6.5369271e-07, -8.1438322e-03, + -5.1229403e-07, 7.4657497e+01, -4.6016728e-03, 2.8637860e-08}; - outCEGT = c_EGT[0] + c_EGT[1] + (c_EGT[2] * cn1) + (c_EGT[3] * cff) + (c_EGT[4] * mach) + (c_EGT[5] * alt) + - (c_EGT[6] * powFBW(cn1, 2)) + (c_EGT[7] * cn1 * cff) + (c_EGT[8] * cn1 * mach) + (c_EGT[9] * cn1 * alt) + - (c_EGT[10] * powFBW(cff, 2)) + (c_EGT[11] * mach * cff) + (c_EGT[12] * cff * alt) + (c_EGT[13] * powFBW(mach, 2)) + - (c_EGT[14] * mach * alt) + (c_EGT[15] * powFBW(alt, 2)); + outCEGT = c_EGT[0] + c_EGT[1] + (c_EGT[2] * cn1) + (c_EGT[3] * cff_a330) + (c_EGT[4] * mach) + (c_EGT[5] * alt) + + (c_EGT[6] * powFBW(cn1, 2)) + (c_EGT[7] * cn1 * cff_a330) + (c_EGT[8] * cn1 * mach) + (c_EGT[9] * cn1 * alt) + + (c_EGT[10] * powFBW(cff_a330, 2)) + (c_EGT[11] * mach * cff_a330) + (c_EGT[12] * cff_a330 * alt) + + (c_EGT[13] * powFBW(mach, 2)) + (c_EGT[14] * mach * alt) + (c_EGT[15] * powFBW(alt, 2)); return outCEGT; } @@ -205,10 +206,11 @@ class Polynomial { /// double correctedFuelFlow(double cn1, double mach, double alt) { double outCFF = 0; + double a330_f = 2.7; - double c_Flow[21] = {-1.7630e+02, -2.1542e-01, 4.7119e+01, 6.1519e+02, 1.8047e-03, -4.4554e-01, -4.3940e+01, - 4.0459e-05, -3.2912e+01, -6.2894e-03, -1.2544e-07, 1.0938e-02, 4.0936e-01, -5.5841e-06, - -2.3829e+01, 9.3269e-04, 2.0273e-11, -2.4100e+02, 1.4171e-02, -9.5581e-07, 1.2728e-11}; + double c_Flow[21] = {-639.6602981, 0.00000e+00, 1.03705e+02, -2.23264e+03, 5.70316e-03, -2.29404e+00, 1.08230e+02, + 2.77667e-04, -6.17180e+02, -7.20713e-02, 2.19013e-07, 2.49418e-02, -7.31662e-01, -1.00003e-05, + -3.79466e+01, 1.34552e-03, 5.72612e-09, -2.71950e+02, 8.58469e-02, -2.72912e-06, 2.02928e-11}; outCFF = c_Flow[0] + c_Flow[1] + (c_Flow[2] * cn1) + (c_Flow[3] * mach) + (c_Flow[4] * alt) + (c_Flow[5] * powFBW(cn1, 2)) + (c_Flow[6] * cn1 * mach) + (c_Flow[7] * cn1 * alt) + (c_Flow[8] * powFBW(mach, 2)) + (c_Flow[9] * mach * alt) + @@ -217,7 +219,7 @@ class Polynomial { (c_Flow[16] * cn1 * powFBW(alt, 2)) + (c_Flow[17] * powFBW(mach, 3)) + (c_Flow[18] * powFBW(mach, 2) * alt) + (c_Flow[19] * mach * powFBW(alt, 2)) + (c_Flow[20] * powFBW(alt, 3)); - return 2 * outCFF; + return outCFF * a330_f; } double oilTemperature(double energy, double preOilTemp, double maxOilTemp, double deltaTime) { diff --git a/hdw-a333x/src/wasm/systems/a320_systems/src/airframe/mod.rs b/hdw-a333x/src/wasm/systems/a320_systems/src/airframe/mod.rs index 138a11c4..7f0163f0 100644 --- a/hdw-a333x/src/wasm/systems/a320_systems/src/airframe/mod.rs +++ b/hdw-a333x/src/wasm/systems/a320_systems/src/airframe/mod.rs @@ -17,10 +17,10 @@ pub struct A320Airframe { impl A320Airframe { const LOADSHEET: LoadsheetInfo = LoadsheetInfo { operating_empty_weight_kg: 123000., - operating_empty_position: (-28.276, 0., 0.), + operating_empty_position: (-27.56, 0., 0.), per_pax_weight_kg: 84., - mean_aerodynamic_chord_size: 23.19, - leading_edge_mean_aerodynamic_chord: -22.20, + mean_aerodynamic_chord_size: 46.69, + leading_edge_mean_aerodynamic_chord: -15.33, }; pub fn new(context: &mut InitContext) -> Self { diff --git a/hdw-a339x-acj/src/wasm/systems/a320_systems/src/airframe/mod.rs b/hdw-a339x-acj/src/wasm/systems/a320_systems/src/airframe/mod.rs index 3f4937ad..e0537bb3 100644 --- a/hdw-a339x-acj/src/wasm/systems/a320_systems/src/airframe/mod.rs +++ b/hdw-a339x-acj/src/wasm/systems/a320_systems/src/airframe/mod.rs @@ -17,10 +17,10 @@ pub struct A320Airframe { impl A320Airframe { const LOADSHEET: LoadsheetInfo = LoadsheetInfo { operating_empty_weight_kg: 134500., - operating_empty_position: (-28.276, 0., 0.), + operating_empty_position: (-27.56, 0., 0.), per_pax_weight_kg: 84., - mean_aerodynamic_chord_size: 23.19, - leading_edge_mean_aerodynamic_chord: -22.20, + mean_aerodynamic_chord_size: 46.69, + leading_edge_mean_aerodynamic_chord: -15.33, }; pub fn new(context: &mut InitContext) -> Self { diff --git a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_A330neo/flight_model.cfg b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_A330neo/flight_model.cfg index 6fc00739..15431045 100644 --- a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_A330neo/flight_model.cfg +++ b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_A330neo/flight_model.cfg @@ -7,10 +7,10 @@ max_gross_weight = 553360 ; Maximum takeoff weight, (LBS) empty_weight = 279987 ; Empty weight, (LBS); Includes weight to account for crew, pantry, galleys, lavs, potable water, emergency equipment etc. reference_datum_position = 0, 0, 0 ; Position of reference datum relative to FS(0,0,0) (FEET), z, x, y ; adjust empty weight CG position to ensure 26.2% MAC at Empty Weight -empty_weight_CG_position = -28.276, 0, 0 ; Position of airplane empty weight CG relative to reference datum (FEET), z, x, y +empty_weight_CG_position = -27.56, 0, 0 ; Position of airplane empty weight CG relative to reference datum (FEET), z, x, y CG_forward_limit = 0.15 ; Gravity center forward limit (longitudinal offset) for longitudinal stability CG_aft_limit = 0.41 ; Gravity center after limit (longitudinal offset z) w.r.t reference datum for longitudinal stability (FEET) -empty_weight_pitch_MOI = 23228392 ; Empty pitch moment of inertia, Jxx (SLUG SQ FEET) +empty_weight_pitch_MOI = 23228924 ; Empty pitch moment of inertia, Jxx (SLUG SQ FEET) empty_weight_roll_MOI = 14300433 ; Empty roll moment of inertia, Jzz (SLUG SQ FEET) empty_weight_yaw_MOI = 35047716 ; Empty yaw moment of inertia, Jyy (SLUG SQ FEET) empty_weight_coupled_MOI = 10000 ; Empty transverse moment of inertia, Jyz (SLUG SQ FEET) @@ -177,7 +177,7 @@ Trigger.10 = Name:CloseLeftOuterTankValves5MinAfterLowFuelLevel#Target:LeftOuter Trigger.11 = Name:CloseRightOuterTankValves5MinAfterLowFuelLevel#Target:LeftOuter#Threshold:1#Condition:TankQuantityBelow#DelayTrue:300#EffectTrue:CloseValve.RightTransferValve1,CloseValve.RightTransferValve2 [AIRPLANE_GEOMETRY] -aileron_area=160.60 +aileron_area=200 aileron_down_limit=25 aileron_elasticity_table = 0:1, 400:1 ;; A32NX PR #5842 aileron_to_rudder_scale=0 @@ -187,7 +187,7 @@ air_spoiler_limit=45 auto_spoiler_auto_retracts=0 auto_spoiler_available=0 auto_spoiler_min_speed=72 -elevator_area=211.40 +elevator_area=300 elevator_down_limit=17 elevator_elasticity_table = 0:1, 400:1 ;; A32NX PR #7516 elevator_trim_elasticity_table= 0:0.3, 100:0.35, 120:1, 400:1 @@ -197,15 +197,15 @@ elevator_trim_neutral=0 elevator_up_limit=25 flap_to_aileron_scale=0 fly_by_wire=0 -fuselage_center_pos=-24.987358, 0, 3.121224 -fuselage_diameter=18.5 -fuselage_length=208.86 -htail_area = 883.29 -htail_incidence=0 +fuselage_center_pos=-26.0, 0, 2.5 +fuselage_diameter=9.25 +fuselage_length=204.0 +htail_area = 900 +htail_incidence= 0 htail_pos_lon = -120 htail_pos_vert = 10 htail_span = 63.65 -htail_sweep= 32 +htail_sweep=32 htail_thickness_ratio=0.02 load_safety_factor=1.5 min_ailerons_for_spoilerons=5 @@ -215,7 +215,7 @@ negative_g_limit_flaps_up=-1 oswald_efficiency_factor=0.72 positive_g_limit_flaps_down=2 positive_g_limit_flaps_up=2.5 -rudder_area=116.14 +rudder_area=250 rudder_elasticity_table=0:1, 85:1, 110:0.7, 445:0.136 rudder_limit=25 rudder_trim_limit = 0 ; Rudder trim max deflection angle (absolute value) (DEGREES) @@ -223,21 +223,21 @@ spoiler_extension_time=0.1 spoiler_handle_available=1 spoiler_limit=45 spoilerons_available=0 -vtail_area=486.85 -vtail_pos_lon=-107 -vtail_pos_vert=23.5 -vtail_span=28.87 -vtail_sweep=43 -vtail_thickness_ratio=0.028 -wing_area=3892.23 -wing_camber=3 -wing_dihedral=8 -wing_incidence=0 -wing_pos_apex_lon=25.193029 +vtail_area=1000 +vtail_pos_lon=-108 +vtail_pos_vert=25 +vtail_span=27.2 +vtail_sweep=45 +vtail_thickness_ratio=0.02 +wing_area=3500 +wing_camber=1 +wing_dihedral=5 +wing_incidence=2 +wing_pos_apex_lon=-50 ; NOT USED wing_pos_apex_vert=-2.8 -wing_root_chord=34.61 +wing_root_chord=70 wing_span=209.97 -wing_sweep=30 +wing_sweep=33 wing_thickness_ratio=0.03 wing_twist=-1 wing_winglets_flag = 1 ; Has winglets true/false (not currently used by MSFS) @@ -250,7 +250,7 @@ lift_coef_delta_elevator = -1.652 ; The change in lift per change in elevator de lift_coef_horizontal_incidence = 0 ; The change in lift per change in horizontal incidence angle lift_coef_flaps = 1.2 ; Change in lift due to flaps lift_coef_spoilers = -0.25 ; Change in lift due to spoilers- Full extension at MMO/VMO -0.34, at M0.90 0, Ground spoilers -0.60, Partial ground spoilers -0.425 -drag_coef_zero_lift = 0.0200 ; The zero lift drag polar +drag_coef_zero_lift = 0.0280 ; The zero lift drag polar drag_coef_flaps = 0.0602 drag_coef_gear = 0.030 drag_coef_spoilers = 0.05775; Change in drag due to spoilers @@ -285,7 +285,7 @@ yaw_moment_delta_rudder = 1.321 ; (control)The change in yaw moment per change i yaw_moment_delta_rudder_propwash = 1.321 ; (control) yaw_moment_delta_rudder_trim_scalar = 1.321 ; Change in yaw moment due to rudder trim compute_aero_center = 0 -aero_center_lift = -28.0 ; Init to center +aero_center_lift = -27.0 ; Init to center lift_coef_aoa_table = -3.150000:0.000000, 0.000000:0.224000, 0.139000:1.390000, 0.200000:1.480000, 0.260000:1.760000, 0.290000:1.750000, 0.320000:1.600000, 0.500000:1.500000, 3.150000:0.000000 lift_coef_ground_effect_mach_table = 0.0:1.178, 0.15:1.178, 0.19:1.178, 0.20:1.176, 0.22:1.173, 0.25:1.17, 0.27:1.1675, 0.30:1.164, 0.35:1.159, 1.0:1 lift_coef_mach_table = 0:1 diff --git a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_A330neo/target_performance.cfg b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_A330neo/target_performance.cfg index b9873331..82ceef61 100644 --- a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_A330neo/target_performance.cfg +++ b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_A330neo/target_performance.cfg @@ -48,15 +48,15 @@ full_flap_max_vert_dive_speed_0pctpower = 389.1,1; no_flap_max_flat_fall_speed_0pctpower = 87.48,1; [DOUBLE_CHECKS] -wing_area = 1313.0,0.1; -wing_span = 117.45,0.1; -htail_area = 67.10,0.1; -htail_span = 22.3,0.1; -vtail_area = 55.0,0.1; -vtail_span = 7.5,0.1; +wing_area = 3500.0,0.1; +wing_span = 209.97,0.1; +htail_area = 900,0.1; +htail_span = 63.65,0.1; +vtail_area = 1000.0,0.1; +vtail_span = 27.2,0.1; max_gross_weight = 553360,1.0; empty_weight = 279987,1.0; -max_hp = 37828,0.1; +max_hp = 1631,0.1; [PERFORMANCE_REPORT] //file_path="C:\Users\golivier\Desktop\JUNK_MESH\perf_report.csv" diff --git a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_ACJ330_900/flight_model.cfg b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_ACJ330_900/flight_model.cfg index d6d96fda..bb54afdd 100644 --- a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_ACJ330_900/flight_model.cfg +++ b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_ACJ330_900/flight_model.cfg @@ -7,10 +7,10 @@ max_gross_weight = 553360 ; Maximum takeoff weight, (LBS) empty_weight = 296522 ; Empty weight, (LBS); Includes weight to account for crew, pantry, galleys, lavs, potable water, emergency equipment etc. reference_datum_position = 0, 0, 0 ; Position of reference datum relative to FS(0,0,0) (FEET), z, x, y ; adjust empty weight CG position to ensure 26.2% MAC at Empty Weight -empty_weight_CG_position = -28.276, 0, 0 ; Position of airplane empty weight CG relative to reference datum (FEET), z, x, y +empty_weight_CG_position = -27.56, 0, 0 ; Position of airplane empty weight CG relative to reference datum (FEET), z, x, y CG_forward_limit = 0.15 ; Gravity center forward limit (longitudinal offset) for longitudinal stability CG_aft_limit = 0.41 ; Gravity center after limit (longitudinal offset z) w.r.t reference datum for longitudinal stability (FEET) -empty_weight_pitch_MOI = 23228392 ; Empty pitch moment of inertia, Jxx (SLUG SQ FEET) +empty_weight_pitch_MOI = 23228924 ; Empty pitch moment of inertia, Jxx (SLUG SQ FEET) empty_weight_roll_MOI = 14300433 ; Empty roll moment of inertia, Jzz (SLUG SQ FEET) empty_weight_yaw_MOI = 35047716 ; Empty yaw moment of inertia, Jyy (SLUG SQ FEET) empty_weight_coupled_MOI = 10000 ; Empty transverse moment of inertia, Jyz (SLUG SQ FEET) @@ -87,7 +87,7 @@ fuel_type = 2 ; 1 = OCTANE 100, 2 = JET_A, 3 = OCTANE 80, 4 = AUTO GAS, 5 = JET [FUEL_SYSTEM] Version = 4 -APU.1 = Name:APU#FuelBurnRate:33 +APU.1 = Name:APU#FuelBurnRate:55 Engine.1 = Name:LeftEngine#Index:1 Engine.2 = Name:RightEngine#Index:2 Tank.1 = Name:Center#Title:TT:MENU.FUEL.CENTER#Capacity:12625#UnusableCapacity:0#Position:-20.3,0,4#Priority:1#OutputOnlyLines:TankCenterToCenterTankJetPumpL,TankCenterToCenterTankJetPumpR @@ -170,7 +170,7 @@ Trigger.10 = Name:CloseLeftOuterTankValves5MinAfterLowFuelLevel#Target:LeftOuter Trigger.11 = Name:CloseRightOuterTankValves5MinAfterLowFuelLevel#Target:LeftOuter#Threshold:1#Condition:TankQuantityBelow#DelayTrue:300#EffectTrue:CloseValve.RightTransferValve1,CloseValve.RightTransferValve2 [AIRPLANE_GEOMETRY] -aileron_area=500 +aileron_area=200 aileron_down_limit=25 aileron_elasticity_table = 0:1, 400:1 ;; A32NX PR #5842 aileron_to_rudder_scale=0 @@ -178,9 +178,9 @@ aileron_to_spoileron_gain=0.5 aileron_up_limit=25 air_spoiler_limit=45 auto_spoiler_auto_retracts=0 -auto_spoiler_available=1 +auto_spoiler_available=0 auto_spoiler_min_speed=72 -elevator_area=450 +elevator_area=300 elevator_down_limit=17 elevator_elasticity_table = 0:1, 400:1 ;; A32NX PR #7516 elevator_trim_elasticity_table= 0:0.3, 100:0.35, 120:1, 400:1 @@ -190,15 +190,15 @@ elevator_trim_neutral=0 elevator_up_limit=25 flap_to_aileron_scale=0 fly_by_wire=0 -fuselage_center_pos=-24.987358, 0, 3.121224 -fuselage_diameter=18.5 -fuselage_length=208.86 -htail_area = 880 -htail_incidence=0 +fuselage_center_pos=-26.0, 0, 2.5 +fuselage_diameter=9.25 +fuselage_length=204.0 +htail_area = 900 +htail_incidence= 0 htail_pos_lon = -120 htail_pos_vert = 10 htail_span = 63.65 -htail_sweep= 32 +htail_sweep=32 htail_thickness_ratio=0.02 load_safety_factor=1.5 min_ailerons_for_spoilerons=5 @@ -208,29 +208,29 @@ negative_g_limit_flaps_up=-1 oswald_efficiency_factor=0.72 positive_g_limit_flaps_down=2 positive_g_limit_flaps_up=2.5 -rudder_area=320 +rudder_area=250 rudder_elasticity_table=0:1, 85:1, 110:0.7, 445:0.136 rudder_limit=25 rudder_trim_limit = 0 ; Rudder trim max deflection angle (absolute value) (DEGREES) -spoiler_extension_time=5 +spoiler_extension_time=0.1 spoiler_handle_available=1 spoiler_limit=45 spoilerons_available=0 -vtail_area=650 -vtail_pos_lon=-107 -vtail_pos_vert=23.5 -vtail_span=30 -vtail_sweep=43 -vtail_thickness_ratio=0.028 -wing_area=5010 -wing_camber=3 -wing_dihedral=8 -wing_incidence=0 -wing_pos_apex_lon=25.193029 +vtail_area=1000 +vtail_pos_lon=-108 +vtail_pos_vert=25 +vtail_span=27.2 +vtail_sweep=45 +vtail_thickness_ratio=0.02 +wing_area=3500 +wing_camber=1 +wing_dihedral=5 +wing_incidence=2 +wing_pos_apex_lon=-50 ; NOT USED wing_pos_apex_vert=-2.8 -wing_root_chord=34.61 +wing_root_chord=70 wing_span=209.97 -wing_sweep=30 +wing_sweep=33 wing_thickness_ratio=0.03 wing_twist=-1 wing_winglets_flag = 1 ; Has winglets true/false (not currently used by MSFS) @@ -243,7 +243,7 @@ lift_coef_delta_elevator = -1.652 ; The change in lift per change in elevator de lift_coef_horizontal_incidence = 0 ; The change in lift per change in horizontal incidence angle lift_coef_flaps = 1.2 ; Change in lift due to flaps lift_coef_spoilers = -0.25 ; Change in lift due to spoilers- Full extension at MMO/VMO -0.34, at M0.90 0, Ground spoilers -0.60, Partial ground spoilers -0.425 -drag_coef_zero_lift = 0.0200 ; The zero lift drag polar +drag_coef_zero_lift = 0.0280 ; The zero lift drag polar drag_coef_flaps = 0.0602 drag_coef_gear = 0.030 drag_coef_spoilers = 0.05775; Change in drag due to spoilers @@ -278,7 +278,7 @@ yaw_moment_delta_rudder = 1.321 ; (control)The change in yaw moment per change i yaw_moment_delta_rudder_propwash = 1.321 ; (control) yaw_moment_delta_rudder_trim_scalar = 1.321 ; Change in yaw moment due to rudder trim compute_aero_center = 0 -aero_center_lift = -28.0 ; Init to center +aero_center_lift = -27.0 ; Init to center lift_coef_aoa_table = -3.150000:0.000000, 0.000000:0.224000, 0.139000:1.390000, 0.200000:1.480000, 0.260000:1.760000, 0.290000:1.750000, 0.320000:1.600000, 0.500000:1.500000, 3.150000:0.000000 lift_coef_ground_effect_mach_table = 0.0:1.178, 0.15:1.178, 0.19:1.178, 0.20:1.176, 0.22:1.173, 0.25:1.17, 0.27:1.1675, 0.30:1.164, 0.35:1.159, 1.0:1 lift_coef_mach_table = 0:1 @@ -340,7 +340,7 @@ cruise_lift_scalar = 0.83 parasite_drag_scalar = 1.25 induced_drag_scalar = 1.2 flap_induced_drag_scalar = 1.44 -elevator_effectiveness = 1 +elevator_effectiveness = 0.7 elevator_maxangle_scalar = 0.465 aileron_effectiveness = 0.95 rudder_effectiveness = 0.8 diff --git a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_ACJ330_900/target_performance.cfg b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_ACJ330_900/target_performance.cfg index 0692b191..607e1960 100644 --- a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_ACJ330_900/target_performance.cfg +++ b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/SimObjects/Airplanes/Headwind_ACJ330_900/target_performance.cfg @@ -48,15 +48,15 @@ full_flap_max_vert_dive_speed_0pctpower = 389.1,1; no_flap_max_flat_fall_speed_0pctpower = 87.48,1; [DOUBLE_CHECKS] -wing_area = 1313.0,0.1; -wing_span = 117.45,0.1; -htail_area = 67.10,0.1; -htail_span = 22.3,0.1; -vtail_area = 55.0,0.1; -vtail_span = 7.5,0.1; +wing_area = 3500.0,0.1; +wing_span = 209.97,0.1; +htail_area = 900,0.1; +htail_span = 63.65,0.1; +vtail_area = 1000.0,0.1; +vtail_span = 27.2,0.1; max_gross_weight = 553360,1.0; empty_weight = 296522,1.0; -max_hp = 37828,0.1; +max_hp = 1631,0.1; [PERFORMANCE_REPORT] //file_path="C:\Users\golivier\Desktop\JUNK_MESH\perf_report.csv" diff --git a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/html_ui/Pages/A339X_Core/A32NX_PayloadManager.js b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/html_ui/Pages/A339X_Core/A32NX_PayloadManager.js index 8b510918..66441a90 100644 --- a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/html_ui/Pages/A339X_Core/A32NX_PayloadManager.js +++ b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/html_ui/Pages/A339X_Core/A32NX_PayloadManager.js @@ -134,11 +134,11 @@ const MAX_SEAT_AVAILABLE = 436; * Calculate %MAC ZWFCG of all stations */ function getZfwcg() { - const leMacZ = -22.20; // Accurate to 3 decimals, replaces debug weight values - const macSize = 23.19; // Accurate to 3 decimals, replaces debug weight values + const leMacZ = -15.33; // Accurate to 3 decimals, replaces debug weight values + const macSize = 46.69; // Accurate to 3 decimals, replaces debug weight values const emptyWeight = (SimVar.GetSimVarValue("EMPTY WEIGHT", getUserUnit())); - const emptyPosition = -28.276; // Value from flight_model.cfg + const emptyPosition = -27.56; // Value from flight_model.cfg const emptyMoment = emptyPosition * emptyWeight; const PAX_WEIGHT = SimVar.GetSimVarValue("L:A32NX_WB_PER_PAX_WEIGHT", "Number"); diff --git a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/html_ui/Pages/A339X_Core/A339X_ACJ_PayloadManager.js b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/html_ui/Pages/A339X_Core/A339X_ACJ_PayloadManager.js index 741266d0..06c32a79 100644 --- a/hdw-a339x/src/base/headwindsim-aircraft-a330-900/html_ui/Pages/A339X_Core/A339X_ACJ_PayloadManager.js +++ b/hdw-a339x/src/base/headwindsim-aircraft-a330-900/html_ui/Pages/A339X_Core/A339X_ACJ_PayloadManager.js @@ -78,11 +78,11 @@ const MAX_SEAT_AVAILABLE = 90; * Calculate %MAC ZWFCG of all stations */ function getZfwcg() { - const leMacZ = -22.20; // Accurate to 3 decimals, replaces debug weight values - const macSize = 23.19; // Accurate to 3 decimals, replaces debug weight values + const leMacZ = -15.33; // Accurate to 3 decimals, replaces debug weight values + const macSize = 46.69; // Accurate to 3 decimals, replaces debug weight values const emptyWeight = (SimVar.GetSimVarValue("EMPTY WEIGHT", getUserUnit())); - const emptyPosition = -28.276; // Value from flight_model.cfg + const emptyPosition = -27.56; // Value from flight_model.cfg const emptyMoment = emptyPosition * emptyWeight; const PAX_WEIGHT = SimVar.GetSimVarValue("L:A32NX_WB_PER_PAX_WEIGHT", "Number"); diff --git a/hdw-a339x/src/systems/fmgc/src/guidance/vnav/EngineModel.ts b/hdw-a339x/src/systems/fmgc/src/guidance/vnav/EngineModel.ts index 1f79bda7..999dcd30 100644 --- a/hdw-a339x/src/systems/fmgc/src/guidance/vnav/EngineModel.ts +++ b/hdw-a339x/src/systems/fmgc/src/guidance/vnav/EngineModel.ts @@ -238,7 +238,7 @@ export class EngineModel { + (coefficients[17] * mach ** 3) + (coefficients[18] * mach ** 2 * alt) + (coefficients[19] * mach * alt ** 2) + (coefficients[20] * alt ** 3); - return flow * 2.7; + return flow * 2.45; } // static getCN1fromUncorrectedThrust(thrust: number) diff --git a/hdw-a339x/src/systems/fmgc/src/guidance/vnav/FlightModel.ts b/hdw-a339x/src/systems/fmgc/src/guidance/vnav/FlightModel.ts index d720606e..f1da9587 100644 --- a/hdw-a339x/src/systems/fmgc/src/guidance/vnav/FlightModel.ts +++ b/hdw-a339x/src/systems/fmgc/src/guidance/vnav/FlightModel.ts @@ -2,11 +2,11 @@ import { MathUtils } from '@flybywiresim/fbw-sdk'; import { Common, FlapConf } from './common'; export class FlightModel { - static Cd0 = 0.0200; + static Cd0 = 0.0280; static wingSpan = 209.97; - static wingArea = 5010; + static wingArea = 3500.00; static wingEffcyFactor = 0.72; diff --git a/hdw-a339x/src/systems/instruments/src/EFB/Ground/Pages/Payload/ACJ330_941/acj339x.json b/hdw-a339x/src/systems/instruments/src/EFB/Ground/Pages/Payload/ACJ330_941/acj339x.json index 58138fda..8ec07da0 100644 --- a/hdw-a339x/src/systems/instruments/src/EFB/Ground/Pages/Payload/ACJ330_941/acj339x.json +++ b/hdw-a339x/src/systems/instruments/src/EFB/Ground/Pages/Payload/ACJ330_941/acj339x.json @@ -1,9 +1,9 @@ { "specs": { "prefix": "ACJ339X", - "emptyPosition": -28.276, - "macSize": 23.19, - "leMacZ": -22.20, + "emptyPosition": -27.56, + "macSize": 46.69, + "leMacZ": -15.33, "weights": { "maxGw": 251000, "maxZfw": 181000, diff --git a/hdw-a339x/src/wasm/fadec_a330/src/RegPolynomials.h b/hdw-a339x/src/wasm/fadec_a330/src/RegPolynomials.h index 107bba5a..43dc39fc 100644 --- a/hdw-a339x/src/wasm/fadec_a330/src/RegPolynomials.h +++ b/hdw-a339x/src/wasm/fadec_a330/src/RegPolynomials.h @@ -187,7 +187,7 @@ class Polynomial { /// double correctedEGT(double cn1, double cff, double mach, double alt) { double outCEGT = 0; - double cff_a330 = 2.7; + double cff_a330 = 2.45; double c_EGT[16] = {443.3145034, 0.0000000e+00, 3.0141710e+00, 3.9132758e-02, -4.8488279e+02, -1.2890964e-03, -2.2332050e-02, 8.3849683e-05, 6.0478647e+00, 6.9171710e-05, -6.5369271e-07, -8.1438322e-03, @@ -206,7 +206,7 @@ class Polynomial { /// double correctedFuelFlow(double cn1, double mach, double alt) { double outCFF = 0; - double a330_f = 2.7; + double a330_f = 2.45; double c_Flow[21] = {-639.6602981, 0.00000e+00, 1.03705e+02, -2.23264e+03, 5.70316e-03, -2.29404e+00, 1.08230e+02, 2.77667e-04, -6.17180e+02, -7.20713e-02, 2.19013e-07, 2.49418e-02, -7.31662e-01, -1.00003e-05, diff --git a/hdw-a339x/src/wasm/systems/a320_systems/src/airframe/mod.rs b/hdw-a339x/src/wasm/systems/a320_systems/src/airframe/mod.rs index a9152f9d..fd633c57 100644 --- a/hdw-a339x/src/wasm/systems/a320_systems/src/airframe/mod.rs +++ b/hdw-a339x/src/wasm/systems/a320_systems/src/airframe/mod.rs @@ -17,10 +17,10 @@ pub struct A320Airframe { impl A320Airframe { const LOADSHEET: LoadsheetInfo = LoadsheetInfo { operating_empty_weight_kg: 127000., - operating_empty_position: (-28.276, 0., 0.), + operating_empty_position: (-27.56, 0., 0.), per_pax_weight_kg: 84., - mean_aerodynamic_chord_size: 23.19, - leading_edge_mean_aerodynamic_chord: -22.20, + mean_aerodynamic_chord_size: 46.69, + leading_edge_mean_aerodynamic_chord: -15.33, }; pub fn new(context: &mut InitContext) -> Self {