|
| subroutine, public | cell_manifold_utils::cell_manifold_init (m, q0, mask, info, lin_w, eq_pair) |
| | Record constraint targets at q0, check row independence, and build [Y, Z].
|
| subroutine, public | cell_manifold_utils::cell_manifold_geometry (q, s, info) |
| | Compute cell lengths, angles in radians, and volume s(q).
|
| subroutine, public | cell_manifold_utils::cell_manifold_jacobian (q, j, info) |
| | Compute the analytic 7 x 6 Jacobian J = ds/dq of the geometric quantities.
|
| subroutine, public | cell_manifold_utils::cell_manifold_residual (m, q, r, info) |
| | Evaluate the k active constraint residuals r(q).
|
| subroutine, public | cell_manifold_utils::cell_manifold_active_jacobian (m, q, a, info) |
| | Assemble the k x 6 Jacobian A(q) = dr/dq of the active constraints.
|
| subroutine, public | cell_manifold_utils::cell_manifold_chart_eval (m, u, q, info) |
| | Map reduced coordinates u to a canonical cell q(u) that satisfies r(q) = 0.
|
| subroutine, public | cell_manifold_utils::cell_manifold_chart_inv (m, q, u) |
| | Map a canonical cell q back to reduced coordinates u = u0 + Z^T (q - q0).
|
| subroutine, public | cell_manifold_utils::cell_manifold_chart_pullback_grad (m, q, g_q, g_u, info) |
| | Transform a 6-component cell gradient g_q into the reduced gradient g_u = (dq/du)^T g_q.
|
| subroutine, public | cell_manifold_utils::cell_manifold_proj_pressure (m, q, g_phys, pdiff, projected, info) |
| | Compute the pressure residual P_constr - pres_ext along unconstrained cell directions.
|
| pure real(kind=dp) function, dimension(n_slot), public | cell_manifold_utils::cell_manifold_pack_hmat (hmat) |
| | Pack the upper-triangular canonical cell matrix into q(1:6).
|
| pure subroutine, public | cell_manifold_utils::cell_manifold_unpack_hmat (q, hmat) |
| | Write q(1:6) into the upper-triangular canonical cell matrix.
|
| pure character(len=default_string_length) function, public | cell_manifold_utils::cell_manifold_status_label (info) |
| | Return a short description of a cell_manifold_utils status code.
|
| logical function, public | cell_manifold_utils::cell_manifold_is_redundant (m, mask, lin_w, eq_pair) |
| | Test whether one candidate constraint stays zero on manifold m near q0.
|
| subroutine, public | cell_manifold_utils::cell_manifold_pin_semidefinite (m, mask, is_pinned, lin_w, eq_pair) |
| | Pin implied directions when a candidate constraint is semidefinite at q0.
|
|
| integer, parameter, public | cell_manifold_utils::n_slot = 6 |
| integer, parameter, public | cell_manifold_utils::n_geom = 7 |
| integer, parameter, public | cell_manifold_utils::slot_ax = 1 |
| integer, parameter, public | cell_manifold_utils::slot_bx = 2 |
| integer, parameter, public | cell_manifold_utils::slot_by = 3 |
| integer, parameter, public | cell_manifold_utils::slot_cx = 4 |
| integer, parameter, public | cell_manifold_utils::slot_cy = 5 |
| integer, parameter, public | cell_manifold_utils::slot_cz = 6 |
| integer, parameter, public | cell_manifold_utils::geom_a = 1 |
| integer, parameter, public | cell_manifold_utils::geom_b = 2 |
| integer, parameter, public | cell_manifold_utils::geom_c = 3 |
| integer, parameter, public | cell_manifold_utils::geom_alpha = 4 |
| integer, parameter, public | cell_manifold_utils::geom_beta = 5 |
| integer, parameter, public | cell_manifold_utils::geom_gamma = 6 |
| integer, parameter, public | cell_manifold_utils::geom_v = 7 |
| integer, parameter, public | cell_manifold_utils::comp_ax = 2**0 |
| integer, parameter, public | cell_manifold_utils::comp_bx = 2**1 |
| integer, parameter, public | cell_manifold_utils::comp_by = 2**2 |
| integer, parameter, public | cell_manifold_utils::comp_cx = 2**3 |
| integer, parameter, public | cell_manifold_utils::comp_cy = 2**4 |
| integer, parameter, public | cell_manifold_utils::comp_cz = 2**5 |
| integer, parameter, public | cell_manifold_utils::mask_a = comp_ax |
| integer, parameter, public | cell_manifold_utils::mask_b = comp_bx + comp_by |
| integer, parameter, public | cell_manifold_utils::mask_c = comp_cx + comp_cy + comp_cz |
| integer, parameter, public | cell_manifold_utils::mask_x = comp_ax + comp_bx + comp_cx |
| integer, parameter, public | cell_manifold_utils::mask_y = comp_bx + comp_by + comp_cy |
| integer, parameter, public | cell_manifold_utils::mask_z = mask_c |
| integer, parameter, public | cell_manifold_utils::mask_xy = comp_ax + comp_bx + comp_by + comp_cx + comp_cy |
| integer, parameter, public | cell_manifold_utils::mask_xz = comp_ax + comp_bx + comp_cx + comp_cy + comp_cz |
| integer, parameter, public | cell_manifold_utils::mask_yz = comp_bx + comp_by + comp_cx + comp_cy + comp_cz |
| integer, parameter, public | cell_manifold_utils::mask_all = comp_ax + comp_bx + comp_by + comp_cx + comp_cy + comp_cz |
| integer, parameter, public | cell_manifold_utils::gfix_a = 2**6 |
| integer, parameter, public | cell_manifold_utils::gfix_b = 2**7 |
| integer, parameter, public | cell_manifold_utils::gfix_c = 2**8 |
| integer, parameter, public | cell_manifold_utils::gfix_alpha = 2**9 |
| integer, parameter, public | cell_manifold_utils::gfix_beta = 2**10 |
| integer, parameter, public | cell_manifold_utils::gfix_gamma = 2**11 |
| integer, parameter, public | cell_manifold_utils::gfix_v = 2**12 |
| integer, parameter, public | cell_manifold_utils::gfix_all = gfix_a + gfix_b + gfix_c + gfix_alpha + gfix_beta + gfix_gamma + gfix_v |
| integer, parameter, public | cell_manifold_utils::n_constraint_bits = n_slot + n_geom |
| real(kind=dp), parameter, public | cell_manifold_utils::min_cell_length = 1.0E-8_dp |
| integer, parameter, public | cell_manifold_utils::info_ok = 0 |
| integer, parameter, public | cell_manifold_utils::info_degenerate = -1 |
| integer, parameter, public | cell_manifold_utils::info_licq = -2 |
| integer, parameter, public | cell_manifold_utils::info_no_converge = -3 |
| integer, parameter, public | cell_manifold_utils::info_bad_input = -4 |
| external | cell_manifold_utils::dgeqrf |