-------------------------------------------------------------------------------- -- Resistor arrays calculations -------------------------------------------------------------------------------- -- Copyright (C) 2013-2018 Metrostroi Team & FoxWorks Aerospace s.r.o. -- Contains proprietary code. See license.txt for additional information. -------------------------------------------------------------------------------- --[[ Rxx PS PP1 PP2 PT1 PT2 PS1 PPS2 PT1-1 PT1-2 PT2-1 PT2-2 S1 S2 R01 = 4.963 0.000 0.000 3.331 0.203 2.873 2.090 1.665 1.666 0.000 0.203 0.000 0.000 R02 = 4.963 0.000 0.000 3.331 0.203 2.873 2.090 1.665 1.666 0.000 0.203 0.011 0.011 R03 = 3.959 0.000 0.000 3.331 0.203 1.869 2.090 1.665 1.666 0.000 0.203 0.046 0.046 R04 = 3.169 0.000 0.000 3.331 0.203 1.869 1.300 1.665 1.666 0.000 0.203 0.110 0.110 R05 = 2.599 0.000 0.000 3.331 0.203 1.299 1.300 1.665 1.666 0.000 0.203 0.392 0.392 R06 = 2.245 0.000 0.000 3.201 0.203 0.945 1.300 1.535 1.666 0.000 0.203 0.392 0.392 R07 = 1.891 0.130 0.000 3.071 0.310 0.945 0.946 1.535 1.536 0.107 0.203 0.392 0.392 R08 = 1.707 0.130 0.130 2.887 0.359 0.945 0.762 1.535 1.352 0.107 0.252 0.392 0.392 R09 = 1.523 0.130 0.314 2.703 0.410 0.761 0.762 1.351 1.352 0.107 0.303 0.392 0.392 R10 = 1.299 0.314 0.314 2.479 0.508 0.537 0.762 1.127 1.352 0.205 0.303 0.392 0.392 R11 = 1.075 0.538 0.314 2.255 0.585 0.537 0.538 1.127 1.128 0.281 0.303 0.392 0.392 R12 = 0.851 0.538 0.538 2.031 0.629 0.537 0.314 1.127 0.904 0.281 0.348 0.392 0.392 R13 = 0.627 0.538 0.762 1.807 0.662 0.313 0.314 0.903 0.904 0.281 0.381 0.392 0.392 R14 = 0.444 0.762 0.762 1.624 0.713 0.130 0.314 0.720 0.904 0.333 0.381 0.392 0.392 R15 = 0.260 0.945 0.762 1.440 0.744 0.130 0.130 0.720 0.720 0.363 0.381 0.392 0.392 R16 = 0.130 0.945 0.946 1.310 0.837 0.130 0.000 0.720 0.590 0.363 0.474 0.392 0.392 R17 = 0.000 0.945 1.206 1.180 0.923 0.000 0.000 0.590 0.590 0.440 0.483 0.392 0.392 R18 = 0.000 1.211 1.206 1.180 1.046 0.000 0.000 0.590 0.590 0.456 0.590 0.110 0.110 ]]-- -------------------------------------------------------------------------------- -- Resistor arrays calculations - auto-generated by gen.lua -------------------------------------------------------------------------------- Metrostroi.DefineSystem("Gen_Res_703") local R = {} local P1_3 local P3_4 local P4_5 local P5_6 local P6_7 local P7_8 local P8_9 local P9_10 local P10_11 local P11_12 local P12_13 local P11_14 local P15_16 local P16_17 local P17_18 local P18_19 local P19_20 local P20_21 local P21_22 local P22_23 local P23_24 local P24_25 local P25_26 local P25_27 local L26_31 local P31_30 local P30_29 local P29_28 local L25_37 local P37_36 local P36_35 local P35_K2 function TRAIN_SYSTEM.InitializeResistances_81_703(Train) P12_13 = Train.KF_47A["P12-P13"] P11_12 = Train.KF_47A["P11-P12"] P10_11 = Train.KF_47A["P10-P11"] P9_10 = Train.KF_47A["P9-P10"] P8_9 = Train.KF_47A["P8-P9"] P7_8 = Train.KF_47A["P7-P8"] P6_7 = Train.KF_47A["P6-P7"] P5_6 = Train.KF_47A["P5-P6"] P4_5 = Train.KF_47A["P4-P5"] P3_4 = Train.KF_47A["P3-P4"] P1_3 = Train.KF_47A["P1-P3"] P11_14 = Train.KF_47A["P11-P14"] P25_26 = Train.KF_47A["P25-P26"] P24_25 = Train.KF_47A["P24-P25"] P23_24 = Train.KF_47A["P23-P24"] P22_23 = Train.KF_47A["P22-P23"] P21_22 = Train.KF_47A["P21-P22"] P20_21 = Train.KF_47A["P20-P21"] P19_20 = Train.KF_47A["P19-P20"] P18_19 = Train.KF_47A["P18-P19"] P17_18 = Train.KF_47A["P17-P18"] P16_17 = Train.KF_47A["P16-P17"] P15_16 = Train.KF_47A["P15-P16"] P25_27 = Train.KF_47A["P25-P27"] P29_P28 = Train.KF_50A["P29-P28"] P30_P29 = Train.KF_50A["P30-P29"] P31_P30 = Train.KF_50A["P31-P30"] L26_P31 = Train.KF_50A["L26-P31"] P35_K2 = Train.KF_50A["P35-K2"] P36_P35 = Train.KF_50A["P36-P35"] P37_P36 = Train.KF_50A["P37-P36"] L25_P37 = Train.KF_50A["L25-P37"] P33_P42 = Train.YAS_44V["P33-P42"] P13_P33 = Train.YAS_44V["P13-P33"] P13_P42 = Train.KF_47A["P13-P42"] end function TRAIN_SYSTEM.R1C1(Train) local RK = Train.RheostatController local T = Train.PositionSwitch R[1] = ((RK[15])^-1 + (T[20])^-1)^-1 R[2] = ((RK[17])^-1 + (P11_12)^-1)^-1 R[3] = ((RK[19])^-1 + (P12_13+R[2])^-1)^-1 R[4] = ((T[22])^-1 + (P10_11)^-1)^-1 R[5] = ((T[1])^-1 + (P4_5)^-1)^-1 R[6] = ((RK[1])^-1 + (P1_3)^-1)^-1 R[7] = ((RK[9])*(P7_8)+(RK[9])*(P6_7)+(P7_8)*(P6_7))/(RK[9]) R[8] = ((RK[9])*(P7_8)+(RK[9])*(P6_7)+(P7_8)*(P6_7))/(P7_8) R[9] = ((RK[9])*(P7_8)+(RK[9])*(P6_7)+(P7_8)*(P6_7))/(P6_7) R[10] = ((RK[11])^-1 + (R[9])^-1)^-1 R[11] = ((RK[7])^-1 + (R[8])^-1)^-1 R[12] = ((P5_6)*(R[7])+(P5_6)*(R[11])+(R[7])*(R[11]))/(P5_6) R[13] = ((P5_6)*(R[7])+(P5_6)*(R[11])+(R[7])*(R[11]))/(R[7]) R[14] = ((P5_6)*(R[7])+(P5_6)*(R[11])+(R[7])*(R[11]))/(R[11]) R[15] = ((RK[5])^-1 + (R[13])^-1)^-1 R[16] = ((R[12])^-1 + (R[10])^-1)^-1 R[17] = ((R[14])*(R[15])+(R[14])*(R[5]+P3_4)+(R[15])*(R[5]+P3_4))/(R[14]) R[18] = ((R[14])*(R[15])+(R[14])*(R[5]+P3_4)+(R[15])*(R[5]+P3_4))/(R[15]) R[19] = ((R[14])*(R[15])+(R[14])*(R[5]+P3_4)+(R[15])*(R[5]+P3_4))/(R[5]+P3_4) R[20] = ((RK[3])^-1 + (R[17])^-1)^-1 R[21] = ((R[19])^-1 + (R[16])^-1)^-1 R[22] = ((RK[13])*(R[4]+P9_10)+(RK[13])*(P8_9)+(R[4]+P9_10)*(P8_9))/(RK[13]) R[23] = ((RK[13])*(R[4]+P9_10)+(RK[13])*(P8_9)+(R[4]+P9_10)*(P8_9))/(R[4]+P9_10) R[24] = ((RK[13])*(R[4]+P9_10)+(RK[13])*(P8_9)+(R[4]+P9_10)*(P8_9))/(P8_9) R[25] = ((R[24])^-1 + (R[1])^-1)^-1 R[26] = ((R[23])^-1 + (R[21])^-1)^-1 R[27] = ((R[22])*(R[26])+(R[22])*(R[18])+(R[26])*(R[18]))/(R[22]) R[28] = ((R[22])*(R[26])+(R[22])*(R[18])+(R[26])*(R[18]))/(R[26]) R[29] = ((R[22])*(R[26])+(R[22])*(R[18])+(R[26])*(R[18]))/(R[18]) R[30] = ((R[25])^-1 + (R[29])^-1)^-1 R[31] = ((R[28])^-1 + (R[6]+T[19]+P11_14)^-1)^-1 R[32] = ((R[27])^-1 + (R[20])^-1)^-1 R[33] = ((R[30])^-1 + (R[31]+R[32])^-1)^-1 return R[33]+R[3] end function TRAIN_SYSTEM.R1C2(Train) local RK = Train.RheostatController local T = Train.PositionSwitch R[1] = ((RK[15])^-1 + (T[20])^-1)^-1 R[2] = ((RK[17])^-1 + (P11_12)^-1)^-1 R[3] = ((T[22])^-1 + (P10_11)^-1)^-1 R[4] = ((T[1])^-1 + (P4_5)^-1)^-1 R[5] = ((RK[1])^-1 + (P1_3)^-1)^-1 R[6] = ((R[2])^-1 + (RK[19]+P12_13)^-1)^-1 R[7] = ((RK[9])*(P7_8)+(RK[9])*(P6_7)+(P7_8)*(P6_7))/(RK[9]) R[8] = ((RK[9])*(P7_8)+(RK[9])*(P6_7)+(P7_8)*(P6_7))/(P7_8) R[9] = ((RK[9])*(P7_8)+(RK[9])*(P6_7)+(P7_8)*(P6_7))/(P6_7) R[10] = ((R[9])^-1 + (RK[11])^-1)^-1 R[11] = ((R[8])^-1 + (RK[7])^-1)^-1 R[12] = ((R[7])*(R[11])+(R[7])*(P5_6)+(R[11])*(P5_6))/(R[7]) R[13] = ((R[7])*(R[11])+(R[7])*(P5_6)+(R[11])*(P5_6))/(R[11]) R[14] = ((R[7])*(R[11])+(R[7])*(P5_6)+(R[11])*(P5_6))/(P5_6) R[15] = ((R[10])^-1 + (R[14])^-1)^-1 R[16] = ((RK[5])^-1 + (R[12])^-1)^-1 R[17] = ((RK[13])*(P8_9)+(RK[13])*(R[3]+P9_10)+(P8_9)*(R[3]+P9_10))/(RK[13]) R[18] = ((RK[13])*(P8_9)+(RK[13])*(R[3]+P9_10)+(P8_9)*(R[3]+P9_10))/(P8_9) R[19] = ((RK[13])*(P8_9)+(RK[13])*(R[3]+P9_10)+(P8_9)*(R[3]+P9_10))/(R[3]+P9_10) R[20] = ((R[1])^-1 + (R[18])^-1)^-1 R[21] = ((R[15])^-1 + (R[19])^-1)^-1 R[22] = ((R[13])*(R[17])+(R[13])*(R[21])+(R[17])*(R[21]))/(R[13]) R[23] = ((R[13])*(R[17])+(R[13])*(R[21])+(R[17])*(R[21]))/(R[17]) R[24] = ((R[13])*(R[17])+(R[13])*(R[21])+(R[17])*(R[21]))/(R[21]) R[25] = ((R[16])^-1 + (R[23])^-1)^-1 R[26] = ((R[22])^-1 + (R[20])^-1)^-1 R[27] = ((R[25])*(R[4]+P3_4)+(R[25])*(R[24])+(R[4]+P3_4)*(R[24]))/(R[25]) R[28] = ((R[25])*(R[4]+P3_4)+(R[25])*(R[24])+(R[4]+P3_4)*(R[24]))/(R[4]+P3_4) R[29] = ((R[25])*(R[4]+P3_4)+(R[25])*(R[24])+(R[4]+P3_4)*(R[24]))/(R[24]) R[30] = ((R[26])^-1 + (R[28])^-1)^-1 R[31] = ((R[29])^-1 + (RK[3])^-1)^-1 R[32] = ((R[27])^-1 + (R[5]+T[19]+P11_14)^-1)^-1 R[33] = ((R[30])*(R[32])+(R[30])*(R[6])+(R[32])*(R[6]))/(R[30]) R[34] = ((R[30])*(R[32])+(R[30])*(R[6])+(R[32])*(R[6]))/(R[32]) R[35] = ((R[30])*(R[32])+(R[30])*(R[6])+(R[32])*(R[6]))/(R[6]) R[36] = ((R[31])^-1 + (R[35])^-1)^-1 R[37] = ((R[36])^-1 + (R[34]+R[33])^-1)^-1 return R[37] end function TRAIN_SYSTEM.R1C3(Train) local RK = Train.RheostatController local T = Train.PositionSwitch R[1] = ((RK[15])^-1 + (T[20])^-1)^-1 R[2] = ((RK[17])^-1 + (P11_12)^-1)^-1 R[3] = ((T[22])^-1 + (P10_11)^-1)^-1 R[4] = ((T[1])^-1 + (P4_5)^-1)^-1 R[5] = ((RK[1])^-1 + (P1_3)^-1)^-1 R[6] = ((RK[19]+P12_13)^-1 + (R[2])^-1)^-1 R[7] = ((RK[9])*(P7_8)+(RK[9])*(P6_7)+(P7_8)*(P6_7))/(RK[9]) R[8] = ((RK[9])*(P7_8)+(RK[9])*(P6_7)+(P7_8)*(P6_7))/(P7_8) R[9] = ((RK[9])*(P7_8)+(RK[9])*(P6_7)+(P7_8)*(P6_7))/(P6_7) R[10] = ((R[9])^-1 + (RK[11])^-1)^-1 R[11] = ((R[8])^-1 + (RK[7])^-1)^-1 R[12] = ((P5_6)*(R[11])+(P5_6)*(R[7])+(R[11])*(R[7]))/(P5_6) R[13] = ((P5_6)*(R[11])+(P5_6)*(R[7])+(R[11])*(R[7]))/(R[11]) R[14] = ((P5_6)*(R[11])+(P5_6)*(R[7])+(R[11])*(R[7]))/(R[7]) R[15] = ((R[10])^-1 + (R[12])^-1)^-1 R[16] = ((R[14])^-1 + (RK[5])^-1)^-1 R[17] = ((RK[13])*(P9_10+R[3])+(RK[13])*(P8_9)+(P9_10+R[3])*(P8_9))/(RK[13]) R[18] = ((RK[13])*(P9_10+R[3])+(RK[13])*(P8_9)+(P9_10+R[3])*(P8_9))/(P9_10+R[3]) R[19] = ((RK[13])*(P9_10+R[3])+(RK[13])*(P8_9)+(P9_10+R[3])*(P8_9))/(P8_9) R[20] = ((R[15])^-1 + (R[18])^-1)^-1 R[21] = ((R[19])^-1 + (R[1])^-1)^-1 R[22] = ((R[20])*(R[17])+(R[20])*(R[13])+(R[17])*(R[13]))/(R[20]) R[23] = ((R[20])*(R[17])+(R[20])*(R[13])+(R[17])*(R[13]))/(R[17]) R[24] = ((R[20])*(R[17])+(R[20])*(R[13])+(R[17])*(R[13]))/(R[13]) R[25] = ((R[24])^-1 + (R[21])^-1)^-1 R[26] = ((R[16])^-1 + (R[23])^-1)^-1 R[27] = ((R[22])*(R[26])+(R[22])*(R[4]+P3_4)+(R[26])*(R[4]+P3_4))/(R[22]) R[28] = ((R[22])*(R[26])+(R[22])*(R[4]+P3_4)+(R[26])*(R[4]+P3_4))/(R[26]) R[29] = ((R[22])*(R[26])+(R[22])*(R[4]+P3_4)+(R[26])*(R[4]+P3_4))/(R[4]+P3_4) R[30] = ((R[25])^-1 + (R[29])^-1)^-1 R[31] = ((R[27])^-1 + (RK[3])^-1)^-1 R[32] = ((T[19]+R[5])*(R[31])+(T[19]+R[5])*(R[28])+(R[31])*(R[28]))/(T[19]+R[5]) R[33] = ((T[19]+R[5])*(R[31])+(T[19]+R[5])*(R[28])+(R[31])*(R[28]))/(R[31]) R[34] = ((T[19]+R[5])*(R[31])+(T[19]+R[5])*(R[28])+(R[31])*(R[28]))/(R[28]) R[35] = ((R[30])^-1 + (R[32])^-1)^-1 R[36] = ((R[33])^-1 + (P11_14)^-1)^-1 R[37] = ((R[35])*(R[36])+(R[35])*(R[6])+(R[36])*(R[6]))/(R[35]) R[38] = ((R[35])*(R[36])+(R[35])*(R[6])+(R[36])*(R[6]))/(R[36]) R[39] = ((R[35])*(R[36])+(R[35])*(R[6])+(R[36])*(R[6]))/(R[6]) R[40] = ((R[39])^-1 + (R[34])^-1)^-1 R[41] = ((R[40])^-1 + (R[37]+R[38])^-1)^-1 return R[41] end function TRAIN_SYSTEM.R2C1(Train) local RK = Train.RheostatController local T = Train.PositionSwitch R[1] = ((RK[16])^-1 + (T[17])^-1)^-1 R[2] = ((T[16])^-1 + (P24_25)^-1)^-1 R[3] = ((RK[18])^-1 + (P25_26)^-1)^-1 R[4] = ((T[15])^-1 + (P18_19)^-1)^-1 R[5] = ((RK[2])^-1 + (P16_17)^-1)^-1 R[6] = ((RK[8])*(P20_21)+(RK[8])*(P19_20)+(P20_21)*(P19_20))/(RK[8]) R[7] = ((RK[8])*(P20_21)+(RK[8])*(P19_20)+(P20_21)*(P19_20))/(P20_21) R[8] = ((RK[8])*(P20_21)+(RK[8])*(P19_20)+(P20_21)*(P19_20))/(P19_20) R[9] = ((R[8])^-1 + (RK[10])^-1)^-1 R[10] = ((R[7])^-1 + (RK[6])^-1)^-1 R[11] = ((R[6])*(R[10])+(R[6])*(R[4]+P17_18)+(R[10])*(R[4]+P17_18))/(R[6]) R[12] = ((R[6])*(R[10])+(R[6])*(R[4]+P17_18)+(R[10])*(R[4]+P17_18))/(R[10]) R[13] = ((R[6])*(R[10])+(R[6])*(R[4]+P17_18)+(R[10])*(R[4]+P17_18))/(R[4]+P17_18) R[14] = ((R[9])^-1 + (R[13])^-1)^-1 R[15] = ((RK[4])^-1 + (R[11])^-1)^-1 R[16] = ((R[12])*(R[5]+P25_27+P15_16+RK[20]+T[21])+(R[12])*(R[15])+(R[5]+P25_27+P15_16+RK[20]+T[21])*(R[15]))/(R[12]) R[17] = ((R[12])*(R[5]+P25_27+P15_16+RK[20]+T[21])+(R[12])*(R[15])+(R[5]+P25_27+P15_16+RK[20]+T[21])*(R[15]))/(R[5]+P25_27+P15_16+RK[20]+T[21]) R[18] = ((R[12])*(R[5]+P25_27+P15_16+RK[20]+T[21])+(R[12])*(R[15])+(R[5]+P25_27+P15_16+RK[20]+T[21])*(R[15]))/(R[15]) R[19] = ((R[17])^-1 + (R[14])^-1)^-1 R[20] = ((R[16])^-1 + (R[1])^-1)^-1 R[21] = ((RK[12])*(P22_23)+(RK[12])*(P21_22)+(P22_23)*(P21_22))/(RK[12]) R[22] = ((RK[12])*(P22_23)+(RK[12])*(P21_22)+(P22_23)*(P21_22))/(P22_23) R[23] = ((RK[12])*(P22_23)+(RK[12])*(P21_22)+(P22_23)*(P21_22))/(P21_22) R[24] = ((R[19])^-1 + (R[22])^-1)^-1 R[25] = ((R[23])^-1 + (RK[14])^-1)^-1 R[26] = ((R[18])*(R[24])+(R[18])*(R[21])+(R[24])*(R[21]))/(R[18]) R[27] = ((R[18])*(R[24])+(R[18])*(R[21])+(R[24])*(R[21]))/(R[24]) R[28] = ((R[18])*(R[24])+(R[18])*(R[21])+(R[24])*(R[21]))/(R[21]) R[29] = ((R[25])^-1 + (R[26])^-1)^-1 R[30] = ((R[20])^-1 + (R[28])^-1)^-1 R[31] = ((R[27])^-1 + (P23_24+R[2])^-1)^-1 R[32] = ((R[30])^-1 + (R[31]+R[29])^-1)^-1 return R[32]+R[3] end function TRAIN_SYSTEM.R2C2(Train) local RK = Train.RheostatController local T = Train.PositionSwitch R[1] = ((RK[16])^-1 + (T[17])^-1)^-1 R[2] = ((T[16])^-1 + (P24_25)^-1)^-1 R[3] = ((RK[18])^-1 + (P25_26)^-1)^-1 R[4] = ((T[15])^-1 + (P18_19)^-1)^-1 R[5] = ((RK[2])^-1 + (P16_17)^-1)^-1 R[6] = ((RK[8])*(P20_21)+(RK[8])*(P19_20)+(P20_21)*(P19_20))/(RK[8]) R[7] = ((RK[8])*(P20_21)+(RK[8])*(P19_20)+(P20_21)*(P19_20))/(P20_21) R[8] = ((RK[8])*(P20_21)+(RK[8])*(P19_20)+(P20_21)*(P19_20))/(P19_20) R[9] = ((R[8])^-1 + (RK[10])^-1)^-1 R[10] = ((R[7])^-1 + (RK[6])^-1)^-1 R[11] = ((R[6])*(R[10])+(R[6])*(R[4]+P17_18)+(R[10])*(R[4]+P17_18))/(R[6]) R[12] = ((R[6])*(R[10])+(R[6])*(R[4]+P17_18)+(R[10])*(R[4]+P17_18))/(R[10]) R[13] = ((R[6])*(R[10])+(R[6])*(R[4]+P17_18)+(R[10])*(R[4]+P17_18))/(R[4]+P17_18) R[14] = ((R[9])^-1 + (R[13])^-1)^-1 R[15] = ((RK[4])^-1 + (R[11])^-1)^-1 R[16] = ((R[12])*(R[14])+(R[12])*(P21_22)+(R[14])*(P21_22))/(R[12]) R[17] = ((R[12])*(R[14])+(R[12])*(P21_22)+(R[14])*(P21_22))/(R[14]) R[18] = ((R[12])*(R[14])+(R[12])*(P21_22)+(R[14])*(P21_22))/(P21_22) R[19] = ((R[18])^-1 + (R[15])^-1)^-1 R[20] = ((R[16])^-1 + (RK[12])^-1)^-1 R[21] = ((R[17])*(R[20])+(R[17])*(P22_23)+(R[20])*(P22_23))/(R[17]) R[22] = ((R[17])*(R[20])+(R[17])*(P22_23)+(R[20])*(P22_23))/(R[20]) R[23] = ((R[17])*(R[20])+(R[17])*(P22_23)+(R[20])*(P22_23))/(P22_23) R[24] = ((R[19])^-1 + (R[23])^-1)^-1 R[25] = ((RK[14])^-1 + (R[21])^-1)^-1 R[26] = ((R[25])*(R[22])+(R[25])*(P23_24+R[2])+(R[22])*(P23_24+R[2]))/(R[25]) R[27] = ((R[25])*(R[22])+(R[25])*(P23_24+R[2])+(R[22])*(P23_24+R[2]))/(R[22]) R[28] = ((R[25])*(R[22])+(R[25])*(P23_24+R[2])+(R[22])*(P23_24+R[2]))/(P23_24+R[2]) R[29] = ((R[28])^-1 + (R[24])^-1)^-1 R[30] = ((R[27])^-1 + (R[1])^-1)^-1 R[31] = ((R[26])^-1 + (R[5]+P25_27+P15_16+RK[20]+T[21])^-1)^-1 R[32] = ((R[30])*(R[31])+(R[30])*(R[3])+(R[31])*(R[3]))/(R[30]) R[33] = ((R[30])*(R[31])+(R[30])*(R[3])+(R[31])*(R[3]))/(R[31]) R[34] = ((R[30])*(R[31])+(R[30])*(R[3])+(R[31])*(R[3]))/(R[3]) R[35] = ((R[29])^-1 + (R[34])^-1)^-1 R[36] = ((R[33]+R[32])^-1 + (R[35])^-1)^-1 return R[36] end function TRAIN_SYSTEM.R2C3(Train) local RK = Train.RheostatController local T = Train.PositionSwitch R[1] = ((RK[16])^-1 + (T[17])^-1)^-1 R[2] = ((T[16])^-1 + (P24_25)^-1)^-1 R[3] = ((RK[18])^-1 + (P25_26)^-1)^-1 R[4] = ((T[15])^-1 + (P18_19)^-1)^-1 R[5] = ((RK[2])^-1 + (P16_17)^-1)^-1 R[6] = ((RK[8])*(P20_21)+(RK[8])*(P19_20)+(P20_21)*(P19_20))/(RK[8]) R[7] = ((RK[8])*(P20_21)+(RK[8])*(P19_20)+(P20_21)*(P19_20))/(P20_21) R[8] = ((RK[8])*(P20_21)+(RK[8])*(P19_20)+(P20_21)*(P19_20))/(P19_20) R[9] = ((RK[10])^-1 + (R[8])^-1)^-1 R[10] = ((RK[6])^-1 + (R[7])^-1)^-1 R[11] = ((RK[12])*(P22_23)+(RK[12])*(P21_22)+(P22_23)*(P21_22))/(RK[12]) R[12] = ((RK[12])*(P22_23)+(RK[12])*(P21_22)+(P22_23)*(P21_22))/(P22_23) R[13] = ((RK[12])*(P22_23)+(RK[12])*(P21_22)+(P22_23)*(P21_22))/(P21_22) R[14] = ((R[9])^-1 + (R[12])^-1)^-1 R[15] = ((RK[14])^-1 + (R[13])^-1)^-1 R[16] = ((R[6])*(R[4]+P17_18)+(R[6])*(R[10])+(R[4]+P17_18)*(R[10]))/(R[6]) R[17] = ((R[6])*(R[4]+P17_18)+(R[6])*(R[10])+(R[4]+P17_18)*(R[10]))/(R[4]+P17_18) R[18] = ((R[6])*(R[4]+P17_18)+(R[6])*(R[10])+(R[4]+P17_18)*(R[10]))/(R[10]) R[19] = ((R[16])^-1 + (RK[4])^-1)^-1 R[20] = ((R[14])^-1 + (R[17])^-1)^-1 R[21] = ((R[18])*(R[11])+(R[18])*(R[20])+(R[11])*(R[20]))/(R[18]) R[22] = ((R[18])*(R[11])+(R[18])*(R[20])+(R[11])*(R[20]))/(R[11]) R[23] = ((R[18])*(R[11])+(R[18])*(R[20])+(R[11])*(R[20]))/(R[20]) R[24] = ((R[15])^-1 + (R[21])^-1)^-1 R[25] = ((R[22])^-1 + (R[19])^-1)^-1 R[26] = ((R[5]+P15_16+RK[20]+T[21])*(R[23])+(R[5]+P15_16+RK[20]+T[21])*(R[25])+(R[23])*(R[25]))/(R[5]+P15_16+RK[20]+T[21]) R[27] = ((R[5]+P15_16+RK[20]+T[21])*(R[23])+(R[5]+P15_16+RK[20]+T[21])*(R[25])+(R[23])*(R[25]))/(R[23]) R[28] = ((R[5]+P15_16+RK[20]+T[21])*(R[23])+(R[5]+P15_16+RK[20]+T[21])*(R[25])+(R[23])*(R[25]))/(R[25]) R[29] = ((R[24])^-1 + (R[26])^-1)^-1 R[30] = ((P23_24+R[2])*(R[29])+(P23_24+R[2])*(R[28])+(R[29])*(R[28]))/(P23_24+R[2]) R[31] = ((P23_24+R[2])*(R[29])+(P23_24+R[2])*(R[28])+(R[29])*(R[28]))/(R[29]) R[32] = ((P23_24+R[2])*(R[29])+(P23_24+R[2])*(R[28])+(R[29])*(R[28]))/(R[28]) R[33] = ((R[31])^-1 + (P25_27)^-1)^-1 R[34] = ((R[32])^-1 + (R[1])^-1)^-1 R[35] = ((R[27])^-1 + (R[30])^-1)^-1 R[36] = ((R[3])*(R[34])+(R[3])*(R[33])+(R[34])*(R[33]))/(R[3]) R[37] = ((R[3])*(R[34])+(R[3])*(R[33])+(R[34])*(R[33]))/(R[34]) R[38] = ((R[3])*(R[34])+(R[3])*(R[33])+(R[34])*(R[33]))/(R[33]) R[39] = ((R[36])^-1 + (R[37]+R[38])^-1)^-1 R[40] = ((R[39])^-1 + (R[35])^-1)^-1 return R[40] end function TRAIN_SYSTEM.S1(Train) local RK = Train.RheostatController local T = Train.PositionSwitch R[1] = ((P29_P28)^-1 + (1e-9+1e9*(1.0-Train.KSH3.Value))^-1)^-1 R[2] = ((L26_P31)^-1 + (RK[21])^-1)^-1 R[3] = ((RK[23])^-1 + (P31_P30+R[2])^-1)^-1 R[4] = ((P30_P29+R[3])^-1 + (RK[25])^-1)^-1 return R[4]+R[1] end function TRAIN_SYSTEM.S2(Train) local RK = Train.RheostatController local T = Train.PositionSwitch R[1] = ((P35_K2)^-1 + (1e-9+1e9*(1.0-Train.KSH4.Value))^-1)^-1 R[2] = ((L25_P37)^-1 + (RK[22])^-1)^-1 R[3] = ((RK[24])^-1 + (P37_P36+R[2])^-1)^-1 R[4] = ((P36_P35+R[3])^-1 + (RK[26])^-1)^-1 return R[4]+R[1] end