5/29/2023 0 Comments Igor pro increment waveMake /o/n= ( numpnts (bins ) -1 ) bin_centres, afm_dc_binned, afm_amplitude_binned, afm_phase_binned, oafm_amplitude_binned, oafm_phase_binned Make /o /n= ( ceil ( wavemax (displacement_mod ) *1000 ) - floor ( wavemin (displacement_mod ) * 1000 ) + 1 ) binsīins = wavemin (displacement_mod ) - 0.0005 + p *0.001 //bins are 1nm Wave displacement_mod, afm_dc_amplitude_mod, afm_amplitude_mod, afm_phase_mod, oafm_amplitude_mod, oafm_phase_mod While ( V_value >= 0 & numpnts (bin_centres ) > 1 ) Make /free/n= ( numpnts (displacement ) - 1 ) dzĭz = displacement - displacement ĭz = sign (dz ) * 10^ round ( max ( -3, log ( abs (dz / stepsize )))) * stepsizeĭeletepoints V_value, 1, frequency, bin_centresĭeletepoints max ( V_value + 1, numpnts (bins ) - 2 ), 1, bins sig_gen#output_sine() //re-enable electrical modulationįunction clean_displacement (displacement, output_name, ) oafm_undithered_phase = imag(oafm_data) sig_gen#set_offset(amplified_voltage/80) sig_gen#output_dc() //turn off electrical modulation (goes before oo_read so it's definitely off when we re-measure oafm) acquire and store optical lock-in signal without electrical dithering Redimension /n= ( dimsize (spec 2d_t, 0 ), i +1 ) spec 2d_tĭuplicate /o force_y, daq_df :$ ( "force_y_" + num2str (i ))ĭuplicate /o force_x, daq_df :$ ( "force_x_" + num2str (i ))ĭuplicate /o ac_current, daq_df :$ ( "ac_current_" + num2str (i ))ĭuplicate /o reference, daq_df :$ ( "reference_" + num2str (i ))ĭuplicate /o photodiode, daq_df :$ ( "photodiode_" + num2str (i )) Wave spec = root :oo :data :current :spectra_ 2 Redimension /n= ( dimsize (spec 2d, 0 ), i +1 ) spec 2d Wave spec = root :oo :data :current :spectra wave/sdfr=root:tektronix_tds1001b_dso afm Redimension /n= (i +1 ) displacement, afm_amplitude, afm_phase, oafm_amplitude, oafm_phase, afm_dc_amplitude, oafm_undithered_amp, oafm_undithered_phase, afm_dc_amplitude DAQmx_Scan/dev="dev1" WAVES=wave_params Pi_stage#move_rel ( "A", direction *step ) Variable time_constant = max ( lockin#get_time_constant (), lockin2#get_time_constant ()) Wave /sdfr=df wavelength, spec 2d, wavelength_t, spec 2d_tĭisplay /n=optical_force_data /k=1 oafm_amplitude Wave /sdfr=df displacement, afm_amplitude, afm_phase, oafm_amplitude, oafm_phase, oafm_undithered_amp, oafm_undithered_phase, afm_dc_amplitude Waveclear force_y, force_x, ac_current, reference, photodiode Setscale /p x, 0, scan_rate, "s", force_y, force_x, ac_current, reference, photodiode Wave /sdfr=root force_y, force_x, ac_current, reference, photodiode Make /o/n=10000 root :force_y, root :force_x, root :ac_current, root :reference, root :photodiode Make /o/n= ( numpnts (wl_wave_t ), 1 ) df :spec 2d_t Make /o/n= ( numpnts (wl_wave ), 1 ) df :spec 2dĭuplicate /o root :oo :data :current :wl_wave_ 2, df :wavelength_t Setscale d, 0, 0, "°", df :afm_phase, df :oafm_phase, df :oafm_undithered_phaseĭuplicate /o root :oo :data :current :wl_wave, df :wavelength Setscale d, 0, 0, "V", df :afm_amplitude, df :oafm_amplitude, df :afm_dc_amplitude, df :oafm_undithered_amp Setscale d, 0, 0, "m", df :displacement Make /o/n=0 df :displacement, df :afm_amplitude, df :afm_phase, df :oafm_amplitude, df :oafm_phase, df :oafm_undithered_amp, df :oafm_undithered_phase, df :afm_dc_amplitude Variable /g df: amplified_voltage=20*amplitudeĭfref spec_path = root :oo :globalvariables Nvar /sdfr=$ sig_gen#gv_path () amplitude #include "princeton_instruments_pixis_256e_ccd" #pragma rtGlobals =3 // Use modern global access method and strict wave access.
0 Comments
Leave a Reply. |