bluemira.equilibria.grad_shafranov ================================== .. py:module:: bluemira.equilibria.grad_shafranov .. autoapi-nested-parse:: Grad-Shafranov operator classes Classes ------- .. autoapisummary:: bluemira.equilibria.grad_shafranov.GSSolver Module Contents --------------- .. py:class:: GSSolver(grid: bluemira.equilibria.grid.Grid, *, force_symmetry: bool = False) Bases: :py:obj:`DirectSolver` .. autoapi-inheritance-diagram:: bluemira.equilibria.grad_shafranov.GSSolver :parts: 1 :private-bases: Solver for the Grad-Shafranov system. Uses lower-upper decomposition during linear solve. :param grid: The grid upon which to solve the G-S equation. :param force_symmetry: If true, the G-S operator will be constructed for the lower half space Z<=0 with symmetry conditions imposed at Z=0. .. py:attribute:: grid .. py:attribute:: force_symmetry :value: False .. py:method:: __call__(b: numpy.typing.NDArray[numpy.float64]) -> numpy.typing.NDArray[numpy.float64] Solves the linear system Ax=b using LU decomposition, If the G-S operator is in symmetric form, problem symmetry is explicitly enforced. :param b: 2-D X, Z map of the RHS of the G-S equation. :type b: np.array(nx, nz)