Protocol: Tancp1dfprfdr  Sequence: tancp1dfprfdr.c  Apptype: solidseq1d

Description:

        Preparation of "X" with CP, finite-pulse XY4 RFDR 
        mixing with SPINAL or TPPM decoupling.

Additional Software:

reset_fprfdr - This macro uses the calibrated values of pwX90, aX90 and
srate to set up the fpRFDR recoupling sequence.  tXmix is roundes to four 
rotor periods. 

Parameter Groups:

90H:  Module:  no
Sequence:  tancpx.c
Description:   Provides a 90-degree pulse on dec that can be used as a
               preparation pulse. Also used to store the dec calibration.
Parameters:  Channels Page
       aH90  - the amplitude of the pulse.
       pwH90 - the pulse length.

cpHX:  Module:  yes
Sequence:  tancpx.c
Description:  Implements constant, linear or tangent-ramped cross
              polarization from dec to obs.
Parameters:  Sequence Page
       shHX - 'c', constant, 'l', linear and 't', tangent shape on the
              channel designated with chHX.
       chHX - the variable-amplitude channel, 'fr' from or 'to', to.
       aHhx - median amplitude of the dec channel.
       aXhx - median amplitude of the obs channel.
       bHX - +/- tangent curvature (>0 to 1.0e5).
       dHX - amplitude width of the ramp. A negative width sets a ramp
              that starts high and decreases in amplitude.
       tHX - contact time
       ofHX - overall offset on the variable channel
       frHX = 'dec' -  channel with the initial polarization (must be
              set - not shown).
       toHX = 'obs' -  channel with the final polarization (must be set
              - not shown).
Implementation:  CP hx = getcp("HX",0.0,0.0,0,1);
Underscore functions: _cp_(hx, phHhx, phXhx);

fprfdrX:  Module:  yes
Sequence:  tancp1fpdrfdr.c
Description:  Implements Finite Pulse RFDR with a single pi pulse
              that occupies the center third of the rotor period and
              an XY4 phase cycle.
Parameters:  Sequence Page
       aXfprfdr - amplitude of dec pulses.
       pwXfprfdr - 180-degree flip on obs.
       qXfprfdr - 4.0*tauR RFDR cycles represented in the .DEC file.
       ofXfprfdr - overall frequency offset.
       chXfprfdr = 'obs' must be set (not shown).
Implementation: MPSEQ fp = getrfdr("fprfdrX",0,0.0,0.0,0,1);
Underscore functions: _MPSEQ functions.

Hmixseq:  Module: yes 
Sequence:  redor1tancp.c
Description:  Chooses SPINAL or TPPM decoupling on the dec channel
              during F1 and mixing periods when Hseq is used for
              acquisition.
Parameters:  Sequence Page - the Hmixspinal and Hmixtppm groups
              overlap.  Hmixseq chooses the decoupling sequence TPPM
              or SPINAL.
Implementation:  DSEQ mix = getdseq("H"); The router implements
              getspinal() or gettppm(), as selected.
Underscore functions:  _dseqon(mix); runs _tppm(); or _spinal();
             _dseqoff(mix); runs decprgoff(mix);

Hmixspinal:  Module: yes
Sequence:  redor1tancp.c
Description:  Implements SPINAL decoupling on the dec channel during
              typical F1 and mixing periods when Hspinal is used for
              acquisition.
Parameters:  Sequence Page
       aHmixspinal - amplitude of the dec channel.
       pwHmixspinal - approximate 180-degree flip.
       phHmixspinal - +/- small angle phase. SPINAL64 is implemented
              with phases = +/- 1.0, +/- 1.5 and +/-2.0 times
              phHmixspinal.
       chHmixspinal = 'dec' must be set (not shown).
Implementation: SPINAL mix = getspinal("H"); or DSEQ mix =
             getdseq("H");
Underscore functions: _spinal(mix); and decprgoff(); or _dseqon(mix);
             and _dseqoff(mix);
        
Hmixtppm:  Module: yes
Sequence:  redor1tancp.c
Description:  Implements TPPM decoupling on the dec channel during
              typical F1 and mixing periods when Htppm is used for
              acquisition.
Parameters:  Sequence Page
       aHmixtppm - amplitude of the dec channel.
       pwHmixtppm - approximate 180-degree flip angle on resonance.
       phHmixtppm - +/- small angle phase. TPPM is implemented
              with phases = +/- 1.0 times phHmixtppm for alternating
              pulses.
       chHmixtppm = 'dec' must be set (not shown).
Implementation: TPPM mix = gettppm("H"); or DSEQ mix = getdseq("H");
Underscore functions: _tppm(mix); and decprgoff(); or _dseqon(mix); and
              _dseqoff(mix).

Hseq:  Module:  yes
Sequence:  tancpx.c
Description:  Chooses SPINAL or TPPM decoupling on the dec channel
              during acquisition.
Parameters:  Sequence Page - the Hspinal and Htppm groups overlap.
       Hseq - chooses the decoupling sequence, TPPM or SPINAL.
Implementation:  DSEQ dec = getdseq("H");  The router implements
              getspinal() or gettppm().
Underscore functions: _dseqon(dec); runs _tppm(); or _spinal();
              _dseqoff(dec); runs decprgoff();

Hspinal:  Module:  yes
Sequence:  tancpx.c
Description:  Implements SPINAL decoupling on the dec channel during
              acquisition.
Parameters:  Sequence Page
       aHspinal - amplitude of the dec channel.
       pwHspinal - approximate 180-degree flip angle on resonance.
       phHspinal - +/- small angle phase. SPINAL64 is implemented with
              phases = +/- 1.0, +/- 1.5 and +/-2.0 times phHspinal.
       chHspinal = 'dec' must be set (not shown).
Implementation: SPINAL dec = getspinal("H"); or DSEQ dec =
              getdseq("H");
Underscore functions: _spinal(dec); and decprgoff(); or _dseqon(dec);
              and _dseqoff(dec);

Htppm:  Module:  yes
Sequence:  tancpx.c
Description:  Implements TPPM decoupling on the dec channel during
              acquisition.
Parameters:  Sequence Page
       aHtppm - amplitude of the dec channel.
       pwHtppm - approximate 180-degree flip angle on resonance.
       phHtppm - +/- small angle phase. TPPM is implemented
              with phases = +/- 1.0 times phHtppm for alternating pulses.
       chHtppm = 'dec' must be set (not shown).
Implementation: TPPM dec = gettppm("H"); or DSEQ dec = getdseq("H");
Underscore functions: _tppmon(dec); and decprgoff(); or _dseqon(dec);
              and _dseqoff(dec);
