// Create a electric motor model with all necessary mass elastic and excitation data
// Number of branches: 	1
// Number of masses:	12

// Create inertias
dataModel.Add(M1 = new ElectricMotor() { X=50; Y=100 });
dataModel.Add(M2 = new Inertia() { X=51; Y=100 } );
dataModel.Add(M3 = new Inertia() { X=52; Y=100 } );
dataModel.Add(M4 = new Inertia() { X=53; Y=100 } );
dataModel.Add(M5 = new Inertia() { X=54; Y=100 } );
dataModel.Add(M6 = new Inertia() { X=55; Y=100 } );
dataModel.Add(M7 = new Inertia() { X=56; Y=100 } );
dataModel.Add(M8 = new Inertia() { X=57; Y=100 } );
dataModel.Add(M9 = new Inertia() { X=58; Y=100 } );
dataModel.Add(M10 = new Inertia() { X=59; Y=100 } );
dataModel.Add(M11 = new Inertia() { X=60; Y=100 } );
dataModel.Add(M12 = new Propeller() { X=61; Y=100 } );

// Align inertias
AlignInertias(AlignDirection.Horizontal, [1,2,3,4,5,6,7,8,9,10,11,12]);

// Add stiffness
dataModel.Add(S1 = new Stiffness(M1, M2));
dataModel.Add(S2 = new Stiffness(M2, M3));
dataModel.Add(S3 = new Stiffness(M3, M4));
dataModel.Add(S4 = new Stiffness(M4, M5));
dataModel.Add(S5 = new Stiffness(M5, M6));
dataModel.Add(S6 = new Stiffness(M6, M7));
dataModel.Add(S7 = new Stiffness(M7, M8));
dataModel.Add(S8 = new Stiffness(M8, M9));
dataModel.Add(S9 = new Stiffness(M9, M10));
dataModel.Add(S10 = new Stiffness(M10, M11));
dataModel.Add(S11 = new Stiffness(M11, M12));

// Mass properties
M1.MomentOfInertia=90680 kg*m^2;
M2.MomentOfInertia=826 kg*m^2;
M3.MomentOfInertia=405 kg*m^2;
M4.MomentOfInertia=375 kg*m^2;
M5.MomentOfInertia=67 kg*m^2;
M6.MomentOfInertia=221 kg*m^2;
M7.MomentOfInertia=71 kg*m^2;
M8.MomentOfInertia=266 kg*m^2;
M9.MomentOfInertia=798 kg*m^2;
M10.MomentOfInertia=467 kg*m^2;
M11.MomentOfInertia=542 kg*m^2;

// Mass descriptions
M1.Description = "AEG engine";
M2.Description = "Interms1";
M3.Description = "Lump mass";
M4.Description = "Lump mass";
M5.Description = "Lump mass";
M6.Description = "Lump mass";
M7.Description = "Lump mass";
M8.Description = "Lump mass";
M9.Description = "Lump mass";
M10.Description = "Lump mass";
M11.Description = "Lump mass";
M12.Description = "Propeller";

// Stiffness properties
S1.TorsionalStiffness=8.579E+008 N*m/rad;
S2.TorsionalStiffness=6.740E+007 N*m/rad;
S3.TorsionalStiffness=3.193E+008 N*m/rad;
S4.TorsionalStiffness=7.199E+007 N*m/rad;
S5.TorsionalStiffness=1.244E+008 N*m/rad;
S6.TorsionalStiffness=9.725E+007 N*m/rad;
S7.TorsionalStiffness=8.527E+007 N*m/rad;
S8.TorsionalStiffness=5.022E+007 N*m/rad;
S9.TorsionalStiffness=1.030E+008 N*m/rad;
S10.TorsionalStiffness=1.034E+008 N*m/rad;
S11.TorsionalStiffness=1.116E+008 N*m/rad;

// Outer diameter on shafts
S1.DiamOuter = 0.620 m;
S2.DiamOuter = 0.450 m;
S3.DiamOuter = 0.520 m;
S4.DiamOuter = 0.450 m;
S5.DiamOuter = 0.450 m;
S6.DiamOuter = 0.450 m;
S7.DiamOuter = 0.450 m;
S8.DiamOuter = 0.450 m;
S9.DiamOuter = 0.520 m;
S10.DiamOuter = 0.550 m;
S11.DiamOuter = 0.550 m;

// Shaft damping
for (i=1;i<=11;i++) { dataModel.GetStiffness(i).DynamicMagnifier = 180; }

// Electric motor properties
M1.PowerMCR = 20000 kW;
M1.SpeedMCR = 142.5 rpm;

// Propeller properties
M12.PowerMCR = 20000 kW;
M12.BladeNumber = 5;
M12.DampingModel = "Schwaneke";
M12.EntrainedWaterModel = "Schwaneke";
M12.InertiaInAir = 31387 kg*m^2;
M12.DiameterBoss = 1.07 m;
M12.DiameterPropeller = 5.8 m;
M12.ExpandedAreaRatio = 0.77;
M12.PitchRatio = 1.1;
M12.FirstOrderTorqueAmplitude = 0.06;
M12.SecondOrderTorqueAmplitude = 0.02;

// Operating conditions and load cases
dataModel.AddOperatingMode(OPM1 = new OperatingMode() { Name="MCR operation" });
dataModel.AddLoadCase(OPM1,LC1 = new LoadCase() { Name="Normal firing"; MaxSpeed=150; MinSpeed=10; StepSpeed=1; Type="Propeller law - full pitch"});
