Author: bugman Date: Wed Mar 2 20:21:34 2011 New Revision: 12743 URL: http://svn.gna.org/viewcvs/relax?rev=12743&view=rev Log: Created the new function generic_fns.relax_data.frq_loop() for looping over unique frequencies. Modified: branches/relax_data/generic_fns/relax_data.py Modified: branches/relax_data/generic_fns/relax_data.py URL: http://svn.gna.org/viewcvs/relax/branches/relax_data/generic_fns/relax_data.py?rev=12743&r1=12742&r2=12743&view=diff ============================================================================== --- branches/relax_data/generic_fns/relax_data.py (original) +++ branches/relax_data/generic_fns/relax_data.py Wed Mar 2 20:21:34 2011 @@ -321,11 +321,34 @@ spectro_labels.append("$spectrometer_%s" % spectro_ids[-1]) # Add the spectrometer info. - for i in range(cdp.num_frq): - star.nmr_spectrometer.add(name="$spectrometer_%s" % (i+1), manufacturer=None, model=None, frq=int(cdp.frq[i]/1e6)) + num = 1 + for frq in frq_loop(): + star.nmr_spectrometer.add(name="$spectrometer_%s" % num, manufacturer=None, model=None, frq=int(frq/1e6)) + num += 1 # Add the experiment saveframe. star.experiment.add(name=exp_label, spectrometer_ids=spectro_ids, spectrometer_labels=spectro_labels) + + +def frq_loop(): + """Generator function for returning each unique frequency. + + @return: The frequency. + @rtype: float + """ + + # Init. + frq = [] + + # Loop over the Rx data. + for ri_id in cdp.ri_ids: + # New frequency. + if cdp.frq[ri_id] not in frq: + # Add the frequency. + frq.append(cdp.frq[ri_id]) + + # Yield the value. + yield cdp.frq[ri_id] def copy(pipe_from=None, pipe_to=None, ri_id=None):