pub fn gen_scratchpad_with_coords_aligned(kind: GeoKind) -> Scratchpad {
        let geo_ndim = kind.ndim();
        assert!(geo_ndim > 1);
        let space_ndim = geo_ndim;
        let mut pad = Scratchpad::new(space_ndim, kind).unwrap();
        let (shift, scale) = if kind.is_tri_or_tet() { (0.0, 2.0) } else { (1.0, 1.0) };
        for m in 0..kind.nnode() {
            let ksi = kind.reference_coords(m);
            for j in 0..space_ndim {
                pad.set_xx(m, j, shift + scale * ksi[j])
            }
        }
        pad
    }
/// Returns a new scratchpad with coordinates such that the shape has edges aligned to x-y-z
///
/// **Important:** This function works with geo_ndim = 2 or 3 only (SOLID).
///
/// Notes:
///
/// * For triangles (tetrahedra), one edge (face) will cut the diagonal of the x-y(-z) space.
/// * Qua and Hex will have real coordinates equal to the natural coordinates
/// * Tri and Tet will be scaled using the natural coordinates
/// * All edges parallel to the x,y,z axes will have lengths equal to 2.0
/// * The cell will also be shifted such that the first vertex will be at (0.0,0.0,0.0)
Returns a new scratchpad with coordinates such that the shape has edges aligned to x-y-z
Important:** This function works with geo_ndim = 2 or 3 only (SOLID).



For triangles (tetrahedra), one edge (face) will cut the diagonal of the x-y(-z) space.
Qua and Hex will have real coordinates equal to the natural coordinates
Tri and Tet will be scaled using the natural coordinates
All edges parallel to the x,y,z axes will have lengths equal to 2.0
The cell will also be shifted such that the first vertex will be at (0.0,0.0,0.0)
Returns a new scratchpad with coordinates such that the shape has edges aligned to x - y - z Important : ** This function works with geo_ndim = 2 or 3 only ( SOLID ) . For triangles ( tetrahedra ) one edge ( face ) will cut the diagonal of the x - y ( - z ) space . Qua and Hex will have real coordinates equal to the natural coordinates Tri and Tet will be scaled using the natural coordinates All edges parallel to the x y z axes will have lengths equal to 2 . 0 The cell will also be shifted such that the first vertex will be at ( 0 . 0 0 . 0 0 . 0 )
pub fn gen_scratchpad_with_coords_aligned(kind: GeoKind) -> Scratchpad {
        let geo_ndim = kind.ndim();
        assert!(geo_ndim > 1);
        let space_ndim = geo_ndim;
        let mut pad = Scratchpad::new(space_ndim, kind).unwrap();
        let (shift, scale) = if kind.is_tri_or_tet() { (0.0, 2.0) } else { (1.0, 1.0) };
        for m in 0..kind.nnode() {
            let ksi = kind.reference_coords(m);
            for j in 0..space_ndim {
                pad.set_xx(m, j, shift + scale * ksi[j])
            }
        }
        pad
    }
pub fn gen_scratchpad_with_coords_aligned ( kind : GeoKind ) -> Scratchpad { let geo_ndim = kind . ndim ( ) ; assert ! ( geo_ndim 1 ) ; let space_ndim = geo_ndim ; let mut pad = Scratchpad :: new ( space_ndim , kind ) . unwrap ( ) ; let ( shift , scale ) = if kind . is_tri_or_tet ( ) { ( 0.0 , 2.0 ) } else { ( 1.0 , 1.0 ) } ; for m in 0 .. kind . nnode ( ) { let ksi = kind . reference_coords ( m ) ; for j in 0 .. space_ndim { pad . set_xx ( m , j , shift + scale * ksi [ j ] ) } } pad }
Returns a new scratchpad with coordinates such that the shape has edges aligned to x-y-z
Important:** This function works with geo_ndim = 2 or 3 only (SOLID).
Returns a new scratchpad with coordinates such that the shape has edges aligned to x - y - z Important : ** This function works with geo_ndim = 2 or 3 only ( SOLID ) .
kind
GeoKind
kind
GeoKind