Files
FluidSimCpp/engines/triple.toml

381 lines
7.8 KiB
TOML

# Engine definition. Dimensional keys state their units.
schema_version = 2
id = "triple"
name = "1.0 litre / inline triple"
category = "Inline three"
description = "Unequal primaries / small junctions / staged collectors / EFI"
order = 21
cycle = "four_stroke"
[simulation]
cells_per_meter = 20.0
[engine]
bank_angle_deg = 60.0
cylinders = 3
initial_rpm = 1400.0
initialize_phased_charge = true
layout = "inline"
maximum_load_torque_nm = 30.0
minimum_substeps = 1
phase_degrees = [0.0, 480.0, 240.0]
pipe_damping = 0.0
starter_torque_nm = 24.99852
throttle_diameter_mm = 65.0
topology = "staged"
[cylinder]
afr = 14.7
ambient_temperature_k = 300.0
bore_mm = 79.0
burn_duration_deg = 60.0
burn_start_deg = 5.0
compression = 10.0
energy_variation = 0.05
exhaust_valve_count = 1
exhaust_valve_diameter_mm = 25.28
fuel_lhv_j_per_kg = 4.4e+07
heat_transfer = 100.0
intake_valve_count = 1
intake_valve_diameter_mm = 30.02
misfire_probability = 0.0
rod_mm = 122.4
stroke_mm = 68.0
wall_area = 0.02
wiebe_a = 5.0
wiebe_m = 2.0
[crankshaft]
friction_constant_nm = 3.999763
friction_quadratic_nm_s2 = 0.0
friction_viscous_nm_s = 0.003999764
inertia_kg_m2 = 0.1199929
[ecu]
idle_base_opening = 0.05
idle_control = "feedback"
idle_ki = 4e-05
idle_kp = 0.0001
idle_max_opening = 0.25
idle_minimum_advance_deg = -5.0
idle_rpm = 1000.0
idle_spark_gain = 0.02
ignition_map = [[0.0, 10.0], [15000.0, 40.0]]
overrun_cut_rpm = 3500.0
overrun_fuel_cut_enabled = true
overrun_ignition_cut_enabled = false
overrun_resume_rpm = 2400.0
power_afr = 12.8
rev_limit_enabled = true
rev_limit_fuel_cut_enabled = true
rev_limit_rpm = 7000.0
rev_resume_rpm = 6750.0
stoichiometric_afr = 14.7
throttle_closing_rate = 0.0
throttle_closing_time_constant_s = 0.0
throttle_rate = 1000.0
throttle_time_constant_s = 0.001
[vehicle]
air_density = 1.225
clutch_capacity = 219.987
clutch_engagement_rate = 8.0
drag_coefficient = 0.7
final_drive_ratio = 2.7
frontal_area = 0.65
gear_ratios = [4.1, 2.7, 2.0, 1.55, 1.25, 0.98]
gravity = 9.80665
mass_kg = 1400.0
primary_reduction = 1.8
rolling_resistance = 0.015
rotational_inertia_kg_m2 = 1.2
wheel_radius_mm = 320.0
[fuel]
system = "injection"
[junctions]
h_pipe = true
[[pipes]]
id = "intake"
diameter_mm = 75.0
[[pipes]]
id = "runners"
count = 3
diameter_mm = 35.0
[[pipes]]
id = "primary_1"
diameter_mm = 38.0
[[pipes]]
id = "primary_2"
diameter_mm = 38.0
[[pipes]]
id = "primary_3"
diameter_mm = 38.0
[[pipes]]
id = "tailpipe_7"
diameter_mm = 60.0
[[pipes]]
id = "secondary_8"
diameter_mm = 48.0
[cam.intake]
points = [
[0.000, 0.000000],
[340.000, 0.000000],
[345.000, 0.143590],
[350.000, 0.542003],
[355.000, 1.146701],
[360.000, 1.909146],
[365.000, 2.780800],
[370.000, 3.713127],
[375.000, 4.657588],
[380.000, 5.565646],
[385.000, 6.388762],
[390.000, 7.078401],
[395.000, 7.586023],
[400.000, 7.863092],
[402.500, 7.900001],
[527.500, 7.900001],
[532.500, 7.756411],
[537.500, 7.357998],
[542.500, 6.753300],
[547.500, 5.990855],
[552.500, 5.119201],
[557.500, 4.186874],
[562.500, 3.242413],
[567.500, 2.334355],
[572.500, 1.511239],
[577.500, 0.821600],
[582.500, 0.313978],
[587.500, 0.036909],
[590.000, 0.000000],
[720.000, 0.000000]
]
[cam.exhaust]
points = [
[0.000, 0.000000],
[130.000, 0.000000],
[135.000, 0.119741],
[140.000, 0.453072],
[145.000, 0.961161],
[150.000, 1.605171],
[155.000, 2.346268],
[160.000, 3.145617],
[165.000, 3.964384],
[170.000, 4.763733],
[175.000, 5.504830],
[180.000, 6.148840],
[185.000, 6.656929],
[190.000, 6.990260],
[195.000, 7.110001],
[325.000, 7.110001],
[330.000, 6.990260],
[335.000, 6.656929],
[340.000, 6.148840],
[345.000, 5.504830],
[350.000, 4.763733],
[355.000, 3.964384],
[360.000, 3.145617],
[365.000, 2.346268],
[370.000, 1.605171],
[375.000, 0.961161],
[380.000, 0.453072],
[385.000, 0.119741],
[390.000, 0.000000],
[720.000, 0.000000]
]
[valves.intake]
mass_g = 35.0
spring_rate_n_per_mm = 38.0
damping_n_s_per_m = 24.0
seat_force_n = 75.0
maximum_lift_mm = 15.0
seat_restitution = 0.005
cam_restitution = 0.01
stop_restitution = 0.01
[valves.exhaust]
mass_g = 35.0
spring_rate_n_per_mm = 38.0
damping_n_s_per_m = 24.0
seat_force_n = 75.0
maximum_lift_mm = 15.0
seat_restitution = 0.005
cam_restitution = 0.01
stop_restitution = 0.01
[valve_sound]
mode_hz = 3600.0
effective_mass_g = 180.0
radiation_area_cm2 = 10.0
damping_ratio = 0.9
[[geometry.cylinders]]
origin_mm = [ -97, 0, 0 ]
tilt_deg = 0.0
[[geometry.cylinders]]
origin_mm = [ 0, 0, 0 ]
tilt_deg = 0.0
[[geometry.cylinders]]
origin_mm = [ 97, 0, 0 ]
tilt_deg = 0.0
# intake
[[geometry.pipes]]
index = 0
points_mm = [
[ -345.5, 155.9556, -352.7 ],
[ -145.5, 155.9556, -352.7 ]
]
# runners 1
[[geometry.pipes]]
index = 1
points_mm = [
[ -97, 155.9556, -281.6 ],
[ -97, 155.9556, -31.6 ]
]
# runners 2
[[geometry.pipes]]
index = 2
points_mm = [
[ 0, 155.9556, -281.6 ],
[ 0, 155.9556, -31.6 ]
]
# runners 3
[[geometry.pipes]]
index = 3
points_mm = [
[ 97, 155.9556, -281.6 ],
[ 97, 155.9556, -31.6 ]
]
# primary_1
[[geometry.pipes]]
index = 4
points_mm = [
[ -97, 155.9556, 39.5 ],
[ -96.0215, 153.1933, 51.498 ],
[ -93.2563, 148.862, 61.7643 ],
[ -88.9596, 143.0867, 70.4309 ],
[ -83.3866, 135.9922, 77.6302 ],
[ -76.7926, 127.7034, 83.4941 ],
[ -69.4328, 118.3452, 88.1548 ],
[ -61.5625, 108.0425, 91.7445 ],
[ -53.437, 96.9201, 94.3953 ],
[ -45.3115, 85.103, 96.2394 ],
[ -37.4412, 72.716, 97.4088 ],
[ -30.0814, 59.884, 98.0358 ],
[ -23.4874, 46.7319, 98.2525 ],
[ -17.9144, 33.3846, 98.191 ],
[ -13.6177, 19.9669, 97.9834 ],
[ -10.8525, 6.6038, 97.762 ],
[ -9.874, -6.5798, 97.6589 ]
]
# primary_2
[[geometry.pipes]]
index = 5
points_mm = [
[ 0, 155.9556, 39.5 ],
[ 0, 153.2938, 50.2812 ],
[ 0, 148.8738, 59.6443 ],
[ 0, 142.8582, 67.689 ],
[ 0, 135.4095, 74.515 ],
[ 0, 126.6903, 80.2221 ],
[ 0, 116.8632, 84.9099 ],
[ 0, 106.0908, 88.678 ],
[ 0, 94.5355, 91.6263 ],
[ 0, 82.36, 93.8543 ],
[ 0, 69.7268, 95.4619 ],
[ 0, 56.7985, 96.5485 ],
[ 0, 43.7377, 97.2141 ],
[ 0, 30.7069, 97.5582 ],
[ 0, 17.8686, 97.6806 ],
[ 0, 5.3855, 97.6809 ],
[ 0, -6.5798, 97.6589 ]
]
# primary_3
[[geometry.pipes]]
index = 6
points_mm = [
[ 97, 155.9556, 39.5 ],
[ 96.0215, 153.1933, 51.498 ],
[ 93.2563, 148.862, 61.7643 ],
[ 88.9596, 143.0867, 70.4309 ],
[ 83.3866, 135.9922, 77.6302 ],
[ 76.7926, 127.7034, 83.4941 ],
[ 69.4328, 118.3452, 88.1548 ],
[ 61.5625, 108.0425, 91.7445 ],
[ 53.437, 96.9201, 94.3953 ],
[ 45.3115, 85.103, 96.2394 ],
[ 37.4412, 72.716, 97.4088 ],
[ 30.0814, 59.884, 98.0358 ],
[ 23.4874, 46.7319, 98.2525 ],
[ 17.9144, 33.3846, 98.191 ],
[ 13.6177, 19.9669, 97.9834 ],
[ 10.8525, 6.6038, 97.762 ],
[ 9.874, -6.5798, 97.6589 ]
]
# tailpipe_7
[[geometry.pipes]]
index = 7
points_mm = [
[ 218.4202, -70, 164.25 ],
[ 1718.4201, -70, 164.25 ]
]
# secondary_8
[[geometry.pipes]]
index = 8
points_mm = [
[ 18.4202, -29.1445, 109.776 ],
[ 29.9012, -29.5568, 110.3258 ],
[ 40.8688, -30.722, 111.8793 ],
[ 51.3963, -32.5324, 114.2932 ],
[ 61.5571, -34.8806, 117.4242 ],
[ 71.4246, -37.659, 121.1287 ],
[ 81.072, -40.7601, 125.2635 ],
[ 90.5727, -44.0763, 129.685 ],
[ 100, -47.5, 134.25 ],
[ 109.4274, -50.9237, 138.815 ],
[ 118.9281, -54.2399, 143.2365 ],
[ 128.5754, -57.341, 147.3713 ],
[ 138.4429, -60.1194, 151.0758 ],
[ 148.6037, -62.4676, 154.2068 ],
[ 159.1312, -64.278, 156.6207 ],
[ 170.0988, -65.4432, 158.1742 ],
[ 181.5798, -65.8555, 158.724 ]
]
[[geometry.volumes]]
id = "intake_plenum"
center_mm = [ 0, 155.9556, -352.7 ]
size_mm = [ 291, 72.4984, 142.2 ]
[[geometry.volumes]]
id = "junction_0"
center_mm = [ 0, -25, 104.25 ]
size_mm = [ 36.8403, 36.8403, 36.8403 ]
[[geometry.volumes]]
id = "junction_1"
center_mm = [ 200, -70, 164.25 ]
size_mm = [ 36.8403, 36.8403, 36.8403 ]