pycufsm.jupyter_notebooks.gui_widgets

Classes

Preprocess

Widget-based preprocessor for cross-section geometry input in Jupyter notebooks.

Functions

prevals(→ Tuple[numpy.ndarray, numpy.ndarray, ...)

Returns default material, node, element, spring, constraint, and flag values.

Module Contents

pycufsm.jupyter_notebooks.gui_widgets.prevals() Tuple[numpy.ndarray, numpy.ndarray, numpy.ndarray, numpy.ndarray, numpy.ndarray, List[int]]

Returns default material, node, element, spring, constraint, and flag values.

Returns:

Tuple of (props, nodes, elements, springs, constraints, flag).

class pycufsm.jupyter_notebooks.gui_widgets.Preprocess

Widget-based preprocessor for cross-section geometry input in Jupyter notebooks.

m = 0
n = 0
e = 0
nodes
elements
props
springs
constraints
flag = []
mitems = []
nitems = []
eitems = []
add_mat_btn = None
del_mat_btn = None
add_node_btn = None
del_node_btn = None
add_elem_btn = None
del_elem_btn = None
submit_btn = None
bc_widget = None
neigs = None
rowm = None
rnode = None
relem = None
rflag = None
r_bc = None
cs = None
page = None
row1 = None
row = None
row0 = None
b_c = None
flags = None
wprops(m: int) Tuple[ipywidgets.VBox, ipywidgets.Button, ipywidgets.Button, list]

Builds the material properties widget panel.

Args:

m: Number of materials.

Returns:

Tuple of (panel widget, add button, delete button, material item list).

wnodes(nodes, n)

Builds the nodes widget panel.

Args:

nodes: Array of node data. n: Number of nodes.

Returns:

Tuple of (panel widget, add button, delete button, node item list).

welems(elements, e)

Builds the elements widget panel.

Args:

elements: Array of element data. e: Number of elements.

Returns:

Tuple of (panel widget, add button, delete button, element item list).

wflag(flag)

Builds the plot options widget panel.

Args:

flag: List of flag values (0 or 1) for each plot option.

Returns:

Tuple of (panel widget, submit button, flag checkbox list).

w_bound_cond()

Builds the boundary conditions widget panel.

Returns:

Tuple of (panel widget, dropdown widget, eigenvalue count widget).

assemble()

Assembles all sub-panels into the main page widget and wires button callbacks.

add_material()

Adds a new material row to the materials panel.

del_material()

Removes the last material row from the materials panel.

add_node()

Adds a new node row to the nodes panel.

del_node()

Removes the last node row from the nodes panel.

add_elem()

Adds a new element row to the elements panel.

del_elem()

Removes the last element row from the elements panel.

submit()

Reads all widget values, updates stored arrays, and redraws the cross-section.

run(m, n, e, props, nodes, elements, springs, constraints, flag)

Initializes and displays the full preprocessor UI.

Args:

m: Number of materials. n: Number of nodes. e: Number of elements. props: Array of material properties. nodes: Array of node data. elements: Array of element data. springs: Array of spring data. constraints: Array of constraint data. flag: List of plot option flags.

Returns:

Tuple of updated (props, nodes, elements).