# 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" ;**************************************************************** ; ; Copyright (c) 2002-2003 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; All Rights Reserved ; ; PRESS.ppg - voxel selective spectroscogpy method ; ;**************************************************************** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" 1 ;**************************************************************** ; ; $Source$ ; ; Copyright (c) 2006 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; All Rights Reserved ; ;;**************************************************************** ;MRI.include # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/Avance.incl" 1 ;Avance3.incl ; for AV III ; ;avance-version (13/06/17) ; ;$CLASS=HighRes Incl ;$COMMENT= # 169 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/Avance.incl" ;$Id: Avance3.incl,v 1.9.6.1 2013/06/17 15:32:55 pfre Exp $ # 14 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" 2 define delay aqq define delay deparx define delay derxadc define delay rdepa # 21 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" "aqq=dw*td" "rdepa=de-depa" "deparx=depa-derx" "derxadc=derx-deadc" ; contents of De2.incl - usage for different hardware versions to ; be checked - intermediate solution to support Jobs define delay rde1 # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" "rde1=de-de1" # 44 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" ; end of contents of De2.incl # 65 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" # 74 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" # 128 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" # 129 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" # 141 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MRI.include" # 13 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" 2 # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 1 ;**************************************************************** ; ; Copyright (c) 2003-2007 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; Declaration of pulseprogram parameters and subroutines for ; preparation modules ; ; Must be included after MRI.include! ; ;**************************************************************** # 18 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" ;**** Fat Suppression **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/FatSupDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2018 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; FatSupDef.mod : Declaration of Fat Suppression Subroutine ; ;**************************************************************** if (PVM_FatSupPerform == Yes) { define pulse fatSupPul = {$PVM_FatSupRfLength} define list fatSupList = {$PVM_FatSupFL} define delay fatSupRamp = {$PVM_FatSupRampTime} define delay fatSupAmp = {$PVM_FatSupAmpEnable} define delay fatSupWait = {$PVM_FatSupGradWait} define delay fatSupSpoil = {$PVM_FatSupSpoilDur} # 25 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/FatSupDef.mod" ; convert from ms to s "fatSupRamp = fatSupRamp / 1000" "fatSupAmp = fatSupAmp / 1000" "fatSupWait = fatSupWait / 1000" "fatSupSpoil = fatSupSpoil / 1000" } subroutine FatSup # 20 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Flow Saturation **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/FlowSatDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2018 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; FlowSatDef.mod: Declaration of subroutines for Flow Saturation ; call ; subr FlowSat() ; subr FlowSatInit() ; subr FlowSatInc() ; ;**************************************************************** if(PVM_InFlowSatOnOff == 1) { define list modlis4 = {$PVM_InFlowSatFL} define list flowSatGrad={$PVM_InFlowSatGrad} define delay SfD0 = {$PVM_SfD0} define delay SfD1 = {$PVM_SfD1} define delay SfD2 = {$PVM_SfD2} # 28 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/FlowSatDef.mod" define pulse SfP0 = {$PVM_SfP0} define loopcounter SfLp0 = {$PVM_SfLp0} } subroutine FlowSat subroutine FlowSatInc subroutine FlowSatInit # 24 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Inversion Pulse **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/InvPulseDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2002-2007 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; InvPulseDef.mod : Declaration of Inversion Pulse subroutine ; ; call ; subr InvPulse() ; ;**************************************************************** ; ; PVM_InvRFPulseArr : ; ; sp22 TPQQ[14].name : PVM_InvRFPulsePropertyArr[0].Filename ; ; PVM_IpP0 : PVM_InvRFPulseArr[0].PulseLength ; ; PVM_IpD2 : PVM_InvPulseDelay[0] ; PVM_IpD3 : PVM_InvPulseSpoilTime[0] ; PVM_IpD1 : CONFIG_amplifier _enable ; PVM_IpD0 : PVM_RampTime ; if(PVM_InvPulseOnOff == 1) { define list modlis2= {$PVM_InvPulseOffsetHz} define delay IpD0 = {$PVM_IpD0} define delay IpD1 = {$PVM_IpD1} define delay IpD2 = {$PVM_IpD2} define delay IpD3 = {$PVM_IpD3} define pulse IpP0 = {$PVM_IpP0} } subroutine InvPulse # 28 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Magnetisation Transfer **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MagTransDef.mod" 1 ;**************************************************************** ; $Source$ ; ; Copyright (c) 2005-2007 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; All Rights Reserved ; ; MagTransDef.mod: Declaration of subroutine for Magnetization ; transfer ; call ; subr MagTrans() ; ; $Id$ ;**************************************************************** ;**** Magnetisation Transfer Module **** if(PVM_MagTransOnOff) { define list modlis3 = {$PVM_MagTransFL} define delay MtD0 = {$PVM_MtD0} define delay MtD1 = {$PVM_MtD1} define delay MtD2 = {$PVM_MtD2} define delay MtD3 = {$PVM_MtD3} # 28 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/MagTransDef.mod" define pulse MtP0 = {$PVM_MtP0} define loopcounter MtLp0 = {$PVM_MtLp0} } subroutine MagTrans # 32 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Saturation Transfer **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/SatTransDef.mod" 1 ;**************************************************************** ; $Source$ ; ; Copyright (c) 2018 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; All Rights Reserved ; ; SatTransDef.mod: Declaration of subroutine for Saturation transfer ; call ; subr SatTrans() ; ; $Id$ ;**************************************************************** ;**** Saturation Transfer Module **** ; PVM_SatTransFL: List of offset frequencies to be measured. ; PVM_SattransNPulses: Number of pulses used in one saturation event ; PVM_SattransPowerList: List of RF amplitudes for saturation pulses. ; Two elements long: first element: 0 Watt, ; used for one reference scan. Subsequent scans ; use amplitude as specified in UI. ; StReference: If PVM_SatTransRefScan is On then list StRfPower ; has two elements (1st is zero for reference scan) ; If RefScan is Off then lsit has only one element. ; Nevertheless we increment to avoid another 'if' # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/SatTransDef.mod" if(PVM_SatTransOnOff) { define list modlis5 = {$PVM_SatTransFL} define list StRfPower = {$PVM_SatTransPowerList} define delay StD0 = {$PVM_StD0} define delay StD1 = {$PVM_StD1} define delay StD2 = {$PVM_StD2} define delay StD3 = {$PVM_StD3} define pulse StP0 = {$PVM_StP0} define loopcounter StNPulses = {$PVM_SatTransNPulses} define loopcounter StReference "StReference = 1" } subroutine SatTransInit subroutine SatTransInc subroutine SatTrans # 36 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Saturation Pulse **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/SatPulseDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2002-2003 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; SatPulseDef.mod : Declaration of Saturation Pulse subroutines ; call ; subr SatPulse() ; ;**************************************************************** ; ; PVM_SatRFPulseArr : ; ; sp28 DPQQ[12].name : PVM_SatRFPulsePropertyArr[0].Filename ; sp29 DPQQ[13].name : PVM_SatRFPulsePropertyArr[1].Filename ; sp30 DPQQ[14].name : PVM_SatRFPulsePropertyArr[2].Filename ; sp31 DPQQ[15].name : PVM_SatRFPulsePropertyArr[3].Filename ; ; PVM_SpP0 : PVM_SatRFPulseArr[0].PulseLength ; PVM_SpP1 : PVM_SatRFPulseArr[1].PulseLength ; PVM_SpP2 : PVM_SatRFPulseArr[2].PulseLength ; PVM_SpP3 : PVM_SatRFPulseArr[3].PulseLength ; ; PVM_SpD2 : PVM_SatPulseDelay1[0] ; PVM_SpD6 : PVM_SatPulseSpoilTime[0] ; PVM_SpD10 : PVM_SatPulseDelay2[0] ; PVM_SpD3 : PVM_SatPulseSpoilTime[1] ; PVM_SpD7 : PVM_SatPulseDelay1[1] ; PVM_SpD11 : PVM_SatPulseDelay2[1] ; PVM_SpD4 : PVM_SatPulseDelay1[2] ; PVM_SpD8 : PVM_SatPulseSpoilTime[2] ; PVM_SpD12 : PVM_SatPulseDelay2[2] ; PVM_SpD5 : PVM_SatPulseDelay1[3] ; PVM_SpD9 : PVM_SatPulseSpoilTime[3] ; PVM_SpD13 : PVM_SatPulseDelay2[3] ; if(PVM_SatPulseOnOff == 1) { define list modlis7 = {$PVM_SatPulseOffsetHz} define delay SpD0 = {$PVM_SpD0} define delay SpD1 = {$PVM_SpD1} define delay SpD2 = {$PVM_SpD2} define delay SpD3 = {$PVM_SpD3} define delay SpD4 = {$PVM_SpD4} define delay SpD5 = {$PVM_SpD5} define delay SpD6 = {$PVM_SpD6} define delay SpD7 = {$PVM_SpD7} define delay SpD8 = {$PVM_SpD8} define delay SpD9 = {$PVM_SpD9} define delay SpD10 = {$PVM_SpD10} define delay SpD11 = {$PVM_SpD11} define delay SpD12 = {$PVM_SpD12} define delay SpD13 = {$PVM_SpD13} define pulse SpP0 = {$PVM_SpP0} define pulse SpP1 = {$PVM_SpP1} define pulse SpP2 = {$PVM_SpP2} define pulse SpP3 = {$PVM_SpP3} # 66 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/SatPulseDef.mod" } subroutine SatPulse # 40 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;*** FOV Saturation *** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/FovSatDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2018 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; FovSat.mod : Declaration of FOV Saturation subroutine ; call: subr FovSat() ; ;**************************************************************** if (PVM_FovSatOnOff == On) { define pulse fovSatPul = {$PVM_FovSatRfLength} define list fovSatList = {$PVM_FovSatFL} define delay fovSatRamp = {$PVM_FovSatRampTime} define delay fovSatAmp = {$PVM_FovSatAmpEnable} define delay fovSatWait = {$PVM_FovSatGradWait} define delay fovSatSpoil = {$PVM_FovSatSpoilDur} # 27 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/FovSatDef.mod" ; convert from ms to s "fovSatRamp = fovSatRamp / 1000" "fovSatAmp = fovSatAmp / 1000" "fovSatWait = fovSatWait / 1000" "fovSatSpoil = fovSatSpoil / 1000" } subroutine FovSat # 55 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/FovSatDef.mod" ; backwards compatibility subroutine SatSlices # 44 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Black Blood **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/BlBloodDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2007 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; BlBloodDef.mod : Declaration of Black blood subroutine ; ; call ; subr BlBlood(ph0) : Black blood preparation with RF phaselist ; ph0 ; ;**************************************************************** if(PVM_BlBloodOnOff) { define list modlis8 = {$PVM_BlBloodFL} define delay BlbD0 = {$PVM_BlbD0} define delay BlbD1 = {$PVM_BlbD1} define delay BlbD2 = {$PVM_BlbD2} define delay BlbD3 = {$PVM_BlbD3} define pulse BlbP0 = {$PVM_BlbP0} } subroutine BlBlood # 48 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Trigger **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/TriggerDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 1998-2003 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; All Rights Reserved ; ; TriggerDef.mod - Trigger Module ; ;**************************************************************** if (PVM_TriggerModule == On) { define delay trigDur = {$PVM_TriggerDur} define delay trigDel = {$PVM_TriggerDelay} ; convert from ms to s "trigDur = trigDur / 1000" "trigDel = trigDel / 1000" } subroutine Trigger subroutine TriggerPhase subroutine TriggerSlice # 52 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Trigger Out **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/TriggerOutDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2003 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; All Rights Reserved ; $Id$ ;**************************************************************** if (PVM_TriggerOutOnOff == On) { define delay trigOutDur = {$PVM_TriggerOutDur} define delay trigOutDel = {$PVM_TriggerOutDelay} ; convert from ms to s "trigOutDur = trigOutDur / 1000" "trigOutDel = trigOutDel / 1000" } subroutine TriggerOut subroutine TriggerOutStart subroutine TriggerOutSlice subroutine TriggerOutVolume # 56 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Outer Volume Suppression **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2005-2007 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; WsOvsDef.mod: Declaration of water suppression and Outer ; volume suppression subroutines ; ; call ; subr Ovs(ph0) ; execution of OVS with ph0 phaselist ; ; subr WsOvs(ph0,ph1) : execution of OVS with ph0 and WS with ph1 ; phaselist ;**************************************************************** ;**** OuterVolumeSuppression **** if(PVM_OvsOnOff == 1) { define list Ovslist={$PVM_OvsFrequencyList} define delay OvsD0 = {$PVM_OvsD0} define delay OvsD1 = {$PVM_OvsD1} define pulse OvsP0 = {$PVM_OvsP0} } subroutine Ovs # 62 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;*** WaterSuppression Module with OVS **** if (PVM_WsMode) { define list Wslist={$PVM_WsOffsetHz} define pulse WsP0 = {$PVM_WsP0} define pulse WsP1 = {$PVM_WsP1} define pulse WsP2 = {$PVM_WsP2} define delay WsNp0 "WsNp0 = WsP0" define delay WsNp1 "WsNp1 = WsP1" define delay WsNp2 "WsNp2 = WsP2" define list ChD1={$PVM_ChppgD1} define list ChD2={$PVM_ChppgD2} define list VpD1={$PVM_VpppgD1} define list VpD2={$PVM_VpppgD2} # 82 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" } subroutine WsOvsMain subroutine WsOvs subroutine Ws # 60 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Solvent Suppression module **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsSatDef.mod" 1 ;****************************************************************** ; ; Copyright (c) 2002-2007 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; WsSatDef.mod - Declaration of water suppression and FOV saturation ; subroutines ; call ; subr WsSat(ph0) : execution of WS with ph0 phaselist and ; FOV saturation (as passed as argument) ; ;******************************************************************* ; Definitions for WsPpgParams are included in WsOvsDef.mod subroutine WsSatMain subroutine WsSat # 64 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Selective Inversion Recovery **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/SelSliceIrDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2018 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; SlicelSelIr.mod : declaration of slice Selective Inversion ; Recovery subroutine ; call SliceSelIr() ; ; ;**************************************************************** if(PVM_SelIrOnOff) { define list IrFL = {$PVM_SelIrFL} define delay IrD0 = {$PVM_SelIrD0} ; PVM_InterInvDelay define delay IrD1 = {$PVM_SelIrD1} ; PVM_InterInvEndDelay[0] define delay IrD2 = {$PVM_SelIrD2} ; Spoiler duration define delay IrD3 = {$PVM_SelIrD3} ; Gatepulse duration define delay IrD4 = {$PVM_SelIrD4} ; risetime # 28 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/SelSliceIrDef.mod" define pulse IrP0 = {$PVM_SelIrP0} define loopcounter IrL0 = {$PVM_SelIrL0} define loopcounter IrL1 } subroutine SliceSelIr # 68 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Tagging **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/TagDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2018 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; TagDef.mod : Declaration of tagging subroutine ; call ; subr Tagging() ; ;**************************************************************** if(PVM_TaggingOnOff) { define list taggfreq={$PVM_TaggingFL} define delay TaggD0 = {$PVM_TaggingD0} define delay TaggD1 = {$PVM_TaggingD1} define delay TaggD2 = {$PVM_TaggingD2} define delay TaggD3 = {$PVM_TaggingD3} define delay TaggD4 = {$PVM_TaggingD4} define delay TaggD5 = {$PVM_TaggingD5} # 28 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/TagDef.mod" define pulse TaggP0 = {$PVM_TaggingP0} define loopcounter TaggL0 = {$PVM_TaggingLp0} } subroutine Tagging # 72 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Noe **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/NoeDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 2007 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; $Id$ ; ; All Rights Reserved ; ; NoeDef.mod: Declaration of Nuclear Overhouser Enhancement ; subroutine ; call ; subr Noe() ; ;**************************************************************** if(PVM_NoeOnOff == On) { define delay NoeD0 = {$PVM_NoeD0} define delay NoeD1 = {$PVM_NoeD1} } subroutine Noe # 76 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Evolution **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/EvolutionDef.mod" 1 ;**************************************************************** ; ; Copyright (c) 1998-2003 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; All Rights Reserved ; ; EvolutionDef.mod - Evolution Module ; ;**************************************************************** if (PVM_EvolutionOnOff == On) { define delay evolDel = {$PVM_EvolutionDelay} define list evolTime = {$PVM_EvolutionTime} } subroutine Evolution # 80 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 ;**** Drift Compensation **** # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/DriftComp.mod" 1 ;========================================================== ; subroutine for drift compensation ;========================================================== if (PVM_DriftCompNavOnOff == On) { define list txfq = {$PVM_DriftCompNavTxFrq} define list rxfq = {$PVM_DriftCompNavRxFrq} define pulse DCP0 = {$PVM_DriftCompNavP0} define delay DCD0 = {$PVM_DriftCompNavD0} define delay DCD1 = {$PVM_DriftCompNavD1} define delay DCD2 = {$PVM_DriftCompNavD2} define delay DCD3 = {$PVM_DriftCompNavD3} define delay DCD4 = {$PVM_DriftCompNavD4} define delay DCD5 = {$PVM_DriftCompNavD5} define delay DCD6 "DCD6 = 10u - de" define list dcph = { 0 } } subroutine DriftComp # 84 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PrepModulesHead.mod" 2 # 15 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" 2 # 17 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" define delay de4 "de4=0.00002s-de" # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/acqdec.mod" 1 ;**************************************************************** ; ; Copyright (c) 2012 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; All Rights Reserved ; ; $Id$ ; ; All Rights Reserved ; ; Declaration of subroutine for decoupling ; ;**************************************************************** # 18 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/acqdec.mod" if(PVM_DecOnOff == On) { define delay DecD0 = {$PVM_DecD0} define delay DecD1 = {$PVM_DecD1} } define delay durx "durx = 10u - de - 1u" ; 10u - fixed delays subroutine acqdec subroutine acqdec_jobs # 20 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" 2 # 1 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/Navigator.mod" 1 ;**************************************************************** ; ; Copyright (c) 2011 ; Bruker BioSpin MRI GmbH ; D-76275 Ettlingen, Germany ; ; All Rights Reserved ; ; Navigator.mod - Preparation Module for Navigator ; ;**************************************************************** if (PVM_NavOnOff == On) { define list navlist = {$PVM_NavFrequencyList} define list navrec ={$PVM_NavFreqRecList} define list vec ={$PVM_NavVec} define pulse NavP0 = {$PVM_NavP0} define delay NAVD1 = {$PVM_NavD1} define delay NAVD2 = {$PVM_NavD2} define delay NAVD3 = {$PVM_NavD3} define delay NAVD4 = {$PVM_NavD4} if(PVM_NavSpatEnc == Yes) { define list vecRead ={$PVM_NavReadVec} define delay NAVD5 = {$PVM_NavD5} define delay NAVD1DE "NAVD1DE = NAVD1 - de" } } subroutine Navigator subroutine NavigatorSpat subroutine NavigatorSpatDum subroutine Navigator_NOPH subroutine NavigatorDummy subroutine NavigatorGlobal # 21 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" 2 define loopcounter lds={$PVM_DummyScans} define list avList={$AverageList} preset off # 28 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" if (ACQ_jobs_size >1) { 3u setrtp1|1 \n 7u setrtp1^1 \n 1m swj1 \n 1m dccorr1 \n 3u setrtp1|1 \n 187u setrtp1^1 \n 1u setrtp1|1 \n 9u setrtp1^1 \n 1m swj2 \n 1m dccorr2 \n 3u setrtp1|1 \n 7u setrtp1^1 \n 1m swj1 \n if (CONFIG_preemp_type == GREAT_60) \n { \n if (CONFIG_instrument_type != Avance_III) \n { \n 500m setnmr0|34|33|32 \n } \n else \n { \n 200u setnmr0|34|33|32 \n } \n } \n if (CONFIG_preemp_type == DPP_with_SW_Blanking) \n {\n 10u ctrlgrad 0 \n 10u grad{(0)|(0)|(0) } \n 200u setnmr0|34|33|32 \n }\n if (CONFIG_preemp_type == DPP) \n { \n 10u groff \n } } else { dccorr \n \n if (CONFIG_preemp_type == GREAT_60) \n { \n if (CONFIG_instrument_type != Avance_III) \n { \n 500m setnmr0|34|33|32 \n } \n else \n { \n 200u setnmr0|34|33|32 \n } \n } \n if (CONFIG_preemp_type == DPP_with_SW_Blanking) \n {\n 10u ctrlgrad 0 \n 10u grad{(0)|(0)|(0) } \n 200u setnmr0|34|33|32 \n }\n if (CONFIG_preemp_type == DPP) \n { \n 10u groff \n } } 10u ;delay after dccorr \n \n if (CONFIG_preemp_type == GREAT_60) \n { \n if (CONFIG_instrument_type != Avance_III) \n { \n 500m setnmr0|34|33|32 \n } \n else \n { \n 200u setnmr0|34|33|32 \n } \n } \n if (CONFIG_preemp_type == DPP_with_SW_Blanking) \n {\n 10u ctrlgrad 0 \n 10u grad{(0)|(0)|(0) } \n 200u setnmr0|34|33|32 \n }\n if (CONFIG_preemp_type == DPP) \n { \n 10u groff \n } needed 3u setrtp1|1 \n 7u setrtp1^1 ; lasts 10u # 41 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" ;-------D/P-----GRAD-----------------------------RF/ACQ--------- 0u rpp1 0u rpp2 0u rpp3 0u rpp31 start, 10u 1m fq8(receive):f1 subr TriggerSlice ;EXEC_begin TriggerSlice TriggerSlice() # 45 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/TriggerDef.mod" if (PVM_TriggerMode == per_Slice) { ;EXEC_begin Trigger Trigger() # 23 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/TriggerDef.mod" if (PVM_TriggerModule == On) { trigDur setnmr3|6 trigDur trignl1 trigDur trigpe3 trigDur setnmr3^6 trigDel } ;EXEC_end Trigger } ;EXEC_end TriggerSlice # 51 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" subr Noe ;EXEC_begin Noe Noe() # 24 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/NoeDef.mod" if(PVM_NoeOnOff == On) { if (PVM_NoeMode == Continuous_Wave_Noe) { 3u pl1:f2 NoeD0 cw:f2 1u do:f2 NoeD1 } if (PVM_NoeMode == Composite_Pulse_Noe) { 3u pl1:f2 NoeD0 cpds1:f2 1u do:f2 NoeD1 } } ;EXEC_end Noe # 52 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" subr WsOvs ;EXEC_begin WsOvs WsOvs(phase ph0, phase ph0) # 251 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;EXEC_begin WsOvsMain WsOvsMain(phase ph0, phase ph0, any PVM_OvsOnOff) # 85 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; NO_SUPPRESSION ;------------------------------------------------------------------------------- ;WS_Mode == NO_SUPPRESSION if ( PVM_WsMode == 0 ) { if ( PVM_OvsOnOff == On ) { ;EXEC_begin Ovs Ovs(phase ph0) # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; delays grads rf/rec comments ;------------------------------------------------------------------------------- ;pulses 1 + 2 OvsD0 grad_ramp{ PVM_OvsTrim0, 0.0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ PVM_OvsTrim1, 0.0, 0.0 } Ovslist.inc ;pulses 3 + 4 OvsD0 grad_ramp{ 0.0, PVM_OvsTrim0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, PVM_OvsTrim2, 0.0 } Ovslist.inc ;pulses 5 + 6 OvsD0 grad_ramp{ 0.0, 0.0, PVM_OvsTrim0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, 0.0, PVM_OvsTrim3 } Ovslist.inc OvsD0 grad_off ;EXEC_end Ovs ;EXEC_begin Ovs Ovs(phase ph0) # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; delays grads rf/rec comments ;------------------------------------------------------------------------------- ;pulses 1 + 2 OvsD0 grad_ramp{ PVM_OvsTrim0, 0.0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ PVM_OvsTrim1, 0.0, 0.0 } Ovslist.inc ;pulses 3 + 4 OvsD0 grad_ramp{ 0.0, PVM_OvsTrim0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, PVM_OvsTrim2, 0.0 } Ovslist.inc ;pulses 5 + 6 OvsD0 grad_ramp{ 0.0, 0.0, PVM_OvsTrim0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, 0.0, PVM_OvsTrim3 } Ovslist.inc OvsD0 grad_off ;EXEC_end Ovs ;EXEC_begin Ovs Ovs(phase ph0) # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; delays grads rf/rec comments ;------------------------------------------------------------------------------- ;pulses 1 + 2 OvsD0 grad_ramp{ PVM_OvsTrim0, 0.0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ PVM_OvsTrim1, 0.0, 0.0 } Ovslist.inc ;pulses 3 + 4 OvsD0 grad_ramp{ 0.0, PVM_OvsTrim0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, PVM_OvsTrim2, 0.0 } Ovslist.inc ;pulses 5 + 6 OvsD0 grad_ramp{ 0.0, 0.0, PVM_OvsTrim0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, 0.0, PVM_OvsTrim3 } Ovslist.inc OvsD0 grad_off ;EXEC_end Ovs } } ;------------------------------------------------------------------------------- ; CHESS scheme ;------------------------------------------------------------------------------- if ( PVM_WsMode == 1 ) { 2u Wslist:f1 ;first pulse if ( PVM_WsOnOff == On ) { (WsP0:sp50 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp0 } ChD1[0] grad_ramp{ PVM_ChTrim[0], PVM_ChTrim[1], PVM_ChTrim[2] } ChD2[0] grad_off if ( PVM_OvsOnOff == On ) { ;EXEC_begin Ovs Ovs(phase ph0) # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; delays grads rf/rec comments ;------------------------------------------------------------------------------- ;pulses 1 + 2 OvsD0 grad_ramp{ PVM_OvsTrim0, 0.0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ PVM_OvsTrim1, 0.0, 0.0 } Ovslist.inc ;pulses 3 + 4 OvsD0 grad_ramp{ 0.0, PVM_OvsTrim0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, PVM_OvsTrim2, 0.0 } Ovslist.inc ;pulses 5 + 6 OvsD0 grad_ramp{ 0.0, 0.0, PVM_OvsTrim0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, 0.0, PVM_OvsTrim3 } Ovslist.inc OvsD0 grad_off ;EXEC_end Ovs 2u Wslist:f1 } ;second pulse if ( PVM_WsOnOff == On ) { (WsP1:sp51 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp1 } ChD1[1] grad_ramp{ PVM_ChTrim[3], PVM_ChTrim[4], PVM_ChTrim[5] } ChD2[1] grad_off if ( PVM_OvsOnOff == On ) { ;EXEC_begin Ovs Ovs(phase ph0) # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; delays grads rf/rec comments ;------------------------------------------------------------------------------- ;pulses 1 + 2 OvsD0 grad_ramp{ PVM_OvsTrim0, 0.0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ PVM_OvsTrim1, 0.0, 0.0 } Ovslist.inc ;pulses 3 + 4 OvsD0 grad_ramp{ 0.0, PVM_OvsTrim0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, PVM_OvsTrim2, 0.0 } Ovslist.inc ;pulses 5 + 6 OvsD0 grad_ramp{ 0.0, 0.0, PVM_OvsTrim0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, 0.0, PVM_OvsTrim3 } Ovslist.inc OvsD0 grad_off ;EXEC_end Ovs 2u Wslist:f1 } ;third pulse if ( PVM_WsOnOff == On ) { (WsP2:sp52 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp2 } ChD1[2] grad_ramp{ PVM_ChTrim[6], PVM_ChTrim[7], PVM_ChTrim[8] } ChD2[2] grad_off if ( PVM_OvsOnOff == On ) { ;EXEC_begin Ovs Ovs(phase ph0) # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; delays grads rf/rec comments ;------------------------------------------------------------------------------- ;pulses 1 + 2 OvsD0 grad_ramp{ PVM_OvsTrim0, 0.0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ PVM_OvsTrim1, 0.0, 0.0 } Ovslist.inc ;pulses 3 + 4 OvsD0 grad_ramp{ 0.0, PVM_OvsTrim0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, PVM_OvsTrim2, 0.0 } Ovslist.inc ;pulses 5 + 6 OvsD0 grad_ramp{ 0.0, 0.0, PVM_OvsTrim0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, 0.0, PVM_OvsTrim3 } Ovslist.inc OvsD0 grad_off ;EXEC_end Ovs 2u } };end of CHESS ;------------------------------------------------------------------------------- ; VAPOR scheme ;------------------------------------------------------------------------------- if ( PVM_WsMode == 2 ) { 2u Wslist:f1 ;first pulse if ( PVM_WsOnOff == On ) { (WsP0:sp50 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp0 } VpD1[0] grad_ramp{ PVM_VpTrim[0], PVM_VpTrim[1], PVM_VpTrim[2] } VpD2[0] grad_off ;second pulse if ( PVM_WsOnOff == On ) { (WsP0:sp50 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp0 } VpD1[1] grad_ramp{ PVM_VpTrim[3], PVM_VpTrim[4], PVM_VpTrim[5] } VpD2[1] grad_off ;third pulse if ( PVM_WsOnOff == On ) { (WsP1:sp51 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp1 } VpD1[2] grad_ramp{ PVM_VpTrim[6], PVM_VpTrim[7], PVM_VpTrim[8] } VpD2[2] grad_off ;fourth pulse if ( PVM_WsOnOff == On ) { (WsP0:sp50 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp0 } if ( PVM_OvsOnOff == On ) { ;EXEC_begin Ovs Ovs(phase ph0) # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; delays grads rf/rec comments ;------------------------------------------------------------------------------- ;pulses 1 + 2 OvsD0 grad_ramp{ PVM_OvsTrim0, 0.0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ PVM_OvsTrim1, 0.0, 0.0 } Ovslist.inc ;pulses 3 + 4 OvsD0 grad_ramp{ 0.0, PVM_OvsTrim0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, PVM_OvsTrim2, 0.0 } Ovslist.inc ;pulses 5 + 6 OvsD0 grad_ramp{ 0.0, 0.0, PVM_OvsTrim0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, 0.0, PVM_OvsTrim3 } Ovslist.inc OvsD0 grad_off ;EXEC_end Ovs 2u Wslist:f1 } VpD1[3] grad_ramp{ PVM_VpTrim[9], PVM_VpTrim[10], PVM_VpTrim[11] } VpD2[3] grad_off ;5.th pulse if ( PVM_WsOnOff == On ) { ( WsP1:sp51 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp1 } VpD1[4] grad_ramp{ PVM_VpTrim[12], PVM_VpTrim[13], PVM_VpTrim[14] } VpD2[4] grad_off if ( PVM_OvsOnOff == On ) { ;EXEC_begin Ovs Ovs(phase ph0) # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; delays grads rf/rec comments ;------------------------------------------------------------------------------- ;pulses 1 + 2 OvsD0 grad_ramp{ PVM_OvsTrim0, 0.0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ PVM_OvsTrim1, 0.0, 0.0 } Ovslist.inc ;pulses 3 + 4 OvsD0 grad_ramp{ 0.0, PVM_OvsTrim0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, PVM_OvsTrim2, 0.0 } Ovslist.inc ;pulses 5 + 6 OvsD0 grad_ramp{ 0.0, 0.0, PVM_OvsTrim0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, 0.0, PVM_OvsTrim3 } Ovslist.inc OvsD0 grad_off ;EXEC_end Ovs 2u Wslist:f1 } ;6.th pulse if ( PVM_WsOnOff == On ) { (WsP0:sp50 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp0 } VpD1[5] grad_ramp{ PVM_VpTrim[15], PVM_VpTrim[16], PVM_VpTrim[17] } VpD2[5] grad_off ;7.th pulse if ( PVM_WsOnOff == On ) { (WsP1:sp51 ph0):f1 } if ( PVM_WsOnOff == Off ) { WsNp1 } VpD1[6] grad_ramp{ PVM_VpTrim[18], PVM_VpTrim[19], PVM_VpTrim[20] } VpD2[6] grad_off if ( PVM_OvsOnOff == On ) { ;EXEC_begin Ovs Ovs(phase ph0) # 31 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/WsOvsDef.mod" ;------------------------------------------------------------------------------- ; delays grads rf/rec comments ;------------------------------------------------------------------------------- ;pulses 1 + 2 OvsD0 grad_ramp{ PVM_OvsTrim0, 0.0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ PVM_OvsTrim1, 0.0, 0.0 } Ovslist.inc ;pulses 3 + 4 OvsD0 grad_ramp{ 0.0, PVM_OvsTrim0, 0.0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, PVM_OvsTrim2, 0.0 } Ovslist.inc ;pulses 5 + 6 OvsD0 grad_ramp{ 0.0, 0.0, PVM_OvsTrim0 } Ovslist:f1 (OvsP0:sp53 ph0):f1 5u Ovslist.inc 5u Ovslist:f1 (OvsP0:sp53 ph0):f1 OvsD1 grad_ramp{ 0.0, 0.0, PVM_OvsTrim3 } Ovslist.inc OvsD0 grad_off ;EXEC_end Ovs 2u } };end vapor ;end subr WsOvsMain ;EXEC_end WsOvsMain ;EXEC_end WsOvs # 53 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" # 55 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" ;---------localisation module------------------------------------ d4 grad_ramp{g1, 0.0, 0.0} fq1:f1 d6 gatepulse 1 (p1:sp1 ph1):f1 d6 d7 grad_off d8 grad_ramp{g4, g6, g7} d4 grad_ramp{0.0, g2, 0.0} fq1:f1 d6 gatepulse 1 (p2:sp2 ph2):f1 d6 d8 grad_ramp{g5, g6, g7} d9 grad_off ;-------pulse adjustments-------------------------------------- if ( PVM_ppgFlag3 == Yes ) { d12 grad_ramp{g11, g12, g13} d4 groff } 20u ;for symmetry with de4 d10 grad_ramp{g8, g9, g10} fq1:f1 d4 grad_ramp{0.0, 0.0, g3} d6 gatepulse 1 (p3:sp3 ph3):f1 d6 d10 grad_ramp{g8, g9, g10} d11 grad_off # 85 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" ;---------data acquisition-------------------------------------------- ;pulse adjustments: if ( PVM_ppgFlag3 == Yes ) { d4 grad_ramp{g14, g15, g16} de4 rdepa \n deparx adc ph0 syrec fqatofqb:f1 \n derxadc ph31:r \n deadc aqq cpdngs17:f1 } else { 10u subr acqdec_jobs ;EXEC_begin acqdec_jobs acqdec_jobs(phase ph0, phase ph31) # 58 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/acqdec.mod" if (PVM_DecOnOff == Off) { durx (rde1 sync de1 adc1 ph0 syrec) (1u 1u ph31:r):f1 (de) 1u aqq cpdngs17:f1 } if (PVM_DecOnOff == On) { if (PVM_DecMode == Continuous_Wave) { durx pl2:f2 (rde1 sync de1 adc1 ph0 syrec) (1u 1u ph31:r):f1 (de) 1u cpdngs17:f1 DecD0 cw:f2 DecD1 do:f2 } if (PVM_DecMode == Composite_Pulse) { durx pl2:f2 (rde1 sync de1 adc1 ph0 syrec) (1u 1u ph31:r):f1 (de) 1u cpdngs17:f1 DecD0 cpd2:f2 DecD1 do:f2 } } ;EXEC_end acqdec_jobs # 97 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" } 2m grad_off 500u eoscnp 500u ;eoscnp with jobs needs a second following delay >8us if(PVM_NavOnOff == On) { 10u swj2 1u setrtp1|1 \n 9u setrtp1^1 ;lasts 10u 20u reload B0 subr NavigatorGlobal ;EXEC_begin NavigatorGlobal NavigatorGlobal(any sp0, phase ph31, phase ph0, phase ph31) # 148 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/Navigator.mod" if (PVM_NavOnOff == On) { 10u navrec(receive):f1 5u navlist:f1 NAVD2 gatepulse 1 (NavP0:sp0 ph31):f1 10u (rde1 sync de1 adc2 ph0 syrec) (1u 1u ph31:r):f1 (de) ;includes 6u NAVD4 cpdngs18:f1 169u ;delay for scan shift 10u eoscnp #1 } ;EXEC_end NavigatorGlobal # 108 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" 100u ; 2 delays needed after ADC_END_JOB 10u swj1 3u setrtp1|1 \n 7u setrtp1^1 ;lasts 10u } d1 ;TR delay ;---------dummy scans ------------------------------------------------ "lds = lds - 1" if "lds>=0" goto start # 119 "/opt/PV-7.0.0/exp/stan/nmr/lists/pp/PRESS.ppg" ;---------averaging & phase cycling----------------------------------- if ( ACQ_scan_type == Scan_Experiment ) { 0u ipp1 0u ipp2 0u ipp3 0u ipp31 } lo to start times avList 0u avList.inc 0u rpp1 0u rpp2 0u rpp3 0u rpp31 lo to start times NR if (ACQ_scan_type != Scan_Experiment) \n{ \n goto start \n} exit ph0 = 0 ph1 = {0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0}^2^1^3 ph2 = {0 0 1 1 0 0 1 1 2 2 3 3 2 2 3 3}^2^1^3 ph3 = {0 2 0 2 1 3 1 3 0 2 0 2 1 3 1 3}^2^1^3 ph31= {0 0 2 2 2 2 0 0 0 0 2 2 2 2 0 0}^2^1^3