def gratingequation(sigma, order, sign, alpha, beta, gamma=0, nd=n_index): """Apply the grating equation to determine the wavelength w = sigma/m cos (gamma) * n_ind *(sin alpha +- sin beta) returns wavelength in mm """ angle = cosd(gamma) * nd() * (sind(alpha) + sign * sind(beta)) return sigma / order * angle
def calc_anamorph(alpha, beta): """Calculates the anamorphic magnification returns the anamorpic magnification """ return cosd(alpha) / cosd(beta)
def calc_angdisp(sigma, order, beta, gamma=0): """Calculate the angular dispersion according to m/sigma/cos beta returns angular dispersion in 1/mm """ return order / sigma / cosd(beta) / cosd(gamma)