MULTI-SITE REACTOR SYSTEM WITH DYNAMIC, INDEPENDENT CONTROL OF INDIVIDUAL REACTION SITES

Abstract: A multi-site reactor system (60) provides dynamic, independent, computer-implemented control of each reaction site, permitting different thermal profiles to be performed on samples at different reaction sites simultaneously. The system includes reaction vessels (2) for holding reaction mixtures and heat-exchanging modules (37) for receiving the vessels. Each heat-exchanging module (37) includes a pair of thermal plates between which one of the vessels (2) is inserted, heating elements coupled to one or both plates for heating the reaction mixture contained in the vessel, a fan for cooling the plate and mixture, and a temperature sensor for measuring the temperature of the plate. The system also includes a controller (64) for independently controlling each heat-exchanging module (37) to heat and/or cool the reaction mixture contained therein. The controller (64) includes an adaptive control program for dynamically adjusting the duration or intensity of power pulses provided to each heating element and for dynamically adjusting the duration of fan operation to attain target temperatures quickly and accurately without overshooting or undershooting the target.

Description: MULTI-SITE REACTOR SYSTEM WITH DYNAMIC, INDEPENDENT CONTROL OF INDIVIDUAL REACTION SITES TECHNICAL FIELD OF THE INVENTION The present invention relates generally to heat-exchanging systems for temperature control of samples, and in particular to a multi-site reactor system having dynamic, independent, computer-implemented control of each reaction site, permitting different thermal profiles to be performed at different reaction sites simultaneously. BACKGROUND OF THE INVENTION There are many applications in the field of chemical processing in which it is desirable to precisely control the temperature of chemicals and to induce rapid temperature transitions. In these reactions, heat is exchanged between chemicals and their environment to increase or decrease the temperature of the reacting chemicals. It is often desirable to control the temperature change in a manner that accurately attains the target temperature, avoids undershooting or overshooting of the temperature, and quickly reaches the target temperature. Such control of temperature may inhibit side reactions, the formation of unwanted bubbles, the degradation of components at certain temperatures, etc., which may occur at non-optimal temperatures. Applications for hea -exchanging chemical reactions may encompass organic, inorganic, biochemical and molecular reactions, and the like. In organic and inorganic reactions, chemicals may be heated to achieve the activation energy for the reaction. Examples of thermal chemical reactions include isothermal nucleic acid amplification, thermal cycling amplification, such as polymerase chain reaction (PCR) , ligase chain reaction (LCR) , self-sustained sequence replication, enzyme kinetic studies, homogeneous ligand binding assays, and more complex biochemical mechanistic studies that require complex temperature changes . Temperature control systems also enable the study of certain physiologic processes where a constant and accurate temperature is required. Conventional instrumentation for conducting thermal transfer reactions typically consists of a block of aluminum having as many as ninety-six conical reaction tubes. The aluminum block is heated and cooled either by a Peltier heating/cooling apparatus or by a closed-loop liquid heating/cooling system in which liquid flows through channels machined into the block. Such instruments incorporating a metal block are described in U.S. Patent 5,038,852 to Johnson, U.S. Patent 5,333,675 to Mullis, and U.S. Patent 5,475,610 to Atwood. Because of the large thermal mass of an aluminum block, heating and cooling rates in these instruments are limited to about l°C/sec resulting in longer processing times. For example, in the PCR application, fifty cycles may require two or more hours to complete. One reason for the use of a relatively large metal block is to provide sufficient mass to ensure a constant and uniform temperature at each reaction site, as well as from site to site. Typically, the highest heating rate obtainable in commercial instruments is on the order of 3°C/second, and cooling rates are significantly less. With these relatively slow heating and cooling rates, it has been observed that some processes requiring high control of temperature are inefficient. For example, reactions may occur at the intermediate temperatures, creating unwanted and interfering side products, such as in PCR "primer- dimers" or anomalous amplicons, which are detrimental to the analytical process. The poor control of temperature also results in over consumption of reagents necessary for the intended reaction. Another disadvantage of these conventional instruments is that they typically do not permit real-time optical detection or continuous optical monitoring of reaction products. For example, in the Perkin Elmer 7700 (ATC) instrument, optical fluorescence detection is accomplished by guiding an optical fiber to each of ninety-six reaction sites in a metal block. A central high power laser sequentially excites each reaction site and captures the fluorescence signal through the optical fiber. Since all of the reaction sites are sequentially excited by a single laser and since the fluorescence is detected by a single spectrometer and photomultiplier tube, simultaneous monitoring of each reaction site is not possible. In a laboratory, clinical, hospital research, or diagnostic setting, hundreds of PCR assays must be run on various samples, and the thermal cycles must be varied depending on the assay protocol, the reactant and buffer systems, and the nature and selectivity of the assay being run. The same is true of other chemical, biochemical and molecular biology assays, protocols, and reactions, whether for research, commercial, diagnostic, or treatment purposes, or for affinity-building libraries for drug candidate identification, commercial production of biologies, or the like. The conventional, large-mass, uniformly heated and cooled, multi-well instruments (mono-block instruments) , are unsuitable for fast, simultaneous cycling of multiple samples, when each sample requires a different or variant thermal cycle. To run multiple samples on different cycles in conventional mono-block thermal cyclers would require sequentially running each sample on its respective cycle with the remaining wells blank (empty) . This sequential running of samples takes much time and power. In addition, the unused empty wells receive the same power as the used well. Thus, much power is wasted on the unused wells. Further, if many samples requiring different thermal cycles need to be processed, the use of many instruments would be required, which is not a fiscally viable approach. SUMMARY The present invention overcomes the disadvantages of the prior art by providing a multi-site reactor system having dynamic, independent, computer-implemented control of each reaction site. In contrast to the prior art devices described above, the system of the present invention permits different thermal profiles to be performed at different reaction sites simultaneously. In addition, individual sites may be loaded/unloaded at different times without interfering with operations of other sites . Each of the individual sites can have a unique site program assigned to it. The site program may be initiated at any time, monitored continuously, and the results fully recorded. The present invention also overcomes the disadvantages of the prior art by providing for extremely rapid temperature changes in a manner that accurately attains the target temperature and that avoids undershooting or overshooting of the temperature. Such control of temperature inhibits side reactions, the formation of unwanted bubbles, the degradation of components at certain temperatures, etc. The multi-site reactor system is therefore useful in thermally sensitive chemical processes, such as polymerase chain reaction (PCR) , ligase chain reaction (LCR) , self-sustained sequence replication, enzyme kinetic studies, homogeneous ligand binding assays, and more complex biochemical mechanistic studies that require complex temperature changes . In a first embodiment, the invention provides a system for thermally controlling multiple reaction mixtures, e.g., fluid samples mixed with chemicals or reagents. The system comprises a plurality of reaction vessels for holding the mixtures, and a corresponding plurality of heat-exchanging modules for receiving the vessels. Each heat-exchanging module includes at least one thermal plate for contacting a respective one of the vessels. A heating element is coupled to the plate for heating the reaction mixture contained in the vessel . Each module also includes a temperature sensor, such as a thermistor, thermocouple, platinum RTD, or IR sensor, for measuring the temperature of the plate. The system also includes at least one power regulator for regulating the amount of power supplied to the heating element of each heat-exchanging module. The system further includes at least one memory for storing for each of the heat-exchanging modules a pulse intensity value and a pulse length value. The pulse intensity value indicates an intensity of a power pulse to be supplied to the heating element to heat the thermal plate to a desired setpoint temperature. The pulse length value indicates a duration of the power pulse to be supplied to the heating element to heat the thermal plate to the setpoint temperature. The system additionally comprises a controller, such as a personal computer, in communication with the memory, the power regulator, and with the temperature sensor of each heat-exchanging module. The controller includes program instructions for independently controlling each heat-exchanging module to heat the reaction mixture contained therein by: i) sending a control signal instructing the power regulator to provide the power pulse to the heating element at the intensity and for the duration indicated by the pulse intensity value and the pulse length value, respectively, stored for the module; ii) receiving temperature signals from the temperature sensor indicating measured temperatures of the plate; iii) terminating the power pulse when the measured temperature of the plate reaches a threshold value or when the duration of time indicated by the pulse length value has elapsed; and iv) adjusting the pulse length value or the pulse intensity value stored in the memory in dependence upon the difference between the setpoint temperature and the measured temperature of the plate after the power pulse is completed. This adaptive control of the duration or intensity of the power pulses provided to each heat- exchanging module ensures that setpoint temperatures are reached quickly and accurately. Each heat-exchanging module also preferably includes a cooling device, such as a fan or Peltier device, for cooling the thermal plate and reaction mixture. For each of the heat-exchanging modules, a cooling length value is also stored. The cooling length value indicates a duration of time the cooling device is to be activated to cool the thermal plate to a second setpoint temperature . The controller also preferably includes program instructions for independently controlling each heat-exchanging module to cool the mixture contained therein by: i) activating the cooling device to begin cooling the thermal plate and reaction mixture; ii) receiving temperature signals from the sensor indicating measured temperatures of the plate; iii) deactivating the cooling device when the measured temperature of the plate decreases to a predetermined value or when the duration of time indicated by the cooling length value has elapsed; and iv) adjusting the cooling length value stored in the memory in dependence upon the difference between the second setpoint temperature and the measured temperature of the plate after the active cooling is completed. This adaptive control of the cooling duration ensures that lower setpoint temperatures are attained quickly and accurately. A second embodiment of the invention provides an important improvement to computer-implemented PID control for thermally controlling the reaction mixtures. In the second embodiment, the controller is programmed to compensate for thermal lag between a thermal plate and a reaction mixture contained in a reaction vessel. The thermal lag is caused by the need for heat to transfer from the plate through a wall of the vessel and into the reaction mixture during heating, or by the need for heat to transfer from the reaction mixture through the wall of the vessel to the plate and/or ambient atmosphere during cooling. According to the second embodiment, the controller includes program instructions for: i) setting a variable target temperature for the thermal plate, wherein the variable target temperature initially exceeds a desired setpoint temperature for the mixture; ii) determining a level of power to be provided to the heating element to raise the temperature of the plate to the variable target temperature, wherein the level of power is determined in dependence upon the difference between the variable target temperature and a measured temperature of the plate; iii) sending a control signal instructing the power regulator to provide power to the heating element at the level determined; when the measured temperature of the plate reaches a predetermined temperature below the variable target temperature, iv) decreasing the variable target temperature; v) determining a new level of power to be provided to the heating element to raise the temperature of the plate to the decreased target temperature, wherein the new level of power is determined in dependence upon the difference between the decreased target temperature and the measured temperature of the plate; vi) sending a new control signal instructing the power regulator to provide power to the heating element at the new level; and vii) repeating steps (iv) through (vi) until the variable target temperature substantially equals the desired setpoint temperature . By setting the variable target temperature higher than the desired setpoint temperature, the controller compensates for thermal lag between the heating of the plate and the heating of the reaction mixture and causes the actual temperature changes of the mixture to conform more closely to a desired temperature profile. The variable target temperature is preferably decreased to the setpoint temperature by exponentially decaying the amount by which the variable target temperature exceeds the desired setpoint temperature. Alternatively, the variable target temperature may be decreased by other suitable methods, such as linearly decreasing the amount by which the variable target temperature exceeds the setpoint temperature. In the second embodiment, the controller also includes program instructions for independently controlling each heat-exchanging module to cool the mixture contained therein by: i) setting a second variable target temperature for the thermal plate, wherein the second variable target temperature is initially lower than a desired second setpoint temperature for the mixture; ii) activating the cooling device to cool the thermal plate until the measured temperature of the plate decreases to a second predetermined temperature below the second setpoint temperature; iii) increasing the second variable target temperature by exponentially decaying the amount by which the second variable target temperature differs from the second setpoint temperature; iv) determining a level of power to be provided to the heating element to raise the temperature of the plate to the increased target temperature, wherein the level of power is determined in dependence upon the difference between the increased target temperature and the measured temperature of the plate; v) sending a control signal instructing the power regulator to provide power to the heating element at the level determined; and vi) repeating steps (iii) through (v) until the second variable target temperature substantially equals the second setpoint temperature. In each embodiment of the multi-site reactor system, each heat-exchanging module also preferably includes at least one optical detector in communication with the controller for generating optical data regarding the reaction mixture in the module. The controller includes program instructions for processing the optical data to adjust optical detection parameters. The controller also preferably includes program instructions for processing the optical data to adjust one or more process controls such as temperature control, completion of reaction, profile display, and signal generation regarding addition of reagents . A more complete understanding of the multi-site reactor system of the present invention may be gained upon consideration of the following description and accompanying drawings . BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 shows a partially exploded, perspective view of a reaction vessel according to the present invention in which the reaction chamber sidewalls are removed to show the interior of the chamber. Fig. 2 is a front view of the vessel of Fig. 1. Fig. 3 is a side view of the vessel of Fig. 1 inserted in a thermal sleeve formed by opposing thermal plates. Fig. 4 is a schematic, side view of a heat-exchanging module according to the present invention having a thermal sleeve, optics assemblies coupled to circuit boards, and a cooling system. A reaction vessel is inserted into the thermal sleeve . Fig. 5 is a perspective view of a multi-site reactor system having dynamic, independent, computer-implemented control of each reaction site. Fig. 6 is a schematic, block diagram of another multi- site reaction system according to the present invention comprising multiple thermal cycling instruments daisy- chained to a computer. Fig. 7 is a schematic, block diagram of a base instrument of the system of Fig. 5. Fig. 8 is a schematic, block diagram of the heat- exchanging module of Fig. 4. Fig. 9 is a schematic, block diagram illustrating the computer controller architecture for the control, diagnostics, programming, and operational functions of the system of Fig. 5. Fig. 10 is a block diagram showing the architecture of Fig. 9 that is preferably reproduced on a graphical user interface for selection of a function by a user. Figures 11-13 are a series of sample graphic displays viewable on the user's computer monitor according to the present invention. Fig. 11 illustrates a Program Menu Screen through which site profiles are created and can be executed. Fig. 12 illustrates an Instrument Menu Screen that displays current thermal cycling status. Fig. 13 illustrates a Library Menu Screen through which profiles and results are callable for loading and, in the case of profiles, executed for instrument operation, or in the case of results, executed with respect to printing in reports and/or forwarding to other clients. Fig. 14 is a flow diagram showing the overall control and operation of the system of Fig. 5. Fig. 15 is a flow diagram showing the steps for running a selected temperature profile on the system of Fig. 5. Fig. 16 is a flow diagram showing the steps for raising the temperature of a reaction mixture including adaptive control of power pulses according to the first embodiment of the invention. Fig. 17 is a flow diagram showing the steps for lowering the temperature of a reaction mixture including adaptive control of cooling time according to the first embodiment of the invention. Figs. 18A and 18B are a pair of related graphs of a thermal cycle schedule and the corresponding application of heater power and fan operation according to a first embodiment of the present invention. Figs. 19A and 19B are a pair of graphs illustrating the adaptive control features of the first embodiment whereby, through monitoring temperature in real-time, overshoot and undershoot of the program cycle schedule is automatically compensated for during operation by adjusting heater pulses and fan on/off operation. Fig. 20 is a flow diagram showing the steps for raising the temperature of a reaction mixture according to the second embodiment of the invention. Fig. 21 is a flow diagram showing the steps for lowering the temperature of a reaction mixture according to the second embodiment of the invention. Fig. 22 is a graph illustrating a desired thermal cycle schedule and the corresponding control of temperature changes according to a second embodiment of the invention. DETAILED DESCRIPTION The present invention provides a multi-site reactor system having dynamic, independent, computer-implemented control of each reaction site. The system permits different thermal profiles to be performed at different reaction sites simultaneously. In addition, individual sites may be loaded/unloaded at different times without interfering with operations of other sites. Each of the individual sites can have a unique site program assigned to it. The site program may be initiated at any time, monitored continuously, and the results fully recorded. The system provides for extremely rapid temperature changes of reaction mixtures in a manner that accurately attains the target temperature and that avoids undershooting or overshooting of the temperature. The system is therefore useful in thermally sensitive chemical processes, such as polymerase chain reaction (PCR) , ligase chain reaction (LCR) , self-sustained sequence replication, enzyme kinetic studies, homogeneous ligand binding assays, and more complex biochemical mechanistic studies that require complex temperature changes . In general, the system includes reaction vessels for holding reaction mixtures and heat-exchanging modules for receiving the vessels. Each heat-exchanging module includes a pair of thermal plates between which one of the vessels is inserted for thermal processing, heating elements coupled to at least one and preferably both plates for heating the reaction mixture contained in the vessel, a fan for cooling the mixture, and one or more temperature sensors for measuring the temperature of the plates. The system also includes a controller, such as a personal computer or network computer, for independently controlling each heat-exchanging module to heat and/or cool the reaction mixture contained therein. In a first embodiment, the controller includes an adaptive control program for dynamically adjusting the duration or intensity of power pulses provided to each heating element to attain target temperatures quickly and accurately without overshooting or undershooting the target. In a second embodiment, the controller includes an improved proportional-integral-derivative (PID) control program that compensates for thermal lag between a reaction mixture and the thermal plates that heat and/or cool the mixture. Figs. 1-19 illustrate the first embodiment of the multi-site reactor system. Fig. 1 shows a partially exploded view of a reaction vessel 2, and Fig. 2 shows a front view of the vessel. The vessel 2 includes a reaction chamber 10 for holding a reaction mixture, e.g., a fluid sample mixed with chemicals or reagents, for chemical reaction. As used herein, the term "fluid sample" includes both gases and liquids, preferably the latter. The sample may be an aqueous solution containing particles, cells, microorganisms, ions, or small and large molecules, such as proteins and nucleic acids, etc. In a particular use, the sample may be a bodily fluid, e.g., blood or urine, or a suspension, such as pulverized food. The sample may be pretreated, for example, mixed with chemicals, centrifuged, pelleted, etc., or the sample may be in a raw form. The vessel 2 is designed for optimal thermal conductance and for efficient optical viewing of the reaction product. The thin shape of the vessel contributes to optimal thermal kinetics by providing large surfaces for thermal conduction and for contacting the thermal plates. In addition, the minor or major walls of the vessel provide windows into the chamber so that the entire reaction mix can be optically interrogated. In more detail to Figs. 1-2, the reaction vessel 2 includes a rigid frame 16 that defines the perimeter of the reaction chamber 10. The frame 16 also includes a port 4 and a channel 8 that connects the port to the reaction chamber 10. Thin, flexible walls 18, shown in Fig. 1 exploded from the frame 16, are coupled to opposite sides of the frame to form the sidewalls of the chamber 10. The walls 18 facilitate optimal thermal conductance to the reaction mixture contained in the chamber 10. The flexible nature of the walls 18 allows for maximum contact with thermal plates. The walls are conformable to the surface of the plates in a manner that avoids or minimizes gaps between surfaces. Furthermore, the flexible walls continue to conform to the thermal surface if the surface shape changes during the course of the heat exchanging operation. For example, as the heating element expands due to the increased temperature, the chamber wall also expands to maintain optimal contact with the heating element. Fig. 3 shows contact between the reaction vessel and a pair of opposing thermal plates 34A, 34B. At least one of the plates, and preferably both, includes a heating element, such as a resistor, for heating the reaction mixture in the vessel. The plates 34A, 34B also preferably include temperature sensors, such as thermistors 36A, 36B. When the vessel 2 is inserted between the plates, the inner surfaces of the plates contact walls 18. In this position, minimal or no gaps are found between the plate surfaces and the walls 18 of the reaction chamber. For optimal thermal conductance, the thickness of each wall 18 is preferably between about 0.0001 to 0.020 inch, more preferably 0.0005 to 0.005 inch, and most preferably 0.001 to 0.003 inch. In order to achieve this thinness, the wall may be a film, sheet, or a molded, machined extruded or cast piece, or other convenient thin and flexible structure. The material composing the walls 18 and frame 16 may be a polyalcohol including polypropylene, polyethylene, polyester, and other polymers, laminates or homogenous polymers, metals or metal laminates, or other materials which may be thin, flexible, conformable and permit high heat transfer and is preferably in the form of a film or sheet . Where the frame of the chamber which supports the sidewalls is a particular material, such as polypropylene, the sidewalls are preferably the same material, such as polypropylene, so that the heat expansion and cooling rates of the walls are the same as the frame. The thermal plates 34A, 34B may be made of various materials including ceramics or metals such as aluminum nitride, aluminum oxide, beryllium oxide, and silicon nitride. Other materials which may be utilized include, e.g., gallium arsenide, silicon, silicon nitride, silicon dioxide, quartz, glass, diamond, polyacrylics, polyamides, polycarbonates, polyesters, polyimides, vinyl polymers, and halogenated vinyl polymers, such as polytetrafluoroethylenes . Other possible materials include thermocouple materials such as chrome/aluminum, superalloys, zircaloy, aluminum, steel, gold, silver, copper, tungsten, molybdenum, tantalum, brass, sapphire, or any of the numerous ceramics, metals, and synthetic polymeric materials available in the art. Ceramic plates are presently preferred because the inside surfaces may be conveniently machined to very high smoothness for high wear resistance, high chemical resistance, and good thermal contact to reaction vessels. Ceramic plates can also be made very thin (between 0.635 and 1.25 mm) for low thermal mass. A heat exchanging plate made from aluminum or copper also has high thermal conduction, but a larger thermal mass. The heating elements coupled to the plates 34A, 34B, such as heating resistors, may be directly screen printed onto a plate, particularly plates comprising ceramic insulating materials, such as aluminum nitride and aluminum oxide. Screen-printing provides high reliability and low cross-section for efficient transfer of heat into the reaction chamber. The heating element may also be baked inside of the ceramic plate. Also, thick or thin film resistors of varying geometric patterns may be disposed on the plate walls to provide more uniform heating, for example by having thicker resistors at the extremities and thinner resistors in the middle. Heating elements may consist of carbide, tungsten, silver, or other materials that heat when a voltage is applied to the material. One way of heating a metal sleeve is by using a laminated heater source such as an etched-foil heating element (Minco Products, located in Minneapolis, MN) attached to the surface of the heating plates. Referring again to Figs. 1-2, the reaction vessel 2 also preferably includes a seal cap 12. The cap 12 may be conveniently attached to the frame 16 by a flexible arm 14. The cap 12 includes a piston or plug 22 that is inserted into the channel 8 when the cap 12 is placed on the vessel 2. When inserted into the channel 8, the piston 22 pressurizes the chamber 10, thereby expanding the flexible walls 18. The expansion of the walls 18 provides for increased conformity between the walls 18 and the surfaces of the thermal plates . In using the reaction vessel 2, a sample is added to the reaction chamber 10 through the port 4. This may be accomplished by inserting a pipette tip through the channel 8 into the interior of the chamber 10 and filling the chamber 10 from the bottom up. Alternatively, the sample may be added through automated fluid injection, or through a fluidic manifold which optionally is an integral part of the reaction vessel. For manual addition of the sample, the vessel 2 preferably includes finger grips 6. The sample may be mixed with reagents prior to being added to the chamber 10. Alternatively, the sample may be introduced to reagents in the chamber 10. As shown in Fig. 3, the walls 18 of the chamber are made to press against the thermal plates 34A, 34B, and the walls conform to the plate surfaces. The reaction mixture is exposed to variations in temperature by activating the heating elements on the plates 34A, 34B. The reaction products are then optically viewed, preferably through the bottom walls 32A, 32B of the frame 16, as shown in Figs. 2. For this reason, the frame 16 should be made of an optically transmissive material, e.g., a polycarbonate or polypropylene. The frame 16 also preferably includes reflective faces 20 which bounce back light transmitted from the chamber 10, allowing for increased detection of signal . The reaction vessel 2 may be fabricated by first molding the rigid frame 16 to form a chamber having open sides. The frame 16 is preferably made by standard injection molding processes. After the frame is made, the sidewalls 18 are produced by placing and preferably stretching material, e.g., thin films or sheets of polypropylene, over the chamber area. The walls 18 are then attached to opposite sides of the frame 16. Where the walls are a film or sheet, the material may be attached to the frame by heat-sealing, adhesive bonding, ultrasonic bonding, etc. The reaction vessel may be sized, in particular in the chamber, to contain volumes from nanoliters to milliliters, depending upon the desired use. For nucleic acid amplification, the volume of the chamber is preferably in the range of 25 to 110 microliters. Further, the reaction chamber 10 is preferably thin, e.g., having a thickness of 1-2 mm or less, for high thermal conductance of heat to a reaction mixture in the chamber. In one specific embodiment, the reaction chamber 10 is a diamond-shaped chamber having sides of length 10 mm, a thickness of 1 mm, and a volume of about 100 microliters. Fig. 4 shows a heat-exchanging module 37 for receiving the reaction vessel 2. The heat-exchanging module 37 preferably includes a housing 38 for holding the various components of the module. The module 37 also includes the thermal plates 34A, 34B described above (only plate 34A shown in the view of Fig. 4) . The plates may be held in an opposing relationship to each other by means of one or more brackets, supports, or retainers. Additionally, the plates may be spring-biased towards each other as described in U.S. application Ser. No. 09,194374 filed November 24, 1998. The housing 38 includes a slot above the plates 34A, 34B so that the vessel 2 may be inserted through the slot and between the plates. The heat-exchanging module 37 also preferably includes a cooling device, such as a fan 42, for cooling the reaction mixture in the vessel 2. When the vessel 2 is between the plates 34A, 34B, the reaction chamber is cooled by the air circulating from the fan. Alternatively, the cooling device may be a Peltier device or a channel for carrying a refrigerant or compressed gas to the reaction vessel. These and other cooling devices are well known in the art . The heat-exchanging module 37 further includes an optical excitation assembly 46 and an optical detection assembly 48. The excitation assembly 46 includes a first circuit board 50 for holding its electronic components, and the detection assembly 46 includes a second circuit board 52 for holding its electronic components. The excitation assembly 46 includes one or more light sources, preferably LEDs, for exciting a fluorescent indicating dye in the vessel 2. The excitation assembly 46 also includes one or more lenses for focusing and collimating the light from the light source, as well as filters for selecting the excitation wavelength (s) of interest. The detection assembly 48 includes one or more detectors, preferably photodiodes, for monitoring the fluorescence emitted from the mixture in the vessel 2. The detection assembly 48 also includes one or more lenses for focusing and collimating the emitted light, as well as filters for selecting the emission wavelength (s) of interest. A suitable pair of optical assemblies for use in the system of the present invention is disclosed in U.S. application Ser. No. 09/081,260 filed May 19, 1998, the disclosure of which is incorporated by reference herein. For improved detection, the module 37 preferably includes a light-tight lid (not shown) that is placed over the top of the reaction vessel 2 and sealed to the housing 38 after the vessel is inserted between the plates 34A, 34B. Although LEDs and photodiodes are presently preferred in the optics of module 37, many other optical detection schemes may be employed. For example, in another embodiment, the optics include an optical filter, such as an interference filter or band pass filter for passing the detection wavelength of interest, a CCD, focusing optics, a reflector/splitter, and an Argon ion laser. The operation is as follows: The laser excites the fluorescent indicator dye in the vessel 2. The fluorescent signal is monitored by the CCD. Absorption spectroscopy could similarly be used. The housing 38 may be molded from a rigid, high- performance plastic, or other conventional materials. The primary functions of the housing 38 are to provide a frame for holding the plates 34A, 34B and optics assemblies 46, 48 and to provide flow channels and ports for directing cooling fluid, e . g. air, and efficiently guiding the fluid flow across the surface of the plates 34A, 34B and reaction vessel 2. The heat-exchanging module 37 also includes a PC board 54 for holding the electronic components of the module and an edge connector 58 for connecting the module 37 to a base instrument, as will be described below with reference to Fig. 5. The heating elements and thermistors 36A, 36B on the plates 34A, 34B, as well as the optical boards 50, 52, are connected to the PC board 54 by flex cables (not shown in Fig. 4 for clarity of illustration) . The module 37 may also include a grounding trace 56 for shielding the optical detection circuit. The module 37 also preferably includes an indicator, such as an LED 44, for indicating to a user the current status of the module such as "ready to load sample", "ready to load reagent," "heating," "cooling," "finished," or "fault". Fig. 5 is a perspective view of a multi-site reactor system 60 comprising a thermal cycler 62 and a controller, such as a personal computer 64. The thermal cycler 62 comprises a base instrument 66 and multiple heat-exchanging modules 37. The base instrument 66 has a main logic board with edge connectors 68 for receiving the modules 37. The base instrument 66 also preferably includes a fan 70 for cooling its electronic components. The base instrument 66 may be connected to the controller 64 using any suitable data connection, such as a universal serial bus (USB) , ethernet connection, or serial line. It is presently preferred to use a USB that connects to the serial port of computer 64. Although a laptop computer is shown in Fig. 5, the controller may comprise any type of device having a processor. Further, the thermal cycler may be linked to a computer network rather than to a single computer. The term "thermal cycling" is herein intended to mean at least one change of temperature, i.e. increase or decrease of temperature, in a reaction mixture. Therefore, chemicals undergoing thermal cycling may shift from one temperature to another and then stabilize at that temperature, transition to a second temperature or return to the starting temperature. The temperature cycle may be performed only once or may be repeated as many times as required to study or complete the particular chemical reaction of interest. In the specific embodiment of Fig. 5, the thermal cycler 62 includes sixteen independently-controllable heat- exchanging modules 37 arranged in two rows of eight modules. It is to be understood, however, that the thermal cycler can range from two to four-site hand-held instruments to multi-hundred site clinical and research instruments. Common to all these embodiments are multiple, independently-controllable modules 37, and a controller 64 for operating individually programmed independent temperature/time-profiles for each module. In a research instrument, experiments can be done in a single pass that simultaneously investigate variations in temperatures, times at each temperature, temperature ramp rates, chemistries, sensing means (optical or other interrogation methods), etc. The thermal time-courses for nucleic acid amplifications or other reactions can be fine tuned to a particular target, and independent control of individual modules 37 permits simultaneous reactions to be run at different thermal profiles. The thermal cycler 62 also provides for independent loading, cycling, and unloading of individual sites at different times allowing for optimal use and throughput. This fully-independent access to individual modules 37 permits only the necessary number of modules be used at a given time. The thermal cycler 62 is also modular, in that each heat-exchanging module 37 (with or without its associated electronics and electro-optics) can be individually removed from the base instrument 66 for servicing, repair or replacement. This modularity reduces downtime in that all the modules 37 are not off line to repair one, and the instrument 66 can be upgraded and enlarged to add more sites as needed. The modularity of the thermal cycler 62 also means that individual modules 37 can be precisely calibrated, and site-specific schedules or corrections, e.g. compensating power pulse and cooling on/off times, can be included in the control programs, e.g., as a series of site-specific calibration or adjustment charts, to be sure temperature profiles are followed. The independent thermal cycling system 62 of the invention also has significant advantages in terms of power management. The controller 64 can interleave the thermal profiles of each independent module 37 to save power as compared to a single block heater. For example, current can be reduced by half by control of one module to heat (high power) while a second module is cooling (low power) . Thus, by interleaving of pulse power to only so many modules 37 as have reactants in them, the instantaneous current requirements for the base instrument 66 can be minimized, permitting more modules 37 per instrument that can still be powered from a standard 110V, 15 ampere circuit. Because of this sophisticated power management system, which is made possible by the independent control of the modules 37, the instrument 66 may be configured into a hand-held, battery operated device. In embodiments in which the base instrument 66 operates on external power, e.g. 110 V AC, the instrument preferably includes two power connections 76, 78. Power is received though the first connection 76 and output through the second connection 78. Similarly, the instrument 66 preferably includes network interface inlet and outlet ports 72, 74 for receiving a data connection through inlet port 72 and outputting data to another base instrument through outlet port 74. As shown schematically in Fig. 6, this arrangement permits multiple thermal cyclers 62A, 62B, 62C, 62D to be daisy-chained from one controller 64 and one external power source 80. Using a USB, it is theoretically possible to daisy-chain 127 thermal cycler instruments to a single controller, although due to limits of computing power, one should have more than one computer for controlling 127 instruments. Fig. 7 is a schematic, block diagram of the base instrument 66. The base instrument includes a power supply 86 for supplying power to the instrument and to each module 37. The power supply 86 may comprise an AC/DC converter for receiving power from an external source and converting it to direct current, e.g., receiving 110V AC and converting it to 12V DC. Alternatively, the power supply 86 may comprise a battery, e.g., a 12V battery. The base instrument 66 also includes a microprocessor or microcontroller 82 containing firmware for controlling the operation of the base instrument 66 and modules 37. The microcontroller 82 communicates through a network interface 84 to a user interface computer via a USB. Due to current limitations of processing power, it is currently preferred to include at least one microcontroller in the base instrument per sixteen modules. Thus if the base instrument has a thirty-two module capacity, one should install two microcontrollers in the instrument to control the modules . The base instrument further includes a heater power source and control circuit 88, a power distributor 90, a data bus 92, and a module selection control circuit 94. Due to space limitations in patent drawings, control circuit 88, power distributor 90, data bus 92, and control circuit 94 are shown only once in the schematic diagram of Fig. 7. However, the base instrument 66 actually contains one set of these four functional components 88, 90, 92, 94 for each heat-exchanging module 37. Thus, in the embodiment of Fig. 7, the base instrument 66 includes sixteen control circuits 88, power distributors 90, data buses 92, and control circuits 94. Similarly, the base instrument 66 also includes one edge connector 68 for each module 37 so that the instrument includes sixteen edge connectors for the embodiment shown in Fig. 7. The edge connectors are preferably 120 pin card edge connectors that provide cableless connection from the base instrument 66 to each of the modules 37. Each control circuit 88, power distributor 90, data bus 92, and control circuit 94 is connected to a respective one of the edge connectors and to the microcontroller 82. Each heater power and source control circuit 88 is a power regulator for regulating the amount of power supplied to the heating element (s) of a respective one of the modules 37. The source control circuit 88 is preferably a DC/DC converter that receives a +12V input from the power supply 86 and outputs a variable voltage between 0 and - 24V. The voltage is varied in accordance with signals received from the microcontroller 82. Each power distributor 90 provides -5v, +5V, +12V, and GND to a respective module 37. The power distributor thus supplies power for the electronic components of the module. Each data bus 92 provides parallel and serial connections between the microcontroller 82 and the digital devices of a respective one of the modules 37. Each module selection controller 94 allows the microcontroller 82 to address an individual module 37 in order to read or write control or status information. Fig. 8 is a schematic, block diagram of the electronic components of a heat-exchanging modules 37. Each module includes an edge connector 58 for cableless connection to a corresponding edge connector of the base instrument . The module also includes heater plates 34A, 34B each having a resistive heating element as described above. The plates 34A, 34B are wired in parallel to receive power input 98 from the base instrument. The plates 34A, 34B also include thermistors 36A, 36B that output analog temperature signals to an analog-to-digital converter 108. The converter 108 converts the analog signals to digital signals and routes them to the microcontroller in the base instrument through the edge connector 58. The heat-exchanging module also includes a cooling source 96, such as a fan, for cooling the plates 34A, 34B and the corresponding reaction mixture in a vessel inserted between the plates. The cooling source 96 receives power from the base instrument and is activated by switching a power switch 118. The power switch 118 is in turn controlled by a control logic block 116 that receives control signals from the microcontroller in the base instrument . The module further includes at least one LED 100 for excitation of a fluorescent dye in the reaction mixture and at least one detector 102, preferably a photodiode, for detecting fluorescent emission from the reaction mixture. An adjustable current source 104 varies the brightness of the LED 100. A digital-to-analog converter 106 is connected between the adjustable current source 104 and the microcontroller of the base instrument to permit the microcontroller to adjust the current source digitally. The module additionally includes a signal conditioning/gain select/offset adjust block 110 comprised of amplifiers, switches, filters, and a digital-to-analog converter. The block 110 adjusts the signals from the detector 102 to increase gain, offset, and reduce noise. The block 110 outputs the adjusted signals to the microcontroller of the base instrument through the analog- to-digital converter 108 and the edge connector 58. The module also includes a memory 114, preferably a serial EEPROM, for storing data specific to the module, such as calibration constants for the thermal plates and thermistors. The memory 114 may also store values indicating the length and intensity of power pulses to be supplied to the heating elements on the plates. These power pulse values are described in detail below. Fig. 9 shows the controller architecture, typically resident as software, firmware, or a combination thereof, in a user interface computer and/or the microcontroller 82 of the thermal cycler 62. It should be understood that selected ones of these functions can be located, as needed, in the microcontroller 82, for example in the case of a hand-held field unit, or in a separate computer that communicates with the microcontroller. The distribution of the control functions can be selected by one skilled in the art to be resident in various hardware or software elements to suit the intended use most efficiently. Thus, the control function distribution in a large laboratory or clinical configuration may be quite different than in the hand-held field unit, or intermediate sized mobile unit. In addition, the functions can be selected for the particular purpose, ranging for example from qualitative identification, to single or limited number of site programs, to full quantitative evaluation of a wide range of reactions via an extended library of programs. Continuing with Fig. 9, the controller program architecture is software that includes user interface functionality 152 including graphic displays on a monitor (shown in Figures 10-13, below), an input keyboard, mouse, and the like. Temperature profiles are stored in a profile database 154 in a memory 160. The results of individual runs for individual chamber sites are also stored in a results database 156. In addition, the memory 160 includes a database 182 of heating/cooling adjustment tables for adaptive control of each heat-exchanging module, as is described in detail below. The user input device (such as a mouse or keyboard) permits user communication with a profile interpreter 170 via a com port 162. Upon user selection, a profile from the profile database 154 is called via bus 168 and output to the profile interpreter 170. That is, the thermal cycle profile to be run on a selected one of the heat-exchanging modules is selected from the user interface 152 and input to the profile interpreter 170. Additionally, temperature signals obtained from the thermal cycler 62 via a device driver 180 are output from the profile interpreter 170 and input to the user interface 152. The profile interpreter 170 converts a selected thermal profile into signals representing a set of heater power pulses, as to initiation and end (on/off), power level and duration, and fan on/off signals in order to accomplish the thermal profiles selected for each particular heat-exchanging module. An input/output control port 174 outputs a target temperature that becomes an input for the device driver 180. Likewise, the device driver 180 outputs the current temperature sensed by the temperature sensor of each heat-exchanging module as data that becomes the input to the profile interpreter 170. The device driver 180 adjusts the specific output power level, initiation, and termination times for the heater power and fan start/stop in accordance with pulse intensity values, pulse length values, and cooling length values stored in the heating/cooling database 182 for each of the modules. The device driver 180 provides the appropriate digital signal to the microcontroller 82 in the thermal cycler 62 through the serial bus 65. The microcontroller 82 then runs the temperature profile cycle. Figs. 10-13 illustrate a series of graphical displays that are preferably displayed to the user on the user interface. As one skilled in the art will appreciate, the conventional "splash" screen will appear when the system initializes, followed by a sign-on screen allowing for user identification and any password protection authorization inputs. This is followed by the Program Menu screen 120 of Fig. 10. By selecting the Instructions menu button 122 on the left, additional screens are accessed at any time. As each screen is displayed, it presents options for system operation in text boxes and buttons, along with the text or icon information directing the user how to select each of the options. The creation of these types of screens, including select buttons, check boxes text and graph displays, can be performed by a computer programmer having ordinary skill in the art. In addition, pop-up "tool tip" help messages are preferably employed to assist the user in learning how to select each of the options. These pop-up tips are also well understood in the art. The Library button 124 accesses thermal profile programs and stored results of past thermal cycle runs that are stored in memory. The result button 126 accesses a menu for viewing past results. The reports button 128 permits printing records of actual time course temperature traces from past thermal cycle runs . The preferences button 130 allows the user to set frequently used inputs runs, while the maintenance button 132 allow the user to adjust data structure including power pulse values stored in the tables of database 182 (Fig. 9) . The Sign-Off button 134 closes the program. Fig. 11 illustrates a sample Program Menu screen through which site programs or thermal profiles (a series of one or more heating and cooling steps) are created. New profiles are created by selecting the NEW button. The template shown permits the user to create a specific user- defined program that is stored in memory. All of the data shown on the screen can be removed by selecting the CLEAR button to start from scratch. The numbers appearing in the small windows 140 disappear, and the user can then enter appropriate values by toggling the up or down arrows 142 under the columns "Temp" and "Time" . The plus and minus keys 144 are used to add or delete steps. Selecting the lower case "x" key 146 deletes the entire field. The program interprets a single step as a "hold" . Multiple steps are interpreted as a cycle, and as noted in the center column 148, the number of cycles may be entered by the user. The program name 149 is in the center left window and a brief description 151 of the program to be run is in the lower left window. The program then can be saved under either "Save" with a previously known name or under "Save As" to save the program under the name entered in the window 149. This new program is then automatically stored in the thermal profile library, e.g., the profile database 154 of Fig. 9. By pressing the "Run" button, the available reaction sites (heat-exchanging modules) are displayed in column 131 by specific address. One or more sites can be selected and the program run by again hitting the "Run" button. Fig. 12 illustrates a sample Instrument Menu Screen that displays current thermal cycling status . Each of the four windows labeled 1, 2, 3, 4 identifies one of the four reaction sites (modules) in a four-module instrument. Note that site number 3 has been selected, and it shows the total time to run at the setpoint temperature of 55°C. It also shows both the profile setting and the current temperature, as well as the time left in that particular step. The screen also shows that it is in step one of three steps and cycle 3 of 50 cycles, with 20 seconds left in that cycle. The screen also displays a real-time trace, the curved line in the display 155 across the bottom half of the screen, of the progress of the reaction. The individual sites can be polled by simply selecting the specific sites 1, 2, 3, 4 ... N by number. Additional commands include "Pause", "Continue" and "Stop" to effect the particular reaction site selected. The "Stop All" command stops all heat-exchanging modules currently in operation. A warning prompt appears when "Stop" or "Stop All" is selected to ensure that it was not selected inadvertently. Once the reaction is completed, the real-time display 155 of any particular cycle can be selected in this particular site by moving the scroll bar button 157 along the bottom of the graph. Fig. 13 illustrates a sample Library Menu Screen. As described above with reference to Fig. 9, previously saved programs are stored in the profile database 154. Results from previous runs are stored in the results database 156. Turning to Fig. 13, programs may be selected by scrolling down the program "Name" list in the upper half of the screen, and then assigned a specific reaction site (one of the heat-exchanging modules) by pressing "Run". Detailed information regarding individual programs is displayed on the lower left quarter 159 of the screen, and previously run programs can be recalled and viewed by selecting the "View/Edit" button. The "Delete" button is used to remove programs from the library after a warning pop-up notice. The Preview display 161 in the lower right of the screen shows a bar graph of the thermal profile selected. The user interface program also preferably includes a Results Menu Screen in which the results of a particular run are displayed by program name, date, operator, and site. The results can be either real-time results from the operations of the program, or the results can be called up from memory (results database 156 in Fig. 9) . The information displayed preferably includes a temperature trace of the entire run of cycles for a selected thermal program. The information displayed also preferably includes the time the program started and finished, the particular heat-exchanging module (reaction site) used, and the final program status (e.g., completed, failed, or stopped by user) . Fig. 14 is a flow-diagram schematically illustrating the steps in the overall software control application of the multi-site reactor system. The application is loaded and executed beginning at step 302 by determining whether a temperature profile desired by the user exists. If the profile exists, the application proceeds to step 306. If the desired profile does not exist, it is created in step 304. The profile is preferably created through the instrument controller screen shown in Fig. 11. The user/operator initializes the profile variables, e.g., entering the number of the cycles and the setpoint temperatures for each of the temperature steps of a given profile via keyboard and/or selection from the buttons and check boxes on the program graphics display. For example, as shown in Fig. 11, the user may select for the particular application to begin with a 5 minute induction hold at 95°C, then run 35 cycles (repeats) at 95°C for 30 seconds, cool to 55 °C for 30 seconds, then raise the temperature to 72 °C for 60 seconds. A final hold at 72 °C for 7 minutes may be selected before signaling the run is complete. This temperature profile is then saved in the profile database 154. In step 306, the desired temperature profile is loaded from the profile database 154 in response to the user requesting that the profile be run at a selected site (a selected one of the heat-exchanging modules) . In step 306, the application prompts the user through the user interface to load a reaction vessel containing a reaction mixture into the selected module. In step 310, the application then runs the selected temperature profile on the reaction mixture in the selected module. Step 310 will be described in detail below with reference to Fig. 15. Briefly, the selected temperature profile is compiled by the profile interpreter 70 into an intermediate form that is used by the device driver 80 to provide signals to the microcontroller 82 of the thermal cycler instrument 62 (see Fig. 9) . The running of the selected temperature profile generally includes iterative loops of polling, pinging, or sampling temperature sensor data and associating the data with the predetermined setpoint temperatures as clock time progresses. At the same time, the control software application displays both the selected profile and the current temperature of the thermal plates in the selected heat-exchanging module in real-time on screen as the thermal cycles are run. A cycle counter i is originally initialized to i 0 = o, and it iterates in each cycle to the number of cycles chosen. After the chosen number of cycles are completed, the program signals that the particular run is "Done" , the timer counter having reached the total time for cycles. In step 312, the completed profile and the results of the run, e.g., the detection of reaction products, are displayed on the user interface and saved in the results database 156. Fig. 15 illustrates the steps executed in the running of the selected temperature profile (step 310 in Fig. 14) for a reaction mixture in a selected heat-exchanging module. In step 402, the temperature of the thermal plates in the module is polled. Polling of the plate temperature preferably occurs every 100 milliseconds throughout the running of the temperature profile. As shown in Fig. 3, the temperature sensors, such as thermistors 36A, 36B output analog signals indicating the temperature of the plates. The analog signals are converted to digital signals and received by the control application. The control application averages the temperatures of the two plates to determine a plate temperature. In step 404, the application determines the difference (delta) between the profile target temperature, i.e. the setpoint temperature defined by the user for the particular time in the profile, and the plate temperature. In decision step 406, the application determines if the difference is greater than a threshold value, e.g., 10°C. If the difference is greater than the threshold value, the application proceeds to step 408, raising the temperature of the plates. The steps included in raising the temperature are described in detail below with reference to Fig. 16. If the difference is not greater than the threshold value, the application determines in step 410 if the plate temperature is more than a predetermined amount, e.g., 10°C, higher than the current setpoint temperature. If it is, the application proceeds to step 412, lowering the temperature of the plates. The steps included in lowering the temperature of the plates are described in detail below with reference to Fig. 17. Following step 412, the application proceeds to step 414. In step 414, the application implements standard proportional-integral-derivative (PID) control for maintaining the thermal plates at the current setpoint temperature. Proportioning may be accomplished either by varying the ratio of "on" time to "off" time, or, preferably with proportional analog outputs as known in the art which decrease the average power being supplied either to the heater or the fan as the actual temperature of the plates approaches the setpoint temperature . PID control combines the proportional mode with an automatic reset function (integrating the deviation signal with respect to time) and rate action (summing the integral and deviation signal to shift the proportional band) . The 1990/91 Temperature Handbook by Omega Engineering, Inc. (Stamford, Conn.) contains explanations of the various control modes in the "Introduction to Temperature Controllers" on pages P-5 to P-10. Standard PID control is well known in the art and need not be described further herein. In step 416, the application determines if the profile is complete, e.g., if all of the thermal cycles have been completed. If yes, the profile run ends. If not, then the application returns to step 402, polling the actual temperature of the plates, and the loop re-executes until the profile is complete. Fig. 16 shows the steps included in the raise- temperature routine (step 408 in Fig. 15) . In an optional step 502, the heaters on the thermal plates are pre-started to help compensate for the temperature lag between the heaters and the reaction mixture contained in the vessel inserted between the thermal plates . The lag occurs due to the need for heat to transfer through the plate mass and then across the vessel walls into the reaction mixture. In step 504, the appropriate pulse length values and pulse intensity values for the selected heat-exchanging module to reach the desired setpoint are retrieved from the look-up table for the module in the database 182. The pulse intensity value indicates an intensity (e.g., a wattage or power level) to be applied to the heaters to reach the desired setpoint temperature, and the pulse length value indicates the appropriate duration of the power pulse, e.g., a number of seconds. In step 506, the power pulse is applied to the heaters at the intensity indicated by the pulse intensity value. As the power pulse is applied, the controller receives temperature signals from the thermistors indicating the actual measured temperatures of the thermal plates, step 508. In step 510, the controller terminates the application of the power pulse either when the duration of time indicated by the pulse length value has elapsed or when the temperature of the thermal plates reaches a threshold value . The threshold value may be set equal to the desired setpoint temperature, or more preferably, 1 to 3 °C below the setpoint temperature to control overshoot. After the power pulse is applied and shut off, the temperature of the plates is monitored in step 512 and the temperature rise is traced. When the temperature of the plates stops rising, the actual highest plate temperature reached is compared to the desired setpoint temperature to determine if there was an undershoot or overshoot of the setpoint temperature. When there is a substantial variation, say for example an undershoot or overshoot in excess of 0.1 to 0.5°C, then either the pulse length value or the pulse intensity value stored for the particular heat-exchanging module to reach the particular setpoint temperature is adjusted in step 514. The pulse length and pulse intensity values are preferably adjusted by reducing one or both values a predetermined percentage, e.g. 1 to 5% in the case of an overshoot, or by increasing one or both values by a predetermined percentage, e.g., 1 to 5% in the case of an undershoot. Alternatively, the pulse intensity value may be held fixed at full power while only the pulse length value is adjusted. This ensures that higher setpoint temperatures are reached as quickly as possible. The new pulse length and pulse intensity values are preferably overwritten into the heating/cooling database 182 (Fig. 9) . Alternatively, the values may be stored and adjusted in the memory 114 of the heat-exchanging module (Fig. 8) . In another embodiment, the adjusted values are saved into the results database 156 with a "drift" history of prior values being kept for diagnostic analysis. Fig. 17 shows the steps included in the lower- temperature routine (step 412 in Fig. 15) . In an optional step 602, the fan in the selected heat-exchanging module is pre-started (spun-up to full speed) prior to the end of a preceding temperature profile step having a setpoint temperature higher than the new setpoint temperature . The preactivation (spin-up) of the fan helps compensate for the temperature lag discussed above and ensures that the fan is ready to provide full cooling at the exact moment when the temperature profile requires movement to a lower setpoint temperature . In step 604, the appropriate cooling length value for the selected heat-exchanging module to reach the desired setpoint is retrieved from the look-up table for the module in the database 182. The cooling length value indicates the appropriate duration of time the fan is to be activated. In step 606, the cooling begins. As the fan blows air, the controller receives temperature signals from the thermistors indicating the actual measured temperatures of the thermal plates, step 608. In step 610, the controller terminates the cooling (deactivates the fan) either when the duration of time indicated by the cooling length value has elapsed or when the temperature of the thermal plates reaches a predetermined value, e.g., the desired setpoint temperature . After the fan is shut off, the temperature of the plates is measured in step 612 and compared to the desired setpoint temperature to determine if there was an undershoot or overshoot of the setpoint temperature . When there is a substantial variation, say for example an undershoot or overshoot in excess of 0.1 to 0.5°C, then cooling length value for the particular heat-exchanging module to reach the particular setpoint temperature is adjusted accordingly in step 614. The cooling length value is preferably adjusted by reducing it or increasing it as appropriate by a predetermined percentage, e.g. 1 to 5%. The cooling length value is preferably overwritten into the heating/cooling database 182 (Fig. 9) . Alternatively, the value may be stored and adjusted in the memory 114 of the heat- exchanging module (Fig. 8) . In another embodiment, the adjusted value is saved into the results database 156 with a "drift" history of prior values being kept for diagnostic analysis . Fig. 18A shows a graph of an exemplary thermal profile to be run on one of the heat-exchanging modules. Fig. 18B shows a graph of the corresponding heating/cooling power pulse schedule necessary to execute the thermal profile shown in Fig. 18A. In this example, the heater power is initially applied at full power, e.g., 50 watts, for a duration of 2 seconds to bring the temperature up from 60 °C to the first setpoint temperature S λ of 95°C. The actual temperature profile as tracked by the thermistor is identified as curve 186. The initial power pulse 188 brings the plate temperature up to the setpoint S , and this power pulse 188 is cut off at time t x prior to the actual plate temperature reaching the setpoint temperature S . The initiation of the power pulse 188 can begin before the time t 0 at which the setpoint temperature Sη ^ is to begin (lag compensation pre-heating) . A second, lower power pulse 190 begins at time t 2 and continues until, in this instance, the end of the scheduled setpoint temperature S at time t 3 . Typically due to heat loss to ambient room temperature, which is ordinarily below the setpoints for biochemical reactions, continuous low heater power is needed during plateaus in the profile in order to compensate for radiation and convection losses. At time t 3 , the cooling fan is turned on until time t 4 which is prior to the actual temperature reaching the second, lower, set point temperature S 2 of the selected cycle profile. A third heater power pulse 194 maintains the plate temperature at the second setpoint temperature S 2 . This power pulse can be a very brief full power spike, or as shown, a low wattage sustained application of power. At the end of the power pulse 194, the cycle is repeated, first with a power pulse 196 followed by a power pulse 196, etc . Figs. 19A and 19B show adaptive control of the above- described system and programs . The scale of both of these figures is compressed on the X-axis of both graphs so that four cycles C-l through C-4 may be illustrated. In this instance, a first power pulse A x produced an overshoot of the first setpoint T-,_ . As a result of the self-adjusting and control features described above, the heater pulse power A 2 applied at the onset of the second cycle C-2 is shorter in duration to compensate for the overshoot, with the result that the plate temperature reaches the second setpoint temperature T 2 . In the third cycle C-3, for purposes of illustration, the actual plate temperature undershoots the third setpoint temperature T 3 . Accordingly, in the next cycle C-4, the heater power pulse A 4 is lengthened in time to bring the temperature to the fourth setpoint temperature T 4 . Although not shown in Fig. 19B, the fan "ON" durations F x through F 4 can also be adjusted to control undershoots or overshoots of lower setpoint temperatures. Optical data is also preferably used as a feedback control in the system of the present invention. Real-time optical detection is used to indicate the progress of the reaction. For example, when a particular predetermined fluorescent threshold is detected in a reaction mixture in a heat-exchanging module, then the temperature cycling for that module may be stopped. Furthermore, selected temperature-sensitive dye substituents on one or more of the reaction components are useful to indicate the reaction temperature. Optical detection of dye activation, e.g., color change, is useful to control the cycle parameters, not only thermal schedules, but also the state or condition of reactants and products, and quantitative production. Multiple emission wavelengths can be sampled to determine, for example, progression of the reaction, end points, triggers for reagent addition, denaturation (melting) , annealing and the like. The data obtained in the real-time monitoring method, e.g., optical interrogation of product formation, is preferably fed back to the instrument controller to alter or adjust the optical "read" parameters. Examples of the optical read parameters include: length of read; power input or frequency to the light source (s); which wavelength should be monitored and when; and the like. Fluorescence intensity, and in some cases wavelength and absorption, are temperature sensitive. Therefore, the optical readout can be used for real-time monitoring of the temperature of the reaction mixture during the reaction process. For example, where the optics read the intensity of fluorescence or absorption three or more times during the heat-exchanging operations or sequence, then the controller calculates or matches to a standard curve, and determines temperatures of the reaction mixture. This type of feedback control may be used in the system of the invention to adaptively change the series of optical readouts during the reaction process on the fly. For example, at the beginning of the reaction process, a first set of selected wavelengths are illuminated and detected. These are changed for later stages in the reaction process. This switching of optical interrogation parameters can be automatically run at any selected time during the reaction where the switching detects actual or incipient deviation from a profile temperature target point (undershoot, overshoot, or drifting from steady state temperature) . Cooling or heating can be initiated earlier or later than scheduled and this temporal schedule change is input into memory. Either on the next cycle, or after the temporal shift is detected in a number of succeeding cycles, the profile is reset as a new baseline schedule and becomes data structure in memory. This is an example of optical detection-driven adaptive control of temperature profile . Figs. 20-22 illustrate a second embodiment of the invention. The second embodiment provides an important improvement to computer-implemented PID control for thermally controlling the reaction mixtures. In the second embodiment, the controller is programmed to compensate for thermal lag between a thermal plate and a reaction mixture contained in a reaction vessel. The thermal lag is caused by the need for heat to transfer from the plate through a wall of the vessel and into the reaction mixture during heating, or by the need for heat to transfer from the reaction mixture through the wall of the vessel to the plate and/or ambient atmosphere during cooling. In the second embodiment, the overall program instructions performed by the controller to execute a desired thermal profile in a selected heat-exchanging module are the same as those previously described with reference to Fig. 15. The controller polls the temperature of the thermal plates in step 402 to determine in step 406 if the difference between the plate temperature and current setpoint temperature is greater than a threshold value, e.g., 10 °C. If it is, the controller executes a raise- temperature routine in step 408. If the plate temperature is a predetermined value above the setpoint temperature, then the controller executes a routine to lower the plate temperature in step 412. Otherwise, the controller maintains a steady-state temperature using standard PID control. The second embodiment differs from the first embodiment, however, in the steps performed by the controller to raise and lower the temperature of the thermal plates. In the second embodiment, the temperature is raised using an improved PID control program. In standard PID control, the power supplied to a heater is dependent upon the difference (error) between the actual measured temperature of a device and the desired setpoint temperature. The average power being supplied either to the heater or the fan therefore decreases as the actual temperature of the plates approaches the setpoint temperature. Because the power being supplied to the heater or fan decreases prior to reaching the setpoint temperature, the reaction mixture does not reach the setpoint temperature as rapidly as possible. This temperature lag may cause unwanted side reactions, the formation of unwanted bubbles, the degradation of reaction components at certain temperatures, etc. The second embodiment of the present invention provides an improved PID control program that overcomes this disadvantage of standard PID control. Fig. 20 illustrates the steps performed to raise the temperature of a reaction mixture according to the second embodiment. In step 702, the controller sets a variable target temperature that initially exceeds the desired setpoint temperature. For example, if the setpoint temperature is 95 °C, the initial value of the variable target temperature may be set 2 to 10°C higher. In step 704, the controller determines a level of power to be supplied to the heating elements to raise the temperature of the plates to the variable target temperature. The controller determines the level of power by inputting the variable target temperature to a standard PID control algorithm. The level of power to be supplied to the heaters is therefore determined in dependence upon the difference (error) between the actual plate temperature and a target temperature that is higher than the desired setpoint temperature . The higher target temperature ensures that a higher level of power is supplied to the heaters to heat the plates, and therefore the reaction mixture, to the setpoint temperature more rapidly. In step 706, the controller sends a control signal to the power and source control circuit in the base instrument to provide power to the heaters at the level determined. In decision step 708, the controller determines if the actual measured temperature of the plates is greater than or equal to a predetermined threshold value. Suitable threshold values are: the desired setpoint temperature itself; or 1 to 2 °C below the setpoint temperature, e.g., 93 to 94 °C for a setpoint temperature of 95 °C. If the actual plate temperature does not exceed the predetermined threshold value, then the controller returns to step 704 and repeats the loop until the plate temperature equals or exceeds the threshold value. When the actual measured temperature of the plates is greater than or equal to the threshold value, the controller decreases the variable target temperature in step 710. The controller preferably decreases the variable target temperature by exponentially decaying the amount by which the variable target temperature exceeds the setpoint temperature. For example, the amount by which the variable target temperature exceeds the desired setpoint temperature may be exponentially decayed as a function of time according to the equation: Δ = (Δ max )*e(-t/tau) where Δ is equal to the amount by which the variable target temperature exceeds the desired setpoint temperature, Δ ma χ is equal to the difference between the initial value of the variable target temperature and the desired setpoint temperature, t is equal to the elapsed time in tenths of seconds from the start of decay, and tau is equal to a decay time constant . In the system of the present invention, tau preferably has a value in the range of 1 to 4 seconds. It is presently preferred to determine tau empirically for each heat-exchanging module during testing and calibration and to store the value of tau in the module's memory 114 (Fig. 8) . Although the exponential equation given above is presently preferred, it is to be understood that many other exponential decay formulas may be employed and fall within the scope of the invention. Moreover, the variable target temperature may be decreased by other techniques, e.g., it may be decreased linearly. In step 712, the controller determines a new level of power to be supplied to the heating elements to raise the temperature of the plates to the decreased target temperature. The controller determines the level of power by inputting the decreased target temperature to the PID control algorithm. In step 714, the controller sends a control signal to the power and source control circuit in the base instrument to provide power to the heaters at the new level determined. In decision step 716, the controller determines if the variable target temperature is less than or equal to the setpoint temperature. If it is not, the controller returns to step 710, decreasing the target temperature, and the loop continues until the variable target temperature is less than or equal to the setpoint temperature. When the variable target temperature is less than or equal to the setpoint temperature, the raise-temperature routine ends and standard PID control is resumed. Fig. 21 is a flow diagram illustrating the steps performed by the controller to lower the temperature of a reaction mixture to a desired setpoint temperature. In step 802, the controller sets a variable target temperature that is initially lower than the desired setpoint temperature. For example, if the setpoint temperature is 60 °C, the initial value of the variable target temperature may be set 2 to 10°C lower, i.e., 50 to 58°C. In step 804, the controller activates the fan until the actual measured temperature of the plates is less than or equal to a threshold value, preferably the variable target temperature. In step 806, the controller deactivates the fan and increases the target temperature, preferably by exponentially decaying the amount by which the variable target temperature differs from the setpoint temperature using the exponential decay equation given above. For cooling, tau is preferably in the range of 1 to 5 seconds with a preferred value of about 3 seconds . As in the heating example given above, tau may be determined empirically for each heat-exchanging module during testing or calibration and stored in the module's memory. Alternatively, the variable target temperature may be linearly increased. In step 808, the controller determines a level of power to be supplied to the heating elements to raise the temperature of the plates to the increased target temperature. The controller determines the level of power by inputting the increased target temperature to the PID control algorithm. In step 810, the controller sends a control signal to the power and source control circuit in the base instrument to provide power to the heaters at the level determined. In decision step 812, the controller determines if the variable target temperature is greater than or equal to the setpoint temperature. If it is not, the controller returns to step 806, increasing the target temperature, and the loop continues until the variable target temperature is greater than or equal to the setpoint temperature . When the variable target temperature is greater than or equal to the setpoint temperature, the lower-temperature routine ends and steady-state PID control begins. Fig. 22 is a graph illustrating one example of thermal control according to the second embodiment of the invention. A desired thermal profile is represented by a curve 201. The thermal profile starts at a first setpoint temperature S 1 , e.g. 60 °C, jumps to a second temperature S 2 , e.g. 95 °C, at time t λ , and returns to the first setpoint temperature S x at time t 4 . The curve 202 represents the first variable target temperature for controlling the heating of the thermal plates. The curve 203 represents the actual temperature of the plates as measured by the thermistors, and the curve 204 represents the actual temperature of a reaction mixture heated by the plates. At time t l7 the variable target temperature is set to an initial value, e.g. 98 °C, that exceeds the second setpoint temperature S 2 . The plates are rapidly heated towards the variable target temperature until the temperature of the plates hits a threshold temperature. In this example, the threshold temperature is the setpoint temperature S 2 , which the plates reach at time When the temperature of the plates hits the threshold temperature at time t 2 , the controller begins to exponentially decay the amount by which the variable target temperature exceeds the setpoint temperature S 2 and continues to decay the target temperature until it equals the setpoint temperature at time t 3 . Setting the variable target temperature above the setpoint temperature causes the plate temperature, as shown by the curve 203, to temporarily overshoot the setpoint temperature S 2 until the temperatures equalize at time t 3 . This in turn causes the temperature of the reaction mixture, as represented by the curve 204, to heat more rapidly and to conform more closely to the desired temperature profile represented by curve 201. The closer temperature conformity of the reaction mixture has numerous advantages, such as inhibiting unwanted side reactions, inhibiting the formation of air bubbles that prevent optical detection, etc. Similarly, the temperature of the reaction mixture during cooling can be made to conform more closely to the desired thermal profile by setting a second variable target temperature, as shown by the curve 205, that is initially lower, e.g. 55 °C, than the setpoint temperature S 1 . The thermal plates and reaction mixture are cooled by the fan until the plate temperature, as represented by the curve 206, reaches a predetermined temperature below the setpoint temperature S at time t 5 . The controller then begins to increase the target temperature by exponentially decaying the amount by which the target temperature differs from the setpoint temperature S until the temperatures are equal at time t 6 . The controller then begins standard PID control to maintain a steady-state. It will be apparent to those skilled in the art that the pseudo code relating to Figs. 14-17 and 20-21 can be implemented in an appropriate object-oriented programming language, such as C+ or Java. The multi-site reaction system of the present invention may find use in many applications. The system may be utilized to perform chemical reactions on samples, e.g., nucleic acid amplification. For example, samples may be mixed with a polynucleotide, a polymerase such as Taq polymerase, nucleoside triphosphates, a first primer hybridizable with the sample polynucleotide, and a second primer hybridizable with a sequence complementary to the polynucleotide. Some or all of the required reagents may be present in the reaction vessel as shipped, or they may be added to the sample and the reaction mixture delivered through the inlet port of the vessel. Alternatively, the reagents may be delivered to the reaction chamber of the vessel independently of the sample. The polymerase chain reaction may be performed according to methods well known in the art . Although polynucleotide amplification by polymerase chain reaction has been described herein, it will be appreciated by persons skilled in the art that the devices and methods of the present invention may be utilized equally effectively for a variety of other polynucleotide amplification reactions and ligand-binding assays. Such additional reactions may be thermally cycled, such as the polymerase chain reaction, or they may be carried out at a single temperature, e.g., nucleic acid sequenced-based amplification (NASBA) . Moreover, such reactions may employ a wide variety of amplification reagents and enzymes, including DNA ligase, T7 RNA polymerase and/or reverse transcriptase, among others. Polynucleotide amplification reactions that may be practiced in the system of the invention include, but are not limited to: (1) target polynucleotide amplification methods such as self-sustained sequence replication (3SR) and strand-displacement amplification (SDA) : (2) methods based on amplification of a signal attached to the target polynucleotide, such as "branched chain" DNA amplification; (3) methods based on amplification of probe DNA, such as ligase chain reaction (LCR) and QB replicase amplification (QBR) ; (4) transcription-based methods, such as ligation activated transcription (LAT) and nucleic acid sequence-based amplification (NASBA) ; and (5) various other amplification methods, such as repair chain reaction (RCR) and cycling probe reaction (CPR) . In addition to the aforementioned amplification methods, other chemical or biochemical reaction applications are anticipated. For example, temperature controlled lysis of cells is another application of the intended invention, which may or may not compliment amplification methods described above. In many cases, this is accomplished by raising the temperature of the solution containing the cell to 37°C for a few minutes to allow the action of proteolytic enzymes followed by raising the temperature and holding at 95°C. After a few seconds to minutes, the cell is lysed and the target component, such as nucleic acid, is released and can then be further processed, e . g. , amplified. In other applications, it may be desired to immediately stop any further chemical reactions immediately after the lysis by lowering the temperature to 0° to 4°C, such as in the case when studying the mRNA expression state using rapid thermal polymerase chain reaction. The rapid thermal ramping as provided by the system of the invention enables such functionality. Furthermore, the disclosed apparatus can be utilized to control and interrogate chemical reactions. In enzyme kinetic studies, for example, it is advantageous to hold the test reaction mixture at a reduced temperature, such as 0 to 4°C, before starting the reaction, and then to quickly bring the reaction mixture from this reduced hold temperature, e . g. 4°C, to an optimal reaction temperature. Unwanted side reactions occurring at intermediate temperatures are reduced or eliminated, allowing for more accurate measurements and higher purity of product. Moreover, this approach can be extended to more complex chemical and biochemical reactions that can be controlled and studied by enabling changes to multiple different temperatures, or to periodically reduce the temperature to stop the reactions. Such temperature control can be exploited for ligand binding reactions such as fluorescence homogenous immunoassays. Because the reaction start event can be precisely executed and the subsequent reaction-hold temperature accurately controlled without thermal gradients, better assay performance may be achieved. Other applications of the invention are intended to be within the scope of the invention where those applications require the transfer of thermal energy to a chemical reaction. The present invention has been described above in varied detail by reference to particular embodiments and figures. However, it is to be understood that modifications or substitutions may be made to the devices and methods described based upon this disclosure without departing from the broad scope of the invention. Therefore, the scope of the invention should be determined by the following claims and their legal equivalents.

Claims: CLAIMS What is claimed is: 1. A system for thermally controlling a plurality of reaction mixtures, the system comprising: a) a plurality of reaction vessels for holding the mixtures ; b) a corresponding plurality of heat-exchanging modules for receiving the vessels, wherein each of the modules comprises: i) at least one thermal plate for contacting one of the vessels; ii) a heating element coupled to the plate for heating the reaction mixture contained in the vessel; and .iii) a temperature sensor for measuring the temperature of the plate; c) at least one power regulator for regulating the amount of power supplied to the heating element of each heat-exchanging module; d) at least one memory for storing for each of the heat-exchanging modules: i) a pulse intensity value indicating an intensity of a power pulse to be supplied to the heating element to heat the thermal plate to a desired setpoint temperature; and ii) a pulse length value indicating a duration of the power pulse to be supplied to the heating element to heat the thermal plate to the setpoint temperature; and a controller in communication with the memory, the power regulator, and with the temperature sensor of each heat-exchanging module, wherein the controller includes program instructions for independently controlling each heat-exchanging module to heat the reaction mixture contained therein by: i) sending a control signal instructing the power regulator to provide the power pulse to the heating element at the intensity and for the duration indicated by the pulse intensity value and the pulse length value, respectively, stored for the module; ii) receiving temperature signals from the temperature sensor indicating measured temperatures of the plate; iii) terminating the power pulse when the measured temperature of the plate reaches a threshold value or when the duration of time indicated by the pulse length value has elapsed; and iv) adjusting the pulse length value or the pulse intensity value stored in the memory in dependence upon the difference between the setpoint temperature and the measured temperature of the plate after the power pulse is completed. 2. The system of claim 1, wherein each of the heat- exchanging modules further includes a cooling device for cooling the thermal plate and reaction mixture, the memory further stores for each of the heat- exchanging modules a cooling length value indicating a duration of time the cooling device is to be activated to cool the thermal plate to a second setpoint temperature, and the controller further includes program instructions for independently controlling each heat-exchanging module to cool the mixture contained therein by: i) activating the cooling device to begin cooling the thermal plate and reaction mixture; ii) receiving temperature signals from the sensor indicating measured temperatures of the plate; iii) deactivating the cooling device when the measured temperature of the plate decreases to a predetermined value or when the duration of time indicated by the cooling length value has elapsed; and iv) adjusting the cooling length value stored in the memory in dependence upon the difference between the second setpoint temperature and the measured temperature of the plate after the active cooling is completed. 3. The system of claim 1, wherein each of the heat- exchanging modules further includes at least one optical detector in communication with the controller for generating optical data regarding the reaction mixture in the module, and wherein the controller further includes program instructions for processing the optical data to adjust optical detection parameters . 4. The system of claim 1, wherein each of the heat- exchanging modules further includes at least one optical detector in communication with the controller for generating optical data regarding the reaction mixture in the module, and wherein the controller further includes program instructions for processing the optical data to adjust at least one process control selected from the group consisting of temperature control, completion of reaction, profile display, and signal generation regarding addition of reagents. 5. A method for thermally controlling a plurality of reaction mixtures, the method comprising the steps of: a) placing the reaction mixtures in a corresponding plurality of reaction vessels; b) placing the reaction vessels into a corresponding plurality of heat-exchanging modules, wherein each of the modules comprises: i) at least one thermal plate for contacting one of the vessels; ii) a heating element coupled to the plate for heating the reaction mixture contained in the vessel; and iii) a temperature sensor for measuring the temperature of the plate; c) for each of the heat-exchanging modules, storing in at least one memory: i) a pulse length value indicating a duration of a power pulse to be supplied to the heating element of the module to heat the thermal plate to a desired setpoint temperature; and ii) a pulse intensity value indicating an intensity of the power pulse to be supplied to the heating element to heat the plate to the setpoint temperature; d) independently controlling each heat-exchanging module to heat the reaction mixture contained therein by: i) sending a control signal instructing a power regulator to provide the power pulse to the heating element at the intensity and for the duration indicated by the pulse intensity value and the pulse length value, respectively, stored for the module; ii) receiving temperature signals from the sensor indicating measured temperatures of the thermal plate; iii) terminating the power pulse when the measured temperature of the plate reaches a threshold value or when the duration of time indicated by the pulse length value has elapsed; and iv) adjusting the pulse length value or the pulse intensity value stored in the memory in dependence upon the difference between the setpoint temperature and the measured temperature of the plate after the power pulse is completed. The method of claim 5, further comprising the steps of: a) storing for each of the heat-exchanging modules a cooling length value indicating a duration of time a cooling device is to be activated to cool the thermal plate to a second setpoint temperature ; and b) independently controlling each heat-exchanging module to cool the mixture contained therein by: i) activating the cooling device to begin cooling the thermal plate and reaction mixture; ii) receiving temperature signals from the sensor indicating measured temperatures of the plate; iii) deactivating the cooling device when the measured temperature of the plate decreases to a predetermined value or when the duration of time indicated by the cooling length value has elapsed; and iv) adjusting the cooling length value stored in the memory in dependence upon the difference between the second setpoint temperature and the measured temperature of the plate after the active cooling is completed. 7. The method of claim 6, wherein the cooling device is activated prior to the end of a preceding temperature profile step having a setpoint temperature higher than the second setpoint temperature . 8. The method of claim 5, further comprising the steps of: a) for each of the heat-exchanging modules, generating optical data regarding the reaction mixture in the module; and b) processing the optical data to adjust optical detection parameters. 9. The method of claim 5, further comprising the steps of: a) for each of the heat-exchanging modules, generating optical data regarding the reaction mixture in the module; and b) processing the optical data to adjust at least one process control selected from the group consisting of temperature control, completion of reaction, profile display, and signal generation regarding addition of reagents. 10. A system for thermally controlling a plurality of reaction mixtures, the system comprising: a) a plurality of reaction vessels for holding the mixtures; b) a corresponding plurality of heat-exchanging modules for receiving the vessels, wherein each of the modules comprises: i) at least one thermal plate for contacting one of the vessels; ii) a heating element coupled to the plate for heating the reaction mixture contained in the vessel; and iii) a temperature sensor for measuring the temperature of the plate; c) at least one power regulator for regulating the amount of power supplied to the heating element of each heat-exchanging module; and d) a controller in communication with the power regulator and with the temperature sensor of each heat-exchanging module, wherein the controller includes program instructions for independently controlling each heat-exchanging module to heat the reaction mixture contained therein by: i) setting a variable target temperature for the thermal plate, wherein the variable target temperature initially exceeds a desired setpoint temperature for the mixture ; ii) determining a level of power to be provided to the heating element to raise the temperature of the plate to the variable target temperature, wherein the level of power is determined in dependence upon the difference between the variable target temperature and a measured temperature of the plate; iii) sending a control signal instructing the power regulator to provide power to the heating element at the level determined; when the measured temperature of the plate reaches a predetermined temperature below the variable target temperature, iv) decreasing the variable target temperature; v) determining a new level of power to be provided to the heating element to raise the temperature of the plate to the decreased target temperature, wherein the new level of power is determined in dependence upon the difference between the decreased target temperature and the measured temperature of the plate; vi) sending a new control signal instructing the power regulator to provide power to the heating element at the new level; and vii) repeating steps (iv) through (vi) until the variable target temperature is less than or equal to the desired setpoint temperature. 11. The system of claim 10, wherein the controller includes program instructions for decreasing the variable target temperature by exponentially decaying the amount by which the variable target temperature exceeds the desired setpoint temperature. 12. The system of claim 11, wherein the amount by which the variable target temperature exceeds the desired setpoint temperature is exponentially decayed as a function of time according to the equation: Δ = ( Δ max) *e(-t/tau) where Δ is equal to the amount by which the variable target temperature exceeds the desired setpoint temperature, Δ ma χ is equal to the difference between the initial value of the variable target temperature and the desired setpoint temperature, t is equal to the elapsed time in from the start of decay, and tau is equal to a decay time constant. 13. The system of claim 10, wherein the controller includes program instructions for linearly decreasing the variable target temperature . 4. The system of claim 10, wherein each of the heat- exchanging modules further includes a cooling device for cooling the thermal plate and reaction mixture, and wherein the controller further includes program instructions for independently controlling each heat- exchanging module to cool the mixture contained therein by: i) setting a second variable target temperature for the thermal plate, wherein the second variable target temperature is initially lower than a desired second setpoint temperature for the mixture; ii) activating the cooling device to cool the thermal plate until the measured temperature of the plate decreases to a second predetermined temperature below the second setpoint temperature; iii) increasing the second variable target temperature ; iv) determining a level of power to be provided to the heating element to raise the temperature of the plate to the increased target temperature, wherein the level of power is determined in dependence upon the difference between the increased target temperature and the measured temperature of the plate; v) sending a control signal instructing the power regulator to provide power to the heating element at the level determined; and vi) repeating steps (iii) through (v) until the second variable target temperature is greater than or equal to the second setpoint temperature . 15. The system of claim 10, wherein each of the heat- exchanging modules further includes at least one optical detector in communication with the controller for generating optical data regarding the reaction mixture in the module, and wherein the controller further includes program instructions for processing the optical data to adjust optical detection parameters . 16. The system of claim 10, wherein each of the heat- exchanging modules further includes at least one optical detector in communication with the controller for generating optical data regarding the reaction mixture in the module, and wherein the controller further includes program instructions for processing the optical data to adjust at least one process control selected from the group consisting of temperature control, completion of reaction, profile display, and signal generation regarding addition of reagents. 17. A method for thermally controlling a plurality of reaction mixtures, the method comprising the steps of: a) placing the reaction mixtures into a corresponding plurality of reaction vessels; b) placing the reaction vessels into a corresponding plurality of heat-exchanging modules, wherein each of the modules comprises : i) at least one thermal plate for contacting one of the vessels; ii) a heating element coupled to the plate for heating the reaction mixture contained in the vessel; and iii) a temperature sensor for measuring the temperature of the plate; and independently controlling each heat-exchanging module to heat the reaction mixture contained therein by: i) setting a variable target temperature for the thermal plate, wherein the variable target temperature initially exceeds a desired setpoint temperature for the mixture; ii) determining a level of power to be provided to the heating element to raise the temperature of the plate to the variable target temperature, wherein the level of power is determined in dependence upon the difference between the variable target temperature and a measured temperature of the plate; iii) sending a control signal instructing a power regulator to provide power to the heating element at the level determined; when the measured temperature of the plate reaches a predetermined threshold temperature below the variable target temperature, iv) decreasing the variable target temperature; v) determining a new level of power to be provided to the heating element to raise the temperature of the plate to the decreased target temperature, wherein the new level of power is determined in dependence upon the difference between the decreased target temperature and the measured temperature of the plate; vi) sending a new control signal instructing the power regulator to provide power to the heating element at the new level; and vii) repeating steps (iv) through (vi) until the variable target temperature is less than or equal to the desired setpoint temperature. 18. The method of claim 17, wherein the variable target temperature is decreased by exponentially decaying the amount by which the variable target temperature exceeds the desired setpoint temperature. 19. The method of claim 18, wherein the amount by which the variable target temperature exceeds the desired setpoint temperature is exponentially decayed as a function of time according to the equation: Δ = (Δ max )*e(-t/tau) where Δ is equal to the amount by which the variable target temperature exceeds the desired setpoint temperature, Δ max is equal to the difference between the initial value of the variable target temperature and the desired setpoint temperature, t is equal to the elapsed time from the start of decay, and tau is equal to a decay time constant. 20. The method of claim 17, wherein the variable target temperature is linearly decreased. 21. The method of claim 17, further comprising the step of independently controlling each heat-exchanging module to cool the mixture contained therein by: i) setting a second variable target temperature for the thermal plate, wherein the second variable target temperature is initially lower than a desired second setpoint temperature for the mixture ; ii) activating a cooling device to cool the thermal plate until the measured temperature of the plate decreases to a second predetermined temperature below the second setpoint temperature; iii) increasing the second variable target temperature; iv) determining a level of power to be provided to the heating element to raise the temperature of the plate to the increased target temperature, wherein the level of power is determined in dependence upon the difference between the increased target temperature and the measured temperature of the plate; v) sending a control signal instructing the power regulator to provide power to the heating element at the level determined; and vi) repeating steps (iii) through (v) until the second variable target temperature is greater than or equal to the second setpoint temperature. 22. The method of claim 21, wherein the cooling device is activated prior to the end of a preceding temperature profile step having a setpoint temperature higher than the second setpoint temperature . 23. The method of claim 17, further comprising the steps of: a) for each of the heat-exchanging modules, generating optical data regarding the reaction mixture in the module; and b) processing the optical data to adjust optical detection parameters. 4. The method of claim 17, further comprising the steps of: a) for each of the heat-exchanging modules, generating optical data regarding the reaction mixture in the module; and b) processing the optical data to adjust at least one process control selected from the group consisting of temperature control, completion of reaction, profile display, and signal generation regarding addition of reagents.

Inventors: CHRISTEL LEE A, KOVACS GREGORY T A, MCMILLAN WILLIAM A, NORTHRUP M ALLEN, OTHMER KONSTANTIN, PETERSEN KURT E, YOUNG STEVEN J, CHRISTEL, LEE, A., KOVACS, GREGORY, T., A., MCMILLAN, WILLIAM, A., NORTHRUP, M., ALLEN, OTHMER, KONSTANTIN, PETERSEN, KURT, E., YOUNG, STEVEN, J.
Applicants: CEPHEID
Application year: 1999
Main classification: B01L7
IPC codes: B01J19, B01L7, C12Q1, G05B13, G05D23