mirror of
https://github.com/MaSzyna-EU07/maszyna.git
synced 2026-07-22 13:59:19 +02:00
Added efficiency of transmision
This commit is contained in:
committed by
tmj-fstate
parent
90da4bf704
commit
7b0307ad68
@@ -641,6 +641,7 @@ struct TTransmision
|
|||||||
int NToothM = 0;
|
int NToothM = 0;
|
||||||
int NToothW = 0;
|
int NToothW = 0;
|
||||||
double Ratio = 1.0;
|
double Ratio = 1.0;
|
||||||
|
double Efficiency = 1.0;
|
||||||
};
|
};
|
||||||
|
|
||||||
enum class TCouplerType { NoCoupler, Articulated, Bare, Chain, Screw, Automatic };
|
enum class TCouplerType { NoCoupler, Articulated, Bare, Chain, Screw, Automatic };
|
||||||
|
|||||||
@@ -5247,7 +5247,7 @@ double TMoverParameters::TractionForce( double dt ) {
|
|||||||
Itot = Im;
|
Itot = Im;
|
||||||
else
|
else
|
||||||
Itot = Im * RList[MainCtrlActualPos].Bn; // prad silnika * ilosc galezi
|
Itot = Im * RList[MainCtrlActualPos].Bn; // prad silnika * ilosc galezi
|
||||||
Mw = Mm * Transmision.Ratio;
|
Mw = Mm * Transmision.Ratio * Transmision.Efficiency;
|
||||||
Fw = Mw * 2.0 / WheelDiameter;
|
Fw = Mw * 2.0 / WheelDiameter;
|
||||||
Ft = Fw * NPoweredAxles; // sila trakcyjna
|
Ft = Fw * NPoweredAxles; // sila trakcyjna
|
||||||
break;
|
break;
|
||||||
@@ -5255,9 +5255,9 @@ double TMoverParameters::TractionForce( double dt ) {
|
|||||||
|
|
||||||
case TEngineType::DieselEngine:
|
case TEngineType::DieselEngine:
|
||||||
{
|
{
|
||||||
Mw = dmoment * dtrans; // dmoment i dtrans policzone przy okazji enginerotation
|
Mw = dmoment * dtrans * Transmision.Efficiency; // dmoment i dtrans policzone przy okazji enginerotation
|
||||||
if ((hydro_R) && (hydro_R_Placement == 0))
|
if ((hydro_R) && (hydro_R_Placement == 0))
|
||||||
Mw -= dizel_MomentumRetarder(nrot * Transmision.Ratio, dt) * Transmision.Ratio;
|
Mw -= dizel_MomentumRetarder(nrot * Transmision.Ratio, dt) * Transmision.Ratio * Transmision.Efficiency;
|
||||||
Fw = Mw * 2.0 / WheelDiameter / NPoweredAxles;
|
Fw = Mw * 2.0 / WheelDiameter / NPoweredAxles;
|
||||||
Ft = Fw * NPoweredAxles; // sila trakcyjna
|
Ft = Fw * NPoweredAxles; // sila trakcyjna
|
||||||
Ft = Ft * DirAbsolute; // ActiveDir*CabNo;
|
Ft = Ft * DirAbsolute; // ActiveDir*CabNo;
|
||||||
@@ -5826,7 +5826,7 @@ double TMoverParameters::TractionForce( double dt ) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
Mm = eimv[eimv_M] * DirAbsolute;
|
Mm = eimv[eimv_M] * DirAbsolute;
|
||||||
Mw = Mm * Transmision.Ratio;
|
Mw = Mm * Transmision.Ratio * Transmision.Efficiency;
|
||||||
Fw = Mw * 2.0 / WheelDiameter;
|
Fw = Mw * 2.0 / WheelDiameter;
|
||||||
Ft = Fw * NPoweredAxles;
|
Ft = Fw * NPoweredAxles;
|
||||||
eimv[eimv_Fr] = DirAbsolute * Ft / 1000;
|
eimv[eimv_Fr] = DirAbsolute * Ft / 1000;
|
||||||
@@ -9869,6 +9869,7 @@ void TMoverParameters::LoadFIZ_Engine( std::string const &Input ) {
|
|||||||
Transmision.Ratio = static_cast<double>( Transmision.NToothW ) / Transmision.NToothM;
|
Transmision.Ratio = static_cast<double>( Transmision.NToothW ) / Transmision.NToothM;
|
||||||
else
|
else
|
||||||
Transmision.Ratio = 1.0;
|
Transmision.Ratio = 1.0;
|
||||||
|
extract_value(Transmision.Efficiency, "TransEff", Input, "");
|
||||||
}
|
}
|
||||||
|
|
||||||
switch( EngineType ) {
|
switch( EngineType ) {
|
||||||
|
|||||||
Reference in New Issue
Block a user