% compile simulation class clear classes m = MIST('foldeddoublecavity.mist'); % create simulation object s = FoldedDoubleCavity(8); % set angulat motion s.PRM.setMotionShape('pitch'); s.PR2.setMotionShape('pitch'); s.PR3.setMotionShape('pitch'); s.ITM.setMotionShape('pitch'); s.ETM.setMotionShape('pitch'); % set driving frequencies and amplitudes s.f_aITM = 1; s.f_aETM = 1; s.f_aPRM = 1; s.f_aPR2 = 1; s.f_aPR3 = 1; s.z_aITM_ITM = 1; s.z_aETM_ETM = 1; s.z_aPRM_PRM = 1; s.z_aPR2_PR2 = 1; s.z_aPR3_PR3 = 1; % set the filter to allow all modes (this is used to block sidebands % fields before one of the two POP QPDs) s.filt.T = ones(size(s.filt.T)); % change CARM offset and compute QPD signals phi = logspace(-5, -2, 100); for i=1:numel(phi) % set arm cavity tuning s.CAV.phi = phi(i); % these quadrants are sentsitive to all the fields q_ITMall(i) = s.QPD_POPall_y_TF_aITM(); q_ETMall(i) = s.QPD_POPall_y_TF_aETM(); q_PRMall(i) = s.QPD_POPall_y_TF_aPRM(); q_PR2all(i) = s.QPD_POPall_y_TF_aPR2(); q_PR3all(i) = s.QPD_POPall_y_TF_aPR3(); % these are sensitive only to the carrier q_ITMcar(i) = s.QPD_POPcar_y_TF_aITM(); q_ETMcar(i) = s.QPD_POPcar_y_TF_aETM(); q_PRMcar(i) = s.QPD_POPcar_y_TF_aPRM(); q_PR2car(i) = s.QPD_POPcar_y_TF_aPR2(); q_PR3car(i) = s.QPD_POPcar_y_TF_aPR3(); % power into the arm cavity cav_pow(i) = s.CavDC(); end % create plots figure() loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_ITMall), 'LineWidth', 2) hold all loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_ETMall), 'LineWidth', 2) loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_PRMall), 'LineWidth', 2) loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_PR2all), 'LineWidth', 2) loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_PR3all), 'LineWidth', 2) xlabel('CARM tuning [pm]') ylabel('POP QPD signal [W/rad]') title('POP QPD - all fields') legend('ITM', 'ETM', 'PRM', 'PR2', 'PR3') ylim([1e-5, 1]) figure() loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_ITMcar), 'LineWidth', 2) hold all loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_ETMcar), 'LineWidth', 2) loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_PRMcar), 'LineWidth', 2) loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_PR2car), 'LineWidth', 2) loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_PR3car), 'LineWidth', 2) xlabel('CARM tuning [pm]') ylabel('POP QPD signal [W/rad]') title('POP QPD - only carrier') legend('ITM', 'ETM', 'PRM', 'PR2', 'PR3') ylim([1e-5, 1]) figure() loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_ITMall - q_ITMcar), 'LineWidth', 2) hold all loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_ETMall - q_ETMcar), 'LineWidth', 2) loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_PRMall - q_PRMcar), 'LineWidth', 2) loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_PR2all - q_PR2car), 'LineWidth', 2) loglog(1e12*phi/(2*pi)*1.064e-6, abs(q_PR3all - q_PR3car), 'LineWidth', 2) xlabel('CARM tuning [pm]') ylabel('POP QPD signal [W/rad]') title('POP QPD - only sidebands') legend('ITM', 'ETM', 'PRM', 'PR2', 'PR3') ylim([1e-5, 1])