Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions dyad/crankshaft.dyad
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
"Single-cylinder race-engine crankshaft test model"
test component SingleCylinderRaceEngine
"Crank throw and crank-web inertia"
crank = RotationalComponents.Components.Inertia(J = 0.012)
"Flywheel and output-end inertia"
flywheel = RotationalComponents.Components.Inertia(J = 0.018)
"Crankshaft torsional stiffness and internal damping"
shaft = RotationalComponents.Components.SpringDamper(c = 4000.0, d = 2.0)
transmitted_torque = RotationalComponents.Sensors.TorqueSensor()
"Crank-angle-synchronous four-stroke torque ripple"
crank_angle = RotationalComponents.Sensors.AngleSensor()
four_stroke_angle = BlockComponents.Math.Gain(k = 0.5)
combustion_shape = BlockComponents.Math.Sin()
ripple_torque = BlockComponents.Math.Gain(k = 35.0)
"Mean plus ripple indicated engine torque"
mean_torque = BlockComponents.Sources.Constant(k = 55.0)
total_torque = BlockComponents.Math.Add()
cylinder_torque = RotationalComponents.Sources.TorqueSource()
"Viscous bearing and accessory loss"
bearing_loss = RotationalComponents.Components.Damper(d = 0.1)
fixed = RotationalComponents.Components.Fixed()
crank_speed = RotationalComponents.Sensors.VelocitySensor()
output_speed = RotationalComponents.Sensors.VelocitySensor()
relations
initial crank.phi = 0.01375
initial crank.w = 550.0
initial flywheel.phi = 0.0
initial flywheel.w = 550.0
connect(crank_angle.phi, four_stroke_angle.u)
connect(four_stroke_angle.y, combustion_shape.u)
connect(combustion_shape.y, ripple_torque.u)
connect(mean_torque.y, total_torque.u1)
connect(ripple_torque.y, total_torque.u2)
connect(total_torque.y, cylinder_torque.tau)
connect(cylinder_torque.support, fixed.spline)
connect(cylinder_torque.spline, crank.spline_a)
connect(crank.spline_b, shaft.spline_a, crank_speed.spline, crank_angle.spline)
connect(shaft.spline_b, transmitted_torque.spline_a)
connect(transmitted_torque.spline_b, flywheel.spline_a)
connect(flywheel.spline_b, bearing_loss.spline_a, output_speed.spline)
connect(bearing_loss.spline_b, fixed.spline)
end

analysis RaceEngineTransient
extends TransientAnalysis(stop = 0.05)
model = SingleCylinderRaceEngine()
end
30 changes: 0 additions & 30 deletions dyad/hello.dyad

This file was deleted.

Loading
Loading