Base Solution#

class osaft.solutions.base_solution.BaseSolution(name)[source]#

Bases: ABC

Base class for all solutions

Parameters:

name (str) – name of the solution

__copy__()[source]#

Overriding the default copy dunder

The reason for that is, that we need to create a new object by calling the __init__(self, …) method because otherwise the links to the various PassiveVariable and ActiveVariable would be wrong.

This is circumvent by creating a dictionary with all the possible PassiveVariable objects and then calling the __init__(…) method.

Return type:

BaseSolution

__init__(name)[source]#
Parameters:

name (str) –

check_wave_type()[source]#

Checks if wave_type is in supported_wavetypes

Raises:

WrongWaveTypeError – If wave_type is not supported

Return type:

None

copy()[source]#

Returns a copy of the object

Return type:

BaseSolution

__weakref__#

list of weak references to the object (if defined)

abstract property wave_type: WaveType#

returns the wave type of the solution