def check_oxygen_correction(self, data): fName = 'oxygen_correction' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) sampling_options = ["yes", "no"] vd.xChoice(value, sampling_options, fName)
def check_emission_units(self, data): fName = 'emission_units' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) unit_options = ["ppmv", "mg/Nm3", "mg/Sm3"] vd.xChoice(value, unit_options, fName)
def check_loss_radiation(self, data): fName = 'loss_radiation' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThanEq(value, 0, fName) vd.xLessThanEq(value, 100, fName)
def check_d_basis(self, data): fName = 'd_basis' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) calculation_options = ["calculated", "manual"] vd.xChoice(value, calculation_options, fName)
def check_Pair(self, data): fName = 'Pair' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xDim(value, ['pressure'], fName) vd.xGrtThanEq(value, 0, fName)
def check_qm(self, data): fName = 'qm' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThanEq(value, 0, fName) vd.xDim(value, ['massflow'], fName)
def check_LHV(self, data): fName = 'LHV' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThan(value, 0, fName) vd.xDim(value, ['specificEnergy'], fName)
def check_A(self, data): fName = 'A' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xDim(value, ['area'], fName) vd.xGrtThan(value, 0, fName)
def check_h(self, data): fName = 'h' vd.xRequired(data,fName,fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThanEq(value, 0, fName) vd.xDim(value, ['length','length_mili'], fName)
def check_cell_range(self, data): fName = 'cell_range' vd.xRequired(data,fName,fName) value = data[fName] vd.xString(value, fName) cell_range_options = ["L","M","H"] vd.xChoice(value, cell_range_options, fName)
def check_Ncell_basis(self, data): fName = 'Ncell_basis' vd.xRequired(data,fName,fName) value = data[fName] vd.xString(value, fName) Ncell_basis_options = ["manual","max_possible"] vd.xChoice(value, Ncell_basis_options, fName)
def check_D_basis(self, data): fName = 'D_basis' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) D_basis_options = ["inner", "outer"] vd.xChoice(value, D_basis_options, fName)
def check_Orientation(self, data): fName = 'Orientation' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) Orientation_options = ["horizontal", "vertical"] vd.xChoice(value, Orientation_options, fName)
def check_Shape(self, data): fName = 'Shape' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) Shape_options = ["cylindrical", "spherical"] vd.xChoice(value, Shape_options, fName)
def check_R(self, data): fName = 'R' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThan(value, 0, fName) vd.xDim(value, ['length'], fName)
def check_calculation_option(self, data): fName = 'calculation_option' vd.xRequired(data,fName,fName) value = data[fName] vd.xString(value, fName) calculation_options = ["NPS","d","D"] vd.xChoice(value, calculation_options, fName)
def check_K(self, data): fName = 'K' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThan(value, 0, fName) vd.xDim(value, ['intensity'], fName)
def check_schedule(self, data): fName = 'Schedule' vd.xRequired(data,fName,fName) value = data[fName] vd.xString(value, fName) schedule_options= ['5', '10', '20', '30', '40', '60', '80', '100', '120', '140', '160', 'STD', 'XS', 'XXS', '5S', '10S', '40S', '80S'] vd.xChoice(value, schedule_options, fName)
def check_MW(self, data): fName = 'MW' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThan(value, 0, fName) vd.xDim(value, ['molecularMass'], fName)
def check_Qout(self, data): fName = 'Qout' vd.xRequired(data,fName,fName) value = data[fName] vd.xNumber(value, fName) vd.xDim(value,['flow'],fName) vd.xGrtThan(value, 0, fName)
def check_Uinf(self, data): fName = 'Uinf' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThan(value, 0, fName) vd.xDim(value, ['speed'], fName)
def check_sizing_basis(self, data): fName = 'sizing_basis' vd.xRequired(data,fName,fName) value = data[fName] vd.xString(value, fName) sizing_basis_options = ["buffer_time", "switching_frequency"] vd.xChoice(value, sizing_basis_options, fName)
def check_flue_as(self, data): fName = 'flue_as' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) fuel_as_options = ["mole_per_fuelmole", "mass_per_fuelmass"] vd.xChoice(value, fuel_as_options, fName)
def check_sampling_basis(self, data): fName = 'sampling_basis' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) sampling_basis_options = ["wet", "dry"] vd.xChoice(value, sampling_basis_options, fName)
def check_RH(self, data): fName = 'RH' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThanEq(value, 0, fName) vd.xLessThanEq(value, 100, fName)
def check_composition_type(self, data): fName = 'composition_type' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) composition_type_options = ["mole_percent", "mass_percent"] vd.xChoice(value, composition_type_options, fName)
def check_specie(self, data): fName = 'specie' vd.xRequired(data, fName, fName) value = data[fName] vd.xString(value, fName) specie_options = ["NOx", "SOx", "CO", "Other"] vd.xChoice(value, specie_options, fName)
def check_mixture(self, data): if ('kZ_basis' not in data): return if (data['kZ_basis']['_val'] != 'B'): return fName = 'material' vd.xRequired(data, fName, fName)
def check_k2(self, data): if ('kZ_basis' not in data): return if (data['kZ_basis']['_val'] != 'A'): return fName = 'k2' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThan(value, 0, fName)
def check_Tapproach(self, data): if ('interstage_cooling' not in data): return if (data['interstage_cooling']['_val'] == 'No'): return fName = 'Tapproach' vd.xRequired(data, fName, fName) value = data[fName] vd.xNumber(value, fName) vd.xGrtThan(value, 0, fName)