ross.ThrustPadResults#

class ross.ThrustPadResults(frequency, pressure_fields, temperature_fields, max_thicknesses, min_thicknesses, pivot_film_thicknesses, equilibrium_position_mode, axial_load, kzz, czz, n_radial, n_theta, pad_outer_radius, pad_inner_radius, d_radius, d_theta, pad_arc_length, optimization_history, initial_time=None, final_time=None)#

Post-processing results for a ThrustPad bearing.

Parameters:
frequencyarray_like

Operating frequencies in rad/s.

pressure_fieldslist of ndarray, shape (n_radial + 2, n_theta + 2)

Pressure fields, one per frequency (Pa).

temperature_fieldslist of ndarray, shape (n_radial + 2, n_theta + 2)

Temperature fields, one per frequency (°C).

max_thicknesseslist of float

Maximum film thickness per frequency (m).

min_thicknesseslist of float

Minimum film thickness per frequency (m).

pivot_film_thicknesseslist of float

Film thickness at the pivot per frequency (m).

equilibrium_position_modestr

"imposed" or "calculate".

axial_loadfloat or ndarray

Applied axial load (N). Scalar when equilibrium_position_mode is "calculate"; array when "imposed".

kzzndarray

Axial stiffness coefficient (N/m), one value per frequency.

czzndarray

Axial damping coefficient (N·s/m), one value per frequency.

n_radialint

Number of radial mesh elements.

n_thetaint

Number of circumferential mesh elements.

pad_outer_radiusfloat

Pad outer radius (m).

pad_inner_radiusfloat

Pad inner radius (m).

d_radiusfloat

Radial mesh step size (non-dimensional).

d_thetafloat

Angular mesh step size (non-dimensional).

pad_arc_lengthfloat

Pad arc length (rad).

optimization_historydict

Mapping {freq_index: [residuals]}.

initial_timefloat, optional

Solver start epoch timestamp.

final_timefloat, optional

Solver end epoch timestamp.

Methods

__init__(frequency, pressure_fields, temperature_fields, max_thicknesses, min_thicknesses, pivot_film_thicknesses, equilibrium_position_mode, axial_load, kzz, czz, n_radial, n_theta, pad_outer_radius, pad_inner_radius, d_radius, d_theta, pad_arc_length, optimization_history, initial_time=None, final_time=None)#
plot_film_temperature_3d(freq_index=0, fig=None, **kwargs)#

Return a 3-D surface plot of the oil film temperature field.

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

figgo.Figure, optional

Existing figure to add the trace to.

Returns:
figgo.Figure
plot_pad_temperature_3d(freq_index=0, fig=None, **kwargs)#

Return a 3-D mesh of the bearing pads colored by temperature.

This is the through-pad (circumferential x radial) counterpart of plot_film_temperature_3d: the pad geometry is drawn at its physical position and colored by the solid pad / babbitt temperature, showing how much heat crosses from the film into the pad.

The method is part of the common bearing plotting API, so it exists on every bearing result class. Classes whose model does not compute a solid pad temperature field raise NotImplementedError.

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

figgo.Figure, optional

Existing figure to add the trace to.

Returns:
figgo.Figure
Raises:
NotImplementedError

When the bearing model does not provide a solid pad temperature field.

plot_pressure_2d(freq_index=0, fig=None, **kwargs)#

Return a 2-D contour plot of the pressure field.

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

figgo.Figure, optional

Existing figure to add the trace to.

Returns:
figgo.Figure
plot_pressure_3d(freq_index=0, fig=None, **kwargs)#

Return a 3-D surface plot of the pressure field.

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

figgo.Figure, optional

Existing figure to add the trace to.

Returns:
figgo.Figure
plot_results(show_plots=False, freq_index=0)#

Generate and return all standard bearing result plots.

Calls the four abstract plot_* methods and collects their figures into a standardized dictionary. Subclasses may override this method to add bearing-specific figures while calling super().plot_results().

Parameters:
show_plotsbool, optional

When True each figure is displayed immediately via fig.show(). Default is False.

freq_indexint, optional

Index into the frequency array selecting which solved point to visualize. Default is 0 (first frequency).

Returns:
figuresdict

Dictionary with keys "pressure_2d", "pressure_3d", "temperature_2d", and "film_temperature_3d". Each value is a plotly.graph_objects.Figure.

plot_temperature_2d(freq_index=0, fig=None, **kwargs)#

Return a 2-D contour plot of the temperature field.

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

figgo.Figure, optional

Existing figure to add the trace to.

Returns:
figgo.Figure
plot_temperature_3d(*args, **kwargs)#

Deprecated alias for plot_film_temperature_3d().

Deprecated since version 2.4.0: plot_temperature_3d is deprecated and will be removed in a future version. Use plot_film_temperature_3d instead, which states explicitly that the plotted field is the oil film temperature.

Returns:
figgo.Figure
show_coefficients_comparison()#

Print a table comparing axial dynamic coefficients across all frequencies.

Parameters:
None
Returns:
None
show_execution_time()#

Display the total solver execution time.

Parameters:
None
Returns:
None

Prints the elapsed time in seconds to the console.

show_optimization_convergence(by: str = 'index', show_plots: bool = False) None#

Display the optimization residuals per iteration for each frequency.

Parameters:
bystr, optional

"index" — label frequencies by their array index (default). "value" — label frequencies by their value in rad/s.

show_plotsbool, optional

When True a convergence plot is shown for each frequency. Default is False.

Returns:
None
show_results()#

Print a formatted summary of thrust pad bearing results.

Iterates over all solved frequencies and prints a PrettyTable with operating conditions, field extrema, film thicknesses, axial load, and dynamic coefficients.

Parameters:
None
Returns:
None