Source code for fridom.nonhydro.grid.cartesian.grid

from numpy import ndarray
import fridom.nonhydro as nh
import fridom.framework as fr


[docs] @fr.utils.jaxify class Grid(fr.grid.cartesian.Grid):
[docs] def __init__(self, N: list[int], L: list[float], periodic_bounds: list[bool] | None = None, domain_decomp: fr.domain_decomposition.DomainDecomposition | None = None, diff_mod: fr.grid.DiffModule | None = None, interp_mod: fr.grid.InterpolationModule | None = None ) -> None: super().__init__(N=N, L=L, periodic_bounds=periodic_bounds, domain_decomp=domain_decomp, diff_mod=diff_mod, interp_mod=interp_mod)
[docs] def omega(self, k: tuple[float] | tuple[ndarray], use_discrete: bool = False ) -> ndarray: return nh.grid.cartesian.eigenvectors.omega( mset=self.mset, s=1, k=k, use_discrete=use_discrete)
[docs] def vec_q(self, s: int, use_discrete=True) -> nh.State: return nh.grid.cartesian.eigenvectors.vec_q( mset=self.mset, s=s, use_discrete=use_discrete)
[docs] def vec_p(self, s: int, use_discrete=True) -> nh.State: return nh.grid.cartesian.eigenvectors.vec_p( mset=self.mset, s=s, use_discrete=use_discrete)