Skip to content

← Back to middlelevel

InConsistencySizeInterface

Source: Distributed_Design_Optimizer/middlelevel/InConsistencySizeInterface.py

Interface module for inconsistency size computation.

This module defines the abstract interface for computing inconsistency sizes between coupled variables.

Classes

InConsistencySizeInterface

Inherits from: ABC

Abstract interface for inconsistency size storage.

Defines the contract for classes that store and manage inconsistency measurements between subsystems in distributed optimization.

Methods

get_ID(self) → str

Get the identifier of the neighboring subsystem.

Returns:

The neighbor subsystem identifier.

evaluate_MappedResponse_Minus_CopyCouplingVariable(self, mappedresponse: List[float], copycouplingvariable: List[float]) → None

Set the inconsistency on the mapped-response side of the coupling circle.

Args:

mappedresponse: Mapped response values.
copycouplingvariable: Copy of the coupling variable values.

get_MappedResponse_Minus_CopyCouplingVariable(self) → List[float] | None

Get the inconsistency on the mapped-response side of the coupling circle.

Returns:

List of inconsistency values or None if not set.

get_MappedResponse_Minus_CopyCouplingVariable_InfyNorm(self) → float | None

Return the maximum inconsistency on the mapped-response side.

Returns:

Maximum inconsistency value or None if not set.

get_MappedResponse_Minus_CopyCouplingVariable_InfyNormID(self) → int | None

Return the index of the maximum inconsistency on the mapped-response side.

Returns:

Index of maximum inconsistency or None if not set.

evaluate_CopyMappedResponse_Minus_CouplingVariable(self, copymappedresponse: List[float], couplingvariable: List[float]) → None

Set the inconsistency on the coupling-variable side of the coupling circle.

Args:

copymappedresponse: Copy of the mapped response values.
couplingvariable: Coupling variable values.

get_CopyMappedResponse_Minus_CouplingVariable(self) → List[float] | None

Get the inconsistency on the coupling-variable side of the coupling circle.

Returns:

List of inconsistency values or None if not set.

get_CopyMappedResponse_Minus_CouplingVariable_InfyNorm(self) → float | None

Return the maximum inconsistency on the coupling-variable side.

Returns:

Maximum inconsistency value or None if not set.

get_CopyMappedResponse_Minus_CouplingVariable_InfyNormID(self) → int | None

Return the index of the maximum inconsistency on the coupling-variable side.

Returns:

Index of maximum inconsistency or None if not set.

evaluate_SharedDesignVariable_Minus_CopyTargetSharedDesignVariable(self, shareddesignvariable: List[float], copytargetshareddesignvariable: List[float]) → None

Set the inconsistency for shared design variables.

Args:

shareddesignvariable: Shared design variable values.
copytargetshareddesignvariable: Copy of the target shared design variable values.

get_SharedDesignVariable_Minus_CopyTargetSharedDesignVariable(self) → List[float] | None

Get the inconsistency for shared design variables.

Returns:

List of inconsistency values or None if not set.

get_SharedDesignVariable_Minus_CopyTargetSharedDesignVariable_InfyNorm(self) → float | None

Get the maximum shared design variables inconsistency (infinity norm).

Returns:

Maximum inconsistency value or None if not set.

get_SharedDesignVariable_Minus_CopyTargetSharedDesignVariable_InfyNormID(self) → int | None

Get the index of the maximum shared design variables inconsistency.

Returns:

Index of maximum inconsistency or None if not set.

evaluate_CopySharedDesignVariable_Minus_TargetSharedDesignVariable(self, copyshareddesignvariable: List[float], targetshareddesignvariable: List[float]) → None

Set the inconsistency for target shared design variables.

Args:

copyshareddesignvariable: Copy of the shared design variable values.
targetshareddesignvariable: Target shared design variable values.

get_CopySharedDesignVariable_Minus_TargetSharedDesignVariable(self) → List[float] | None

Get the inconsistency for target shared design variables.

Returns:

List of inconsistency values or None if not set.

get_CopySharedDesignVariable_Minus_TargetSharedDesignVariable_InfyNorm(self) → float | None

Return the maximum inconsistency for target shared design variables.

Returns:

Maximum inconsistency value or None if not set.

get_CopySharedDesignVariable_Minus_TargetSharedDesignVariable_InfyNormID(self) → int | None

Return the index of the maximum inconsistency for target shared design variables.

Returns:

Index of maximum inconsistency or None if not set.

evaluate_MaxInconsistency(self) → None

Evaluate the max inconsistency value across all inconsistency types.

get_maxInconsistencyValue(self) → float | None

Return the max inconsistency value.

Returns:

Maximum inconsistency value or None if not set.

get_maxInconsistencyType(self) → str | None

Return the type of the max inconsistency value.

Returns:

Type identifier of the maximum inconsistency or None if not set.

set_OscillationIndex_MappedResponse_Minus_CopyCouplingVariable(self, oscillationindex: List[float | None]) → None

Set oscillation index for mapped-response side.

Args:

oscillationindex: List of oscillation index values.

get_OscillationIndex_MappedResponse_Minus_CopyCouplingVariable(self) → List[float | None] | None

Get oscillation index for mapped-response side.

Returns:

List of oscillation index values or None if not set.

set_OscillationIndex_CopyMappedResponse_Minus_CouplingVariable(self, oscillationindex: List[float | None]) → None

Set oscillation index for coupling-variable side.

Args:

oscillationindex: List of oscillation index values.

get_OscillationIndex_CopyMappedResponse_Minus_CouplingVariable(self) → List[float | None] | None

Get oscillation index for coupling-variable side.

Returns:

List of oscillation index values or None if not set.

set_OscillationIndex_SharedDesignVariable_Minus_CopyTargetSharedDesignVariable(self, oscillationindex: List[float | None]) → None

Set oscillation index for shared design variables.

Args:

oscillationindex: List of oscillation index values.

get_OscillationIndex_SharedDesignVariable_Minus_CopyTargetSharedDesignVariable(self) → List[float | None] | None

Get oscillation index for shared design variables.

Returns:

List of oscillation index values or None if not set.

set_OscillationIndex_CopySharedDesignVariable_Minus_TargetSharedDesignVariable(self, oscillationindex: List[float | None]) → None

Set oscillation index for target shared design variables.

Args:

oscillationindex: List of oscillation index values.

get_OscillationIndex_CopySharedDesignVariable_Minus_TargetSharedDesignVariable(self) → List[float | None] | None

Get oscillation index for target shared design variables.

Returns:

List of oscillation index values or None if not set.

print_end_of_innerloop_iteration(self) → None

Print inconsistency details for this inconsistency at the end of an inner loop iteration.

print_termination_summary(self) → None

Print inconsistency details for this inconsistency at the end of the optimization run.

update_state(self, other_inconsistency: InConsistencySizeInterface) → None

Update the state of this InConsistencySizeInterface from another instance.

This method is necessary for multiprocessing. When subsystems are executed in parallel processes via Parallel.py, the original objects need to be updated with results from the executed copies. Implementations must preserve the memory address of the object's attributes while updating their values.

Args:

other_inconsistency: The source instance containing updated values to copy from.