From ca26d2724bd6dbe0b6a6bfc64f2a3c7acd711327 Mon Sep 17 00:00:00 2001 From: Thomas Braun Date: Tue, 22 Oct 2024 14:52:38 +0200 Subject: [PATCH] WIP: PSQ_Chirp: Add support for DAScale limit checks --- .../MIES/MIES_AnalysisFunctions_PatchSeq.ipf | 31 +++++++++-- .../UTF_PatchSeqChirp.ipf | 54 ++++++++++++++++++- 2 files changed, 79 insertions(+), 6 deletions(-) diff --git a/Packages/MIES/MIES_AnalysisFunctions_PatchSeq.ipf b/Packages/MIES/MIES_AnalysisFunctions_PatchSeq.ipf index aa131ee3ff..17c26f5e84 100644 --- a/Packages/MIES/MIES_AnalysisFunctions_PatchSeq.ipf +++ b/Packages/MIES/MIES_AnalysisFunctions_PatchSeq.ipf @@ -6115,7 +6115,7 @@ Function PSQ_Chirp(device, s) variable targetVoltage, initialDAScale, baselineQCPassed, insideBounds, scalingFactorDAScale, initLPF, ampBesselFilter variable fifoTime, i, ret, range, chirpStart, chirpDuration, userOnsetDelay, asyncAlarmPassed variable numberOfChirpCycles, cycleEnd, maxOccurences, level, numberOfSpikesFound, abortDueToSpikes, spikeCheck, besselFilterRestore - variable spikeCheckPassed, daScaleModifier, chirpEnd, numSweepsFailedAllowed, boundsEvaluationMode, stimsetPass + variable spikeCheckPassed, daScaleModifier, chirpEnd, numSweepsFailedAllowed, boundsEvaluationMode, stimsetPass, oorDAScalePassed string setName, key, msg, stimset, str, daScaleOperator innerRelativeBound = AFH_GetAnalysisParamNumerical("InnerRelativeBound", s.params) @@ -6248,7 +6248,8 @@ Function PSQ_Chirp(device, s) result[INDEP_HEADSTAGE] = initialDAScale ED_AddEntryToLabnotebook(device, key, result, overrideSweepNo = s.sweepNo) - SetDAScale(device, s.sweepNo, s.headstage, absolute = initialDAScale, roundTopA = 1) + // not checking DAScale limits as we can't do that in PRE_SET_EVENT + SetDAScale(device, s.sweepNo, s.headstage, absolute = initialDAScale, roundTopA = 1, limitCheck = 0) WAVE result = LBN_GetNumericWave() key = CreateAnaFuncLBNKey(PSQ_CHIRP, PSQ_FMT_LBN_CR_INIT_UOD) @@ -6309,7 +6310,16 @@ Function PSQ_Chirp(device, s) WAVE asyncChannels = AFH_GetAnalysisParamWave("AsyncQCChannels", s.params) asyncAlarmPassed = PSQ_CheckAsyncAlarmStateAndStoreInLabnotebook(device, PSQ_CHIRP, s.sweepNo, asyncChannels) - sweepPassed = (baselineQCPassed == 1 && insideBounds == 1 && samplingFrequencyPassed == 1 && asyncAlarmPassed == 1 && stimsetPass == 1) + key = CreateAnaFuncLBNKey(PSQ_CHIRP, PSQ_FMT_LBN_DASCALE_OOR, query = 1) + WAVE/Z oorDAScaleLBN = GetLastSetting(numericalValues, s.sweepNo, key, UNKNOWN_MODE) + oorDAScalePassed = !(WaveExists(oorDAScaleLBN) ? oorDAScaleLBN[s.headstage] : 0) + + sweepPassed = (baselineQCPassed == 1 \ + && insideBounds == 1 \ + && samplingFrequencyPassed == 1 \ + && asyncAlarmPassed == 1 \ + && stimsetPass == 1 \ + && oorDAScalePassed == 1) if(spikeCheck) sweepPassed = (sweepPassed == 1 && spikeCheckPassed == 1) @@ -6487,7 +6497,10 @@ Function PSQ_Chirp(device, s) // adapt DAScale and finish daScaleModifier = AFH_GetAnalysisParamNumerical("DAScaleModifier", s.params) daScaleOperator = AFH_GetAnalysisParamTextual("DAScaleOperator", s.params) - SetDAScaleModOp(device, s.sweepNo, s.headstage, daScaleModifier, daScaleOperator, roundTopA = 1) + + WAVE oorDAScale = LBN_GetNumericWave() + oorDAScale[s.headstage] = SetDAScaleModOp(device, s.sweepNo, s.headstage, daScaleModifier, daScaleOperator, roundTopA = 1) + ReportOutOfRangeDAScale(device, s.sweepNo, PSQ_CHIRP, oorDAScale) return ANALYSIS_FUNC_RET_EARLY_STOP endif @@ -6504,6 +6517,8 @@ Function PSQ_Chirp(device, s) key = CreateAnaFuncLBNKey(PSQ_CHIRP, PSQ_FMT_LBN_CR_INSIDE_BOUNDS) ED_AddEntryToLabnotebook(device, key, result, overrideSweepNo = s.sweepNo, unit = LABNOTEBOOK_BINARY_UNIT) + WAVE oorDAScale = LBN_GetNumericWave() + switch(boundsAction) case PSQ_CR_PASS: case PSQ_CR_RERUN: // fallthrough-by-design @@ -6511,11 +6526,17 @@ Function PSQ_Chirp(device, s) break case PSQ_CR_INCREASE: case PSQ_CR_DECREASE: // fallthrough-by-design - SetDAScale(device, s.sweepNo, s.headstage, relative = scalingFactorDAScale, roundTopA = 1) + oorDAScale[s.headstage] = SetDAScale(device, s.sweepNo, s.headstage, relative = scalingFactorDAScale, roundTopA = 1) + + if(oorDAScale[s.headstage]) + return ANALYSIS_FUNC_RET_EARLY_STOP + endif break default: ASSERT(0, "impossible case") endswitch + + ReportOutOfRangeDAScale(device, s.sweepNo, PSQ_CHIRP, oorDAScale) endif if(IsFinite(baselineQCPassed) && baselineQCPassed) diff --git a/Packages/tests/HardwareAnalysisFunctions/UTF_PatchSeqChirp.ipf b/Packages/tests/HardwareAnalysisFunctions/UTF_PatchSeqChirp.ipf index 8c228dce6a..eff31ec3b4 100644 --- a/Packages/tests/HardwareAnalysisFunctions/UTF_PatchSeqChirp.ipf +++ b/Packages/tests/HardwareAnalysisFunctions/UTF_PatchSeqChirp.ipf @@ -37,7 +37,7 @@ static Function/WAVE GetLBNEntriesWave_IGNORE() string list = "sweepPass;setPass;insideBounds;baselinePass;spikePass;stimsetPass;" \ + "boundsState;boundsAction;initialDAScale;DAScale;resistance;spikeCheck;" \ + "samplingPass;autobiasTargetV;initUserOnsetDelay;userOnsetDelay;asyncPass;" \ - + "initLowPassFilter;lowPassFilter" + + "initLowPassFilter;lowPassFilter;oorDAScale" Make/FREE/WAVE/N=(ItemsInList(list)) wv SetDimensionLabels(wv, list, ROWS) @@ -70,6 +70,7 @@ static Function/WAVE GetLBNEntries_IGNORE(string device, variable sweepNo) wv[%asyncPass] = GetLBNSingleEntry_IGNORE(device, sweepNo, PSQ_FMT_LBN_ASYNC_PASS) wv[%initLowPassFilter] = GetLBNSingleEntry_IGNORE(device, sweepNo, PSQ_FMT_LBN_CR_INIT_LPF) wv[%lowPassFilter] = GetLBNSingleEntry_IGNORE(device, sweepNo, "LPF cutoff") + wv[%oorDAScale] = GetLBNSingleEntry_IGNORE(device, sweepNo, PSQ_FMT_LBN_DASCALE_OOR) return wv End @@ -100,6 +101,7 @@ static Function/WAVE GetLBNSingleEntry_IGNORE(device, sweepNo, name) case PSQ_FMT_LBN_BL_QC_PASS: case PSQ_FMT_LBN_SPIKE_PASS: case PSQ_FMT_LBN_PULSE_DUR: + case PSQ_FMT_LBN_DASCALE_OOR: key = CreateAnaFuncLBNKey(PSQ_CHIRP, name, query = 1) return GetLastSettingEachSCI(numericalValues, sweepNo, key, PSQ_TEST_HEADSTAGE, UNKNOWN_MODE) case STIMSET_SCALE_FACTOR_KEY: @@ -221,6 +223,8 @@ static Function PS_CR1_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, empty, empty, incomplete = 1) @@ -303,6 +307,8 @@ static Function PS_CR2_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20 + 2, 520 + 2, 2020 + 2, 2520 + 2}, {522, 854.6995}, empty) @@ -382,6 +388,8 @@ static Function PS_CR2a_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) // CheckChirpUserEpochs(str, {20, 520, 2020, 2520}, {520, 852.6995}) End @@ -460,6 +468,8 @@ static Function PS_CR2b_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520, 2020, 2520}, {520, 852.6995}, empty) @@ -540,6 +550,8 @@ static Function PS_CR3_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {14, 14, 14}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty // CheckChirpUserEpochs(str, {20, 520}, empty, incomplete = 1) @@ -649,6 +661,8 @@ static Function PS_CR4_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {14, 14, 14, 14, 14, 14}, mode = WAVE_DATA) CheckMCCLPF(str, 14) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {0, NaN, 0, NaN, NaN, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty @@ -761,6 +775,8 @@ static Function PS_CR4a_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {0, NaN, 0, NaN, NaN, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, {520, 1038.854}, empty, sweep = 0) @@ -872,6 +888,8 @@ static Function PS_CR4b_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {0, NaN, 0, NaN, NaN, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, {520, 1038.854}, empty, sweep = 0) @@ -982,6 +1000,8 @@ static Function PS_CR5_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {0, NaN, 0, NaN, NaN, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, {520, 1038.854}, empty, sweep = 0) @@ -1095,6 +1115,8 @@ static Function PS_CR6_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {0, NaN, 0, NaN, NaN, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, {520, 1038.854}, empty, sweep = 0) @@ -1204,6 +1226,8 @@ static Function PS_CR7_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {0, NaN, 0, NaN, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, {520, 1038.854}, empty, sweep = 0) @@ -1311,6 +1335,8 @@ static Function PS_CR8_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, {520, 1038.854}, empty, sweep = 0) @@ -1425,6 +1451,8 @@ static Function PS_CR9_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {NaN, NaN, 0, 0, NaN, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520, 2020, 2520}, {520, 1038.854}, empty, sweep = 0) @@ -1538,6 +1566,8 @@ static Function PS_CR9a_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {NaN, NaN, 0, 0, NaN, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520, 2020, 2520}, {520, 1038.854}, empty, sweep = 0) @@ -1651,6 +1681,8 @@ static Function PS_CR9b_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {NaN, NaN, 0, 0, NaN, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520, 2020, 2520}, {520, 1038.854}, empty, sweep = 0) @@ -1760,6 +1792,8 @@ static Function PS_CR10_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {NaN, 0, NaN, 0, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520, 2020, 2520}, {520, 1038.854}, empty, sweep = 0) @@ -1850,6 +1884,8 @@ static Function PS_CR11_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {0, 0, 0}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, empty, empty, incomplete = 1) @@ -1935,6 +1971,8 @@ static Function PS_CR12_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) CheckChirpUserEpochs(str, {20, 520, 2020, 2520}, {520, 852.6995}, {520, 1519.992}) End @@ -2032,6 +2070,8 @@ static Function PS_CR13_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {0, NaN, NaN, 0, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, empty, empty, sweep = 0, incomplete = 1) @@ -2134,6 +2174,8 @@ static Function PS_CR13a_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_EQUAL_WAVES(lbnEntries[%oorDAScale], {0, NaN, NaN, 0, NaN}, mode = WAVE_DATA) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20 + 2, 520 + 2}, empty, empty, sweep = 0, incomplete = 1) @@ -2219,6 +2261,8 @@ static Function PS_CR14_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, empty, empty, incomplete = 1) @@ -2304,6 +2348,8 @@ static Function PS_CR15_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520, 2020, 2520}, {520, 852.6995}, empty) @@ -2390,6 +2436,8 @@ static Function PS_CR16_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520, 2020, 2520}, {520, 852.6995}, empty) @@ -2473,6 +2521,8 @@ static Function PS_CR17_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF, PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, {20, 520}, empty, empty, sweep = 0, incomplete = 1) @@ -2556,6 +2606,8 @@ static Function PS_CR18_REENTRY([str]) CHECK_EQUAL_WAVES(lbnEntries[%lowPassFilter], {PSQ_CR_DEFAULT_LPF}, mode = WAVE_DATA) CheckMCCLPF(str, LPF_BYPASS) + CHECK_WAVE(lbnEntries[%oorDAScale], NULL_WAVE) + CommonAnalysisFunctionChecks(str, sweepNo, lbnEntries[%setPass]) Make/FREE/N=0 empty CheckChirpUserEpochs(str, empty, empty, empty, incomplete = 1)