ross.FluidFilmBearingResults#

class ross.FluidFilmBearingResults(frequency, pressure_fields, temperature_fields, film_thickness_fields, theta_grids, z_grids, leading_edge_angles, outputs, kxx, kxy, kyx, kyy, cxx, cxy, cyx, cyy, pad_temperature_fields=None, pad_radial_positions=None, initial_time=None, final_time=None)#

Post-processing results for FluidFilmBearing.

Field arrays are shaped (n_pads, n_circumferential, n_axial): one grid per pad over the film mesh, with theta_grids measured from each pad’s leading edge and leading_edge_angles placing the pads on the bearing circumference.

Parameters:
frequencyarray_like

Operating frequencies, rad/s.

pressure_fieldslist of ndarray

Film pressure grids (Pa), one per frequency.

temperature_fieldslist of ndarray

Radially averaged film temperature grids (K), one per frequency.

film_thickness_fieldslist of ndarray

Film thickness grids (m), one per frequency.

theta_grids, z_gridslist of ndarray

Node angular position (rad, from the pad leading edge) and axial position (m) grids, one per frequency.

leading_edge_anglesndarray

Per-pad leading edge angular position, rad.

pad_temperature_fieldslist of ndarray, optional

Solid pad temperature grids (K), one per frequency, shaped (n_pads, n_circumferential, n_radial) with radial index 0 at the babbitt surface increasing outward to the pad back. Only computed by the full (conducting-pad) thermal model.

pad_radial_positionsndarray, optional

Radius of each pad radial station (m), shape (n_radial,), matching the last axis of pad_temperature_fields.

outputslist of dict

The solver’s named-output dict of each frequency (eccentricity, attitude, power loss, flows, temperatures, …).

kxx, kxy, kyx, kyyarray_like

Stiffness coefficient tables, N/m.

cxx, cxy, cyx, cyyarray_like

Damping coefficient tables, N*s/m.

initial_time, final_timefloat, optional

Epoch timestamps around the solver run.

Examples

>>> from ross.bearings.fluid_film_bearing import fluid_film_bearing_example
>>> bearing = fluid_film_bearing_example()
>>> fig = bearing.plot_pressure_2d()

Methods

__init__(frequency, pressure_fields, temperature_fields, film_thickness_fields, theta_grids, z_grids, leading_edge_angles, outputs, kxx, kxy, kyx, kyy, cxx, cxy, cyx, cyy, pad_temperature_fields=None, pad_radial_positions=None, initial_time=None, final_time=None)#
plot_film_temperature_3d(freq_index=0, pad_index=None, fig=None, **kwargs)#

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

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

pad_indexint, optional

Plot a single pad (0-based). Default plots every pad.

figgo.Figure, optional

Existing figure to add the traces to.

**kwargsdict

Additional layout options forwarded to fig.update_layout.

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

Return the film thickness along the axial center plane, per pad.

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

figgo.Figure, optional

Existing figure to add the traces to.

**kwargsdict

Additional layout options forwarded to fig.update_layout.

Returns:
figgo.Figure
plot_pad_temperature_3d(freq_index=0, length_units='m', temperature_units='degC', colorscale='Viridis', show_interface=True, fig=None, **kwargs)#

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

Each pad is drawn at its true angular position as a hexahedral mesh spanning the pad thickness, from the babbitt surface (inner radius) to the pad back (outer radius), and extruded over the pad axial length. The mesh is colored by the solid pad conduction field of the energy equation, which is resolved over the radial pad stations — so the temperature drop through the pad thickness is shown continuously rather than at a few discrete layers.

This is the through-pad (circumferential x radial) counterpart of plot_film_temperature_3d. The solver does not resolve the solid temperature along the bearing axis, so the axial extrusion is geometric and each ring carries the same temperature at both axial faces.

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

length_unitsstr, optional

Units for the x, y and z axes. Default is “m”.

temperature_unitsstr, optional

Units for the temperature color scale. Default is “degC”.

colorscalestr, optional

Plotly colorscale used for the temperature. Default is “Viridis”.

show_interfacebool, optional

Outline the babbitt surface of each pad with a dashed red line. Default is True.

figgo.Figure, optional

Existing figure to add the trace to.

kwargsoptional

Additional keyword arguments passed to fig.update_layout.

Returns:
figgo.Figure
Raises:
ValueError

When the solid pad temperature field is not available: it is only computed by the full (conducting-pad) thermal model (thermal_type="full").

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

Return the film pressure along the axial center plane, per pad.

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

figgo.Figure, optional

Existing figure to add the traces to.

**kwargsdict

Additional layout options forwarded to fig.update_layout.

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

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

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

pad_indexint, optional

Plot a single pad (0-based). Default plots every pad.

figgo.Figure, optional

Existing figure to add the traces to.

**kwargsdict

Additional layout options forwarded to fig.update_layout.

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 the film temperature along the axial center plane, per pad.

Parameters:
freq_indexint, optional

Frequency index. Default is 0.

figgo.Figure, optional

Existing figure to add the traces to.

**kwargsdict

Additional layout options forwarded to fig.update_layout.

Returns:
figgo.Figure
show_coefficients_comparison()#

Print a table comparing dynamic coefficients across frequencies.

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_results()#

Print a per-frequency summary of the bearing solution.

Returns:
None