|
|
|
@ -337,6 +337,10 @@ def get_distribution_from_db(parameters: dict, is_repairable: bool = True, best_
|
|
|
|
if method == "NHPP":
|
|
|
|
if method == "NHPP":
|
|
|
|
beta = parameters.get("beta", 1.0)
|
|
|
|
beta = parameters.get("beta", 1.0)
|
|
|
|
eta = parameters.get("eta", 100000)
|
|
|
|
eta = parameters.get("eta", 100000)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if eta < 100:
|
|
|
|
|
|
|
|
eta = 15000
|
|
|
|
|
|
|
|
|
|
|
|
return "NHPPTTFF", beta, eta
|
|
|
|
return "NHPPTTFF", beta, eta
|
|
|
|
elif method == "Weibull-2P":
|
|
|
|
elif method == "Weibull-2P":
|
|
|
|
beta = parameters.get("beta", 1.0)
|
|
|
|
beta = parameters.get("beta", 1.0)
|
|
|
|
@ -362,7 +366,7 @@ def get_distribution_from_db(parameters: dict, is_repairable: bool = True, best_
|
|
|
|
sigma = parameters.get("sigma", 1)
|
|
|
|
sigma = parameters.get("sigma", 1)
|
|
|
|
return "Lognormal", mu, sigma
|
|
|
|
return "Lognormal", mu, sigma
|
|
|
|
elif distribution == "Normal":
|
|
|
|
elif distribution == "Normal":
|
|
|
|
mu = parameters.get("mu", 0)
|
|
|
|
mu = parameters.get("mu", 100000)
|
|
|
|
sigma = parameters.get("sigma", 1)
|
|
|
|
sigma = parameters.get("sigma", 1)
|
|
|
|
if sigma > 1000 or sigma < 0:
|
|
|
|
if sigma > 1000 or sigma < 0:
|
|
|
|
sigma = 999
|
|
|
|
sigma = 999
|
|
|
|
@ -372,12 +376,18 @@ def get_distribution_from_db(parameters: dict, is_repairable: bool = True, best_
|
|
|
|
beta = parameters.get("beta", 1.0)
|
|
|
|
beta = parameters.get("beta", 1.0)
|
|
|
|
eta = parameters.get("eta", 100000)
|
|
|
|
eta = parameters.get("eta", 100000)
|
|
|
|
return "Weibull2", beta, eta
|
|
|
|
return "Weibull2", beta, eta
|
|
|
|
|
|
|
|
elif distribution == "Exponential-2P":
|
|
|
|
|
|
|
|
lambda_val = parameters.get("Lambda", 0.00001)
|
|
|
|
|
|
|
|
gamma = parameters.get("gamma", 0)
|
|
|
|
|
|
|
|
return "Exponential2", lambda_val, gamma
|
|
|
|
else:
|
|
|
|
else:
|
|
|
|
# Default to Normal
|
|
|
|
# Default to Normal
|
|
|
|
mu = parameters.get("mu", 0)
|
|
|
|
mu = parameters.get("mu", 100000)
|
|
|
|
sigma = parameters.get("sigma", 1)
|
|
|
|
sigma = parameters.get("sigma", 1)
|
|
|
|
if sigma > 1000 or sigma < 0:
|
|
|
|
if sigma > 1000 or sigma < 0:
|
|
|
|
sigma = 999
|
|
|
|
sigma = 999
|
|
|
|
|
|
|
|
if mu <=0 :
|
|
|
|
|
|
|
|
mu = 19000
|
|
|
|
return "Normal", mu, sigma
|
|
|
|
return "Normal", mu, sigma
|
|
|
|
|
|
|
|
|
|
|
|
async def update_oh_interval_offset(*, aeros_db_session, overhaul_offset, overhaul_interval, project_name):
|
|
|
|
async def update_oh_interval_offset(*, aeros_db_session, overhaul_offset, overhaul_interval, project_name):
|
|
|
|
@ -598,7 +608,10 @@ async def update_equipment_for_simulation(
|
|
|
|
eq.setdefault("cmDisP3", 0)
|
|
|
|
eq.setdefault("cmDisP3", 0)
|
|
|
|
eq.setdefault("relDisP1", 0)
|
|
|
|
eq.setdefault("relDisP1", 0)
|
|
|
|
eq.setdefault("relDisP2", 0)
|
|
|
|
eq.setdefault("relDisP2", 0)
|
|
|
|
eq.setdefault("relDisP3", 0)
|
|
|
|
if eq.get("relDisType") == "Normal":
|
|
|
|
|
|
|
|
sigma = eq.get("relDisP2", 0)
|
|
|
|
|
|
|
|
if sigma > 1000 or sigma < 0:
|
|
|
|
|
|
|
|
eq["relDisP2"] = 999
|
|
|
|
|
|
|
|
|
|
|
|
eq["ohDisType"] = "Fixed"
|
|
|
|
eq["ohDisType"] = "Fixed"
|
|
|
|
eq["ohDisP1"] = overhaul_duration
|
|
|
|
eq["ohDisP1"] = overhaul_duration
|
|
|
|
|