Protocol: Mashmqc2d  Sequence: mashmqc2d.c  Apptype: solidseq1d

Description:

   "H" to "X" J-HMQC with FSLG homonuclear decoupling of "H", tangent CP
   preparation of "X", with TPPM or SPINAL decoupling. 

Additional Software

   reset_mashmqc - Uses the values of aH90 and pwH90 to set up FSLG.  
   Synchronizes the F1 dwell with 4 FSLG cycles. Uses the value of srate
   and pwHfslg to synchronize tHXhmqc with the rotor. aHhxhmqc, aXhxhmqc, 
   pwHhxhmqc, pwXhxhmqc are set from aH90, aX90, pwH90 and pwX90. pmHhxhmqc
   = pwH90*54.7/90.  Sets up parameters for Heteronuclear 2D processing. 
   This macro is executed by the protocol.

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);

hmqcHX:  Module: no
Sequence:  mashmqc2d.c
Description:  Implements HMQC modulation of the obs channel with J-
              coupling between the obs and dec nuclei and applies
              FSLG decoupling between the dec pulses. Requires
              implementation of fslgH.
Parameters:  Sequence Page
       aHhxhmqc - amplitude of the dec channel.
       aXhxhmqc - amplitude of the obs channel.
       pwHhxhmqc - 90-degree flip angle on the dec channel.
       pmHhxhmqc - 54.7-degree flip angle on the dec channel.
       pwXhxhmqc - 180-degree flip on the obs channel.
       tHXhmqc - delay for J evolution.

fslgX:  Module: yes
Sequence:  none
Description:  Implements "frequency switched Lee Goldburg", FSLG,
              homonuclear decoupling on the obs channel.
Parameters:  Sequence Page
       aXfslg - amplitude of FSLG obs pulses.
       pwXfslg - 360-degree flip on obs, off resonance (the length of
              each of the two FSLG pulses).
       nXfslg - FSLG cycles represented in the .DEC file.
       ofdXfslg - +/- frequency offset of alternating pulses, a
              negative value indicates that the first pulse has
              negative offset.
       ofXfslg - overall frequency offset.
       chXfslg = 'obs' must be set (not shown).
Implementation: MPSEQ fslg = getfslg("fslgX",0,0.0,0.0,0,1);
Underscore functions: _MPSEQ functions.

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 decouping 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);

