fastga_he.models.propulsion.components.source.pemfc.components.cstr_ensure module

class fastga_he.models.propulsion.components.source.pemfc.components.cstr_ensure.ConstraintsPEMFCStackEffectiveAreaEnsure(**kwargs)[source]

Bases: ExplicitComponent

Class that ensuring the maximum current seen by the PEMFC stack during the mission is below the one used for sizing. This ensures each component working below its maximum. This is achieved by adjusting the PEMFC effective area, which is the area of the polymer electrolyte membrane.

Store some bound methods so we can detect runtime overrides.

initialize()[source]

Perform any one-time initialization run at instantiation.

setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs, discrete_inputs=None, discrete_outputs=None)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

An inherited component may choose to either override this function or to define a compute_primal function.

Parameters:
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.

  • discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.

class fastga_he.models.propulsion.components.source.pemfc.components.cstr_ensure.ConstraintsPEMFCStackPowerEnsure(**kwargs)[source]

Bases: ExplicitComponent

Class that ensuring the maximum power seen by the PEMFC stack during the mission is below the one used for sizing. This ensures each component working below its maximum.

Store some bound methods so we can detect runtime overrides.

initialize()[source]

Perform any one-time initialization run at instantiation.

setup()[source]

Declare inputs and outputs.

Available attributes:

name pathname comm options

compute(inputs, outputs, discrete_inputs=None, discrete_outputs=None)[source]

Compute outputs given inputs. The model is assumed to be in an unscaled state.

An inherited component may choose to either override this function or to define a compute_primal function.

Parameters:
  • inputs (Vector) – Unscaled, dimensional input variables read via inputs[key].

  • outputs (Vector) – Unscaled, dimensional output variables read via outputs[key].

  • discrete_inputs (dict-like or None) – If not None, dict-like object containing discrete input values.

  • discrete_outputs (dict-like or None) – If not None, dict-like object containing discrete output values.