Product Description

Welcome to the Gamry Instruments, Inc. Spectroscopy experiment package. This package is meant for researchers who are performing studies in the area of light spectroscopy in combination with electrochemical experiments. Included in this package are techniques for performing linear sweep and cyclic voltammetry experiments, as well as chronoamperometry and chronocoulometry. Gamry Instruments’ current spectrometer series includes the models Spectro 115U and Spectro 115E which are suitable for spectroscopy experiments from the Ultraviolet to near Infrared range. The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Spectroscopy

For a better understanding of spectroscopy, we start with the definition of the electromagnetic spectrum. It is the total of all electromagnetic waves. Typically, they are listed by their wavelengths or energies respectively and divided into groups.

Electromagnetic waves in turn are waves of coupled electric and magnetic fields. Additionally, they can be described as flux of light particles – so-called photons. The combination of both definitions is also called wave particle duality.

The energy content E of photons is inversely proportional to the wavelength l of the electromagnetic wave according to following equation:

h is the Planck constant (6.626∙10-34 J∙s) and c is the speed of light (300∙106 m∙s-1).

The following figure shows a diagram of the electromagnetic spectrum.

The most known part of the electromagnetic spectrum is its visible range. It ranges from about 400 nm to 750 nm and covers only a small range of the electromagnetic spectrum.

With decreasing wavelength and increasing energy, the Ultraviolet (UV) is next to the visible light. It ranges from about 400 nm to 10 nm. After UV, high energy radiation follows which is classified into X rays and Gamma rays.

On the other side of the visible light starts the low energy radiation. First, the Infrared (IR) light comes which resembles the heat that is emitted and reflected by an object. It ranges from about 750 nm to 1 mm. Increasing the wavelength again leads to the region of microwaves which are used in radar technologies. At wavelengths ranging from meters to several kilometers, radio waves are following which are mainly used for telecommunication.

In spectroscopy various types of materials can be investigated and classified by studying the interaction with radiated energy. Depending on the type of radiation and how it interacts with matter, different types of spectroscopy can be distinguished. In this chapter, we will mainly focus on the UV Vis spectroscopy which includes the Ultraviolet and visible range of the electromagnetic spectrum.

UV Vis spectroscopy is part of the absorption spectroscopy. A light beam in the UV and visible range is focused on a sample and the difference to the light that passes the sample is measured. Within the sample, electrons can absorb a specific part of the light/energy and transition into a higher energy state. The wavelengths that are absorbed by electrons are related to the energy level of the molecule. The light that passes the sample shows significant changes at the absorbed wavelengths. These changes can be measured and conclusions can be made about the structure of molecules.

Typically, the wavelength range that is used in UV Vis spectroscopy is between 200 and 800 nm. The UV region at wavelengths below 200 nm is difficult to handle as absorption of air becomes significant. For this, the whole setup must be kept under vacuum.

The next section lists up some important parameters, equations, and terms:

Intensity I:

The intensity I0 of the incident light drops exponentially in a transparent medium. It depends on the pathlength d of the light beam through the sample and the absorption coefficient k.

Transmittance T

Transmittance (also called Transmission)is a term for the amount of light/energy that passes a sample. Commonly, it is represented in percent (%).

Absorbance A

Absorbance is the negative logarithm of transmittance T and an expression for the decrease of light intensity.

Historically, absorbance used to be called extinction. Extinction (also called attenuance), takes also into account the effects of luminescence and light scattering.

Lambert Beer law

Absorbance is directly proportional to the concentration of the sample. Hence by measuring changes in absorbance also slightest changes in the concentration of the sample can be measured.

e is the molar decadic absorption coefficient and d is the pathlength of the light through the sample. Latter one is given by the dimensions of the cuvette. A typical value is 1 cm.

Blank spectrum

The Blank spectrum is a reference spectrum which is recorded in addition to the actual measurement. In most cases, only the solvent of the investigated sample is used for a blank spectrum. The Blank spectrum is then subtracted from the actual spectrum. Hence the actual measurement records only absorbance of the analyte.

Cuvette

The cuvette contains the sample that is investigated. Depending on the experiment, cuvettes have different designs and use different materials. They can be made of plastic for cheaper and disposable cuvettes right up to high quality quartz glass. The material determines also the usable wavelength range for an experiment.

An important parameter for cuvettes is the pathlength d which defines the length of the light that passes the sample. A typical value for the pathlength is 1 cm. In general, shorter pathlength of several mm are used when the sample concentration and therefore the absorbance are higher or only a small sample volume is possible. A longer pathlength can be used when the sample concentration is low.

Dark spectrum

Even when no light reaches the detector of the spectrometer, the detector still generates a current flow. This is called dark current. Due to thermal activation electrons are generated causing this effect. It can be reduced when the detector is cooled.

The Dark spectrum is recorded when no light reaches the detector, i.e. when the shutter of the light source is closed. It is later subtracted from the main spectrum of the actual measurement.

UV-Vis spectrum

After measuring a sample, the recorded photo current is converted into absorbance A or transmittance T which can be plotted versus the wavelength l. This results in an absorbance or transmittance spectrum respectively.

The following picture shows an example for an absorbance spectrum in the UV-Vis range. Absorbance peaks are at about 270 nm, 380 nm, and 630 nm.


Optical Spectroscopy: Purpose

This is a general purpose experiment to create a single spectrum of a sample without any additional electrochemical measurements.


Optical Spectroscopy: Setup Parameters

Click on each of the setup parameters for a description of its use and function.


Optical Spectroscopy Experimental Sequence

The Optical Spectroscopy standard technique is run by selecting the Named Script command under the Experiment menu in Gamry’s Framework. Opening the OpticalSpectroscopy.exp file initiates the following sequence of events:

  1. A runner window is created by the Framework and the "OpticalSpectroscopy.exp" script is run in this window.
  2. The script creates the setup dialog box and accepts changes in the parameters.
  3. The script obtains the use of the spectrometer and opens the data file specified in the Output File parameter. The runner window's title reflects the output filename. If the spectrometer is in use or the file cannot be opened, the script returns to the setup dialog box.
    The file header information is written to the data file. This information is written to the file prior to data acquisition. If the experiment is aborted, the output file contains only this information.

    This header information includes:
    a. Tags identifying possible analyses
    b. A list of setup parameters
  4. The measurement starts if Raw Counts is selected as Spectroscopy Type (skip to point 5).

    A dialog box is created if Absorbance or Transmittance is selected as Spectroscopy Type. The user can decide if a Dark and a Blank spectrum should be recorded prior to the actual measurement:

    a. If OK is selected, a further dialog box pops up. By pressing OK again a Dark spectrum is recorded. The data of the Dark spectrum will not be saved.

    A next dialog box pops up. By pressing OK a Blank spectrum is recorded. The data of the Blank spectrum will not be saved.

    A dialog box pops up. By pressing OK the actual measurement starts. The previously measured Dark and Blank spectra will be automatically subtracted.

    b. If Cancel is selected, no Dark or Blank spectra are recorded. For the actual measurement Raw Counts are measured and plotted versus wavelength.
  5. 5. The acquired data is written to the output file and the script cleans up and halts. The script then waits for the user to select Skip. Once pressed, the script closes everything that is open, including the runner window.


Spectro Chronoamperometry: Purpose

In addition to normal chronoamperometric tests, the Spectro Chronoamperometry experiment allows the user to perform chronoamperometric and spectroscopic measurements simultaneously. The user can choose between recording raw count spectra and either absorbance or transmittance spectra respectively which include Dark and Blank spectrum measurements.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Spectro Chronoamperometry: Setup Parameters

Click on the linked setup parameters for a description of its use and function.

For a list of all chronoamperometric setup parameters, see the PHE200 help menu under Experimental Techniques and Chronoamperometry.


Spectro Chronoamperometry Experimental Sequence

The Spectro Chronoamperometry technique is run by selecting the Named Script command under the Experiment menu in Gamry’s Framework. Opening the Spectro Chronoamperometry.exp file initiates the following sequence of events:

  1. A runner window is created by the Framework and the "Spectro Chronoamperometry.exp" script is run in this window.
  2. The script creates the setup dialog box, which becomes the active window and accepts changes in the experimental parameters. This setup box remembers the experimental settings from the last time this script was run. To restore the parameters to the values defined in the script, select the Default button. If the Advanced Pstat Setup is toggled to the On position a second setup dialog box containing hardware configuration details will become the active window allowing the user to modify the hardware configuration of the potentiostat used during the experiment.
  3. The script obtains the use of the spectrometer and the potentiostat specified during the setup. The script opens a data file using the Output File name and a second data file using the prefix “SpectraFor_” followed by the Output File name. This first file contains data for the chronoamperometric measurement and links to the second file which includes the spectra data. If the potentiostat or the spectrometer is in use or the file cannot be opened, the script returns to the setup dialog box.
  4. The file header information is written to both data files. This information is written to the files prior to data acquisition. If the experiment is aborted, the output files contain only this information.

    The header information for the chronoamperometric file includes:
    1. Tags identifying possible analyses
    2. The current time and date
    3. A list of setup parameters and hardware configuration

    The header information for the spectroscopy file includes:

    1. Tags identifying possible analyses
    2. A list of setup parameters

    The measurement starts if Raw Counts is selected as Spectroscopy Type (skip to point 6).

    A dialog box is created if Absorbance or Transmittance is selected as Spectroscopy Type. The user can decide if a Dark and a Blank spectrum should be recorded prior to the actual measurement:

    1. If OK is selected, a further dialog box pops up. By pressing OK again a Dark spectrum is recorded. The data of the Dark spectrum will not be saved.

      A next dialog box pops up. By pressing OK a Blank spectrum is recorded. The data of the Blank spectrum will not be saved

      A dialog box pops up. By pressing OK the actual measurement starts. The previously measured Dark and Blank spectra will be automatically subtracted.

    2. If Cancel is selected, only a Raw Counts spectrum will be recorded.
  5. If Initial Delay is on, the cell is turned off and the specimen's Eoc is measured for the time specified as the Initial Delay time or until the potential stabilizes to a value less than the stability setting. The last measured potential is recorded as Eoc. A plot of potential versus time is always displayed. A second window for the spectra shows no plot. If Initial Delay is off, this step is skipped and Eoc is assumed to be 0.0 V vs. Ref.
  6. The script conditions the electrode if Conditioning was specified in the setup. Conditioning is done by applying a fixed potential for a defined time while the cell is turned on. A plot of current versus time is displayed during Conditioning. The window for the spectra shows no plot. No data is saved during this step.
  7. The electrode and the solution are allowed to equilibrate for a defined time. The cell is turned on during this step and the Pre step Voltage is applied. A plot of current versus time is shown. The window for the spectra shows no plot. No data is saved during this step.
  8. Finally the actual data acquisition process starts. The spectrometer is starting to measure spectra. Current and voltage readings at fixed time intervals (Sample Period) are taken during the steps in Spectro Chronoamperometry. Plots of current and potential versus time are displayed during the steps. For the spectra, either Raw Counts, Absorbance, or Transmittance are recorded and plotted versus wavelength. The potential of the sample is held at the Pre step Voltage for the Pre step Delay Time. This information is stored with the data file and is intended to show that the user has selected a voltage where no appreciable current occurs.

    The potential is then stepped to Step 1 Voltage and held at that value for Step 1 Time. The potential is then stepped to Step 2 Voltage and held at that value for Step 2 Time. If Step 2 Time is zero then the second step will be skipped.

    If Autoranging was selected in the setup, current range is automatically switched to the optimal range for the measured cell current at each point. If Positive Feedback IR compensation has been selected, all data is continuously corrected for IR drop. If Current Interrupt IR compensation has been selected, each potential is corrected for the measured IR drop of the preceding point.
  9. The acquired data is written to the output files and the script cleans up and halts. Once the scan is over, the cell is turned off. The script then waits for the user to select Skip. Once pressed, the script closes everything that is open, including the runner window.


Spectro Chronocoulometry: Purpose

In addition to normal chronocoulometric tests, the Spectro Chronocoulometry experiment allows the user to perform chronocoulometric and spectroscopic measurements simultaneously. The user can choose between recording raw count spectra and either absorbance or transmittance spectra respectively which include Dark and Blank spectrum measurements.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Spectro Chronocoulometry: Setup Parameters

Click on the linked setup parameters for a description of its use and function.

For a list of all chronocoulometric parameters, see the PHE200 help under Experimental Techniques and Chronocoulometry.


Spectro Chronocoulometry Experimental Sequence

The Spectro Chronocoulometry technique is run by selecting the Named Script command under the Experiment menu in Gamry’s Framework. Opening the Spectro Chronocoulometry.exp file initiates the following sequence of events:

  1. A runner window is created by the Framework and the "Spectro Chronocoulometry.exp" script is run in this window.
  2. The script creates the setup dialog box, which becomes the active window and accepts changes in the experimental parameters. This setup box remembers the experimental settings from the last time this script was run. To restore the parameters to the values defined in the script, select the Default button. If the Advanced Pstat Setup is toggled to the On position a second setup dialog box containing hardware configuration details will become the active window allowing the user to modify the hardware configuration of the potentiostat used during the experiment.
  3. The script obtains the use of the spectrometer and the potentiostat specified during the setup. The script opens a data file using the Output File name and a second data file using the prefix “SpectraFor_” followed by the Output File name. This first file contains data for the chronocoulometric measurement and links to the second file which includes the spectra data. If the potentiostat or the spectrometer is in use or the file cannot be opened, the script returns to the setup dialog box.
  4. The file header information is written to both data files. This information is written to the files prior to data acquisition. If the experiment is aborted, the output files contain only this information.

    The header information for the chronocoulometric file includes:
    1. Tags identifying possible analyses
    2. The current time and date
    3. A list of setup parameters and hardware configuration

    The header information for the spectroscopy file includes:

    1. Tags identifying possible analyses
    2. A list of setup parameters
  5. The measurement starts if Raw Counts is selected as Spectroscopy Type (skip to point 6).

    A dialog box is created if Absorbance or Transmittance is selected as Spectroscopy Type. The user can decide if a Dark and a Blank spectrum should be recorded prior to the actual measurement:

    1. If OK is selected, a further dialog box pops up. By pressing OK again a Dark spectrum is recorded. The data of the Dark spectrum will not be saved.

      A next dialog box pops up. By pressing OK a Blank spectrum is recorded. The data of the Blank spectrum will not be saved.

      A dialog box pops up. By pressing OK the actual measurement starts. The previously measured Dark and Blank spectra will be automatically subtracted.

    2. If Cancel is selected, only a Raw Counts spectrum will be recorded.
  6. If Initial Delay is on, the cell is turned off and the specimen's Eoc is measured for the time specified as the Initial Delay time or until the potential stabilizes to a value less than the stability setting. The last measured potential is recorded as Eoc.

    A plot of potential versus time is always displayed. A second window for the spectra shows no plot.

    If Initial Delay is off, this step is skipped and Eoc is assumed to be 0.0 V vs. Ref.
  7. The script conditions the electrode if Conditioning was specified in the setup. Conditioning is done by applying a fixed potential for a defined time while the cell is turned on. A plot of current versus time is displayed during Conditioning. The window for the spectra shows no plot. No data is saved during this step.
  8. The electrode and the solution are allowed to equilibrate for a defined time. The cell is turned on during this step and the Pre step Voltage is applied. A plot of current versus time is shown. The window for the spectra shows no plot. No data is saved during this step.
  9. Finally the actual data acquisition process starts. The spectrometer starts to measure spectra. Charge and current readings at fixed time intervals (Sample Period) are taken during the steps in Spectro Chronocoulometry. Plots of charge and current versus time are displayed during the steps. For the spectra, either Raw Counts, Absorbance, or Transmittance are recorded and plotted versus wavelength.

    The potential of the sample is held at the Pre step Voltage for the Pre step Delay Time. This information is stored with the data file and is intended to show that the user has selected a voltage where no appreciable current occurs. The potential is then stepped to Step 1 Voltage and held at that value for Step 1 Time. The potential is then stepped to Step 2 Voltage and held at that value for Step 2 Time. If Step 2 Time is zero then the second step will be skipped.

    If Autoranging was selected in the setup, current range is automatically switched to the optimal range for the measured cell current at each point. If Positive Feedback IR compensation has been selected, all data is continuously corrected for IR drop. If Current Interrupt IR compensation has been selected, each potential is corrected for the measured IR drop of the preceding point.
  10. The acquired data is written to the output files and the script cleans up and halts. Once the scan is over, the cell is turned off. The script then waits for the user to select Skip. Once pressed, the script closes everything that is open, including the runner window.


Spectro Cyclic Voltammetry: Purpose

In addition to normal cyclic voltammetry tests, the Spectro Cyclic Voltammetry experiment allows the user to perform CV and spectroscopic measurements simultaneously. The user can choose between recording raw count spectra and either absorbance or transmittance spectra respectively which include Dark and Blank spectrum measurements.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Spectro Cyclic Voltammetry: Setup Parameters

Click on the linked setup parameters for a description of its use and function.

For a list of all cyclic voltammetry parameters, see the PHE200 help under Experimental Techniques and Cyclic Voltammetry.


Spectro Cyclic Voltammetry: Experimental Sequence

The Spectro Cyclic Voltammetry standard technique is run by selecting the Named Script under the Experiment menu command in Gamry’s Framework. Opening the Spectro Cyclic Voltammetry.exp file initiates the following sequence of events:

  1. A runner window is created by the Framework and the "Spectro Cyclic Voltammetry.exp" script is run in this window.
  2. The script creates the setup dialog box, which becomes the active window and accepts changes in the experimental parameters. This setup box remembers the experimental settings from the last time this script was run. To restore the parameters to the values defined in the script, select the Default button. If the Advanced Pstat Setup is toggled to the On position a second setup dialog box containing hardware configuration details will become the active window allowing the user to modify the hardware configuration of the potentiostat used during the experiment.
  3. The script obtains the use of the spectrometer and the potentiostat specified during the setup. The script opens a data file using the Output File name and a second data file using the prefix “SpectraFor_” followed by the Output File name. This first file contains data for the cyclic voltammetry measurement and links to the second file which includes the spectra data. If the potentiostat or the spectrometer is in use or the file cannot be opened, the script returns to the setup dialog box.
  4. The file header information is written to both data files. This information is written to the files prior to data acquisition. If the experiment is aborted, the output files contain only this information.

    The header information for the cyclic voltammetry file includes:
    1. Tags identifying possible analyses
    2. The current time and date
    3. A list of setup parameters and hardware configuration

    The header information for the spectroscopy file includes:

    1. Tags identifying possible analyses
    2. A list of setup parameters
  5. The measurement starts if Raw Counts is selected as Spectroscopy Type (skip to point 6).

    A dialog box is created if Absorbance or Transmittance is selected as Spectroscopy Type. The user can decide if a Dark and a Blank spectrum should be recorded prior to the actual measurement:

    1. If OK is selected, a further dialog box pops up. By pressing OK again a Dark spectrum is recorded. The data of the Dark spectrum will not be saved.

      A next dialog box pops up. By pressing OK a Blank spectrum is recorded. The data of the Blank spectrum will not be saved.

      A dialog box pops up. By pressing OK the actual measurement starts. The previously measured Dark and Blank spectra will be automatically subtracted.

    2. If Cancel is selected, only a Raw Counts spectrum will be recorded.
  6. If Initial Delay is on, the cell is turned off and the specimen's Eoc is measured for the time specified as the Initial Delay time or until the potential stabilizes to a value less than the stability setting. The last measured potential is recorded as Eoc.
    A plot of potential versus time is always displayed. A second window for the spectra shows no plot.
    If Initial Delay is off, this step is skipped and Eoc is assumed to be 0.0 V vs. Ref.
  7. The script conditions the electrode if Conditioning was specified in the setup. Conditioning is done by applying a fixed potential for a defined time while the cell is turned on. A plot of current versus time is displayed during Conditioning. The window for the spectra shows no plot.
  8. Finally the actual data acquisition process starts. The spectrometer is starting to measure spectra. A plot of current versus potential is displayed during the scan. For the spectra, either Raw Counts, Absorbance, or Transmittance are recorded and plotted versus wavelength.

    The potential of the sample is set to Initial E and is held at that value for the Equilibration Time. The potential is then swept from the Initial E to Scan Limit 1, then to Scan limit 2, and then to Final E. If Scan Limit 2 equals Final E then the scan stops at that value. If the number of cycles exceeds one, the potential will repeat the sweep for n cycles.

    Current readings at fixed voltage intervals are taken during the sweep. The voltage interval between steps is defined as Step Size in the setup dialog box. The sweep is actually a staircase ramp. The sample is potentiostatically held at Initial E, a delay of one sample period occurs (sample period = 1/Scan Rate * Step Size), and reading of current is taken. The potential is then stepped by a few mV as defined by Step Size, a delay of one sample period occurs and the next current reading is taken. Stepping the potential, delaying, and acquiring data points continues until the potential equals Final E.

    If Autoranging was selected in the setup, current range is automatically switched to the optimal range for the measured cell current at each point. If Positive Feedback IR compensation has been selected, all data is continuously corrected for IR drop. If Current Interrupt IR compensation has been selected, each potential is corrected for the measured IR drop of the preceding point.
  9. The acquired data is written to the output files and the script cleans up and halts. Once the scan is over, the cell is turned off. The script then waits for the user to select Skip. Once pressed, the script closes everything that is open, including the runner window.


Spectro Linear Sweep Voltammetry: Purpose

In addition to normal linear sweep voltammetry tests, the Spectro Linear Sweep Voltammetry experiment allows the user to perform linear sweep voltammetry and spectroscopic measurements simultaneously. The user can choose between recording raw count spectra and either absorbance or transmittance spectra respectively which include Dark and Blank spectrum measurements.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Spectro Cyclic Voltammetry: Setup Parameters

Click on the linked setup parameters for a description of its use and function.

For a list of all linear sweep voltammetry parameters, see the PHE200 help under Experimental Techniques and Linear Sweep Voltammetry.


Spectro Cyclic Voltammetry: Experimental Sequence

The Spectro Linear Sweep Voltammetry technique is run by selecting the Named Script under the Experiment menu command in Gamry’s Framework. Opening the Spectro Cyclic Voltammetry.exp file initiates the following sequence of events:

  1. A runner window is created by the Framework and the "Spectro Linear Sweep Voltammetry.exp" script is run in this window.
  2. The script creates the setup dialog box, which becomes the active window and accepts changes in the experimental parameters. This setup box remembers the experimental settings from the last time this script was run. To restore the parameters to the values defined in the script, select the Default button. If the Advanced Pstat Setup is toggled to the On position a second setup dialog box containing hardware configuration details will become the active window allowing the user to modify the hardware configuration of the potentiostat used during the experiment.
  3. The script obtains the use of the spectrometer and the potentiostat specified during the setup. The script opens a data file using the Output File name and a second data file using the prefix “SpectraFor_” followed by the Output File name. This first file contains data for the linear sweep voltammetry measurement and links to the second file which includes the spectra data. If the potentiostat or the spectrometer is in use or the file cannot be opened, the script returns to the setup dialog box.
  4. The file header information is written to both data files. This information is written to the files prior to data acquisition. If the experiment is aborted, the output files contain only this information.

    The header information for the linear sweep voltammetry file includes:
    1. Tags identifying possible analyses
    2. The current time and date
    3. A list of setup parameters and hardware configuration

    The header information for the spectroscopy file includes:

    1. Tags identifying possible analyses
    2. A list of setup parameters
  5. The measurement starts if Raw Counts is selected as Spectroscopy Type (skip to point 6).

    A dialog box is created if Absorbance or Transmittance is selected as Spectroscopy Type. The user can decide if a Dark and a Blank spectrum should be recorded prior to the actual measurement:

    1. If OK is selected, a further dialog box pops up. By pressing OK a Dark spectrum is recorded. The data of the Dark spectrum will not be saved.

      A next dialog box pops up. By pressing OK a Blank spectrum is recorded. The data of the Blank spectrum will not be saved.

      A dialog box pops up. By pressing OK the actual measurement starts. The previously measured Dark and Blank spectra will be automatically subtracted.

    2. If Cancel is selected, only a Raw Counts spectrum will be recorded.
  6. If Initial Delay is on, the cell is turned off and the specimen's Eoc is measured for the time specified as the Initial Delay time or until the potential stabilizes to a value less than the stability setting. The last measured potential is recorded as Eoc. A plot of potential versus time is always displayed. A second window for the spectra shows no plot. If Initial Delay is off, this step is skipped and Eoc is assumed to be 0.0 V vs. Ref.
  7. The script conditions the electrode if Conditioning was specified in the setup. Conditioning is done by applying a fixed potential for a defined time while the cell is turned on. A plot of current versus time is displayed during Conditioning. The window for the spectra shows no plot.
  8. Finally the actual data acquisition process starts. The spectrometer is starting to measure spectra. A plot of current versus potential is displayed during the scan. For the spectra, either Raw Counts, Absorbance, or Transmittance are recorded and plotted versus wavelength.

    The potential of the sample is set to Initial E and is held at that value for the Equilibration Time. The potential is then swept from the Initial E to Final E.

    Current readings at fixed voltage intervals are taken during the sweep. The voltage interval between steps is defined as Step Size in the setup dialog box. The sweep is actually a staircase ramp. The sample is potentiostatically held at Initial E, a delay of one sample period occurs (sample period = 1/Scan Rate * Step Size), and reading of current is taken. The potential is then stepped by a few mV as defined by Step Size, a delay of one sample period occurs and the next current reading is taken. Stepping the potential, delaying, and acquiring data points continues until the potential equals Final E.

    If Autoranging was selected in the setup, current range is automatically switched to the optimal range for the measured cell current at each point. If Positive Feedback IR compensation has been selected, all data is continuously corrected for IR drop. If Current Interrupt IR compensation has been selected, each potential is corrected for the measured IR drop of the preceding point.
  9. The acquired data is written to the output files and the script cleans up and halts. Once the scan is over, the cell is turned off. The script then waits for the user to select Skip. Once pressed, the script closes everything that is open, including the runner window.


Spectroscopy Analysis Overview

The Spectroscopy scripts use Gamry’s Echem Analyst to display, analyze, and print acquired data files. The Echem Analyst also allows the user to use experiment specific analysis commands, such as find peaks in spectroscopy experiments. These commands can be selected from experiment specific pull down menus.

Gamry’s Echem Analyst uses Visual Basic for Applications (VBA) as a scripting language to control the graphing and manipulation of the experimental data. Gamry’s standard VBA analysis scripts are accessible by the user, so that they can be modified to include special analysis routines that are customized to your laboratories needs. Please refer to Gamry’s Echem Analyst Help section for information on customizing analysis scripts.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Data File Overview

A Gamry Framework data file is a standard “tab delimited” ASCII file. By convention it has a “.DTA” filename extension. You can use other filename extensions, but they will be less convenient.

The Windows Notepad can be used to examine and modify Gamry Framework data files, but with some care. Microsoft Excel can also read these data files, and can be used to view or print them. However, editing and saving a file using Microsoft Excel may render the file unreadable by Gamry’s Echem Analyst.

The data file is a collection of data objects. Each data object starts on a new line and is identified by a type, a tag, and one or more values. The type is a text descriptor of the kind of object represented by this information. Any text at the beginning of a line is assumed to be a type identifier. The data objects can be of various types. The type, tag, and values of a data object are separated by the tab character.

After each type identifier, there is a tag identifier. This is a unique name for a specific object. Setup parameter data objects may also have one or more values following the type and tag.

The first two lines of a Framework data file are generally two special and important data objects:

EXPLAIN
TAG TYPICALEXPERIMENT

The EXPLAIN type identifies this file as one output from an Explain Script. Without this line, a file will not be read in by the Gamry Echem Analyst.

The next line begins an object, uniquely identified as type TAG. It is used to specify which experiment created the data file. In this example, the tag is “TYPICALEXPERIMENT”. This object is used by Gamry’ Echem Analyst to determine which Analysis script should be used when this data file is opened. The individual tags for spectro electrochemical measurements will be discussed in the following chapters.

Data objects are generally more complicated. In the following example, the object is of type “POTEN”, and stores information about a potential. The tag or name of this object is “VINIT”. The information about the potential is contained in the three fields that follow the tag. The tab character is represented by “<tab>” so you do not confuse it with the space character.

VINIT<tab>POTEN<tab>-2.00000E-002<tab>T<tab>Initial &E (V)

One special type is a “TABLE” which is followed by the number of data points. A “TABLE” is output by a data curve. The “TABLE” headings, units, and data values follow.

CURVE TABLE 33 Pt T Vf Im Vu Pwr Sig Ach Temp IERange Over
# s V A V W V V deg C # bits
0 0.5 1.14698E+001 1.49903E-001 0.00000E+000 1.71937E+000 1.49772E+000 8.55522E-001 0.00000E+000 11 ...........
1 1 1.16029E+001 1.49903E-001 0.00000E+000 1.73931E+000 1.49774E+000 8.65478E-001 0.00000E+000 11 .............
2 1.5 1.17347E+001 1.49900E-001 0.00000E+000 1.75904E+000 1.49774E+000 8.75374E-001 0.00000E+000 11 .............
3 2 1.18662E+001 1.49899E-001 0.00000E+000 1.77873E+000 1.49774E+000 8.85216E-001 0.00000E+000 11 ...........

Fields (tags, types, and values) within data objects are separated by the tab character. One exception is the separator between data points in a data curve, which is a carriage return.

IMPORTANT NOTE: Do not add spaces to the tabs separating the fields. Do not edit the data file with an ASCII editor that substitutes spaces for tab characters.

Data objects can appear in any order in the file. Gamry’s Echem Analyst locates objects within the file by means of their tags.


Spectro-electrochemical File Format

Gamry’s Spectroscopy scripts are – with one exception – a combination of standard electrochemical and spectroscopic experiments that run simultaneously. These experiments create two separate output files. One file only contains the data for the electrochemical experiment; the other one contains all data from the spectrometer.

The former file format is similar to the standard electrochemical measurements without spectroscopy. However, there are two changes in the data file. As mentioned before, the tag specific for an experiment is written in the second line of a data file. For spectro electrochemical experiments, the names for this tag are as follows:

Experiment | Tag
Spectro Chronoamperometry | SPECTROCHRONOA
Spectro Chronocoulometry | SPECTROCHRONOC
Spectro Cyclic Voltammetry | SPECTROCV
Spectro Linear Sweep Voltammetry | SPECTROLSV

In addition, a further line is included which refers and links to the spectroscopy data. The object is of type “LABEL” with the tag “SPECTRONAME”. The name of the spectroscopy file follows which consists of the prefix “SpectraFor_” followed by the file name of the spectro electrochemical experiment. This line looks like following example:

SPECTRONAME<tab>LABEL<tab>SpectraFor_OutputFileName.DTA<tab>File Name for Spectra

This line enables that by opening a spectro electrochemical file in Gamry’s Echem Analyst the corresponding spectroscopy data are added in an extra tab.

IMPORTANT NOTE: When changing the file name of the spectroscopy file be sure to change this name also in the spectro electrochemical data file at tag “SPECTRONAME”. This can be done by opening the files in a simple text editor. Otherwise, the Echem Analyst will not add the spectroscopy data when opening a spectro-electrochemical file.


Spectroscopy File Format

The data for all spectra are written in a separate file. If spectro electrochemical experiments are performed, the file names consist of the prefix “SpectraFor_” followed by the file name of the spectro-electrochemical experiment.

When using the script “OpticalSpectroscopy.exp” a single spectrum is recorded without any electrochemical experiments. The file name for this experiment does not automatically contain the prefix “SpectraFor_”.

The tag for all spectroscopy files is called “SPECTROSCOPY” which is written in the second line of the data file.

The next line contains the data type that is recorded and saved in the file. The type of this line is called “IQUANT”. It follows an INDEX number which defines the data type that is recorded for a spectrum (see table).

TYPE<tab>IQUANT<tab>0<tab>Data Type

INDEX | Data Type
0 | Absorbance
1 | Raw Counts
2 | Transmittance

After this, the data for each single spectrum follow each other without any interruption.

TIME55 IQUANT 73 Current Time(sec)
SPECTRUM55 TABLE
WaveLength Absorbance
nm
199.7279 5.746842
200.1227 2.310677
200.5175 2.093163

The data for a single spectrum consist of the type “IQUANT” which follows a value defining the current measurement time in seconds. The tag of this line is “TIME”.

The next line includes the “TABLE” type. The special tag for spectroscopic measurements is “SPECTRUM”. Further, both tags “TIME” and “SPECTRUM” include a consecutive number starting at zero (0) showing the current number of the spectrum.

The actual spectra data are listed in two columns – the wavelength in nanometers (nm) and the data type that was selected in the setup. This can be Absorbance, Raw Counts, or Transmittance.


Optical Spectroscopy Analysis Overview

The Optical Spectroscopy analysis script allows the user to open an Optical Spectroscopy data file by selecting it from the File Open window. The data file will open and a single tab with the spectrum is shown.

The same analysis page opens also for all “SpectraFor_” files which contain only the spectroscopic data and are created when performing spectro electrochemical experiments.


Optical Spectroscopy Analysis Pages

The standard optical spectroscopy analysis contains the following pages at startup:

Spectroscopy
The spectroscopy page contains the spectra measured during the experiment. Data show either absorbance A, transmittance T, or raw counts plotted versus wavelength l. Typical commands include Peak Find, Clear Peaks and Add Wavelength Slices.

Additional Pages Which May Become Visible

Wavelength Slices
This page contains a graph showing four plots of spectroscopic data (absorbance, transmittance, or raw counts) versus time t at the selected wavelength. Using the command Add Wavelength Slices again will add another set of four plots to the graph.

Spectro Peak Locations
This page shows a grid of peak locations and magnitudes. Using the command Find Peaks again will add new lines of peak data.


Spectro Chronoamperometry Analysis Overview

The Spectro Chronoamperometry analysis script allows the user to open a Spectro Chronoamperometry data file by selecting it from the File Open window. The data file will open and a series of tabbed pages are created in a new window. These tabs will contain two graphs of the chronoamperometric data, experimental setup information, experimental notes, hardware settings, and the spectroscopic data.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Spectro Chronoamperometry Analysis Pages

The standard spectro chronoamperometry analysis contains the following pages at startup:

Chart
The chart page shows the main plot of the chronoamperometric measurement. It contains the data with current I plotted versus time t. Common analyses performed on this graph include background subtraction, and peak location with the Min/Max command.

Second Chart
The Second Chart page contains a graph with current I versus the inverse of square root of time, called tau-½. It can be used to evaluate parameters of the Cottrell equation using the Calculate Cottrell Equation command for each of the steps in a single or double step experiment.

Experimental Setup
The Experimental Setup page contains a list of the parameters used to acquire the data presented on the Chart page.

Experimental Notes
The Experimental Notes are the notes entered by the user prior to the data acquisition. The notes can be edited in the analysis, and saved with the changes to an analysis data file.

Hardware Settings
The Hardware Settings Page contains all of the potentiostat settings used during the run of the experiment.

Spectroscopy
The spectroscopy page contains the spectra measured during the experiment. Data show either absorbance A, transmittance T, or raw counts plotted versus wavelength l. Typical commands include Peak Find, Clear Peaks, and Add Wavelength Slices.

Additional Pages Which May Become Visible

Quick Integration
This tab opens by using the command Quick Integrate. It contains a grid of integration values based on different sections in visible traces of the main chart. The table shows the most recent values of this command.

Min/Max
This page contains a grid of minimum and maximum values of each visible trace based on the most recent use of the Min/Max command.

Wavelength Slices
This page contains a graph showing four plots of spectroscopic data (absorbance, transmittance, or raw counts) versus time t at a selected wavelength. Using the command Add Wavelength Slices again will add another set of four plots to the graph.

Spectro Peak Locations
This page shows a grid of peak locations and magnitudes. Using the command Peak Find in the Spectroscopy menu will add new lines of peak data in the grid.


Spectro Chronocoulometry Analysis Overview

The Spectro Chronocoulometry analysis script allows the user to open a Spectro Chronocoulometry data file by selecting it from the File Open window. The data file will open and a series of tabbed pages are created in a new window. These tabs will contain a graph of the chronocoulometric data, experimental setup information, experimental notes, hardware settings, and the spectroscopic data.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Spectro Chronocoulometry Analysis Pages

The Spectro Chronocoulometry analysis script allows the user to open a Spectro Chronocoulometry data file by selecting the data file from the File Open window. The data file will open and a series of tabbed pages are created in a new window. These tabs will contain two graphs of the chronocoulometric data, experimental setup information, experimental notes, hardware settings, and the spectroscopic data.

Chart
The chart page shows the main plot of the chronocoulometric measurement. It contains the data plotted with charge Q plotted versus time t. Common analyses performed on this graph include background subtraction, and peak location with the Min/Max command.

Second Chart
The Second Chart page contains a graph with charge Q versus the inverse of square root of time, called tau-½. It can be used to evaluate parameters of the Cottrell equation using the Calculate Integrated Cottrell Equation command for each of the steps in a single or double step experiment.

Experimental Setup
The Experimental Setup page contains a list of the parameters used to acquire the data presented on the Chart page.

Experimental Notes
The Experimental Notes are the notes entered by the user prior to the data acquisition. The notes can be edited in the analysis, and saved with the changes to an analysis data file.

Hardware Settings
The Hardware Settings Page contains all of the potentiostat settings used during the run of the experiment.

Spectroscopy
The spectroscopy page contains the spectra measured during the experiment. Data show either absorbance A, transmittance T, or raw counts plotted versus wavelength l Peak Find, Clear Peaks, and Add Wavelength Slices.

Additional Pages Which May Become Visible

Min/Max
This page contains a grid of minimum and maximum values of each visible trace based on the most recent use of the Min/Max command.

Wavelength Slices
This page contains a graph showing four plots of spectroscopic data (absorbance, transmittance, or raw counts) versus time t at a selected wavelength. Using the command Add Wavelength Slices again will add another set of four plots to the graph.

Spectro Peak Locations
This page shows a grid of peak locations and magnitudes. Using the command Peak Find in the Spectroscopy menu will add new lines of peak data in the grid.


Spectro Cyclic Voltammetry Analysis Overview

The Spectro Cyclic Voltammetry analysis script allows the user to open a Spectro Cyclic Voltammetry data file by selecting it from the File Open window. The data file will open and a series of tabbed pages are created in a new window. These tabs will contain a graph of the cyclic voltammetry data, experimental setup information, experimental notes, hardware settings, and the spectroscopic data.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Spectro Cyclic Voltammetry Analysis Pages

The Spectro Cyclic Voltammetry analysis script allows the user to open a Spectro Cyclic Voltammetry data file by selecting the data file from the File Open window. The data file will open and a series of tabbed pages are created in a new window. These tabs will contain a graph of the cyclic voltammetry data, experimental setup information, experimental notes, hardware settings, and the spectroscopic data.

Chart
The chart page shows the main plot of the cyclic voltammetry measurement. It contains the data plotted with current I plotted versus potential E. Common analyses performed on this graph include background subtraction, peak find, integration, and normalize by scan rate or square root of scan rate.

Experimental Setup
The Experimental Setup page contains a list of the parameters used to acquire the data presented on the Chart page.

Experimental Notes
The Experimental Notes are the notes entered by the user prior to the data acquisition. The notes can be edited in the analysis, and saved with the changes to an analysis data file.

Hardware Settings
The Hardware Settings Page contains all of the potentiostat settings used during the run of the experiment.

Spectroscopy
The spectroscopy page contains the spectra measured during the experiment. Data show either absorbance A, transmittance T, or raw counts plotted versus wavelength l. Typical commands include Peak Find, Clear Peaks, and Add Wavelength Slices.

Additional Pages Which May Become Visible

Integration
This page contains a grid of integrated regions which where defined using the Integrate command.

Quick Integration
This page contains a grid of integration values based on different sections in visible traces based on the most recent use of the Quick Integrate command.

Min/Max
This page contains a grid of minimum and maximum values of each visible trace based on the most recent use of the Min/Max command.

Peak Locations
This page shows a grid of peak locations and magnitudes. Using the command Peak Find in the Cyclic Voltammetry menu will add new lines of peak data in the grid.

Wavelength Slices
This page contains a graph showing four plots of spectroscopic data (absorbance, transmittance, or raw counts) versus time t at a selected wavelength. Using the command Add Wavelength Slices again will add another set of four plots to the graph.

Spectro Peak Locations
This page shows a grid of peak locations and magnitudes. Using the command Peak Find in the Spectroscopy menu will add new lines of peak data in the grid.


Spectro Linear Sweep Voltammetry Analysis Overview

The Spectro Linear Sweep Voltammetry analysis script allows the user to open a Spectro Linear Sweep Voltammetry data file by selecting it from the File Open window. The data file will open and a series of tabbed pages are created in a new window. These tabs will contain a graph of the linear sweep voltammetry data, experimental setup information, experimental notes, hardware settings, and the spectroscopic data.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Spectro Linear Sweep Voltammetry Analysis Pages

The Spectro Linear Sweep Voltammetry analysis script allows the user to open a Spectro Linear Sweep Voltammetry data file by selecting the data file from the File Open window. The data file will open and a series of tabbed pages are created in a new window. These tabs will contain a graph of the linear sweep voltammetry data, experimental setup information, experimental notes, hardware settings, and the spectroscopic data.

Chart
The chart page shows the main plot of the linear sweep voltammetry measurement. It contains the data with current I plotted versus potential E. Common analyses performed on this graph include background subtraction, peak find, integration, and normalize by scan rate or square root of scan rate.

Experimental Setup
The Experimental Setup page contains a list of the parameters used to acquire the data presented on the Chart page.

Experimental Notes
The Experimental Notes are the notes entered by the user prior to the data acquisition. The notes can be edited in the analysis, and saved with the changes to an analysis data file.

Hardware Settings
The Hardware Settings Page contains all of the potentiostat settings used during the run of the experiment.

Spectroscopy
The spectroscopy page contains the spectra measured during the experiment. Data show either absorbance A, transmittance T, or raw counts plotted versus wavelength l. Typical commands include Peak Find, Clear Peaks, and Add Wavelength Slices.

Additional Pages Which May Become Visible

Integration
This page contains a grid of integrated regions which where defined using the Integrate command.

Quick Integration
This page contains a grid of integration values based on different sections in visible traces based on the most recent use of the Quick Integrate command.

Peak Locations
This page shows a grid of peak locations and magnitudes. Using the command Peak Find in the Linear Sweep Voltammetry menu will add new lines of peak data in the grid.

Min/Max
This page contains a grid of minimum and maximum values of each visible trace based on the most recent use of the Min/Max command.

Wavelength Slices
This page contains a graph showing four plots of spectroscopic data (absorbance, transmittance, or raw counts) versus time t at a selected wavelength. Using the command Add Wavelength Slices again will add another set of four plots to the graph.

Spectro Peak Locations
This page shows a grid of peak locations and magnitudes. Using the command Peak Find in the Spectroscopy menu will add new lines of peak data in the grid.


Overview

When opening a file that contains spectroscopic data, the Spectroscopy menu will appear on the Echem Analyst menu bar. It enables several commands to edit spectroscopic data.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Add Wavelength Slices

The Add Wavelength Slices command allows the user to select four different wavelengths and plot the spectroscopic data (absorbance, transmittance, or raw counts) versus time at the selected wavelengths.

By selecting the command a window opens where the user can select four wavelengths.

After pressing OK, a new tab opens which shows a diagram with the spectroscopic data plotted versus time for each of the selected wavelengths. Repeating this command will add a further set of four plots to this graph.


Subtract Spectrum

The Subtract Spectrum command allows the user to subtract from a current spectrum another spectrum of the same type (absorbance, transmittance, or raw counts.

This command opens a window where the user can select a spectrum file from any folder. By pressing Open, the selected spectrum will be subtracted and a new curve will be added in the Curve Selector.


Calculate Absorbance

The Calculate Absorbance command enables calculation of the absorbance from raw count spectra.

This command opens a window where the user can select a spectrum file for which the absorbance should be calculated. The selected spectrum will be subtracted and a new curve will be added in the Curve Selector.


Peak Find

The Peak Find command allows the user to get the peaks in a selected region of a spectrum.

The user selects first a region of the curve with the Select Portion tool. The command Peak Find numbers automatically the peaks in this region and adds a new tab with a grid of all data for the peaks. The new tab is called Spectro Peak Locations.


Overview

When opening a DTA file in Gamry’s Echem Analyst, several tools are available for the user to edit data. The Common Tools menu can be found on the Echem Analyst menu bar. A drop down list shows the available tools which depend on the experiment that was performed.

Currently, the Common Tool menu enables one tool for spectroscopic data.

The Spectroscopy help section covers mainly definitions, parameters, and commands for the spectroscopic part. For additional information about setup parameters and commands for corresponding electrochemical experiments, see the PHE200 help section.


Smooth Data

The Smooth Data command is used in cases where the acquired data is less than ideal. There are some cases where exterior noise enters the cell and causes the data to have some minor oscillations. The Smooth Data command offers two different types of smoothing algorithms.

The first is a sliding window type, which takes a number of data points in a window. This window averages the data points, and then slides one spot, and again takes an average. This sliding effect is repeated until all the data has been traversed. This technique is simple but has a downside of causing the heights of peaks to be changed.

The second type is a Savitzky Golay smoothing filter which is a low pass filter which helps to preserve higher moments by approximating the underlying function with a polynomial. This method takes an order, which is the order of the polynomial, as well as a width, which is the number of points to be fit by the polynomial. The defaults of 4 for the order and 16 for the width are suitable for the majority of applications but can easily be changed.

The steps to smooth the data are as follows:

  1. Make the trace you wish to smooth the active trace. This can be done by right clicking on the trace and pressing Activate Trace.

  2. Select the Smooth Data command from the common tools menu. This will display the Smooth Data dialog and give you a selection of data you want to smooth.

  3. Select the smoothing filter type, and then specify the conditions for that filter. Once you are satisfied, press Ok. At this point the data will be smoothed. One side effect of smoothing is that it in essence replaces the original data in the document. To retrieve the original data, you must reload it from the original DTA file.


Library Routines: Spectroscopy

The Spectroscopy software uses functions and classes that are specifically designed for spectroscopic and spectro electrochemical experiments. These include absorption, transmission, and raw count measurements. Further, spectroscopic measurements can be run simultaneously using double step signals for chrono techniques, as well as curves for chrono techniques and cyclic voltammetry.

The following items are described in this section.

Curve Classes

  • CHRONOA
  • CRONOC
  • CHRONOP
  • RCV
  • SPECTROSCOPY

Signal Classes

  • VDSTEP
  • IDSTEP
  • VRUPDN
  • IRUODN


CHRONOA

Type: CLASS

Purpose: The CHRONOA class manages data acquisition for a ChronoAmperometry curve. There may be more than one data acquisition object in a script, but only one may be running (i.e. acquiring values) at any time. The typical life cycle of a ChronoA object is:

ChronoA = CHRONOA.New(Tag, Pstat) ; Create the ChronoA
ChronoA.SetPlot(Plottype) ; Determine the plot type
ChronoA.Run() ; Run the curve
ChronoA.Printl() ; Print the curve out to Output

When a ChronoA object is run, the potentiostat must be in a Potentiostatic mode.


CHRONOC

Type: CLASS

Purpose: The CHRONOC class manages data acquisition for a ChronoCoulometry curve. There may be more than one data acquisition object in a script, but only one may be running (i.e. acquiring values) at any time. The typical life cycle of a ChronoC object is:

ChronoC = CHRONOC.New(Tag, Pstat) ; Create the ChronoC
ChronoC.SetPlot(Plottype) ; Determine the plot type
ChronoC.Run() ; Run the curve
ChronoC.Printl() ; Print the curve out to Output

When a ChronoC object is run, the potentiostat must be in a Potentiostatic mode.


CHRONOP

Type: CLASS

Purpose: The CHRONOP class manages data acquisition for a ChronoPotentiometry curve. There may be more than one data acquisition object in a script, but only one may be running (i.e. acquiring values) at any time. The typical life cycle of a ChronoP object is:

ChronoP = CHRONOP.New(Tag, Pstat) ; Create the ChronoP
ChronoP.SetPlot(Plottype) ; Determine the plot type
ChronoP.Run() ; Run the curve
ChronoP.Printl() ; Print the curve out to Output

When a ChronoP object is run, the potentiostat must be in a Galvanostatic mode.


RCV

Type: CLASS

Purpose: The RCV class manages data acquisition for a Cyclic Voltammetry curve. There may be more than one data acquisition object in a script, but only one may be running (i.e. acquiring values) at any time. The typical life cycle of a Rcv object is:

Rcv = RCV.New(Tag, Pstat) ; Create the Rcv
Rcv.SetPlot(Plottype) ; Determine the plot type
Rcv.Run() ; Run the curve
Rcv.Printl() ; Print the curve out to Output

When a Rcv object is run, the potentiostat must be in a Potentiostatic mode.


IDSTEP

Type: Class

Purpose: The IDSTEP class describes a three part current step waveform which can be applied by a potentiostat while in the Galvanostat mode. The Idstep object encapsulates information about the initial, step 1, and final currents, the elapsed times at each current, and the data acquisition rate. Most of the activity associated with the Idstep happens in the background while a ChronoP.Run() is being executed.

The current range used for the IDSTEP signal generator is selected from the larger absolute current in the waveform. The current range is fixed throughout the scan. The program does the best it can to hit the lower current using the current range in use. Generally the smaller current is only imprecise if it differs from the first by several orders of magnitude.

If the Skip button is "pressed" during the initial or second phase of the run, the Idstep signal generator will advance to the next phase. If the Skip button is pressed during the final phase, the Curve.Run() will be prematurely ended.


IRUPDN

Type: Class

Purpose: The IRUPDN class describes a tri-slope current ramp waveform which can be applied by a potentiostat while in the Galvanostat mode. The current is ramped from an initial current to an apex 1 current, to an apex 2 current, and back again to a final current. Irupdn objects are normally used for cyclic scans. The object encapsulates information about the initial, apex and final currents, the ramp rates, and the data acquisition rate.

The current range used for the Irupdn signal generator is selected from the largest absolute current limit (Initial, Final, Apex) in the waveform. The current range is fixed throughout the scan. The program does the best it can to hit lower current limits using the current range in use. Generally the smaller limits are only imprecise if they differ from the first by several orders of magnitude.

Irupdn objects use a staircase waveform. Data is sampled at each level on the staircase.

If the Skip button is "pressed" during the initial or second phase of the run, the Irupdn signal generator will advance to the next phase. If the Skip button is pressed during the final phase, the Curve.Run() will be prematurely ended.


VDSTEP

Type: Class

Purpose: The VDSTEP class describes a three part voltage step waveform which can be applied by a potentiostat while in the Potentiostat mode. The Vdstep object encapsulates information about the initial, second, and final voltages, the elapsed times at each voltage, and the data acquisition rate. Most of the activity associated with the Vdstep happens in the background while a ChronoA.Run() or ChronoC.Run() is being executed.

If a the Skip button is "pressed" during the initial or second phase of the run, the Vstep signal generator will advance to the next phase. If the Skip button is pressed during the final phase, the Curve.Run() will be prematurely ended.


VRUPDN

Type: Class

Purpose: The VRUPDN class describes a tri-voltage ramp waveform which can be applied by a potentiostat while in the Potentiostat mode. The voltage is ramped from an initial voltage to an apex 1 voltage, then to an apex 2 voltage and back again to a final voltage. Vrupdn is normally used for Cyclic Voltammetry scans. The object encapsulates information about the initial, apex and final voltages, the ramp rates, and the data acquisition rate.

VRUPDN uses a staircase waveform. Data is sampled at each level on the staircase.

If the Skip button is "pressed" during the initial, or second phase of the run, the Vrupdn signal generator will advance to the next phase. If the Skip button is pressed during the final phase, the Curve.Run() will be prematurely ended.


Spectroscopy.AcquireAbsorption()

Delete this text and replace it with your own content.


Spectroscopy.AcquireDark()

Delete this text and replace it with your own content.


Spectroscopy.AcquireDarkSubtractedSpectrum()

Delete this text and replace it with your own content.


Spectroscopy.AcquireRaw()

Delete this text and replace it with your own content.


Spectroscopy.AcquireTransmission()

Delete this text and replace it with your own content.


Spectroscopy.CalculateAbsorption()

Delete this text and replace it with your own content.


Spectroscopy.SetMinIntegrationTime()

Delete this text and replace it with your own content.


Spectroscopy.SetSpecIntegrationTime()

Delete this text and replace it with your own content.


Spectroscopy.Init()

Delete this text and replace it with your own content.


Spectroscopy.Printl()

Delete this text and replace it with your own content.


ChronoA.Activate()

Type: INSTANCE FUNCTION

Purpose: Make the real time plot of the ChronoA object the Active plot. If the Runner window Curve List control is set to Active, the plot will be displayed. If the Runner window Curve List is set to a definite curve, the display does not change.

Usage:

ChronoA.Activate()


ChronoA.Count()

Type: INSTANCE FUNCTION

Purpose: Return the number of points actually acquired in a CHRONOA object. The number returned is not the number of points allocated.

Usage:

NumPoints = ChronoA.Count()

NumPoints

INDEX

The number of points in the CHRONOA object. Zero is returned if no data has been acquired yet.


ChronoA.DataCol()

Type: INSTANCE FUNCTION

Purpose: Create and return an object of the class DATACOL. The object contains data extracted from one column of the CHRONOA object's data array. The data, once extracted, can then be submitted to other objects for further calculation. For example, a LINFIT object performs a linear regression analysis on two DATACOL objects.

A new DATACOL object is automatically created by the call to CHRONOA.DataCol(). It is usually transient, existing only for one function call.

Usage:

DataCol = ChronoA.DataCol(ColumnCode)
DataCol | DATACOL | The new object containing the data extracted from the CHRONOA data array.
ColumnCode | INDEX | A code identifying the column to be used.
 |  | 0 = Time
 |  | 1 = Applied Voltage
 |  | 2 = Uncompensated Voltage
 |  | 3 = Measured Current
 |  | 4 = Signal sent to Control Amp
 |  | 5 = Measured Aux Channel Voltage
 |  | 6 = I/E Range used
 |  | 7 = Overloads
 |  | Or use the predefined constants:
 |  | CHRONOA_T = Time
 |  | CHRONOA_Vf = Applied Voltage
 |  | CHRONOA_Vu = Uncompensated Voltage
 |  | CHRONOA_Im = Measured Current
 |  | CHRONOA_Sig = Signal sent to Control Amp
 |  | CHRONOA_Ach = Measured Aux Channel Voltage
 |  | CHRONOC_IERange = I/E Range Used
 |  | CHRONOA_Over = Overloads


ChronoA.DataValue()

Type: INSTANCE FUNCTION

Purpose: Extract a single data item from a CHRONOA object. The data item is taken from the ith data point and the jth data column. If no data has been taken the returned value is NIL.

Usage:

DataValue = ChronoA.DataValue(PointNum,ColNumber)
Result | REAL | The returned value.
 | NIL | No data acquired yet.
PointNum | INDEX | Point number, zero based. If PointNum is out of range, a value from the last acquired point is returned.
 | NIL | Always return a value from the last acquired point.
ColNumber | INDEX | Data column, with a range of 0 to 5. The meaning of the data in each column is given in the ChronoA.DataCol()description.


CHRONOA.New()

Type: CLASS FUNCTION

Purpose: Create a ChronoA object. The data array is sized according to the signal generator used.

Usage:

ChronoA = CHRONOA.New(Tag, Pstat)
Tag | STRING | Curve tag for data output. Used to label the file
Pstat | Object | Pstat is an object with a PSTAT license
ChronoA | CHRONOA | The curve object


ChronoA.Printl()

Type: INSTANCE FUNCTION

Purpose: Print the results of a ChronoA experiment out to the Output file. The Output record will be printed in the format:

Tag <tab> "TABLE" <tab> Points

<tab> "Pt" <tab> "T" <tab> "Vf" <tab> "Im" <tab> "Vu" <tab> "Sig" <tab>"Ach" <tab> "Over"
<tab> "#" <tab> "s" <tab> "V" <tab> "A" <tab> "V" <tab> "V" <tab>"V" <tab> "bits"
<tab> Pt1 T V I V V V Flags
<tab> Pt2 T V I V V V Flags
...
<tab> PtN T V I V V V Flags

Where the symbols have the following meanings:

Tag | The curve Tag (from CHRONOA.New() or optional argument)
Points | Total number of points acquired
Pt(#) | Sequential number of a point.
T | Elapsed time from starting from ChronoA.Run
Vf | Applied Voltage vs Eref.
Im | Measured cell current.
Vu | Uncompensated Voltage
Sig | Signal sent to Control Amp
Ach | Aux Channel Voltage
Over | Overload flags

Usage:

ChronoA.Printl(Tag)

Tag

STRING

Optional. Used to print a different Tag than the one used in the call to CHRONOA.New()


ChronoA.Run()

Type: INSTANCE FUNCTION

Purpose: Run the curve. When ChronoA.Run() is executed, the acquired data is displayed in a real-time curve. There are four buttons active during ChronoA.Run() - Abort, Pause/Continue, Skip, and Point. The Abort button terminates the entire experiment. The Skip button skips to the next phase of the experiment, either past the end of this curve or to the next region of the signal generator's operation.

The active run can be halted in several ways, namely: if the signal generator is finished, if the operator hits a Skip button, or if one of the stopping criteria is met. These stopping criteria can be enabled or disabled using the ChronoA.Thresh() and ChronoA.StopAt() functions.

Usage:

Result = ChronoA.Run()
Result | INDEX | 0 = Normal finish or Skip button pushed
 |  | 1 = Stop due to Under Criterion ( I < Imax )
 |  | 2 = Stop due to Over Criterion ( I > Imin )
 |  | 3 = Stop due to stable (abs(dI/dt < limit)
 |  | 4 = Stop due to runaway (abs(dI/dt > limit)
 |  | 5 = Stop due to decreasing ( dI/dt < limit)
 |  | 6 = Stop due to increasing ( dI/dt > limit)


ChronoA.SetAxis()

Type: INSTANCE FUNCTION

Purpose: Helps to define the real time display of a CHRONOA object. Associates an axis with a data column in the object. Controls linear/log display formatting and allows labeling of the axis.

You must call ChronoA.SetAxis for each of the axes in the real time plot. For a Y and Y' versus X plot you need 3 calls to ChronoA.SetAxis().

Usage:

ChronoA.SetAxis(AxisNo, Source, Scale, MinVal, Label, Units)
AxisNo | INDEX | Use the constants below to define which axis is being configured.
 |  | X_AXIS | X axis
 |  | Y_AXIS | Y axis (Y vs X plot) or Lower Y (Y, Y' vs X)
 |  | Z_AXIS | Upper Y axis (Y, Y' vs X only)
Source | INDEX | The column number containing the data to be plotted or use the predefined constants defined in ChronoA.DataCol() .
Scale | INDEX | LIN_AXIS | The axis is linear
 |  | LOG_AXIS | The axis is log
MinVal | REAL | Minimum value used in prevention of "ugly" plot scaling. MinVal is used differently depending on Scale setting. On a linear axis, this is the minimum resolution of the plot. The range of values shown on the axis cannot be smaller than MinVal. This prevents excessively fine scaling when plotting data where all the values are identical or very similar. On a log axis, this value is substituted for 0's in the data. This prevents infinite log values.
Label | STRING | The label used for the axis. Short names (one or two character labels are preferred).
Units | STRING | The units used for the axis. Short names (one or two character labels are preferred).


ChronoA.SetDecimation()

Type: INSTANCE FUNCTION

Purpose: Used to allow for a log-time display during the Chrono experiment. There are settings which can specify the number of non-decimated points prior to and after the actual step.

Usage:

ChronoA.SetDecimation(Decimation, PreStep, PostStep)
Decimation | BOOL | Boolean indicating whether or not the data will be decimated or not.
PreStep | INDEX | The number of data points to show in an undecimated format prior to the step.
PostStep | INDEX | The number of data points to show in an undecimated format after the step


ChronoA.SetPlot()

Type: INSTANCE FUNCTION

Purpose: Format the real time display using the SetPlotView and Set Axis functions.

Usage:

ChronoA.SetPlot(View, MinI, MinV, MinT)
View | INDEX | 0 = V vs I
 |  | 1 = Log V vs I
 |  | 2 = I vs T, E vs T
 |  | Or use the predefined constants:
 |  | CHRONOA_LINIV
 |  | CHRONOA_LOGIV
 |  | CHRONOA_ITVT
MinI | REAL | Minimum current value to display (optional)
MinV | REAL | Minimum voltage value to display (optional)
MinT | REAL | Minimum time value to display (optional)


ChronoA.SetPlotView()

Type: INSTANCE FUNCTION

Purpose: Set the number of graphs displayed in the real time display.

Usage:

ChronoA.SetPlotView(Format)
Format | INDEX | 0 = No Graph Displayed
 |  | 1 = Single Graph Displayed
 |  | 2 = Two Graphs displayed
 |  | Or use the predefined constants:
 |  | VIEW_NONE
 |  | VIEW_SINGLE
 |  | VIEW_DOUBLE


ChronoA.SetTitle()

Type: INSTANCE FUNCTION

Purpose: Set the current title of the curve.

Usage:

ChronoA.SetTitle(Title)

Title

STRING

A string representing the new title that the curve should use.


ChronoA.Sprint()

Type: INSTANCE FUNCTION

Purpose: Print the status of the ChronoA to a string. The object's tag and last acquired data point will be printed in the format:

Tag,PointNumber

Usage:

Result = ChronoA.Sprint()

Result

STRING

Resulting tag & point number (0 based).


ChronoA.SprintPoint()

Type: INSTANCE FUNCTION

Purpose: Used in output of data from a CHRONOA object. A data point from the object is printed to an ASCII string. This string can in turn be printed to the active output file.

The format of the data string is:

PointNumber <tab> T <tab> Vf <tab> Vu <tab> Im <tab> Sig <tab> Ach <tab> Over

You can use this function along with the Printl() function to output point i to the output file as follows:

Printl("\t",ChronoA.SprintPoint(i))

USAGE:

Result = ChronoA.SprintPoint(PointNumber)
Result | STRING | The output string
PointNumber | INDEX | The point to be printed. PointNumber is 0 based. If the requested point has not been taken, a parameter error will be issued.
T | REAL | Elapsed time from starting from ChronoA.Run
Vf | REAL | Applied E vs Eref.
Im | REAL | Measured cell current.
Vu | REAL | Uncompensated Voltage
Sig | REAL | Signal sent to Control Amp
Ach | REAL | Aux Channel Voltage
Over | STRING | Hexadecimal number representing overload status


ChronoA.StopAt()

Type: INSTANCE FUNCTION

Purpose: Enable or disable the ChronoA termination limits. There are 2 limiting conditions on which a curve may prematurely terminate:

1. | Under | I < Limit
2. | Over | I > Limit

The Over criterion is used to limit a positive current swing. The Under criterion limits a negative current swing.

These conditions may be individually enabled and disabled.

Usage:

ChronoA.StopAt(Under, Over)
Under | REAL | Enable the Under test and set value
 | NIL | Disable the Under test
Over | REAL | Enable the Over test and set value
 | NIL | Disable the Over test


ChronoA.StopAtDelay()

Type: INSTANCE FUNCTION

Purpose: Used to avoid premature stopping of a curve because of noise creating a false reading for a StopAt test. Requires StopAt criterion be met for a number of data points (N) before the curve stops. The parameter N can be individually set for each StopAt test.

For absolute tests, such as I > Limit, the criterion must be met for N points consecutively before the criterion will be accepted. One point missing the criterion limit resets the N point counter.

Usage:

ChronoA.StopAtDelay(Under, Over)
Under | INDEX | Delay for this number of points
 | NIL | Only one point required
Over | INDEX | Delay for this number of points
 | NIL | Only one point required


ChronoA.Thresh()

Type: INSTANCE FUNCTION

Purpose: Setup threshold conditions which must be met before ChronoA.StopAt() tests will be performed. Once any of the threshold tests is met, the StopAt criteria are evaluated for the rest of the scan. There are six threshold tests that you can perform:

1. | IMin | I < I_MinThresh
2. | IMax | I > I_MaxThresh
3. | EMin | E < E_MinThresh
4. | EMax | E > E_MaxThresh
5. | Tmin | T < T_MinThresh
6. | Tmax | T > T_MinThresh

Threshold tests allow you to tune the StopAt tests more carefully. For example, you can avoid a premature experiment termination due to an initial transient.

In general you will only enable one of the threshold tests. The others will be turned off by a NIL argument in the function call.

Note that any threshold test starts all StopAt tests. Also once StopAt testing is enabled, it is never disabled, even if the Threshold test that enabled it is not longer valid.

Usage:

ChronoA.Thresh(IMin, IMax, EMin, EMax, TMin, TMax)
IMin | REAL | Enable StopAt if I < IMin
 | NIL | Disable this test
IMax | REAL | Enable StopAt if I > IMax
 | NIL | Disable this test
EMin | REAL | Enable StopAt if E < EMin
 | NIL | Disable this test
EMax | REAL | Enable StopAt if E > EMax
 | NIL | Disable this test
TMin | REAL | Enable StopAt if T < TMin
 | NIL | Disable this test
TMax | REAL | Enable StopAt if T > TMax
 | NIL | Disable this test


ChronoA.Title()

Type: INSTANCE FUNCTION

Purpose: Return the current title of the curve.

Usage:

Title = ChronoA.Title()

Title

STRING

The current title of the curve.


ChronoC.Activate()

Type: INSTANCE FUNCTION

Purpose: Make the real time plot of the ChronoC object the Active plot. If the Runner window Curve List control is set to Active, the plot will be displayed. If the Runner window Curve List is set to a definite curve, the display does not change.

Usage:

ChronoC.Activate()


ChronoC.Count()

Type: INSTANCE FUNCTION

Purpose: Return the number of points actually acquired in a CHRONOC object. The number returned is not the number of points allocated.

Usage:

NumPoints = ChronoC.Count()

NumPoints

INDEX

The number of points in the CHRONOC object. Zero is returned if no data has been acquired yet.


ChronoC.DataCol()

Type: INSTANCE FUNCTION

Purpose: Create and return an object of the class DATACOL. The object contains data extracted from one column of the CHRONOC object's data array. The data, once extracted, can then be submitted to other objects for further calculation. For example, a LINFIT object performs a linear regression analysis on two DATACOL objects.

A new DATACOL object is automatically created by the call to CHRONOC.DataCol(). It is usually transient, existing only for one function call.

Usage:

DataCol = ChronoC.DataCol(ColumnCode)
DataCol | DATACOL | The new object containing the data extracted from the CHRONOC data array.
ColumnCode | INDEX | A code identifying the column to be used.
 |  | 0 = Time
 |  | 1 = Accumulated Charge
 |  | 2 = Applied Voltage
 |  | 3 = Uncompensated Voltage
 |  | 4 = Measured Current
 |  | 5 = Signal sent to Control Amp
 |  | 6 = Measured Aux Channel Voltage
 |  | 7 = I/E Range used
 |  | 8 = Overloads
 |  | Or use the predefined constants:
 |  | CHRONOC_T = Time
 |  | CHRONOC_Q = Accumulated Charge
 |  | CHRONOC_Vf = Applied Voltage
 |  | CHRONOC_Vu = Uncompensated Voltage
 |  | CHRONOC_Im = Measured Current
 |  | CHRONOC_Sig = Signal sent to Control Amp
 |  | CHRONOC_Ach = Measured Aux Channel Voltage
 |  | CHRONOC_IERange = I/E Range Used
 |  | CHRONOC_Over = Overloads


ChronoC.DataValue()

Type: INSTANCE FUNCTION

Purpose: Extract a single data item from a CHRONOC object. The data item is taken from the ith data point and the jth data column. If no data has been taken the returned value is NIL.

Usage:

DataValue = ChronoC.DataValue(PointNum,ColNumber)
Result | REAL | The returned value.
 | NIL | No data acquired yet.
PointNum | INDEX | Point number, zero based. If PointNum is out of range, a value from the last acquired point is returned.
 | NIL | Always return a value from the last acquired point.
ColNumber | INDEX | Data column, with a range of 0 to 6. The meaning of the data in each column is given in the ChronoC.DataCol()description.


CHRONOC.New()

Type: CLASS FUNCTION

Purpose: Create a ChronoC object. The data array is sized according to the signal generator used.

Usage:

ChronoC = CHRONOC.New(Tag, Pstat)
Tag | STRING | Curve tag for data output. Used to label the file
Pstat | Object | Pstat is an object with a PSTAT license
ChronoC | CHRONOC | The curve object


ChronoC.Printl()

Type: INSTANCE FUNCTION

Purpose: Print the results of a ChronoC experiment out to the Output file. The Output record will be printed in the format:

Tag <tab> "TABLE" <tab> Points

<tab> "Pt" <tab> "T" <tab> "Q" <tab> "Vf" <tab> "Im" <tab> "Vu" <tab> "Sig" <tab>"Ach" <tab> "Over"
<tab> "#" <tab> "s" <tab> "C" <tab> "V" <tab> "A" <tab> "V" <tab> "V" <tab>"V" <tab> "bits"
<tab> Pt1 T Q V I V V V Flags
<tab> Pt2 T Q V I V V V Flags
...
<tab> PtN T Q V I V V V Flags

Where the symbols have the following meanings:

Tag | The curve Tag (from CHRONOC.New() or optional argument)
Points | Total number of points acquired
Pt(#) | Sequential number of a point.
T | Elapsed time from starting from ChronoC.Run
Q | Accumulated Charge
Vf | Applied Voltage vs Eref.
Im | Measured cell current.
Vu | Uncompensated Voltage
Sig | Signal sent to Control Amp
Ach | Aux Channel Voltage
Over | Overload flags

Usage:

ChronoC.Printl(Tag)

Tag

STRING

Optional. Used to print a different Tag than the one used in the call to CHRONOC.New()


ChronoC.Run()

Type: INSTANCE FUNCTION

Purpose: Run the curve. When ChronoC.Run() is executed, the acquired data is displayed in a real-time curve. There are four buttons active during ChronoC.Run() - Abort, Pause/Continue, Skip, and Point. The Abort button terminates the entire experiment. The Skip button skips to the next phase of the experiment, either past the end of this curve or to the next region of the signal generator's operation.

The active run can be halted in several ways, namely: if the signal generator is finished, if the operator hits a Skip button, or if one of the stopping criteria is met. These stopping criteria can be enabled or disabled using the ChronoC.Thresh() and ChronoC.StopAt() functions.

Usage:

Result = ChronoC.Run()
Result | INDEX | 0 = Normal finish or Skip button pushed
 |  | 1 = Stop due to Under Criterion ( Q < Qmin )
 |  | 2 = Stop due to Over Criterion ( Q > Qmax)
 |  | 3 = Stop due to stable (abs(dQ/dt < limit)
 |  | 4 = Stop due to runaway (abs(dQ/dt > limit)
 |  | 5 = Stop due to decreasing ( dQ/dt < limit)
 |  | 6 = Stop due to increasing ( dQ/dt > limit)


ChronoC.SetAxis()

Type: INSTANCE FUNCTION

Purpose: Helps to define the real time display of a CHRONOC object. Associates an axis with a data column in the object. Controls linear/log display formatting and allows labeling of the axis.

You must call ChronoC.SetAxis for each of the axes in the real time plot. For a Y and Y' versus X plot you need 3 calls to ChronoC.SetAxis().

Usage:

ChronoC.SetAxis(AxisNo, Source, Scale, MinVal, Label, Units)
AxisNo | INDEX | Use the constants below to define which axis is being configured.
 |  | X_AXIS | X axis
 |  | Y_AXIS | Y axis (Y vs X plot) or Lower Y (Y, Y' vs X)
 |  | Z_AXIS | Upper Y axis (Y, Y' vs X only)
Source | INDEX | The column number containing the data to be plotted or use the predefined constants defined in ChronoC.DataCol() .
Scale | INDEX | LIN_AXIS | The axis is linear
 |  | LOG_AXIS | The axis is log
MinVal | REAL | Minimum value used in prevention of "ugly" plot scaling. MinVal is used differently depending on Scale setting. On a linear axis, this is the minimum resolution of the plot. The range of values shown on the axis cannot be smaller than MinVal. This prevents excessively fine scaling when plotting data where all the values are identical or very similar. On a log axis, this value is substituted for 0's in the data. This prevents infinite log values.
Label | STRING | The label used for the axis. Short names (one or two character labels are preferred).
Units | STRING | The units used for the axis. Short names (one or two character labels are preferred).


ChronoC.SetDecimation()

Type: INSTANCE FUNCTION

Purpose: Used to allow for a log-time display during the Chrono experiment. There are settings which can specify the number of non-decimated points prior to and after the actual step.

Usage:

ChronoC.SetDecimation(Decimation, PreStep, PostStep)
Decimation | BOOL | Boolean indicating whether or not the data will be decimated or not.
PreStep | INDEX | The number of data points to show in an undecimated format prior to the step.
PostStep | INDEX | The number of data points to show in an undecimated format after the step


ChronoC.SetPlot()

Type: INSTANCE FUNCTION

Purpose: Format the real time display using the SetPlotView and Set Axis functions.

Usage:

ChronoC.SetPlot(View, MinI, MinV, MinT)
View | INDEX | 0 = Q vs V
 |  | 1 = Log Q vs V
 |  | 2 = Q vs T, E vs T
 |  | Or use the predefined constants:
 |  | CHRONOC_LINQV
 |  | CHRONOC_LOGQV
 |  | CHRONOC_QTVT
MinI | REAL | Minimum current value to display (optional)
MinV | REAL | Minimum voltage value to display (optional)
MinT | REAL | Minimum time value to display (optional)


ChronoC.SetPlotView()

Type: INSTANCE FUNCTION

Purpose: Set the number of graphs displayed in the real time display.

Usage:

ChronoC.SetPlotView(Format)
Format | INDEX | 0 = No Graph Displayed
 |  | 1 = Single Graph Displayed
 |  | 2 = Two Graphs displayed
 |  | Or use the predefined constants:
 |  | VIEW_NONE
 |  | VIEW_SINGLE
 |  | VIEW_DOUBLE


ChronoC.SetTitle()

Type: INSTANCE FUNCTION

Purpose: Set the current title of the curve.

Usage:

ChronoC.SetTitle(Title)

Title

STRING

A string representing the new title that the curve should use.


ChronoC.Sprint()

Type: INSTANCE FUNCTION

Purpose: Print the status of the ChronoC to a string. The object's tag and last acquired data point will be printed in the format:

Tag,PointNumber

Usage:

Result = ChronoC.Sprint()

Result

STRING

Resulting tag & point number (0 based).


ChronoC.SprintPoint()

Type: INSTANCE FUNCTION

Purpose: Used in output of data from a CHRONOC object. A data point from the object is printed to an ASCII string. This string can in turn be printed to the active output file.

The format of the data string is:

PointNumber <tab> T <tab> Q <tab> Vf <tab> Vu <tab> Im <tab> Sig <tab> Ach <tab> Over

You can use this function along with the Printl() function to output point i to the output file as follows:

Printl("\t",ChronoC.SprintPoint(i))

USAGE:

Result = ChronoC.SprintPoint(PointNumber)
Result | STRING | The output string
PointNumber | INDEX | The point to be printed. PointNumber is 0 based. If the requested point has not been taken, a parameter error will be issued.
T | REAL | Elapsed time from starting from ChronoC.Run
Q | REAL | Accumulated Current
Vf | REAL | Applied E vs Eref.
Im | REAL | Measured cell current.
Vu | REAL | Uncompensated Voltage
Sig | REAL | Signal sent to Control Amp
Ach | REAL | Aux Channel Voltage
Over | STRING | Hexadecimal number representing overload status


ChronoC.StopAt()

Type: INSTANCE FUNCTION

Purpose: Enable or disable the ChronoC termination limits. There are 2 limiting conditions on which a curve may prematurely terminate:

1. | Under | Q < Limit
2. | Over | Q > Limit

The Over criterion is used to limit a positive charge. The Under criterion limits a negative charge.

These conditions may be individually enabled and disabled.

Usage:

ChronoC.StopAt(Under, Over)
Under | REAL | Enable the Under test and set value
 | NIL | Disable the Under test
Over | REAL | Enable the Over test and set value
 | NIL | Disable the Over test


ChronoC.StopAtDelay()

Type: INSTANCE FUNCTION

Purpose: Used to avoid premature stopping of a curve because of noise creating a false reading for a StopAt test. Requires StopAt criterion be met for a number of data points (N) before the curve stops. The parameter N can be individually set for each StopAt test.

For absolute tests, such as Q > Limit, the criterion must be met for N points consecutively before the criterion will be accepted. One point missing the criterion limit resets the N point counter.

Usage:

ChronoC.StopAtDelay(Under, Over)
Under | INDEX | Delay for this number of points
 | NIL | Only one point required
Over | INDEX | Delay for this number of points
 | NIL | Only one point required


ChronoC.Thresh()

Type: INSTANCE FUNCTION

Purpose: Setup threshold conditions which must be met before ChronoC.StopAt() tests will be performed. Once any of the threshold tests is met, the StopAt criteria are evaluated for the rest of the scan. There are six threshold tests that you can perform:

1. | IMin | I < I_MinThresh
2. | IMax | I > I_MaxThresh
3. | EMin | E < E_MinThresh
4. | EMax | E > E_MaxThresh
5. | Tmin | T < T_MinThresh
6. | Tmax | T > T_MinThresh

Threshold tests allow you to tune the StopAt tests more carefully. For example, you can avoid a premature experiment termination due to an initial transient.

In general you will only enable one of the threshold tests. The others will be turned off by a NIL argument in the function call.

Note that any threshold test starts all StopAt tests. Also once StopAt testing is enabled, it is never disabled, even if the Threshold test that enabled it is not longer valid.

Usage:

ChronoC.Thresh(QMin, QMax, EMin, EMax, TMin, TMax)
QMin | REAL | Enable StopAt if Q < QMin
 | NIL | Disable this test
QMax | REAL | Enable StopAt if Q > QMax
 | NIL | Disable this test
EMin | REAL | Enable StopAt if E < EMin
 | NIL | Disable this test
EMax | REAL | Enable StopAt if E > EMax
 | NIL | Disable this test
TMin | REAL | Enable StopAt if T < TMin
 | NIL | Disable this test
TMax | REAL | Enable StopAt if T > TMax
 | NIL | Disable this test


ChronoC.Title()

Type: INSTANCE FUNCTION

Purpose: Return the current title of the curve.

Usage:

Title = ChronoC.Title()

Title

STRING

The current title of the curve.


ChronoP.Activate()

Type: INSTANCE FUNCTION

Purpose: Make the real time plot of the ChronoP object the Active plot. If the Runner window Curve List control is set to Active, the plot will be displayed. If the Runner window Curve List is set to a definite curve, the display does not change.

Usage:

ChronoP.Activate()


ChronoP.Count()

Type: INSTANCE FUNCTION

Purpose: Return the number of points actually acquired in a CHRONOP object. The number returned is not the number of points allocated.

Usage:

NumPoints = ChronoP.Count()

NumPoints

INDEX

The number of points in the CHRONOP object. Zero is returned if no data has been acquired yet.


ChronoP.DataCol()

Type: INSTANCE FUNCTION

Purpose: Create and return an object of the class DATACOL. The object contains data extracted from one column of the CHRONOP object's data array. The data, once extracted, can then be submitted to other objects for further calculation. For example, a LINFIT object performs a linear regression analysis on two DATACOL objects.

A new DATACOL object is automatically created by the call to CHRONOP.DataCol(). It is usually transient, existing only for one function call.

Usage:

DataCol = ChronoP.DataCol(ColumnCode)
DataCol | DATACOL | The new object containing the data extracted from the CHRONOP data array.
ColumnCode | INDEX | A code identifying the column to be used.
 |  | 0 = Time
 |  | 1 = Measured Voltage
 |  | 2 = Uncompensated Voltage
 |  | 3 = Measured Current
 |  | 4 = Signal sent to Control Amp
 |  | 5 = Measured Aux Channel Voltage
 |  | 6 = I/E Range used
 |  | 7 = Overloads
 |  | Or use the predefined constants:
 |  | CHRONOP_T = Time
 |  | CHRONOP_Vf = Measured Voltage
 |  | CHRONOP_Vu = Uncompensated Voltage
 |  | CHRONOP_Im = Applied Current
 |  | CHRONOP_Sig = Signal sent to Control Amp
 |  | CHRONOP_Ach = Measured Aux Channel Voltage
 |  | CHRONOC_IERange = I/E Range Used
 |  | CHRONOC_Over = Overloads


ChronoP.DataValue()

Type: INSTANCE FUNCTION

Purpose: Extract a single data item from a CHRONOP object. The data item is taken from the ith data point and the jth data column. If no data has been taken the returned value is NIL.

Usage:

DataValue = ChronoP.DataValue(PointNum,ColNumber)
Result | REAL | The returned value.
 | NIL | No data acquired yet.
PointNum | INDEX | Point number, zero based. If PointNum is out of range, a value from the last acquired point is returned.
 | NIL | Always return a value from the last acquired point.
ColNumber | INDEX | Data column, with a range of 0 to 5. The meaning of the data in each column is given in the ChronoP.DataCol()description.


CHRONOP.New()

Type: CLASS FUNCTION

Purpose: Create a ChronoP object. The data array is sized according to the signal generator used.

Usage:

ChronoP = CHRONOP.New(Tag, Pstat)
Tag | STRING | Curve tag for data output. Used to label the file
Pstat | Object | Pstat is an object with a PSTAT license
ChronoP | CHRONOP | The curve object


ChronoP.Printl()

Type: INSTANCE FUNCTION

Purpose: Print the results of a ChronoP experiment out to the Output file. The Output record will be printed in the format:

Tag <tab> "TABLE" <tab> Points

<tab> "Pt" <tab> "T" <tab> "Vf" <tab> "Im" <tab> "Vu" <tab> "Sig" <tab>"Ach" <tab> "Over"
<tab> "#" <tab> "s" <tab> "V" <tab> "A" <tab> "V" <tab> "V" <tab>"V" <tab> "bits"
<tab> Pt1 T V I V V V Flags
<tab> Pt2 T V I V V V Flags
...
<tab> PtN T V I V V V Flags

Where the symbols have the following meanings:

Tag | The curve Tag (from CHRONOP.New() or optional argument)
Points | Total number of points acquired
Pt(#) | Sequential number of a point.
T | Elapsed time from starting from ChronoP.Run
Vf | Measured Voltage
Im | Applied cell current.
Vu | Uncompensated Voltage
Sig | Signal sent to Control Amp
Ach | Aux Channel Voltage
Over | Overload flags

Usage:

ChronoP.Printl(Tag)

Tag

STRING

Optional. Used to print a different Tag than the one used in the call to CHRONOP.New()


ChronoP.Run()

Type: INSTANCE FUNCTION

Purpose: Run the curve. When ChronoP.Run() is executed, the acquired data is displayed in a real-time curve. There are four buttons active during ChronoP.Run() - Abort, Pause/Continue, Skip, and Point. The Abort button terminates the entire experiment. The Skip button skips to the next phase of the experiment, either to the end of the curve or to the next region of the signal generator's operation.

The active run can be halted in several ways 1) when the signal generator is finished, 2) if the operator hits a Skip Button, or 3) if one of the stopping criteria is met. The stopping criteria can be enabled or disabled using the ChronoP.Threshold() and ChronoP.StopAt functions.

Usage:

Result = ChronoP.Run()
Result | INDEX | 0 = Normal finish or Skip button pushed
 |  | 1 = Stop due to Under Criterion ( E < Emax )
 |  | 2 = Stop due to Over Criterion ( E > Emin )
 |  | 3 = Stop due to stable (abs(dE/dt < limit)
 |  | 4 = Stop due to runaway (abs(dE/dt > limit)
 |  | 5 = Stop due to decreasing ( dE/dt < limit)
 |  | 6 = Stop due to increasing ( dE/dt > limit)


ChronoP.SetAxis()

Type: INSTANCE FUNCTION

Purpose: Helps to define the real time display of a CHRONOP object. Associates an axis with a data column in the object. Controls linear/log display formatting and allows labeling of the axis.

You must call ChronoP.SetAxis for each of the axes in the real time plot. For a Y and Y' versus X plot you need 3 calls to ChronoP.SetAxis().

Usage:

ChronoP.SetAxis(AxisNo, Source, Scale, MinVal, Label, Units)
AxisNo | INDEX | Use the constants below to define which axis is being configured.
 |  | X_AXIS | X axis
 |  | Y_AXIS | Y axis (Y vs X plot) or Lower Y (Y, Y' vs X)
 |  | Z_AXIS | Upper Y axis (Y, Y' vs X only)
Source | INDEX | The column number containing the data to be plotted or use the predefined constants defined in ChronoP.DataCol() .
Scale | INDEX | LIN_AXIS | The axis is linear
 |  | LOG_AXIS | The axis is log
MinVal | REAL | Minimum value used in prevention of "ugly" plot scaling. MinVal is used differently depending on Scale setting. On a linear axis, this is the minimum resolution of the plot. The range of values shown on the axis cannot be smaller than MinVal. This prevents excessively fine scaling when plotting data where all the values are identical or very similar. On a log axis, this value is substituted for 0's in the data. This prevents infinite log values.
Label | STRING | The label used for the axis. Short names (one or two character labels are preferred).
Units | STRING | The units used for the axis. Short names (one or two character labels are preferred).


ChronoP.SetDecimation()

Type: INSTANCE FUNCTION

Purpose: Used to allow for a log-time display during the Chrono experiment. There are settings which can specify the number of non-decimated points prior to and after the actual step.

Usage:

ChronoP.SetDecimation(Decimation, PreStep, PostStep)
Decimation | BOOL | Boolean indicating whether or not the data will be decimated or not.
PreStep | INDEX | The number of data points to show in an undecimated format prior to the step.
PostStep | INDEX | The number of data points to show in an undecimated format after the step


ChronoP.SetPlot()

Type: INSTANCE FUNCTION

Purpose: Format the real time display using the SetPlotView and Set Axis functions.

Usage:

ChronoP.SetPlot(View, MinI, MinV, MinT)
View | INDEX | 0 = I vs V
 |  | 1 = Log I vs V
 |  | 2 = I vs T, E vs T
 |  | Or use the predefined constants:
 |  | CHRONOP_LINIV
 |  | CHRONOP_LOGIV
 |  | CHRONOP_ITVT
MinI | REAL | Minimum current value to display (optional)
MinV | REAL | Minimum voltage value to display (optional)
MinT | REAL | Minimum time value to display (optional)


ChronoP.SetPlotView()

Type: INSTANCE FUNCTION

Purpose: Set the number of graphs displayed in the real time display.

Usage:

ChronoP.SetPlotView(Format)
Format | INDEX | 0 = No Graph Displayed
 |  | 1 = Single Graph Displayed
 |  | 2 = Two Graphs displayed
 |  | Or use the predefined constants:
 |  | VIEW_NONE
 |  | VIEW_SINGLE
 |  | VIEW_DOUBLE


ChronoP.SetTitle()

Type: INSTANCE FUNCTION

Purpose: Set the current title of the curve.

Usage:

ChronoP.SetTitle(Title)

Title

STRING

A string representing the new title that the curve should use.


ChronoP.Sprint()

Type: INSTANCE FUNCTION

Purpose: Print the status of the ChronoP to a string. The object's tag and last acquired data point will be printed in the format:

Tag,PointNumber

Usage:

Result = ChronoP.Sprint()

Result

STRING

Resulting tag & point number (0 based).


ChronoP.SprintPoint()

Type: INSTANCE FUNCTION

Purpose: Used in output of data from a CHRONOP object. A data point from the object is printed to an ASCII string. This string can in turn be printed to the active output file.

The format of the data string is:

PointNumber <tab> T <tab> Vm <tab> Im <tab> Vu <tab> Sig <tab>Ach <tab> Over

You can use this function along with the Printl() function to output point i to the output file as follows:

Printl("\t",ChronoP.SprintPoint(i))

USAGE:

Result = ChronoP.SprintPoint(PointNumber)
Result | STRING | The output string
PointNumber | INDEX | The point to be printed. PointNumber is 0 based. If the requested point has not been taken, a parameter error will be issued.
T | REAL | Elapsed time from starting from ChronoP.Run
Vm | REAL | Measured E vs Eref.
Im | REAL | Applied cell current.
Vu | REAL | Uncompensated Voltage
Sig | REAL | Signal sent to Control Amp
Ach | REAL | Measured Aux Channel Voltage
Over | STRING | Hexadecimal number representing overload status


ChronoP.StopAt()

Type: INSTANCE FUNCTION

Purpose: Enable or disable the ChronoP termination limits. There are 2 limiting conditions on which a curve may prematurely terminate:

1. | Under | E < Limit
2. | Over | E > Limit

The Over criterion is used to limit a positive voltage swing. The Under criterion limits a negative voltage swing.

These conditions may be individually enabled and disabled.

Usage:

ChronoP.StopAt(Under, Over, Stable, Runaway, Decreasing, Increasing)
Under | REAL | Enable the Under test and set value
 | NIL | Disable the Under test
Over | REAL | Enable the Over test and set value
 | NIL | Disable the Over test


ChronoP.StopAtDelay()

Type: INSTANCE FUNCTION

Purpose: Used to avoid premature stopping of a curve caused by noise creating a false reading for a StopAt test. Avoids false readings by requiring that the StopAt criterion be met for a number of data points (N) before the curve stops. The parameter N can be individually set for each StopAt test.

For absolute tests, such as E > Limit, the criterion must be met for N points consecutively before the criterion will be accepted. One point missing the criterion limit resets the N point counter.

Usage:

ChronoP.StopAtDelay(Under, Over)
Under | INDEX | Delay for this number of points
 | NIL | Only one point required
Over | INDEX | Delay for this number of points
 | NIL | Only one point required


ChronoP.Thresh()

Type: INSTANCE FUNCTION

Purpose: Setup threshold conditions which must be met before ChronoP.StopAt() tests will be performed. Once any of the threshold tests is met, the StopAt criteria are evaluated for the rest of the scan. There are six threshold tests that you can perform:

1. | IMin | I < I_MinThresh
2. | IMax | I > I_MaxThresh
3. | EMin | E < E_MinThresh
4. | EMax | E > E_MaxThresh
5. | Tmin | T < T_MinThresh
6. | Tmax | T > T_MinThresh

Threshold tests allow you to tune the StopAt tests more carefully. For example, you can avoid a premature experiment termination due to an initial transient.

In general you will only enable one of the threshold tests. The others will be turned off by a NIL argument in the function call.

Note that after the threshold test is passed all StopAt tests are enabled. Once StopAt testing is enabled, it is never disabled, even if the Threshold test that enabled it is not longer valid.

Usage:

ChronoP.Thresh(IMin, IMax, EMin, EMax, TMin, TMax)
IMin | REAL | Enable StopAt if I < IMin
 | NIL | Disable this test
IMax | REAL | Enable StopAt if I > IMax
 | NIL | Disable this test
EMin | REAL | Enable StopAt if E < EMin
 | NIL | Disable this test
EMax | REAL | Enable StopAt if E > EMax
 | NIL | Disable this test
TMin | REAL | Enable StopAt if T < TMin
 | NIL | Disable this test
TMax | REAL | Enable StopAt if T > TMax
 | NIL | Disable this test


ChronoP.Title()

Type: INSTANCE FUNCTION

Purpose: Return the current title of the curve.

Usage:

Title = ChronoP.Title()

Title

STRING

The current title of the curve.


IDSTEP.New()

Type: Class Function

Purpose: Create a new Idstep signal generator.

Usage:

Idstep = IDSTEP.New(Tag,Pstat,IInit,TInit,IStep1,TStep1 IFinal,TFinal,SampleTime)
Tag | STRING | Object tag
Pstat | PSTATCLASS | Potentiostat which will use the signal
IInit | REAL | Initial Value in amps
TInit | REAL | Initial Time in seconds
IStep1 | REAL | Step 1 Value in amps
TStep1 | REAL | Step 1 Time in seconds
IFinal | REAL | Final Value in amps
TFinal | REAL | Final Time in seconds
SampleTime | REAL | Time between data acquisition steps
Idstep | IDSTEP | The object created


IDSTEP.Signal

Type: License

Purpose: The Signal license is required by curve objects.


Idstep.Tweak()

Type: Instance Function

Purpose: Modify an existing Idstep signal generator.

Usage:

Idstep.Tweak(Pstat,IInit,TInit,IStep1,TStep1 IFinal,TFinal,SampleTime)
Pstat | PSTATCLASS | Potentiostat which will use the signal
IInit | REAL | Initial Value in amps
TInit | REAL | Initial Time in seconds
IStep1 | REAL | Step 1 Value in amps
TStep1 | REAL | Step 1 Time in seconds
IFinal | REAL | Final Value in amps
TFinal | REAL | Final Time in seconds
SampleTime | REAL | Time between data acquisition steps
Idstep | IDSTEP | The existing object.


IRUPDN.New()

Type: Class Function

Purpose: Create a new Irupdn signal generator

Usage:

Irupdn=IRUPDN.New(Tag,Pstat,Iinit,IApex1,IApex2,Ifinal,ScanInit,ScanApex,ScanFinal,Hold1,Hold2,Hold3,SampleTime)
Tag | STRING | Object tag.
Pstat | PSTATCLASS | Potentiostat which will use the signal
IInit | REAL | Initial Value in amps.
IApex1 | REAL | Apex 1 Value in amps.
IApex2 | REAL | Apex 2 Value in amps.
IFinal | REAL | Final Value in amps.
ScanInit | REAL | Initial Scan Rate in amps/sec.
ScanApex | REAL | Apex Scan Rate in amps/sec.
ScanFinal | REAL | Final Scan Rate in amps/sec.
Hold1 | REAL | Time to hold at IApex1 in seconds.
Hold2 | REAL | Time to hold at IApex2 in seconds.
Hold3 | REAL | Time to hold at IFinal in seconds.
SampleTime | REAL | Time between data acquisition steps.
Cycles | INDEX | The number of cycles to run.
Irupdn | IRUPDN | The object created.


IRUPDN.Signal

Type: License

Purpose: The Signal license is required by curve objects. The actual script text doesn't refer to the license.


Irupdn.Tweak()

Type: Class Function

Purpose: Create a new Irupdn signal generator

Usage:

Irupdn.Tweak(Pstat,Iinit,IApex1,IApex2,Ifinal,ScanInit,ScanApex,ScanFinal,Hold1,Hold2,Hold3,SampleTime)
Pstat | PSTATCLASS | Potentiostat which will use the signal
IInit | REAL | Initial Value in amps.
IApex1 | REAL | Apex 1 Value in amps.
IApex2 | REAL | Apex 2 Value in amps.
IFinal | REAL | Final Value in amps.
ScanInit | REAL | Initial Scan Rate in amps/sec.
ScanApex | REAL | Apex Scan Rate in amps/sec.
ScanFinal | REAL | Final Scan Rate in amps/sec.
Hold1 | REAL | Time to hold at IApex1 in seconds.
Hold2 | REAL | Time to hold at IApex2 in seconds.
Hold3 | REAL | Time to hold at IFinal in seconds.
SampleTime | REAL | Time between data acquisition steps.
Irupdn | IRUPDN | The existing object.


Rcv.Activate()

Type: INSTANCE FUNCTION

Purpose: Make the real time plot of the Rcv object the Active plot. If the Runner window Curve List control is set to Active, the plot will be displayed. If the Runner window Curve List is set to a definite curve, the display does not change.

Usage:

Rcv.Activate()


Rcv.Count()

Type: INSTANCE FUNCTION

Purpose: Return the number of points actually acquired in a RCV object. The number returned is not the number of points allocated.

Usage:

NumPoints = Rcv.Count()

NumPoints

INDEX

The number of points in the RCV object. Zero is returned if no data has been acquired yet.


RCV.CyclePrintl()

Type: INSTANCE FUNCTION

Purpose:Print the results of a Rcv experiment out to the Output file. The Output record will contain a separate table for each cycle and will be printed in the format:

Tagn <tab> "TABLE"
<tab> "Pt" <tab> "T" <tab> "Vf" <tab> "Im" <tab> "Vu" <tab> "Sig" <tab>"Ach" <tab>"IERange" <tab>  "Over"
<tab> "#" <tab> "s" <tab> "V vs. Ref." <tab> "A" <tab> "V" <tab> "V" <tab>"V"<tab>"#" <tab>  "bits"
<tab> Pt1 T V I V V V # Flags
<tab> Pt2 T V I V V V # Flags
...
<tab> PtN T V I V V V # Flags

Where the symbols have the following meanings:

Tagn | The curve Tag (from RCV.New() or optional argument)and the cycle number(n)
Pt(#) | Sequential number of a point.
T | Elapsed time from starting from RCV.Run()
Vf | Applied Voltage vs Eref.
Im | Measured cell current.
Vu | Uncompensated Voltage
Sig | Signal sent to Control Amp
Ach | Aux Channel Voltage
IERange | IE Range used for the data point
Over | Overload flags

Usage:

Rcv.CyclePrintl(Tag)

Tag

STRING

Optional. Used to print a different Tag than the one used in the call to IVT.New()


Rcv.DataCol()

Type: INSTANCE FUNCTION

Purpose: Create and return an object of the class DATACOL. The object contains data extracted from one column of the RCV object's data array. The data, once extracted, can then be submitted to other objects for further calculation. For example, a LINFIT object performs a linear regression analysis on two DATACOL objects.

A new DATACOL object is automatically created by the call to RCV.DataCol(). It is usually transient, existing only for one function call.

Usage:

DataCol = Rcv.DataCol(ColumnCode)
DataCol | DATACOL | The new object containing the data extracted from the RCV data array.
ColumnCode | INDEX | A code identifying the column to be used.
 |  | 0 = Time
 |  | 1 = Applied Voltage
 |  | 2 = Uncompensated Voltage
 |  | 3 = Measured Current
 |  | 4 = Signal sent to Control Amp
 |  | 5 = Measured Aux Channel Voltage
 |  | Or use the predefined constants:
 |  | RCV_T = Time
 |  | RCV_Vf = Applied Voltage
 |  | RCV_Vu = Uncompensated Voltage
 |  | RCV_Im = Measured Current
 |  | RCV_Sig = Signal sent to Control Amp


Rcv.DataValue()

Type: INSTANCE FUNCTION

Purpose: Extract a single data item from a RCV object. The data item is taken from the ith data point and the jth data column. If no data has been taken the returned value is NIL.

Usage:

DataValue = Rcv.DataValue(PointNum,ColNumber)
Result | REAL | The returned value.
 | NIL | No data acquired yet.
PointNum | INDEX | Point number, zero based. If PointNum is out of range, a value from the last acquired point is returned.
 | NIL | Always return a value from the last acquired point.
ColNumber | INDEX | Data column, with a range of 0 to 5. The meaning of the data in each column is given in the Rcv.DataCol()description.


Rcv.FlipAxis()

Type: INSTANCE FUNCTION

Purpose: Used to allow for a reversed Axis format when running Voltammetry experiments. This displays the graph from positive to negative rather than from negative to positive.

Usage:

Rcv.FlipAxis(AxisNo, Flip)
AxisNo | INDEX | Defines which axis is being configured. In a Y versus X plot, 0 = X axis, 1 = Y axis or use the following constants: X_AXIS, Y_AXIS In a Y & Y' versus X plot, 0 = X axis, 1 = Lower Y and 2 = Upper Y or use the following constants X_AXIS, Y_AXIS, Z_AXIS
Flip | BOOL | A Boolean specifying whether or not to flip the Axis. TRUE = Flipped FALSE = Normal


RCV.New()

Type: CLASS FUNCTION

Purpose: Create a Rcv object. The data array is sized according to the signal generator used.

Usage:

Rcv = RCV.New(Tag, Pstat)
Tag | STRING | Curve tag for data output. Used to label the file
Pstat | Object | Pstat is an object with a PSTAT license
Rcv | RCV | The curve object


Rcv.Printl()

Type: INSTANCE FUNCTION

Purpose: Print the results of a Rcv experiment out to the Output file. The Output record will be printed in the format:

Tagn<tab> "TABLE" <tab> Points

<tab> "Pt" <tab> "T" <tab> "Vf" <tab> "Im" <tab> "Vu" <tab> "Sig" <tab>"Ach" <tab>"IERange" <tab> "Over"

<tab> "#" <tab> "s" <tab> "V vs. Ref." <tab> "A" <tab> "V" <tab> "V" <tab>"V"<tab>"#" <tab> "bits"

<tab> Pt1 T V I V V V # Flags

<tab> Pt2 T V I V V V # Flags

...

<tab> PtN T V I V V V # Flags

Where the symbols have the following meanings:

Tag | The curve Tag (from RCV.New() or optional argument)
Points | Total number of points acquired
Pt(#) | Sequential number of a point.
T | Elapsed time from starting from Rcv.Run
Vf | Applied Voltage vs Eref.
Im | Measured cell current.
Vu | Uncompensated Voltage
Sig | Signal sent to Control Amp
Ach | Aux Channel Voltage
IERange | IE Range used for the data point
Over | Overload flags

Usage:

Rcv.Printl(Tag)

Tag

STRING

Optional. Used to print a different Tag than the one used in the call to RCV.New()


Rcv.Run()

Type: INSTANCE FUNCTION

Purpose: Run the curve. When Rcv.Run() is executed, the acquired data is displayed in a real-time curve. There are four buttons active during Rcv.Run() - Abort, Pause/Continue, Skip, and Point. The Abort button terminates the entire experiment. The Skip button skips to the next phase of the experiment, either past the end of this curve or to the next region of the signal generator's operation.

The active run can be halted in several ways, namely: if the signal generator is finished, if the operator hits a Skip button, or if one of the stopping criteria is met. These stopping criteria can be enabled or disabled using the Rcv.Threshold() and Rcv.StopAt() functions.

Usage:

Result = Rcv.Run()
Result | INDEX | 0 = Normal finish or Skip button pushed
 |  | 1 = Stop due to Under Criterion ( I < Imax )
 |  | 2 = Stop due to Over Criterion ( I > Imin )


Rcv.SetAxis()

Type: INSTANCE FUNCTION

Purpose: Helps to define the real time display of a RCV object. Associates an axis with a data column in the object. Controls linear/log display formatting and allows labeling of the axis.

You must call Rcv.SetAxis for each of the axes in the real time plot. For a Y and Y' versus X plot you need 3 calls to Rcv.SetAxis().

Usage:

Rcv.SetAxis(AxisNo, Source, Scale, MinVal, Label, Units)
AxisNo | INDEX | Use the constants below to define which axis is being configured.
 |  | X_AXIS | X axis
 |  | Y_AXIS | Y axis (Y vs X plot) or Lower Y (Y, Y' vs X)
 |  | Z_AXIS | Upper Y axis (Y, Y' vs X only)
Source | INDEX | The column number containing the data to be plotted or use the predefined constants defined in Rcv.DataCol() .
Scale | INDEX | LIN_AXIS | The axis is linear
 |  | LOG_AXIS | The axis is log
MinVal | REAL | Minimum value used in prevention of "ugly" plot scaling. MinVal is used differently depending on Scale setting. On a linear axis, this is the minimum resolution of the plot. The range of values shown on the axis cannot be smaller than MinVal. This prevents excessively fine scaling when plotting data where all the values are identical or very similar. On a log axis, this value is substituted for 0's in the data. This prevents infinite log values.
Label | STRING | The label used for the axis. Short names (one or two character labels are preferred).
Units | STRING | The units used for the axis. Short names (one or two character labels are preferred).


Rcv.SetPlot()

Type: INSTANCE FUNCTION

Purpose: Format the real time display using the SetPlotView and Set Axis functions.

Usage:

Rcv.SetPlot(View, MinI, MinV, MinT)
View | INDEX | 0 = I vs V
 |  | 1 = Log I vs V
 |  | 2 = I vs T, E vs T
 |  | Or use the predefined constants:
 |  | RCV_LINIV
 |  | RCV_LOGIV
 |  | RCV_ITVT
MinI | REAL | Minimum current value to display (optional)
MinV | REAL | Minimum voltage value to display (optional)
MinT | REAL | Minimum time value to display (optional)


Rcv.SetPlotView()

Type: INSTANCE FUNCTION

Purpose: Set the number of graphs displayed in the real time display.

Usage:

Rcv.SetPlotView(Format)
Format | INDEX | 0 = No Graph Displayed
 |  | 1 = Single Graph Displayed
 |  | 2 = Two Graphs displayed
 |  | Or use the predefined constants:
 |  | VIEW_NONE
 |  | VIEW_SINGLE
 |  | VIEW_DOUBLE


Rcv.SetTitle()

Type: INSTANCE FUNCTION

Purpose: Set the current title of the curve.

Usage:

Rcv.SetTitle(Title)

Title

STRING

A string representing the new title that the curve should use.


Rcv.Sprint()

Type: INSTANCE FUNCTION

Purpose: Print the status of the Rcv to a string. The object's tag and last acquired data point will be printed in the format:

Tag,PointNumber

Usage:

Result = Rcv.Sprint()

Result

STRING

Resulting tag & point number (0 based).


Rcv.SprintPoint()

Type: INSTANCE FUNCTION

Purpose: Used in output of data from a RCV object. A data point from the object is printed to an ASCII string. This string can in turn be printed to the active output file.

The format of the data string is:

PointNumber <tab> T <tab> Vf <tab> Im <tab> Vu <tab> Sig <tab> Ach <tab> Over

You can use this function along with the Printl() function to output point i to the output file as follows:

Printl("\t",Rcv.SprintPoint(i))

USAGE:

Result = Rcv.SprintPoint(PointNumber)
Result | STRING | The output string
PointNumber | INDEX | The point to be printed. PointNumber is 0 based. If the requested point has not been taken, a parameter error will be issued.
T | REAL | Elapsed time from starting from Rcv.Run
Vf | REAL | Applied E vs Eref.
Im | REAL | Measured cell current.
Vu | REAL | Uncompensated Voltage
Sig | REAL | Signal sent to Control Amp
Ach | REAL | Aux Channel Voltage
Over | STRING | Hexadecimal number representing overload status


Rcv.StopAt()

Type: INSTANCE FUNCTION

Purpose: Enable or disable the Rcv termination limits. There are 2 limiting conditions on which a curve may prematurely terminate:

1. | Under | I < Limit
2. | Over | I > Limit

The Over criterion is used to limit a positive current swing. The Under criterion limits a negative current swing.

These conditions may be individually enabled and disabled.

Usage:

Rcv.StopAt(Under, Over)
Under | REAL | Enable the Under test and set value
 | NIL | Disable the Under test
Over | REAL | Enable the Over test and set value
 | NIL | Disable the Over test


Rcv.StopAtDelay()

Type: INSTANCE FUNCTION

Purpose: Used to avoid premature stopping of a curve because of noise creating a false reading for a StopAt test. Requires StopAt criterion be met for a number of data points (N) before the curve stops. The parameter N can be individually set for each StopAt test.

For absolute tests, such as I > Limit, the criterion must be met for N points consecutively before the criterion will be accepted. One point missing the criterion limit resets the N point counter.

Usage:

Rcv.StopAtDelay(Under, Over)
Under | INDEX | Delay for this number of points
 | NIL | Only one point required
Over | INDEX | Delay for this number of points
 | NIL | Only one point required


Rcv.Thresh()

Type: INSTANCE FUNCTION

Purpose: Setup threshold conditions which must be met before Rcv.StopAt() tests will be performed. Once any of the threshold tests is met, the StopAt criteria are evaluated for the rest of the scan. There are six threshold tests that you can perform:

1. | IMin | I < I_MinThresh
2. | IMax | I > I_MaxThresh
3. | EMin | E < E_MinThresh
4. | EMax | E > E_MaxThresh
5. | Tmin | T < T_MinThresh
6. | Tmax | T > T_MinThresh

Threshold tests allow you to tune the StopAt tests more carefully. For example, you can avoid a premature experiment termination due to an initial transient.

In general you will only enable one of the threshold tests. The others will be turned off by a NIL argument in the function call.

Note that any threshold test starts all StopAt tests. Also once StopAt testing is enabled, it is never disabled, even if the Threshold test that enabled it is not longer valid.

Usage:

Rcv.Thresh(IMin, IMax, EMin, EMax, TMin, TMax)
IMin | REAL | Enable StopAt if I < IMin
 | NIL | Disable this test
IMax | REAL | Enable StopAt if I > IMax
 | NIL | Disable this test
EMin | REAL | Enable StopAt if E < EMin
 | NIL | Disable this test
EMax | REAL | Enable StopAt if E > EMax
 | NIL | Disable this test
TMin | REAL | Enable StopAt if T < TMin
 | NIL | Disable this test
TMax | REAL | Enable StopAt if T > TMax
 | NIL | Disable this test


VDSTEP.New()

Type: Class Function

Purpose: Create a new signal generator.

Usage:

Vdstep = VDSTEP.New(Tag,Pstat,VInit,TInit,VStep1,TStep1,VFinal,TFinal,SampleTime)
Tag | STRING | Object tag.
Pstat | PSTATCLASS | Potentiostat which will use the signal
VInit | REAL | Initial Value in volts.
TInit | REAL | Initial Time in seconds.
VStep1 | REAL | Step 1 voltage in Volts.
TStep1 | REAL | Step 1 Time in seconds.
VFinal | REAL | Final Value in volts.
TFinal | REAL | Final Time in seconds.
SampleTime | REAL | Time between data acquisition steps.
Vdstep | VDSTEP | The object created.


VDSTEP.Signal

Type: License

Purpose: The Signal license is required by curve objects. The actual script text doesn't refer to the license.


Vdstep.Tweak()

Type: Instance Function

Purpose: Modify an existing Vstep signal generator.

Usage:

Vdstep.Tweak(Pstat,VInit,TInit,VStep1,TStep1,VFinal,TFinal,SampleTime)
Pstat | PSTATCLASS | Potentiostat which will use the signal
VInit | REAL | Initial Value in volts.
TInit | REAL | Initial Time in seconds.
VStep1 | REAL | Step 1 voltage in Volts.
TStep1 | REAL | Step 1 Time in seconds.
VFinal | REAL | Final Value in volts.
TFinal | REAL | Final Time in seconds.
SampleTime | REAL | Time between data acquisition steps.
Vdstep | VDSTEP | The existing object.


VRUPDN.New()

Type: Class Function

Purpose: Create a new Vrupdn signal generator

Usage:

Vrupdn=VRUPDN.New(Tag,Pstat,Vinit,VApex1,VApex2,Vfinal,ScanInit,ScanApex,ScanFinal,Hold1,Hold2,Hold3,SampleTime, Cycles)
Tag | STRING | Object tag.
Pstat | PSTATCLASS | Potentiostat which will use the signal
VInit | REAL | Initial Value in volts.
VApex1 | REAL | Apex 1 Value in volts.
VApex2 | REAL | Apex 2 Value in volts.
VFinal | REAL | Final Value in volts.
ScanInit | REAL | Initial Scan Rate in volts/sec.
ScanApex | REAL | Apex Scan Rate in volts/sec.
ScanFinal | REAL | Final Scan Rate in volts/sec.
Hold1 | REAL | Time to hold at VApex1 in seconds.
Hold2 | REAL | Time to hold at VApex2 in seconds.
Hold3 | REAL | Time to hold at VFinal in seconds.
SampleTime | REAL | Time between data acquisition steps.
Cycles | INDEX | The number of cycles this is to be run.
Vrupdn | VRUPDN | The object created.


VRUPDN.Signal

Type: License

Purpose: The Signal license is required by curve objects. The actual script text doesn't refer to the license.


Vrupdn.Tweak()

Type: Instance Function

Purpose: Modify an existing Vupdn signal generator

Usage:

Vrupdn.Tweak(Pstat,Vinit,VApex1,VApex2,Vfinal,ScanInit,ScanApex,ScanFinal,Hold1,Hold2,Hold3,SampleTime)
Pstat | PSTATCLASS | Potentiostat which will use the signal
VInit | REAL | Initial Value in volts.
VApex1 | REAL | Apex 1 Value in volts.
VApex2 | REAL | Apex 2 Value in volts.
VFinal | REAL | Final Value in volts.
ScanInit | REAL | Initial Scan Rate in volts/sec.
ScanApex | REAL | Apex Scan Rate in volts/sec.
ScanFinal | REAL | Final Scan Rate in volts/sec.
Hold1 | REAL | Time to hold at VApex1 in seconds.
Hold2 | REAL | Time to hold at VApex2 in seconds.
Hold3 | REAL | Time to hold at VFinal in seconds.
SampleTime | REAL | Time between data acquisition steps.
Vrupdn | VRUPDN | The existing object.


Spectroscopy.AcquireBlank()

Delete this text and replace it with your own content.


Spectroscopy.CalculateTransmission()

Delete this text and replace it with your own content.


Spectroscopy.DarkSpectrum()

Delete this text and replace it with your own content.


Spectroscopy.DarkSubtract()

Delete this text and replace it with your own content.


Spectroscopy.DisplaySpectrum()

Delete this text and replace it with your own content.


Subtract Spectrum

The Subtract Spectrum command allows the user to subtract from a current spectrum another spectrum of the same type (absorbance, transmittance, or raw counts.

This command opens a window where the user can select a spectrum file. The selected spectrum will be subtracted and a new curve will be added in the Curve Selector. Subtraction will be performed on the main spectrum when this step is repeated.


Clear Peaks

The Clear Peaks command will clear all peaks associated with the actual chart. Any peaks that are marked will be removed as well. Any associated page with peak information will be removed..


Min/Max

The Min/Max command is used to determine the minimum and maximum values of the data plotted on the Y axis.

If a region of the curve has been selected using the Select X Region tool, then the command will find the minimum and maximum values within the selected region only. The command will operate on all visible traces and the results will be placed on a new Min/Max tab, assuming one does not already exist. In the case where this tab already exists, the new information will overwrite the old information.


Smooth Data

The Smooth Data command is used in cases where the acquired data is less than ideal. There are some cases where exterior noise enters the cell and causes the data to have some minor oscillations. The Smooth Data command offers two different types of smoothing algorithms.

The first is a sliding window type, which takes a number of data points in a window. This window averages the data points, and then slides one spot, and again takes an average. This sliding effect is repeated until all the data has been traversed. This technique is simple, but has a downside of causing the heights of peaks to be changed.

The second type is a Savitzky-Golay smoothing filter, which is a low pass filter which helps to preserve higher moments by approximating the underlying function with a polynomial. This method takes an order, which is the order of the polynomial, as well as a width, which is the number of points to be fit by the polynomial. The defaults of 4 for the order and 16 for the width are suitable for the majority of applications but can easily be changed.

The steps to smooth the data are as follows:

  1. Make the trace you wish to smooth the active trace. This can be done by right clicking on the trace and pressing Activate Trace.

  2. Select the Smooth Data command from the document menu. This will display the Smooth Data dialog and give you a selection of data you want to smooth.

  3. Select the smoothing filter type, and then specify the conditions for that filter. Once you are satisfied, press Ok. At this point the data will be smoothed. One side effect of smoothing the data is that it in essence replaces the original data in the document. To retrieve the original data, you must reload it from the original DTA file.


Integration Time (us):

The Integration Time is given in microseconds (us). This parameter defines how long the detector of the spectrometer collects light.

NOTE: Longer integration times lead to a stronger signal. But if the time is too long the detector can get saturated. Stronger peaks can be cut off and make a measurement impractical. Check the technical specifications of the detector before.


Output File

The Output File parameter is the pathname of the file in which the output data will be written. It can be a simple filename with no path information.

In this case the output file is located in the default data directory. The default data directory is specified in the Gamry.INI file under the [Framework] section with a Key named DataDir. This default pathname can be changed using the Path command under the Options Menu.

It can also include path information, such as "C:\DATA\YOURDATA.DTA." In this example, the data will be written to the "YOURDATA.DTA" file in the "DATA" directory on drive C.

The default value of the Output Filename parameter is an abbreviation of the technique name with a ".DTA" filename extension. We recommend that you use a ".DTA" filename extension for your data filenames. The data analysis package assumes that all data files have ".DTA" extensions.

NOTE: The software does not automatically append the ".DTA" filename extension. You must add it yourself.

If the script is unable to open the file, an error message box, "Unable to Open File", is generated. Common causes for this type of problem include:

  1. An invalid filename.
  2. The file is already open under a different Windows application.
  3. The disk is full.

After you select OK in the error box, the script returns to the setup box where a new filename can be entered.


Spectroscopy Type

The Spectroscopy Type parameter is used to choose the type of data which should be recorded for a spectrum.

Absorbance
When Absorbance is taken as spectroscopy type, an absorption spectrum is recorded. Prior to this, the user is asked if a Dark spectrum and a Blank spectrum should be additionally measured. Both spectra are subtracted from the main spectra afterwards. If the user skips this part only a raw count spectrum is measured. The raw count spectrum can later be converted into an absorbance spectrum in the Echem Analyst.

Raw Counts
Only one raw count spectrum is recorded. No Dark or Blank spectrum is measured. The raw count spectrum can later be converted into an absorbance spectrum in the Echem Analyst.

Transmittance
When Transmittance is taken as spectroscopy type, a transmittance spectrum is recorded. Prior to this, the user is asked if a Dark spectrum and a Blank spectrum should be additionally measured. Both spectra are subtracted from the main spectra afterwards. If the user skips this part only a raw count spectrum is measured. The raw count spectrum can later be converted into an absorbance spectrum in the Echem Analyst.


Output File

The Output File parameter is the pathname of the file in which the output data will be written. It can be a simple filename with no path information.

In this case the output file is located in the default data directory. The default data directory is specified in the Gamry.INI file under the [Framework] section with a Key named DataDir. This default pathname can be changed using the Path command under the Options Menu.

It can also include path information, such as "C:\DATA\YOURDATA.DTA". In this example, the data will be written to the "YOURDATA.DTA" file in the "DATA" directory on drive C.

The default value of the Output Filename parameter is an abbreviation of the technique name with a ".DTA" filename extension. We recommend that you use a ".DTA" filename extension for your data filenames. The data analysis package assumes that all data files have ".DTA" extensions.

NOTE: The software does not automatically append the ".DTA" filename extension. You must add it yourself.

If the script is unable to open the file, an error message box, "Unable to Open File", is generated. Common causes for this type of problem include:

  1. An invalid filename.
  2. The file is already open under a different Windows application.
  3. The disk is full.

After you select OK in the error box, the script returns to the setup box where a new filename can be entered.

When spectroscopic measurements are performed, in addition to electrochemical experiments, a second file will be generated which contains only the spectrum data. This file has the prefix “SpectraFor_” followed by the Output File name.


Spectroscopy Type

The Spectroscopy Type parameter is used to choose the type of data which should be recorded for a spectrum.

Absorbance
When Absorbance is taken as spectroscopy type, an absorption spectrum is recorded. Prior to this, the user is asked if a Dark spectrum and a Blank spectrum should be measured additionally. Both spectra are subtracted from the main spectra afterwards. If the user skips this part only a raw count spectrum is measured. In the Echem Analyst, the raw count spectrum can later be converted into an absorbance spectrum.

Raw Counts
Only one raw count spectrum is recorded. No Dark or Blank spectrum is measured. The raw count spectrum can later be converted into an absorbance spectrum in the Echem Analyst.

Transmittance
When Transmittance is taken as spectroscopy type, a transmittance spectrum is recorded. Prior to this, the user is asked if a Dark spectrum and a Blank spectrum should be measured additionally. Both spectra are subtracted from the main spectra afterwards. If the user skips this part only a raw count spectrum is measured. The raw count spectrum can later be converted into an absorbance spectrum in the Echem Analyst.


Spectroscopy Type

The Spectroscopy Type parameter is used to choose the type of data which should be recorded for a spectrum.

Absorbance
When Absorbance is taken as spectroscopy type, an absorption spectrum is recorded. Prior to this, the user is asked if a Dark spectrum and a Blank spectrum should be additionally measured. Both spectra are subtracted from the main spectra afterwards. If the user skips this part only a raw count spectrum is measured. The raw count spectrum can later be converted into an absorbance spectrum in the Echem Analyst.

Raw Counts
Only one raw count spectrum is recorded. No Dark or Blank spectrum is needed. The raw count spectrum can later be converted into an absorbance spectrum in the Echem Analyst.

Transmittance
When Transmittance is taken as spectroscopy type, a transmittance spectrum is recorded. Prior to this, the user is asked if a Dark spectrum and a Blank spectrum should be additionally measured. Both spectra are subtracted from the main spectra afterwards. If the user skips this part only a raw count spectrum is measured. The raw count spectrum can later be converted into an absorbance spectrum in the Echem Analyst.


Output File

The Output File parameter is the pathname of the file in which the output data will be written. It can be a simple filename with no path information.

In this case the output file is located in the default data directory. The default data directory is specified in the Gamry.INI file under the [Framework] section with a Key named DataDir. This default pathname can be changed using the Path command under the Options Menu.

It can also include path information, such as "C:\DATA\YOURDATA.DTA". In this example, the data will be written to the "YOURDATA.DTA" file in the "DATA" directory on drive C.

The default value of the Output Filename parameter is an abbreviation of the technique name with a ".DTA" filename extension. We recommend that you use a ".DTA" filename extension for your data filenames. The data analysis package assumes that all data files have ".DTA" extensions.

NOTE: The software does not automatically append the ".DTA" filename extension. You must add it yourself.

If the script is unable to open the file, an error message box, "Unable to Open File", is generated. Common causes for this type of problem include:

  1. An invalid filename.
  2. The file is already open under a different Windows application.
  3. The disk is full.

After you select OK in the error box, the script returns to the setup box where a new filename can be entered.

When spectroscopic measurements are performed in addition to electrochemical experiments, a second file will be generated which contains only the spectrum data. This file has the prefix “SpectraFor_” followed by the Output File name.