ross.CriticalSpeedResults

class ross.CriticalSpeedResults(_wn, _wd, log_dec, damping_ratio, whirl_direction)

Class used to store results from run_critical_speed() method.

Parameters
_wnarray

Undamped critical speeds array.

_wdarray

Undamped critical speeds array.

log_decarray

Logarithmic decrement for each critical speed.

damping_ratioarray

Damping ratio for each critical speed.

whirl_directionarray

Whirl direction for each critical speed. Can be forward, backward or mixed.

Methods

__init__(_wn, _wd, log_dec, damping_ratio, whirl_direction)
classmethod load(file)

Load results from a .toml file.

This function will load the simulation results from a .toml file. The file must have all the argument’s names and values that are needed to reinstantiate the class.

Parameters
filestr, pathlib.Path

The name of the file the results will be loaded from.

Examples

>>> # Example running a stochastic unbalance response
>>> from tempfile import tempdir
>>> from pathlib import Path
>>> import ross as rs
>>> # Running an example
>>> rotor = rs.rotor_example()
>>> freq_range = np.linspace(0, 500, 31)
>>> n = 3
>>> m = 0.01
>>> p = 0.0
>>> results = rotor.run_unbalance_response(n, m, p, freq_range)
>>> # create path for a temporary file
>>> file = Path(tempdir) / 'unb_resp.toml'
>>> results.save(file)
>>> # Loading file
>>> results2 = rs.ForcedResponseResults.load(file)
>>> abs(results2.forced_resp).all() == abs(results.forced_resp).all()
True
classmethod read_toml_data(data)

Read and parse data stored in a .toml file.

The data passed to this method needs to be according to the format saved in the .toml file by the .save() method.

Parameters
datadict

Dictionary obtained from toml.load().

Returns
The result object.
save(file)

Save results in a .toml file.

This function will save the simulation results to a .toml file. The file will have all the argument’s names and values that are needed to reinstantiate the class.

Parameters
filestr, pathlib.Path

The name of the file the results will be saved in.

Examples

>>> # Example running a unbalance response
>>> from tempfile import tempdir
>>> from pathlib import Path
>>> import ross as rs
>>> # Running an example
>>> rotor = rs.rotor_example()
>>> speed = np.linspace(0, 1000, 101)
>>> response = rotor.run_unbalance_response(node=3,
...                                         unbalance_magnitude=0.001,
...                                         unbalance_phase=0.0,
...                                         frequency=speed)
>>> # create path for a temporary file
>>> file = Path(tempdir) / 'unb_resp.toml'
>>> response.save(file)
wd(frequency_units='rad/s')

Convert units for damped critical speeds.

Parameters
frequency_unitsstr, optional

Critical speeds units. Default is rad/s

Returns
wdarray

Undamped critical speeds array.

wn(frequency_units='rad/s')

Convert units for undamped critical speeds.

Parameters
frequency_unitsstr, optional

Critical speeds units. Default is rad/s

Returns
wnarray

Undamped critical speeds array.