From c04a3f8cde9596b8256cd3bb01ee2667bad37a62 Mon Sep 17 00:00:00 2001 From: Charlotte Bond <czb@star.sr.bham.ac.uk> Date: Mon, 9 Dec 2013 18:07:10 +0000 Subject: [PATCH] making sure can use for plane wave (no maxtem) command --- .../FT_DR_FP_MICH_initial_tuning.m | 85 +++++++++++-------- 1 file changed, 49 insertions(+), 36 deletions(-) diff --git a/src/new/finesse/prepare_files/FT_DR_FP_MICH_initial_tuning.m b/src/new/finesse/prepare_files/FT_DR_FP_MICH_initial_tuning.m index e83fb95..1baed6d 100644 --- a/src/new/finesse/prepare_files/FT_DR_FP_MICH_initial_tuning.m +++ b/src/new/finesse/prepare_files/FT_DR_FP_MICH_initial_tuning.m @@ -133,8 +133,13 @@ function [tunings] = FT_DR_FP_MICH_initial_tuning(infile,outfile,commands,mirror npos = nodes{5}; % Read in the mirror parameters from blocks - [R_ETMX,T_ETMX,L_ETMX,phi_ETMX] = FT_read_mirror_parameters_from_blocks(blocks,etmx); - [R_ETMY,T_ETMY,L_ETMY,phi_ETMY] = FT_read_mirror_parameters_from_blocks(blocks,etmy); + if ~strcmp(etmx,'off') + [R_ETMX,T_ETMX,L_ETMX,phi_ETMX] = FT_read_mirror_parameters_from_blocks(blocks,etmx); + end + if ~strcmp(etmy,'off') + [R_ETMY,T_ETMY,L_ETMY,phi_ETMY] = FT_read_mirror_parameters_from_blocks(blocks,etmy); + end + [R_BS,T_BS,L_BS,phi_BS] = FT_read_mirror_parameters_from_blocks(blocks,bs); % Read in original reflective coefficients for recycling mirrors @@ -190,52 +195,65 @@ function [tunings] = FT_DR_FP_MICH_initial_tuning(infile,outfile,commands,mirror % Perform tunigns twice, once with maxtem 0 and once with the value for % maxtem set in infile for i=1:ntimes + + Nm = 0; + %====================================================================== %============ 1. Tuning arm cavities to be on resonance =============== %====================================================================== %---------------------------------------------------------------------- % Tuning the x arm cavity - tuning = phi_ETMX; - tuning = scan_for_operating_point(FT,Run1,blocks,etmx,nptx,tuning,range,npoints,'max',relative_err,zooms,debug(1)); - - if abs(tuning) < tuning_threshold - tuning=0.0; + if ~strcmp(etmx,'off') + tuning = phi_ETMX; + tuning = scan_for_operating_point(FT,Run1,blocks,etmx,nptx,tuning,range,npoints,'max',relative_err,zooms,debug(1)); + + if abs(tuning) < tuning_threshold + tuning=0.0; + end + + % Setting tuning for x arm + phi_ETMX = tuning; + Nm = Nm+1; + tunings(Nm) = phi_ETMX; + blocks = FT_replace_mirror_parameter_in_blocks(blocks,etmx,'phi',phi_ETMX); + fprintf('Setting %s tuning to %f\n',etmx,phi_ETMX); end - - % Setting tuning for x arm - phi_ETMX = tuning; - blocks = FT_replace_mirror_parameter_in_blocks(blocks,etmx,'phi',phi_ETMX); - fprintf('Setting %s tuning to %f\n',etmx,phi_ETMX); - %---------------------------------------------------------------------- - % Tuning the y arm cavity - tuning = phi_ETMY; - tuning = scan_for_operating_point(FT,Run1,blocks,etmy,npty,tuning,range,npoints,'max',relative_err,zooms,debug(2)); - - if abs(tuning) < tuning_threshold - tuning=0.0; + if ~strcmp(etmy,'off') + %---------------------------------------------------------------------- + % Tuning the y arm cavity + tuning = phi_ETMY; + tuning = scan_for_operating_point(FT,Run1,blocks,etmy,npty,tuning,range,npoints,'max',relative_err,zooms,debug(2)); + + if abs(tuning) < tuning_threshold + tuning=0.0; + end + + % Setting tuning for y arm + phi_ETMY = tuning; + Nm = Nm+1; + tunings(Nm) = phi_ETMY; + blocks = FT_replace_mirror_parameter_in_blocks(blocks,etmy,'phi',phi_ETMY); + fprintf('Setting %s tuning to %f\n',etmy,phi_ETMY); end - - % Setting tuning for y arm - phi_ETMY = tuning; - blocks = FT_replace_mirror_parameter_in_blocks(blocks,etmy,'phi',phi_ETMY); - fprintf('Setting %s tuning to %f\n',etmy,phi_ETMY); %---------------------------------------------------------------------- %====================================================================== %====================================================================== - + %====================================================================== %============ 2. Tuning BS to minimise power at AS port =============== %====================================================================== % Tuning the BS tuning = phi_BS; tuning = scan_for_operating_point(FT,Run1,blocks,bs,nas,tuning,range,npoints,'min',relative_err,zooms,debug(3)); - + if abs(tuning) < tuning_threshold tuning=0.0; end - + % Setting BS tuning phi_BS = tuning; + Nm = Nm+1; + tunings(Nm) = phi_BS; blocks = FT_replace_mirror_parameter_in_blocks(blocks,bs,'phi',phi_BS); fprintf('Setting %s tuning to %f\n',bs,phi_BS); %====================================================================== @@ -265,6 +283,8 @@ function [tunings] = FT_DR_FP_MICH_initial_tuning(infile,outfile,commands,mirror % Setting BS tuning phi_PRM = tuning; + Nm = Nm+1; + tunings(Nm) = phi_PRM; blocks = FT_replace_mirror_parameter_in_blocks(blocks,prm,'phi',phi_PRM); fprintf('Setting %s tuning to %f\n',prm,phi_PRM); %============================================================== @@ -303,6 +323,8 @@ function [tunings] = FT_DR_FP_MICH_initial_tuning(infile,outfile,commands,mirror % Setting BS tuning phi_SRM = tuning+srm_tuning; + Nm = Nm+1; + tunings(Nm) = phi_SRM; blocks = FT_replace_mirror_parameter_in_blocks(blocks,srm,'phi',phi_SRM); fprintf('setting %s tuning to %f\n',srm,phi_SRM); %============================================================== @@ -312,15 +334,6 @@ function [tunings] = FT_DR_FP_MICH_initial_tuning(infile,outfile,commands,mirror end - % Store final tunings - tunings = [phi_ETMX phi_ETMY phi_BS]; - if ~strcmp(prm,'off') - tunings(4) = phi_PRM; - end - if ~strcmp(srm,'off') - tuning(5) = phi_SRM; - end - if length(commands)>0 % Writing new output file, adding command lines back in FT_write_blocks_into_file([blocks,command_blocks],outfile); -- GitLab