pub fn normalize(&mut self) -> &Self {
        let n = self.norm().value_unsafe().clone();
        self.x /= n;
        self.y /= n;
        self.z /= n;
        self
    }
/// Normalize vector in place. Produces a unit vector
/// in the same direction and _with the same units_ as
/// self.
///
/// # Examples
///
/// ```
/// use noether::geom::vec3d::Vec3D;
/// use noether::units::KilojoulePerMolePerNanometer;
/// use noether::units::f64consts::KJPMNM;
///
/// type ForceVec = Vec3D<KilojoulePerMolePerNanometer<f64>>;
///
/// let mut push = ForceVec::from(2.0, -1.0, 2.0);
/// push.normalize();
/// assert_eq!(
///     push,
///     ForceVec::from(2.0/3.0, -1.0/3.0, 2.0/3.0)
/// );
/// assert_eq!(push.norm(), 1.0 * KJPMNM);
/// ```
Normalize vector in place. Produces a unit vector
in the same direction and _with the same units_ as
self.
Normalize vector in place . Produces a unit vector in the same direction and _with the same units_ as self .
pub fn normalize(&mut self) -> &Self {
        let n = self.norm().value_unsafe().clone();
        self.x /= n;
        self.y /= n;
        self.z /= n;
        self
    }
pub fn normalize ( & mut self ) -> & Self { let n = self . norm ( ) . value_unsafe ( ) . clone ( ) ; self . x /= n ; self . y /= n ; self . z /= n ; self }
Normalize vector in place.
Normalize vector in place .
&mut self
&mut self
examples
```
use noether::geom::vec3d::Vec3D;
use noether::units::KilojoulePerMolePerNanometer;
use noether::units::f64consts::KJPMNM.

type ForceVec = Vec3D>.


` ` ` use noether :: geom :: vec3d :: Vec3D ; use noether :: units :: KilojoulePerMolePerNanometer ; use noether :: units :: f64consts :: KJPMNM . type ForceVec = Vec3D > .