function [rz] = initializeRz(args)
    arguments
        args.rigid logical {mustBeNumericOrLogical} = false
    end

    %%
    rz = struct();

    %% Spindle - Static Properties
    % Spindle - Slip Ring
    rz.slipring.density = 7800; % [kg/m3]
    rz.slipring.color   = [0.792 0.820 0.933];
    rz.slipring.STEP    = './STEPS/rz/Spindle_Slip_Ring.STEP';
    % Spindle - Rotor
    rz.rotor.density    = 7800; % [kg/m3]
    rz.rotor.color      = [0.792 0.820 0.933];
    rz.rotor.STEP       = './STEPS/rz/Spindle_Rotor.STEP';
    % Spindle - Stator
    rz.stator.density   = 7800; % [kg/m3]
    rz.stator.color     = [0.792 0.820 0.933];
    rz.stator.STEP      = './STEPS/rz/Spindle_Stator.STEP';

    % Estimated mass of the mooving part
    rz.m = 250; % [kg]

    %% Spindle - Dynamical Properties

    if args.rigid
      rz.k.rot  = 1e10; % Rotational Stiffness (Rz) [N*m/deg]
      rz.k.tilt = 1e10; % Rotational Stiffness (Rx, Ry) [N*m/deg]
      rz.k.ax   = 1e12; % Axial Stiffness (Z) [N/m]
      rz.k.rad  = 1e12; % Radial Stiffness (X, Y) [N/m]
    else
      rz.k.rot  = 1e6; % TODO - Rotational Stiffness (Rz) [N*m/deg]
      rz.k.tilt = 1e6; % Rotational Stiffness (Rx, Ry) [N*m/deg]
      rz.k.ax   = 2e9; % Axial Stiffness (Z) [N/m]
      rz.k.rad  = 7e8; % Radial Stiffness (X, Y) [N/m]
    end

    % Damping
    rz.c.ax   = 0.1*sqrt(rz.k.ax*rz.m);
    rz.c.rad  = 0.1*sqrt(rz.k.rad*rz.m);
    rz.c.tilt = 0.1*sqrt(rz.k.tilt*rz.m);
    rz.c.rot  = 0.1*sqrt(rz.k.rot*rz.m);

    %% Save
    save('./mat/stages.mat', 'rz', '-append');
end