
paramgroup - Accept a parameter group name as the first argument and
   then read a list of variable types, prefixes and values
   Each parameter is created in the workspace and bit 14 is set
   or use in a protocol.  Each parameter is added to a "dg"
   and "ap" template string and channel parameters are added
   to a string "clearparams" which is a list of parameters for
   which bit 14 is reset to zero in the protocol. paramgroup is used 
   in SolidsPack setup macros. 

   Argument 1 - is the parameter goup name. This name must begin 
                with a lower case "suffix" and end with one or more uppercase 
               "channel identifiers". A channel identifier must be an upper-
                case letter "A to Z". Parameter names are appended with the 
                upper-case channel identifiers and then the lower-case suffix. 
                If a prefix (see below) contains an uppercase charater the channel
                identifiers are appended as lower case. 

   Argument 2 - is a conditional statement within paraentheses that is
                used to optionally display the parameter group in the "dg" and "ap" 
                templates. See chapter 5 of the user programming manual for the 
                allowed format.  Use the empty string '' if a conditonal statement
                is not needed. For example '(aXc7 > 0)' will remove the display
                of the c7X parameter group in "dg" and "ap" of sXc7 = 0. 

   Arguments 3 to 5 -  and groups of 3 threethereafter contain information for 
                    individual parameters. 
              
      Argument 3 - is the "prefix".  Any lower-case string is allowed
                   and the prefix may contain an upper-case character as described.  
                   Solidpack uses conventions for the prefix base on parameter 
                   types, but paramgroup does not enforce a strict relationship 
                   between the prefix and the type. The prefix preceeds the channel
                   identifiers and the suffix in the parameter name. An upper case 
                   channel identifier can be included in the prefix to deginate 
                   one channel of two-channel parameter groups. In this case the
                   actual channel identifiers are supplied in lower case (see above). 

      Argument 4 - is the parameter type.  See the documentation for 
                   createparam to see the allowed types.  SolidsPack parameter types
                   are a superset of the VNMRJ parameters types.  

      Argument 5 - is a default value that is supplied only if the parameter
                   is actually created. Generally default values have no relationship 
                   with NMR calibrations.  They are usually values that simply allow 
                   the sequence to display properly with dps. 

   Arguments 6 to 8 -  9 to 11, etc repeat arguments 3 to 5 for the
                following parameters. A full set of three arguments must be supplied
                for each parameter with ending commas (or a final ').  If the format 
                is incorrect paramgroup will fail to operate. 

   An example paramgroup statement for the "HX" cross-polarization macro:

                paramgroup('HX','',
                    'sh','string','c',                    
                   'ch','string','fr',
                    'aH','amplitude',2000,
                   'aX','amplitude',2000,   
                    'b','real',0,
                    'd','real',0,           
                    't','pulse',1000,
                   'of','frequency',0,
                    'fr','channel','dec',
                    'to','channel','obs'
              )

      

