WO1998022788A1 - Calorimetric system - Google Patents

Calorimetric system Download PDF

Info

Publication number
WO1998022788A1
WO1998022788A1 PCT/US1997/021298 US9721298W WO9822788A1 WO 1998022788 A1 WO1998022788 A1 WO 1998022788A1 US 9721298 W US9721298 W US 9721298W WO 9822788 A1 WO9822788 A1 WO 9822788A1
Authority
WO
WIPO (PCT)
Prior art keywords
sample
temperature
heat
pulse
versus
Prior art date
Application number
PCT/US1997/021298
Other languages
French (fr)
Inventor
Karl A. Gschneidner, Jr.
Vitalij K. Pecharsky
Jack O. Moorman
Original Assignee
Iowa State University Research Foundation, Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Iowa State University Research Foundation, Inc. filed Critical Iowa State University Research Foundation, Inc.
Publication of WO1998022788A1 publication Critical patent/WO1998022788A1/en

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01KMEASURING TEMPERATURE; MEASURING QUANTITY OF HEAT; THERMALLY-SENSITIVE ELEMENTS NOT OTHERWISE PROVIDED FOR
    • G01K17/00Measuring quantity of heat
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01NINVESTIGATING OR ANALYSING MATERIALS BY DETERMINING THEIR CHEMICAL OR PHYSICAL PROPERTIES
    • G01N25/00Investigating or analyzing materials by the use of thermal means
    • G01N25/005Investigating or analyzing materials by the use of thermal means by investigating specific heat

Definitions

  • the present invention relates to adiabatic calorimeter systems and methods .
  • sample is taken to mean a test material placed inside a sample holder with a temperature sensor attached to the sample holder.
  • any type of measurement which requires a knowledge of the exact temperature difference between a certain initial state of the system before a temperature change process (e.g. a heat pulse) begins and the final state of the same system after a temperature change process is finished, ideally must be performed without energy (heat) losses or gains which occur due to the heat exchange with the surrounding calorimeter environment.
  • these conditions are referred to as adiabatic. It is obvious that the ideal adiabatic conditions areas, not practically achievable. Therefore, the only way for the precise determination of the temperature difference between the initial and final states of the system is to design a system which will control, readjust, and maintain the temperature of the environment in accord with the current temperature of the sample.
  • a high vacuum e.g.
  • a possible automated environment temperature control involves use of a commercially available devices (cryocontrollers) which can be programmed for certain temperature setpoints and which will maintain the temperature of the adiabatic heat shield(s) at or close to a selected setpoint.
  • the setpoint typically is set at the sample's temperature or slightly below or slightly above it.
  • cryocontrollers are satisfactory in apparatus where heat exchange between the sample and the controlled adiabatic heat shields is relatively high. This situation typically is achieved by introducing a small amount of an exchange gas into the vacuum chamber (usually helium gas) to improve the thermal conductivity between all parts of the apparatus inside the vacuum chamber. Any cryocooler has a serious disadvantage from the standpoint that it initially overheats the apparatus (exceeds the setpoint). Then after the output power to the controlled heat shield heater is reduced, the temperature of the environment falls below the desired setpoint and continues to oscillate for some time. In high vacuum conditions, this behavior is unacceptable since it will take a relatively long time for the temperature of the adiabatic heat shield to fall once overheated.
  • an exchange gas usually helium gas
  • An object of the present invention is to provide a calorimetric apparatus and method operable without the need for direct determination of the temperature of the environment (i.e. without an adiabatic heat shield temperature sensor) and with the only sensor required being to measure temperature of the sample.
  • Another object of the invention is to provide a calorimetric apparatus and method where the calorimetric measurement is free of such unknown and variable environmental temperature effects as radiation, thermal conductivity of electrical wiring and sample support mechanism, etc.
  • Still another object of the invention is to provide a calorimetric apparatus and method in which electrical power to the adiabatic heat shield heater is adjusted, as necessary, in _ response to a measured sample temperature-versus-time behavior s before and after a previous heat pulse to provide a subsequent sample temperature-versus-time change that is within preset control limits that simulate thermal equilibrium of the sample relative to the environment.
  • Still a further object of the present invention is to provide a calorimetric apparatus and method operable over a temperature range of approximately 3K to approximately 350K depending upon the refrigerant used and in optional dc magnetic fields up to 12T.
  • the present invention provides apparatus and method for making a series of calorimetric measurements with respect to a sample disposed in a sample holder having a sample heater to provide a sample heat pulse.
  • the sample holder is disposed within an adiabatic heat shield including an electrical heat shield heater.
  • the sample temperature is measured before and after each pulse. From this measurement, a sample temperature-versus-time change is determined before and after each heat pulse.
  • the electrical power output to the adiabatic shield electrical heater is controlled and adjusted, if necessary, in response to the previously measured sample temperature-versus-time change before and after a previous heat pulse to provide a subsequent sample temperature-versus-time change that is indicative of the sample being in a thermal equilibrium state relative to its environment. Control of the adiabatic heat shield heater power in response to prior in-situ sample temperature-versus-time behavior renders the calorimetric measurement free of such unknown and variable environmental temperature effects as radiation losses, thermal conductivity of electrical wiring and sample support mechanism, etc.
  • Apparatus in accordance with an embodiment of the invention for measuring heat capacity of a sample where a series of measurements are taken in succession comprises a sample holder in which a sample is disposed; a temperature sensor and a sample - heater of which both are thermally coupled to the sample; and ⁇ S * ⁇ adiabatic heat shield which includes an electrical heater and which surrounds the sample holder.
  • Electrical power supply means provides the electrical power to the heat shield heater with the electrical power being adjusted by power adjusting means, if necessary, from one measurement to the next in response to the sample temperature-versus-time change determined before and after a previous heat pulse to provide a subsequent sample temperature- versus-time change that is indicative of the sample being in thermal equilibrium state relative to its environment; e.g. exhibiting a substantially linear temperature-versus-time change before and after the subsequent heat pulse and at a temperature change rate indicative of a sample thermal equilibrium state.
  • the electrical power supply means may comprise a dc current source under computer control to incrementally vary, if necessary, the power level of the electrical output to the heat shield heater from one measurement to the next in response to the prior sample temperature-versus-time change determined before and after a prior heat pulse as necessary to provide the subsequent sample temperature-versus-time change that is substantially linear before and after the subsequent heat pulse and at a temperature change rate indicative of a sample thermal equilibrium state.
  • the present invention thus in an embodiment controls and adjusts the electrical power output to the adiabatic heat shield heater within thermal equilibrium-simulating power control limits that provide measured sample temperature-versus-time changes that are independent of the aforementioned unknown and variable environment temperature effects.
  • the rate of change of sample temperature before the temperature change process (foreperiod) must not be negative (must be zero or positive) and must be within a preset rate of change indicative of a sample thermal equilibrium state.
  • the rate of change of sample temperature after the temperature change process (afterperiod) * ⁇ may be positive, zero, or negative and also must be within a preset rate of change which generally corresponds to the rate of change that occurred during the foreperiod.
  • Another embodiment of the present invention disposes the sample holder proximate a source of refrigerant that is thermally switched to the sample to provide sample temperatures ranging from approximately 3K to 350K depending upon the refrigerant used.
  • the temperature sensor comprises a thin film resistor calibrated and operable over a range of temperatures from abut 3K to 350K to this end.
  • means can be provided to subject the sample to dc magnetic fields such as from 0 to 12 Tesla (0 to 120 kOe).
  • FIG. 1 is a schematic diagram of adiabatic calorimeter apparatus in accordance with an embodiment of the invention showing a cryostat and calorimeter insert loaded in the cryostat.
  • Figure 2A is an enlarged view of the insert.
  • Figure 2B is an enlarged view of the adiabatic heat shield with the electrical resistance heater wire wound around the shield.
  • Figue 2C is an enlarged view of the outer and middle radiation shields and the adiabatic heat shield, Fig. 2B, relative to the bottom of the helium pot, the sample mounting frame, and the sample/sample holder system.
  • Figure 3A, 3B are enlarged schematic views of the sample - holder. " , is *
  • Figure 4 is a perspective view of the sample holder shown proximate the bottom of the helium pot of the calorimeter insert.
  • Figure 5A is a schematic electrical block diagram showing a sample and adiabatic heat shield electrical resistance heater with associated dc current source, nanovoltmeter, digital multimeter/scanner, controller, and desktop computer.
  • Figure 5B is a schematic diagram showing all measuring devices and computer relative to a bus command/data line.
  • Figure 6 is a graph of before- and after-pulse temperature versus time slopes and adiabatic shield heater output for a copper standard weighing 1.6217 grams calibration run.
  • Figure 7 is a graph of heat capacity of a copper standard weighing 1.6217 grams from 3.2 to 350K.
  • Figure 7A is an inset in Figure 7 and represents estimated uncertainties (the area delineated with the solid lines) together with deviations of observed data from a recommended values (filled triangles) in percent.
  • Figures 8 and 9 are time-temperature heat-pulse diagrams.
  • Figure 10a is an after pulse relaxation time-temperature diagram and Figures 10b, 10c, and lOd are time-temperature heat- pulse diagrams.
  • calorimetric hardware consists of the following major parts: a) cryostat 2 with a 12 Tesla superconducting magnet 4 (5cm clear magnet coil bore with a 1cm diameter x 1cm high homogeneous magnetic field) manufactured by Cryogenic Consultants Ltd., London, England with a room temperature double layered vacuum insulated insert 6 which leaves approximately 2.5cm clearance inside the magnet bore space; b) a calorimeter insert 8, Figures 1-2, which is received in the insulated insert 6 and which holds the calorimeter and a low temperature liquid helium/nitrogen pot 10 which allows cooling of the calorimeter to approximately 3K (separation between pot 10 - and sample holder 12 ( Figure 3) described below is critical r in ⁇ reaching this low temperature, the shorter such a separation the better, such as 5.0 cm separation); c) current sources and voltage measuring devices shown in Figures 5A, 5B which include two Keithley model 224 dc current sources, a Keithley model 181 nanovolt
  • the insert 8, Figure 2A includes a high vacuum conduit or line 8a, a plurality of heat dissipating baffles 8b, and a vacuum-tight, feed-through 8c for electrical connector wires 8d to the electrical components as shown in Figures 5A, 5B.
  • the insert 8 also includes a helium/nitrogen exhaust and helium pumping conduit 8e having a valve 8f with the conduit 8e communicated to the pot 10 and to a helium pumping system which permits one to lower the temperature of the liquid helium inside the helium pot 10 from about 4.2K to about 1.5 to 1.7K.
  • a copper heat shield assembly 8g is disposed about the sample holder 12, Figure 3.
  • Figure 2B shows in detail the controlled portion of the adiabatic heat shield.
  • Figure 2C shows the shield assembly as comprising three hollow copper cylinders: the outer shield 70, the middle shield 60, and the inner adiabatic shield 50 which was just described (Fig. 2B).
  • the middle shield 60, the outer shield 70 and the inner shield 50 form a series of three concentric cylinders which form the nearest sample surroundings.
  • the inner shield 50 has an active heater thermally connected to ⁇ it (i.e. wound around it). The temperature of the middle and the outer shields floats and depends on the output power supplied to the inner shield heater, on the quality of the insulating vacuum, and on the conditions (temperature) outside the outer shield.
  • the sample holder 12 is made from a low-oxygen pure copper (99.99+wt.% Cu) because a high thermal conductivity is necessary for a calorimeter capable to cover a wide range of temperatures from below 4.2 to 350K.
  • the sample holder 12 is shown schematically in the Figure 3A and in perspective in Figure 3B. It is a clamp-like sample holder, where the sample S is held tightly to the main round copper plate 20 by pressure developed from the copper screw 21a disposed on copper frame 21. A measured amount of 50:50 (by volume) mixture of Apiezon-N grease and fine silver powder 22 is placed between sample S and main holder plate 20 to improve the thermal connection. All copper parts of sample holder 12 are soft soldered together. A CERNOX thin film resistor temperature sensor 24 is inserted in a tightly fitted copper clamp 26 and is held in place by using GE 7031 varnish, which also improves the thermal contact. A thin film strain gage CEA-06-062UW-350 from Measurements Group, Inc.
  • sample heater 28 i.e. the strain gage has a resistance of 350 Ohms and is used as a resistance heater
  • the sample heater 28 provides a heat pulse to the sample S via the plate 20.
  • the sample heater power supply comprises a Keithley model 224 dc current source. The use of the silver epoxy was dictated by the fact, that upon thermal cycling between room temperature and 4.2K, the GE 7031 varnish in time develops microcraks, leading to an unsatisfactory thermal connection of the sample heater 28 and sample holder 12.
  • Cooling of the sample holder 12 and sample S is provided by means of mechanical heat switch 30 comprising a short copper wire connected to and disconnected from a modified alligator clamp 31, which is permanently thermally shortened to the low temperature helium pot 10 located above sample holder. . ..-
  • the heat switch is connected to the alligator clamp 31, when its two jaws are closed (i.e. the heat switch wire is squeezed between the two jaws of the clamp), and is disconnected from the clamp 31 when its jaws are opened (spaced apart).
  • the clamp 31 is operated by metal strings, Fig. 4, which extend out of the insert and cryostat for manual actuation to open and close the clamp jaws.
  • the sample holder 12 is permanently hung by means of four thin (0.15mm) nylon threads 32, Figure 2C and 4, to a massive copper frame 34.
  • the frame 34 is permanently attached to the bottom of a low temperature helium pot 10.
  • the low temperature helium pot 10 together with the massive copper frame 34 and including the hung sample holder 12 form the removable part, Fig. 2A, of the calorimetric system which fits inside the room temperature vacuum jacketed insert 6 inside the cryostat 2.
  • the thermal insulation of the calorimeter with the mechanical heat switch 30 opened is ensured by pumping the insert space 7 ( Figure 1) where the calorimeter 8 is located down to a vacuum level of 1 x 10 "7 Torr.
  • the pumping system comprises a high capacity mechanical forepump 40 providing vacuum of an order of 10 "3 Torr) and a high capacity diffusion pump 41 (providing vacuum of an order of 10 "7 Torr) connected to conduit 8a.
  • the copper heat shield assembly 8g comprises a set of heat shields which surround the massive copper frame 34 that holds the calorimeter.
  • the set of heat shields consists of three cylindrical copper shields.
  • Two spaced apart outer shields are simple radiation shields, and their temperatures drift depending on the inner shield heater output. More details on how the temperature of the inner adiabatic heat shield 50 is controlled are given in the next section. Data Collection Software and Adiabatic Heat Shield Control
  • the invention ' provides a completely s - automatic calorimetric system, where all data collection procedures are fully automated and are computer controlled.
  • Figures 5A and 5B show a schematic diagram of how all system components are connected together with a personal computer.
  • the system uses the conventional IEEE-488 general interface which ensures fast and reliable command, and data transfer from the computer and back from measuring devices.
  • the main part of data collecting software is comprised of FORTRAN subroutines complied using Microsoft FORTRAN-5.10 compiler. All procedures, responsible for command and data interchange between the computer, IEEE-488 board and measuring devices are written in C language and compiled using Microsoft Visual C/C++ - 8.00 compiler. Both FORTRAN- and C-based codes are linked together into a single executable module, which supports the following: a simple calorimeter temperature monitor which reads the resistance of a thin film resistor (sensor 24), editing several data collecting parameters and the actual process of collecting data over a specified temperature interval.
  • the data collecting software has been designed to ensure that no measured heat capacity data are lost in the case of accidental power failure.
  • the software output is organized into two output data files.
  • the first one contains actual results of heat capacity measurements in a form of list of the median temperatures, specific heats (molar heat capacity of the sample, and the total and sample holder heat capacities), with their calculated standard uncertainties, and the data collection time.
  • the second output file contains all the raw data, including sample heater current and voltage, inner heat shield output, and the actual temperature-time tables for every data point taken, so that this file may be reprocessed at later date for re-valuation of the heat capacity if the need arises.
  • all collected data are displayed in two windows in a form of two graphs: one is the plot of heat capacity versus temperature for all data points collected up to_ the moment, and the second is a temperature-time diagram for they- data point currently being measured.
  • Such an instantaneous real time visualization permits a quick check of whether or not everything is going well with data collection by means of just a brief look at the computer monitor screen.
  • a sensorless algorithm to control the inner adiabatic shield temperature which is done automatically by data collecting software rather than by the cryocontroller ' s microprocessor or computer.
  • the algorithm is based on a constant monitoring of the calorimeter temperature behavior versus time before and after the heat pulse (i.e. without an energy input from the sample heater). Since the heat flow between the sample holder, the adiabatic heat shield, and the surroundings inside the vacuum chamber is governed by Newton's law of cooling, then the behavior of the temperature of the sample should be one of the following:
  • the basic shield heater 51 manipulations therefore, become as follows: 1) when the sample's temperature in the afterperiod rises more than 0.03 K/min, then the software reduces the shield heater power and proceeds with measurements of the next data point; 2) when the sample's temperature in the afterperiod rises less than 0.03 K/min, then the software does not affect the shield heater power and proceeds with measurements of the next data point; 3) when the sample's temperature in the afterperiod is decreasing, this means that for the following foreperiod it would have the same sign too, then the software increases the power of shield heater 51 and monitors sample temperature change for half of the time usually required to accomplish the measurements in foreperiod or afterperiod. This operation is repeated until temperature change becomes positive during this "waiting" time, and then the software
  • the power supply for the adiabatic heat shield heater 51 is a TRI Research cryocontroller, model T-200, which is rated at 50W full power. All power output adjustments are made at small increments equal to 0.1% of rated power, i.e. at 0.05W (50mW) steps. This was found to be sufficiently quick and accurate way to control the temperature of the surroundings.
  • a sample's temperature change slope is small and positive for every foreperiod, and has approximately the same magnitude, but negative in afterperiods, indicating, that adiabatic heat shield 50 was maintained at almost ideal conditions: approximately at median sample temperature.
  • Such an excellent control ensures, that the calorimetric data can be taken at a highest possible accuracy.
  • the important point here is that there is no preset profile for the shield heater power output, i.e. it is governed only by the current state of the heat transfer between the surroundings and the calorimeter.
  • No calorimeter can be used without a precise calibration; i.e. without deteriming the raw heat capacity of a sample holder and related components such as heater, temperature sensor, grease, etc. and then checking out the calibration result against a well established heat capacity standard. It has been accepted that high purity copper is the best calorimetric standard for temperature regions mentioned above since its heat capacity is considered to be well established within an accuracy better than 0.5%.
  • heat capacity (C) is a thermodynamic function which represents the material's response to introduced amount of energy (Q) through change of the temperature ( ) and is defined as:
  • SUBSi ⁇ UTE SHEET (RULE 26 ⁇ least for a certain period of time immedia tely before and ins tan tly after the heat pulse, ii) the heat pulse has been applied to a sample instantly (over infinitely short period of time), and iii) the sample responds to a heat pulse by rising its temperature immediately, i.e. assuming that the sample ' s thermal conducti vi ty i s unlimi ted (or is infinitely high) .
  • These ideal conditions are shown as solid lines in Fig.8.
  • the experimental procedure of heat capacity measurement would be very simple and requires only a knowledge of sample's temperature before the heat pulse (i.e.
  • T m i.e. temperature for which heat capacity has been measured
  • SUBSUME SHEET (RULE 26) the added energy throughout the sample always require a certain time.
  • a typical real sample behavior is shown in Fig .8 as open circles in a temperature ( T) versus time ( t) plot. Therefore, the only practical way for accurate experimental measurements to be performed is to create conditions as close to ideal as possible. This means at least the following:
  • the sample must be thermally insulated from the surroundings as well as possible, and the temperature of the surroundings should be kept as close to the sample's temperature as possible to minimize any positive and negative heat leaks.
  • Such conditions are typically considered as semiadiaba ti c, and usually when the temperature difference between sample and surrounding is small, the sample's temperature changes linearly (see the following section) during gi ven peri od of time .
  • the calorimeter design should ensure that sample/sample holder assembly after the heat pulse comes to internal thermal equilibrium as well as to thermal equilibrium with the surroundings as soon as possible.
  • the open circles in Fig .8 show, that sample's temperature is rising slowly and linearly before the heat pulse (time t j _ ) due to a small positive heat leak from the surroundings.
  • the heat pulse which begins at ⁇ causes a sharp increase of a sample's temperature until the time t ⁇ , when the heat pulse has been canceled. It takes a certain time (from t ⁇ until t 2 , which usually is referred to as the internal thermal relaxation time, or simply the relaxation period) for the energy to be distributed evenly through the sample/sample holder assembly. After time 2 the temperature again shows a linear behavior with time.
  • the determination of the real temperature rise ⁇ T which replaces the ideal ⁇ T, has to be done through a least squares linear approximation of the temperature versus time behavior before the heat pulse ( t ⁇ and after the heat pulse (starting at t 2 ) using the following extrapolation of "the before and after heat pulse linear regions to a median time t ⁇ , where
  • T time ( t) is an independent variable
  • T temperature ( T) is a dependent variable
  • thermometry varies with temperature (see below) .
  • the random nature of temperature sensor and time measuring errors may be rather helpful in this particular case, and allow us to propose a more elegant solution which is independent of a randomly chosen "preset small” values.
  • A is the derivative intercept and B is the derivative slope.
  • a standard uncertainty of both least square parameters A and B can be determined.
  • a standard uncertainty of the slope rather than compare a derivative's slope with a randomly chosen, predetermined small value to establish whether or not the former is close enough to zero, we now may use a standard uncertainty of the slope as a criteria of its zeroness in a following way:
  • N is a constant value. Therefore, we propose to replace a preset, small and common for every measurement series "zero" value by another small value which is now a unique one for every series of temperature measurements, and which will vary automatically with changing temperature sensor sensitivity and accuracy. It is obvious, that the higher the precision of temperature readings, the smaller the uncertainty in slope determination and vice versa.
  • Figure 9 displays the same real time- temperature diagram as shown on Fig.8, together with a derivative curve (see Fig .9 caption for details). It is obvious, that before introducing any energy to the calorimeter (i.e. before the heat pulse) the presence of semiadiabatic and equilibrium conditions has to be detected. We have chosen, that at least 10 consecutive temperature readings should satisfy conditions, described above (Eqs.8-11). Then, data collection software starts a heater to introduce a predetermined amount of energy into the calorimeter, which causes a sharp rise of calorimeter's temperature.
  • the chosen formalization parameters discussed above (10 consecutive data points and agreement within ⁇ 2 ⁇ ) can be changed and adjusted dependending on the actual calorimetric hardware.
  • usage of the suggested criterion is based on standard uncertainties, determined from the least squares.
  • the least squares uncertainties ( ⁇ ) are inversely proportional to square root of number of observations (n) less number of independent least squares parameters (m) , i.e. Therefore, particular care should be taken that standard uncertainties are not overestimated, i.e. number of observations has to be significantly higher than number of independent variables. In our case, we have chosen 10 observations to determine 2 independent least squares variables, and this probably can be considered as a sufficient lower limit.
  • Fig.10 illustrates how the developed formalization algorithm works in practice. The results were obtained while measuring the non-magnetic heat capacity of a solid state electrotransport purified polycrystalline Dy sample. It is well known, that ferromagnetic Dy undergoes magnetic and structural first order phase transitions at 91 K on warming and remains antiferromagnetic up to 180K, where the second order antiferromagnetic to paramagnetic phase transition occurs. It is obvious from Fig.10a, that in the ferromagnetic state, the thermal conductivity of calorimeter (the copper sample holder plus a piece of the Dy-metal weighting 1.2238g) is lowered by approximately a factor of four (i.e. the internal thermal relaxation time increases from approximately 11 to approximately 45 seconds) .
  • Figure 10b shows the time-temperature profile of a typical data point in the ferromagnetic region. The longest relaxation time was required at the temperature where
  • Integer* sec passed, stay, ss, mm, mark, ssO, mmO, ssl, mml, sssO,mmmO
  • TtO 10 , Ttl (10) , Dts (10) , Tds (10)
  • Nsp Spec_rgn(int2 (10) , ttO, ttl, dts, tds)
  • I index (crnt, ' . ' )
  • Step t_step*s_t ! Delta (T)
  • Pulse_t ⁇ me pulse_t ⁇ m
  • Nflatr min0 (maxO (mflatr+ (lpnt-1) /2, 5) ,mflatr)
  • T ⁇ rae_d ⁇ nt (delt*1000+0.5 ) ' T-reading delay (ticks)
  • Timestamp elapsed (ss0,mm0, ssi, mml) /3600.00+addt
  • Elapsed_seconds Elapsed_seconds+elapsed (s2 , m2 , s3, m3) End if
  • Drvt (n) (temp_read ⁇ ngs (n) -temp_read ⁇ ngs (n-1) ) ' 1-st derivative * / (read ⁇ ng_t ⁇ me (n) -readmg_t ⁇ me (n-1)) Call realtime ( ⁇ nt4 (n+10000) ,nstr) End if
  • Pulse_t ⁇ me t ⁇ me ⁇ (ct, R, step, pulse_current, f ⁇ _max, f ⁇ _m ⁇ n, p_t)
  • Pulse_curr ⁇ nt abs (current ) ' Actual pulse current
  • N nflat ' Start point count from Nflat
  • NewF ' Pulse ON' '
  • Temp_read ⁇ ngs (n) sample_temp (act ⁇ ve_sensor, s3,m3, SsT, jc)
  • Elapsed_seconds elapsed_seconds+elapsed ( s2 , m2 , s3 , m3 )
  • S2 s3
  • M2 m3
  • Drvt (n) (temp_read ⁇ ngs (n) -temp_readmgs (n-1) ) ' l-s derivative
  • T_heat t_heat+ (vl+volt) *pulse_current*elapsed (psO, pmO, si, ml) *0.5
  • Temp_readmgs (n) sample_temp (act ⁇ ve_sensor, s3,m3,SsT,jc)
  • SigT (n) SsT
  • Timestamp elapsed (ss0,mm0, ssi, mml) /3600.00+addt Write (NewS, ' ( 11 . 2 , a) ' ) timestamp, 'hrs ' If (Temp_read ⁇ ngs (n) . ge . tm) then
  • Drvt (n) ( temp_read ⁇ ngs (n) -temp__readmgs (n-1) ) ' 1-st derivative
  • Pulse_t ⁇ me t ⁇ me ⁇ (ct, R, step, pulse_current , f ⁇ _max, fI min, p_t )
  • T_med r eadmg_t ⁇ me ( 2 ) * 0.5
  • T ⁇ me_d2 max0 (t ⁇ me_d*0.9, 4000) End if
  • T ⁇ me_d m ⁇ n0 (maxO ( ⁇ nt4 (deltt* 1000+0.5 ) , ⁇ nt (del t* 1000) ) , ⁇ nt4 (12000))
  • Temp_readings (n) sample_temp (active_sensor, s3,m3, ⁇ sT,jc)
  • Timestamp elapsed (ss0,mm0, ssi, mml) /3600.00+addt
  • Reading_time (n) Elapsed_seconds ! Store reading time
  • Drvt (n) ( temp_readings (n) -temp_readings (n-1) ) ! 1-st derivative * / (read ⁇ ng_time (n) -read ⁇ ng_time (n-1))
  • T ⁇ mestamp elapsed (ssO, mmO, ssi, mml) /60. + ⁇ addt* 60.
  • Timestamp lapsed (ssO, mO, ssl, mml) /3600.00+addt
  • Step amml (stepmax, step)
  • P_t p_tt
  • Pulse_t ⁇ me t ⁇ me ⁇ (ct, R, step, pulse_current, f ⁇ _max, f ⁇ _m ⁇ n, p_t) ' dQ for addenda
  • delta_t delta_t-shield_step*O.S
  • delta_t delta_t-sh ⁇ eld_step
  • delta_t delta_t-sh ⁇ eld_step
  • delta_t delta_t-shield_step
  • delta_t delta_t-shield_step
  • Delta_t amaxl (delta_t, 0.0) End if If (slp.lt.0.0) then ! Slope less than specified
  • delta_t delta_t+shield_step
  • Delta_t aminl (delta_t, set_max)
  • T ⁇ me_dl int4 (pau* 1000 + 0 . 5 ) ! T- readmg del ay ( t ⁇ cks )
  • Temp_readings (n) sample_temp ( active_sensor , s3 , m3 , S sT , j c ) ! Sampl e T
  • T0 t_max+0 . 1
  • Timestamp elapsed (ss0,mm0, ssl, ml) /3600.00+addt Write (NewS, ' (f7.2,a) ' ) timestamp, 'hrs' Call out_col (in 4 (isign (8, ark) ) , Olds, NewS)
  • Elapsed_seconds Elapsed_seconds+elapsed ( s2 , m2 , s3 , m3 )
  • Drvt (n) (temp_readmgs (n) -temp_readings (n-1 ) ) ! 1-st derivative * / (reading_time (n) -reading_t ⁇ me (n-1))
  • Nflat min0 (right+1, nflatr+1)
  • ⁇ _t sample_temp (active_sensor, s2 , m2 , SsT, j c)
  • Subroutine Filemon (3 save, 3 file, npnt, addt) Implicit Integer*2 (l-n) Integer*2 act ⁇ ve_sensor, vnumber Real mole
  • Common /heap/ Temp (1024) ,Cadd(1024) ,Ctotal (1024) , Csample (1024) Common /compound/ c_name, u_name, weight, mole, ad_f ⁇ le, output Common /coldat/ pulse_t ⁇ me , pulse_current , act ⁇ ve_sensor, total_heat , total_secs, T_max, T_step, F _ma , t ⁇ me_max, del, p_t, nflatl, stepmax, step in, delr , nflatr

Abstract

Apparatus and method for measuring the heat capacity of a sample (S) where a series of measurements are taken in succession. The apparatus comprises a sample holder (12), a temperature sensor (24), a sample heater (28) for providing a heat pulse upon receiving an electrical output from a first power supply (DC current source in the figure), an adiabatic heat shield (50) in which the sample holder (12) is positioned, and a heat shield electrical heater (51) which receives electrical power from a second power supply (DC current source in the figure). This electrical power being adjusted by a control device (computer in the figure), if necessary, from one measurement to the next in response to a sample temperature-versus-time change determined before and after a previous heat pulse so as to provide a subsequent sample temperature-versus-time change that is substantially linear before and after the subsequent heat pulse. Optionally, the sample (S) may be subjected to DC magnetic fields.

Description

CALORIMETRIC SYSTEM
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. CONTRACTUAL ORIGIN OF THE INVENTION
The United States Government has rights in this invention pursuant to Contract No. W-7405-ENG-82 between the U.S. Department of Energy and Iowa State University, Ames, Iowa, which contract grants to Iowa State University Research Foundation, Inc. the right to apply for this patent.
FIELD OF THE INVENTION
The present invention relates to adiabatic calorimeter systems and methods .
BACKGROUND OF THE INVENTION
Many of the measurements of the properties of materials span temperature regions from cryogenic temperatures (e.g. 4.2 K and below) to above 350-400 K. In many cases, particularly for measurements such as heat capacity and any other calorimetry, a strict requirement is imposed on the quality of thermal insulation. That is, the best thermal insulation of the sample from the surrounding environment must be assured. Hereafter, the term "sample" is taken to mean a test material placed inside a sample holder with a temperature sensor attached to the sample holder.
In general, any type of measurement which requires a knowledge of the exact temperature difference between a certain initial state of the system before a temperature change process (e.g. a heat pulse) begins and the final state of the same system after a temperature change process is finished, ideally must be performed without energy (heat) losses or gains which occur due to the heat exchange with the surrounding calorimeter environment. Usually, these conditions are referred to as adiabatic. It is obvious that the ideal adiabatic conditions areas, not practically achievable. Therefore, the only way for the precise determination of the temperature difference between the initial and final states of the system is to design a system which will control, readjust, and maintain the temperature of the environment in accord with the current temperature of the sample. Typically, a high vacuum (e.g. 10~6 torr or better) provides an acceptable thermal insulation. However, it can not and does not eliminate all of the possible heat flows in a calorimetric system; e.g. heat exchange due to radiation effects, thermal conductivity of electrical wiring and/or sample support mechanisms, etc. All of the previously known apparatus and methods for automated or semiautomated temperature control of the environment and derived heat flow processes use an independent control circuit with a separate temperature sensor(s) directly (thermally) connected to the heat shield(s). The temperature of the surrounding environment is regulated by using one or more controlled temperature shields (i.e. adiabatic heat shields) with incorporated temperature sensor(s) and heater(s) based on the principle of maintaining the temperature of the environment (heat shield) as close as possible to the current temperature of the sample.
Alternately, a possible automated environment temperature control involves use of a commercially available devices (cryocontrollers) which can be programmed for certain temperature setpoints and which will maintain the temperature of the adiabatic heat shield(s) at or close to a selected setpoint. The setpoint typically is set at the sample's temperature or slightly below or slightly above it.
However, regardless of which technique is used for temperature of the environment (heat shield), separate independent temperature sensor(s) is/are necessary for the controlled temperature adiabatic heat shields and control devices are needed to control the heat flow process in the highly thermally insulated vacuum test chamber based on attempts to maintain the temperature of the environment approximately e ual^ to the temperature of the sample.
Commercially available cryocontrollers are satisfactory in apparatus where heat exchange between the sample and the controlled adiabatic heat shields is relatively high. This situation typically is achieved by introducing a small amount of an exchange gas into the vacuum chamber (usually helium gas) to improve the thermal conductivity between all parts of the apparatus inside the vacuum chamber. Any cryocooler has a serious disadvantage from the standpoint that it initially overheats the apparatus (exceeds the setpoint). Then after the output power to the controlled heat shield heater is reduced, the temperature of the environment falls below the desired setpoint and continues to oscillate for some time. In high vacuum conditions, this behavior is unacceptable since it will take a relatively long time for the temperature of the adiabatic heat shield to fall once overheated. When the heat shield temperature finally falls, the temperature of the sample will change such that it will be necessary to readjust the cyrocooler's set point to another value. A similar disadvantage is to be expected using any calorimetric measurement method that is based on comparison of current temperature of the sample and the environment.
An object of the present invention is to provide a calorimetric apparatus and method operable without the need for direct determination of the temperature of the environment (i.e. without an adiabatic heat shield temperature sensor) and with the only sensor required being to measure temperature of the sample.
Another object of the invention is to provide a calorimetric apparatus and method where the calorimetric measurement is free of such unknown and variable environmental temperature effects as radiation, thermal conductivity of electrical wiring and sample support mechanism, etc.
Still another object of the invention is to provide a calorimetric apparatus and method in which electrical power to the adiabatic heat shield heater is adjusted, as necessary, in _ response to a measured sample temperature-versus-time behavior s before and after a previous heat pulse to provide a subsequent sample temperature-versus-time change that is within preset control limits that simulate thermal equilibrium of the sample relative to the environment.
Still a further object of the present invention is to provide a calorimetric apparatus and method operable over a temperature range of approximately 3K to approximately 350K depending upon the refrigerant used and in optional dc magnetic fields up to 12T.
SUMMARY OF THE INVENTION
The present invention provides apparatus and method for making a series of calorimetric measurements with respect to a sample disposed in a sample holder having a sample heater to provide a sample heat pulse. The sample holder is disposed within an adiabatic heat shield including an electrical heat shield heater. The sample temperature is measured before and after each pulse. From this measurement, a sample temperature-versus-time change is determined before and after each heat pulse. For each subsequent measurement, the electrical power output to the adiabatic shield electrical heater is controlled and adjusted, if necessary, in response to the previously measured sample temperature-versus-time change before and after a previous heat pulse to provide a subsequent sample temperature-versus-time change that is indicative of the sample being in a thermal equilibrium state relative to its environment. Control of the adiabatic heat shield heater power in response to prior in-situ sample temperature-versus-time behavior renders the calorimetric measurement free of such unknown and variable environmental temperature effects as radiation losses, thermal conductivity of electrical wiring and sample support mechanism, etc.
Apparatus in accordance with an embodiment of the invention for measuring heat capacity of a sample where a series of measurements are taken in succession comprises a sample holder in which a sample is disposed; a temperature sensor and a sample - heater of which both are thermally coupled to the sample; and ϊS* ~ adiabatic heat shield which includes an electrical heater and which surrounds the sample holder. Electrical power supply means provides the electrical power to the heat shield heater with the electrical power being adjusted by power adjusting means, if necessary, from one measurement to the next in response to the sample temperature-versus-time change determined before and after a previous heat pulse to provide a subsequent sample temperature- versus-time change that is indicative of the sample being in thermal equilibrium state relative to its environment; e.g. exhibiting a substantially linear temperature-versus-time change before and after the subsequent heat pulse and at a temperature change rate indicative of a sample thermal equilibrium state.
The electrical power supply means may comprise a dc current source under computer control to incrementally vary, if necessary, the power level of the electrical output to the heat shield heater from one measurement to the next in response to the prior sample temperature-versus-time change determined before and after a prior heat pulse as necessary to provide the subsequent sample temperature-versus-time change that is substantially linear before and after the subsequent heat pulse and at a temperature change rate indicative of a sample thermal equilibrium state.
The present invention thus in an embodiment controls and adjusts the electrical power output to the adiabatic heat shield heater within thermal equilibrium-simulating power control limits that provide measured sample temperature-versus-time changes that are independent of the aforementioned unknown and variable environment temperature effects.
For purposes of illustration and not limitation, for a series of heat capacity measurements, the rate of change of sample temperature before the temperature change process (foreperiod) must not be negative (must be zero or positive) and must be within a preset rate of change indicative of a sample thermal equilibrium state. The rate of change of sample temperature after the temperature change process (afterperiod) *^ may be positive, zero, or negative and also must be within a preset rate of change which generally corresponds to the rate of change that occurred during the foreperiod. These control limits for the series of electrical pulses permit close proximation of thermal equilibrium conditions and allow the adiabatic heat shield electrical heater to be controlled independent of the actual difference between the sample temperature and the adiabatic heat shield temperature. Such control limits thereby permit calorimetric data to be measured at high accuracy.
Another embodiment of the present invention disposes the sample holder proximate a source of refrigerant that is thermally switched to the sample to provide sample temperatures ranging from approximately 3K to 350K depending upon the refrigerant used. The temperature sensor comprises a thin film resistor calibrated and operable over a range of temperatures from abut 3K to 350K to this end. Moreover, means can be provided to subject the sample to dc magnetic fields such as from 0 to 12 Tesla (0 to 120 kOe).
The aforementioned and other objects and advantages of the present invention will become more readily apparent from the following detailed description taken with the following drawings. DETAILED DESCRIPTION OF THE DRAWINGS
Figure 1 is a schematic diagram of adiabatic calorimeter apparatus in accordance with an embodiment of the invention showing a cryostat and calorimeter insert loaded in the cryostat.
Figure 2A is an enlarged view of the insert.
Figure 2B is an enlarged view of the adiabatic heat shield with the electrical resistance heater wire wound around the shield.
Figue 2C is an enlarged view of the outer and middle radiation shields and the adiabatic heat shield, Fig. 2B, relative to the bottom of the helium pot, the sample mounting frame, and the sample/sample holder system. Figure 3A, 3B are enlarged schematic views of the sample - holder. " , is*
Figure 4 is a perspective view of the sample holder shown proximate the bottom of the helium pot of the calorimeter insert.
Figure 5A is a schematic electrical block diagram showing a sample and adiabatic heat shield electrical resistance heater with associated dc current source, nanovoltmeter, digital multimeter/scanner, controller, and desktop computer.
Figure 5B is a schematic diagram showing all measuring devices and computer relative to a bus command/data line.
Figure 6 is a graph of before- and after-pulse temperature versus time slopes and adiabatic shield heater output for a copper standard weighing 1.6217 grams calibration run.
Figure 7 is a graph of heat capacity of a copper standard weighing 1.6217 grams from 3.2 to 350K.
Figure 7A is an inset in Figure 7 and represents estimated uncertainties (the area delineated with the solid lines) together with deviations of observed data from a recommended values (filled triangles) in percent.
Figures 8 and 9 are time-temperature heat-pulse diagrams.
Figure 10a is an after pulse relaxation time-temperature diagram and Figures 10b, 10c, and lOd are time-temperature heat- pulse diagrams.
DETAILED DESCRIPTION OF THE INVENTION Calorimeter Hardware Design
Referring to Figures 1-4, calorimetric hardware consists of the following major parts: a) cryostat 2 with a 12 Tesla superconducting magnet 4 (5cm clear magnet coil bore with a 1cm diameter x 1cm high homogeneous magnetic field) manufactured by Cryogenic Consultants Ltd., London, England with a room temperature double layered vacuum insulated insert 6 which leaves approximately 2.5cm clearance inside the magnet bore space; b) a calorimeter insert 8, Figures 1-2, which is received in the insulated insert 6 and which holds the calorimeter and a low temperature liquid helium/nitrogen pot 10 which allows cooling of the calorimeter to approximately 3K (separation between pot 10 - and sample holder 12 (Figure 3) described below is critical rin ^ reaching this low temperature, the shorter such a separation the better, such as 5.0 cm separation); c) current sources and voltage measuring devices shown in Figures 5A, 5B which include two Keithley model 224 dc current sources, a Keithley model 181 nanovoltmeter, a Keithley model 196 digital multimeter/scanner and a TRI Research model T-2000 cryocontroller (all devices are IEEE-488 compatible); 4) an IBM-PC compatible Zenith 386/20 desktop computer with National Instruments IEEE-488 GPIB board; 5) a high speed vacuum pumping system which attains a vacuum of 10"7 Torr.
The insert 8, Figure 2A, includes a high vacuum conduit or line 8a, a plurality of heat dissipating baffles 8b, and a vacuum-tight, feed-through 8c for electrical connector wires 8d to the electrical components as shown in Figures 5A, 5B. The insert 8 also includes a helium/nitrogen exhaust and helium pumping conduit 8e having a valve 8f with the conduit 8e communicated to the pot 10 and to a helium pumping system which permits one to lower the temperature of the liquid helium inside the helium pot 10 from about 4.2K to about 1.5 to 1.7K. A copper heat shield assembly 8g is disposed about the sample holder 12, Figure 3. Figure 2B shows in detail the controlled portion of the adiabatic heat shield. It consists of a hollow copper cylinder 50, which fits tightly around the sample mounting frame 34 (Figure 4) with a 15 Ohm electrical resistance heater wire wound around it. The shield heater is connected to the power source via electrical wiring 8d. The sample holder is located inside this controlled power heat shield and the latter is located inside the outer, non-controlled portion of the heat shield 8g, Figure 2C.
Figure 2C shows the shield assembly as comprising three hollow copper cylinders: the outer shield 70, the middle shield 60, and the inner adiabatic shield 50 which was just described (Fig. 2B). The middle shield 60, the outer shield 70 and the inner shield 50 form a series of three concentric cylinders which form the nearest sample surroundings. As described above, only _ the inner shield 50 has an active heater thermally connected to^ it (i.e. wound around it). The temperature of the middle and the outer shields floats and depends on the output power supplied to the inner shield heater, on the quality of the insulating vacuum, and on the conditions (temperature) outside the outer shield.
Referring to Figures 3A, 3B and 4, the sample holder 12 is made from a low-oxygen pure copper (99.99+wt.% Cu) because a high thermal conductivity is necessary for a calorimeter capable to cover a wide range of temperatures from below 4.2 to 350K.
The sample holder 12 is shown schematically in the Figure 3A and in perspective in Figure 3B. It is a clamp-like sample holder, where the sample S is held tightly to the main round copper plate 20 by pressure developed from the copper screw 21a disposed on copper frame 21. A measured amount of 50:50 (by volume) mixture of Apiezon-N grease and fine silver powder 22 is placed between sample S and main holder plate 20 to improve the thermal connection. All copper parts of sample holder 12 are soft soldered together. A CERNOX thin film resistor temperature sensor 24 is inserted in a tightly fitted copper clamp 26 and is held in place by using GE 7031 varnish, which also improves the thermal contact. A thin film strain gage CEA-06-062UW-350 from Measurements Group, Inc. comprises a sample heater 28 (i.e. the strain gage has a resistance of 350 Ohms and is used as a resistance heater) and is mounted on the same side of copper plate 20 as the thermometer 24 using a silver epoxy. The sample heater 28 provides a heat pulse to the sample S via the plate 20. The sample heater power supply comprises a Keithley model 224 dc current source. The use of the silver epoxy was dictated by the fact, that upon thermal cycling between room temperature and 4.2K, the GE 7031 varnish in time develops microcraks, leading to an unsatisfactory thermal connection of the sample heater 28 and sample holder 12. Cooling of the sample holder 12 and sample S is provided by means of mechanical heat switch 30 comprising a short copper wire connected to and disconnected from a modified alligator clamp 31, which is permanently thermally shortened to the low temperature helium pot 10 located above sample holder. . ..- The heat switch is connected to the alligator clamp 31, when its two jaws are closed (i.e. the heat switch wire is squeezed between the two jaws of the clamp), and is disconnected from the clamp 31 when its jaws are opened (spaced apart). The clamp 31 is operated by metal strings, Fig. 4, which extend out of the insert and cryostat for manual actuation to open and close the clamp jaws. The sample holder 12 is permanently hung by means of four thin (0.15mm) nylon threads 32, Figure 2C and 4, to a massive copper frame 34. The frame 34 is permanently attached to the bottom of a low temperature helium pot 10. The low temperature helium pot 10 together with the massive copper frame 34 and including the hung sample holder 12 form the removable part, Fig. 2A, of the calorimetric system which fits inside the room temperature vacuum jacketed insert 6 inside the cryostat 2. The thermal insulation of the calorimeter with the mechanical heat switch 30 opened is ensured by pumping the insert space 7 (Figure 1) where the calorimeter 8 is located down to a vacuum level of 1 x 10"7 Torr. The pumping system comprises a high capacity mechanical forepump 40 providing vacuum of an order of 10"3 Torr) and a high capacity diffusion pump 41 (providing vacuum of an order of 10"7 Torr) connected to conduit 8a.
The copper heat shield assembly 8g comprises a set of heat shields which surround the massive copper frame 34 that holds the calorimeter. The set of heat shields consists of three cylindrical copper shields. An inner shield 50, Figure 2B, which is actually an adiabatic heat shield meaning that the temperature is being adjusted by means of regulating electrical power output, has a 15 Ohm electrical resistance heater 51 wound around its outer surface. Two spaced apart outer shields are simple radiation shields, and their temperatures drift depending on the inner shield heater output. More details on how the temperature of the inner adiabatic heat shield 50 is controlled are given in the next section. Data Collection Software and Adiabatic Heat Shield Control
In one embodiment, the invention' provides a completely s - automatic calorimetric system, where all data collection procedures are fully automated and are computer controlled. Figures 5A and 5B show a schematic diagram of how all system components are connected together with a personal computer. The system uses the conventional IEEE-488 general interface which ensures fast and reliable command, and data transfer from the computer and back from measuring devices.
The main part of data collecting software is comprised of FORTRAN subroutines complied using Microsoft FORTRAN-5.10 compiler. All procedures, responsible for command and data interchange between the computer, IEEE-488 board and measuring devices are written in C language and compiled using Microsoft Visual C/C++ - 8.00 compiler. Both FORTRAN- and C-based codes are linked together into a single executable module, which supports the following: a simple calorimeter temperature monitor which reads the resistance of a thin film resistor (sensor 24), editing several data collecting parameters and the actual process of collecting data over a specified temperature interval. The data collecting software has been designed to ensure that no measured heat capacity data are lost in the case of accidental power failure. The software output is organized into two output data files. The first one contains actual results of heat capacity measurements in a form of list of the median temperatures, specific heats (molar heat capacity of the sample, and the total and sample holder heat capacities), with their calculated standard uncertainties, and the data collection time. The second output file contains all the raw data, including sample heater current and voltage, inner heat shield output, and the actual temperature-time tables for every data point taken, so that this file may be reprocessed at later date for re-valuation of the heat capacity if the need arises. Simultaneously, with file directed output, all collected data are displayed in two windows in a form of two graphs: one is the plot of heat capacity versus temperature for all data points collected up to_ the moment, and the second is a temperature-time diagram for they- data point currently being measured. Such an instantaneous real time visualization permits a quick check of whether or not everything is going well with data collection by means of just a brief look at the computer monitor screen.
A sensorless algorithm to control the inner adiabatic shield temperature, which is done automatically by data collecting software rather than by the cryocontroller ' s microprocessor or computer. The algorithm is based on a constant monitoring of the calorimeter temperature behavior versus time before and after the heat pulse (i.e. without an energy input from the sample heater). Since the heat flow between the sample holder, the adiabatic heat shield, and the surroundings inside the vacuum chamber is governed by Newton's law of cooling, then the behavior of the temperature of the sample should be one of the following:
1. Sample temperature does not change. This occur only when sample temperature is exactly equal to the temperature of the environment. It is the most rare case, however this state once achieved can exist indefinitely long.
2. Sample temperature slowly rises. Obviously this happens when sample temperature is lower than that of the environment.
3. Sample temperature slowly decreases. It occurs when sample has a higher than the environment temperature.
Thus, after a single measurement is completed (i.e. one knows the sample's equilibrium temperature versus time behavior during the foreperiod and a similar equilibrium temperature versus time behavior for the afterperiod) all of the information, which is necessary to make a decision of how to affect the power output to the adiabatic shield heater 51 is known without using a separate adiabatic shield temperature sensor. The problem of the environment temperature control therefore can be solved solely on the basis of sample's temperature behavior rather than on the basis of a comparison of the actual temperature of the sample and the environment. The requirement to make environment temperature control automatic implies that certain limits need to be , is»- established for rate of sample's temperature change during foreperiod and during afterperiod. The following limiting conditions were selected: Foreperiod - the rate of temperature change may not be negative; and it is desirable that it does not exceed 0.03 K/min; Afterperiod - the rate of temperature change should not exceed 0.03 K/min. The basic shield heater 51 manipulations, therefore, become as follows: 1) when the sample's temperature in the afterperiod rises more than 0.03 K/min, then the software reduces the shield heater power and proceeds with measurements of the next data point; 2) when the sample's temperature in the afterperiod rises less than 0.03 K/min, then the software does not affect the shield heater power and proceeds with measurements of the next data point; 3) when the sample's temperature in the afterperiod is decreasing, this means that for the following foreperiod it would have the same sign too, then the software increases the power of shield heater 51 and monitors sample temperature change for half of the time usually required to accomplish the measurements in foreperiod or afterperiod. This operation is repeated until temperature change becomes positive during this "waiting" time, and then the software proceeds with measurements of the next data point. The algorithm is described in detail in the attached Appendix A. Software embodying the algorithm is set forth in Appendix B.
The power supply for the adiabatic heat shield heater 51 is a TRI Research cryocontroller, model T-200, which is rated at 50W full power. All power output adjustments are made at small increments equal to 0.1% of rated power, i.e. at 0.05W (50mW) steps. This was found to be sufficiently quick and accurate way to control the temperature of the surroundings. Example 1
After a single measurement was completed, a least squares fit of the temperature versus time dependence during the afterperiod showed that sample temperature changes at a rate 0.016 K/sec. The corresponding foreperiod temperature change rate was 0.017 K/sec. Since the afterperiod rate is lower
Figure imgf000016_0001
that of the foreperiod and they both fall within the established limits, then no adiabatic shield heater power adjustment is necessary. The data collecting system proceeds with next measurement starting with another foreperiod. Example 2
After a single measurement was completed, a least squares fit of the temperature versus time dependence in the afterperiod showed that the sample temperature changes at a rate -0.005 K/sec. Since the measurements were made in the afterperiod, then the following foreperiod measurements will most likely show a similar (negative slope) behavior. Since it does not comply with established criteria, that temperature change during the foreperiod may not be negative, a shield heater power increase is necessary. The control system increases power to heater 51 by 0.1% and then monitors sample temperature behavior for a period of time equal to 1/2 (50%) of a typical foreperiod and after- period measurement (i.e. 20 seconds). If temperature change rate stays negative, another 0.1% increase of heater power is made and so on until it becomes non-negative. Then data collecting system proceeds with a complete single measurement. Example 3
After a single measurement was completed, a least squares fit of the temperature versus time dependence in the afterperiod showed, that sample temperature changes at a rate 0.016 K/sec. the corresponding foreperiod temperature change rate was 0.007 K/sec. Since calorimetric data are taken on warming (i.e. sample's temperature rises), and under normal conditions the temperature of the adiabatic heat shield 50 stays practically unchanged, then this situation detects a specific system condition, which is when the liquid helium (which is normally used as a refrigerant to cool system and sample down to the lowest achievable temperature) is exhausted and environment temperature begin to rise spontaneously. Therefore the system shuts down the adiabatic shield heater 51 and proceeds with foreperiod measurements to collect a next single data point. „s» Example 4
After a single measurement was completed, a least squares fit of the temperature versus time dependence in afterperiod showed, that sample temperature changes at a rate 0.033 K/sec. This value exceeds the established limits. Therefore the control system reduces adiabatic shield heater power by 0.1%. In the special case when the adiabatic shield heater 51 is inactive (see example 3, above), no adjustment is made and shield heater remains inactive. The data collecting system proceeds with the next single measurement.
The practical results, presenting the sample's temperature behavior (i.e. the heat exchange process between the sample S and the environment) over the temperature region from 3.5K to 350K during the heat capacity measurements of pure copper is shown in Figure 6. The curve, which represents the percent of adiabatic shield heater (51) power is shown in the same graph. It is obvious, that the liquid helium (refrigerant) loss occurred approximately at 10K, and because of a spontaneous and sharp environment temperature rise, the control system automatically deactivates the adiabatic shield heater 51. The adiabatic shield heater 51 again becomes operational approximately at 45K. And starting from 55K the adiabatic shield control without using a separate temperature sensor becomes very accurate, i.e. a sample's temperature change slope is small and positive for every foreperiod, and has approximately the same magnitude, but negative in afterperiods, indicating, that adiabatic heat shield 50 was maintained at almost ideal conditions: approximately at median sample temperature. Such an excellent control ensures, that the calorimetric data can be taken at a highest possible accuracy. The important point here is that there is no preset profile for the shield heater power output, i.e. it is governed only by the current state of the heat transfer between the surroundings and the calorimeter. The usage of a small shield heater power increments (50mW steps) eliminates the need for long wait periods for a shield temperature stabilization, and what is more important, it completely eliminates any short time heat shield temperature fluctuations which cannot be avoided using an internal cryocontroller ' s microprocessor. Heat Capacity of Copper Standard and Calibration Results
No calorimeter can be used without a precise calibration; i.e. without deteriming the raw heat capacity of a sample holder and related components such as heater, temperature sensor, grease, etc. and then checking out the calibration result against a well established heat capacity standard. It has been accepted that high purity copper is the best calorimetric standard for temperature regions mentioned above since its heat capacity is considered to be well established within an accuracy better than 0.5%.
Three independent calibration runs were made using the apparatus described above to ensure that heat capacity of the empty sample holder and related components was determined with high precision over the whole temperature region (approximately 3K to 351K) . A total of approximately 750 data points were combined to represent an empty calorimeter raw data heat capacity data, which are substracted from the measured total heat capacity (sample + sample holder + related components) during future experiments. The heat capacity of the empty calorimeter varied from approximately 0.1 mJ/K at 3K to 650 mJ/K at 350K. To ensure that the calibration had been done corectly, the heat capacity of 1.6217 grams calorimetry conference copper standard was measured. The results are shown in Figure 7 in the form of a plot of molar heat capacity and in the inset, Figure 7A, the deviations of the observed data from the recommended values for the heat capacity of pure copper together with estimated uncertainties of measurements.
The heat capacity of the copper standard was measured using sample heater heat pulses in which the temperature rise delta T was equal to 1% of the temperature at which the measurement was being made and with the additional restriction that delta T was greater than 0.5K and less than 1.5K. The inset, Figure 7A, . ,3m clearly shows that the calorimeter of the invention gives very reliable results, showing no significant systematic deviations form the accepted copper heat capacity values . The random deviations (filled triangles) range from approxiamtely 0.5% to 0.7% between 25K and 350K. Below about 25K, there are several data points which deviate from the recommended values as much as plus or minus 1% to 2% due to the temperature rise of the surroundings in this temperature range being spontaneous and significant (Figure 7) such that the semiadiabatic conditions are not strictly met.
Another important feature from the aforementioned test data is that the estimated standard uncertainties (the solid lines in Figure 7A) give completely realistic numbers, since almost all of the observed delta C values (uncertainty values) fall inside the area delineated by the plus or minus cr C curves, where delta C = (Cob..r».«) - Cr.eo...nd.d ) /Cob..rv.d X 100 (%), and cTC is the evaluated uncertainty in %. Therefore, these calculated uncertainties can be safely used in calculations for evalution of the uncertainites of all of the derivative physical and thermodynamic parameters based on the experimental heat capacity data.
It will be understood that the above description of the invention is susceptible to various modifications, changes and adaptations, and the same are intended to be comprehended within the scope of the appended claims.
Appendix A
Heat capacity measurements basics
It is well known, that heat capacity (C) is a thermodynamic function which represents the material's response to introduced amount of energy (Q) through change of the temperature ( ) and is defined as:
cJT
In practice, heat capacity measurements utilizing Nernst method, are based on Eq.l in the following way: after applying a known amount of heat (ΔQ) to the specimen and measuring the corresponding temperature change (ΔT) , the heat capacity at median temperature ( Tm) is given as:
(2;
AT
The extreme simplicity of Eqs . 1 and 2, unfortunately does not directly transform into a simplicity of heat capacity measuring hardware and software. First of all, it follows from Eq.l, that heat capacity should be measured with a small amounts of added energy, ΔQ, so that ΔT (Eq.2) is as small as possible. In practice, however, a lower limit for ΔQ is such, that the resulting ΔT varies from approximately 0.05-0.5K at 4.2K to approximately 1-lOK at ~300K, mainly due to the limited accuracy and resolution of available temperature sensors. Another important behavior, which complicates practical measurements, is shown in the Fig.8, where the idealized time-temperature behavior is shown together with the real one. Idealized conditions for adiabatic heat capacity measurements can be described as follows: i) the sample temperature is constant at
18
SUBSiπUTE SHEET (RULE 26} least for a certain period of time immedia tely before and ins tan tly after the heat pulse, ii) the heat pulse has been applied to a sample instantly (over infinitely short period of time), and iii) the sample responds to a heat pulse by rising its temperature immediately, i.e. assuming that the sample ' s thermal conducti vi ty i s unlimi ted (or is infinitely high) . These ideal conditions are shown as solid lines in Fig.8. As for this case the experimental procedure of heat capacity measurement would be very simple and requires only a knowledge of sample's temperature before the heat pulse (i.e. what was the sample's temperature T^ at the moment of time t1 just before the heat pulse), the amount of energy (ΔQ) given instantly to a sample at tl t and what is a resulting temperature T2 at the same moment of time ^ after the instant temperature rise due to the pulse. It is obvious, that the temperature rise (ΔT) is given as :
AT = T2 - T, (3)
and median temperature, Tm (i.e. temperature for which heat capacity has been measured) is determined as:
71 T + τ2
(4)
Adiabatic (ideal) and semiadiabatic (real) conditions
The ideal conditions mentioned above, however, can not be achieved. First of all it is impossible to design a calorimeter with a perfect insulation from the surroundings, i.e. it is impossible to eliminate all heat leaks to or from the sample. Second, it is impossible to produce an instantaneous heat pulse -- it always requires a finite amount of time, which can not be assumed to be negligibly small. And third, there is no solid which conducts heat instantly, therefore an even distribution of
19
SUBSUME SHEET (RULE 26) the added energy throughout the sample always require a certain time. A typical real sample behavior is shown in Fig .8 as open circles in a temperature ( T) versus time ( t) plot. Therefore, the only practical way for accurate experimental measurements to be performed is to create conditions as close to ideal as possible. This means at least the following:
- The sample must be thermally insulated from the surroundings as well as possible, and the temperature of the surroundings should be kept as close to the sample's temperature as possible to minimize any positive and negative heat leaks. Such conditions are typically considered as semiadiaba ti c, and usually when the temperature difference between sample and surrounding is small, the sample's temperature changes linearly (see the following section) during gi ven peri od of time .
- The heat should be added to the sample as quickly as reasonably possible;
- The calorimeter design should ensure that sample/sample holder assembly after the heat pulse comes to internal thermal equilibrium as well as to thermal equilibrium with the surroundings as soon as possible.
The open circles in Fig .8 show, that sample's temperature is rising slowly and linearly before the heat pulse (time tj_ ) due to a small positive heat leak from the surroundings. The heat pulse, which begins at ^ causes a sharp increase of a sample's temperature until the time t^, when the heat pulse has been canceled. It takes a certain time (from t^ until t2, which usually is referred to as the internal thermal relaxation time, or simply the relaxation period) for the energy to be distributed evenly through the sample/sample holder assembly. After time 2 the temperature again shows a linear behavior with time. Therefore, the determination of the real temperature rise ΔT , which replaces the ideal ΔT, has to be done through a least squares linear approximation of the temperature versus time behavior before the heat pulse ( t^ and after the heat pulse (starting at t2) using the following extrapolation of "the before and after heat pulse linear regions to a median time t^, where
+/-,
: 5 )
to estimate the idealized (before the pulse temperature) T 1 and after the pulse temperature T 2 at ^. The values of ΔT and Tm, which are necessary for the evaluation of the heat capacity are determined by substituting T1 and T2 by T 1 and T 2, respectively, in Eqs . 3 and 4.
Establishing the existence of semiadiabatic condition
One of the main practical problems in any kind of heat capacity data collecting software lies in the determination whether or not sample can be considered to be under semiadiabatic and equilibrium with surroundings conditions. This has to be established for at least certain duration of time before the heat pulse, which is long enough to collect sufficient number of temperature readings for a stable least squares fit (i.e. the points before ^ in Fig.8); and again for a certain time after the heat pulse. The correct solution of this problem ensures that the heat capacity would be measured at the highest possible precision. The second practical problem which needs to be solved when designing the calorimetric software is the precise determination of t2 (i.e. the moment when sample's reaction to the introduced energy is accomplished, and the sample again comes in to equilibrium with the surroundings), because contrary to tl r which is always known precisely, the moment t2 will vary even for the same specimen with changing temperature (and obviously, it will be different from sample to sample) primarily because of the varying thermal conductivity.
21
SUBSTITUTE SHEET (MILE 26 Semiadiabatic and equilibrium conditions are characterized _ by a linear temperature versus time behavior of the calorimeter. This intuitive conclusion, however, needs some clarification, since it is obvious, that the liner versus time temperature rise (or drop) can not exist indefinitely long, even assuming that the temperature of surroundings do not change. By definition, the state of thermal equilibrium is characterized by the constant (time independent) heat leak between the surroundings and the calorimeter. Let us assume that the heat capacity of calorimeter is Cc . From now on calorimeter means a sample/sample holder assembly with any substance placed between sample and sample holder designed to improve a thermal connection between both. Assume also that during the period of time dt there is a heat leak dq between calorimeter and surroundings. Taking into account Eq.l we now may write an equation for a time dependent temperature ( T) behavior of the calorimeter;
dq 6)
Rearranging and integrating (6) with respect to time we obtain:
Figure imgf000024_0001
since dq is a time independent constant. Note, that when ςr>0, then the heat leak is positive and it is negative when dq<0 . The exact integration of right hand part of Eq.7 requires knowledge of calorimeter's heat capacity behavior versus time, which is in general unknown. For a small temperature change, i.e. when \dT\ « T , which is typical for semiadiabatic conditions, it is possible to assume that C (T + dT) ≡ C (T) and this assumption becomes more accurate with higher temperature because of the tendency of the heat capacity to saturation at approximately 3j, where J? is a universal gas constant (R=8.314 J/mol K) . Therefore, we can introduce the further simplification, that for a limited time under semiadiabatic and equilibrium conditions when hea t leak , dq, i s small (i.e. Cc»dC, where dC is total heat capacity change due to temperature change dT) the calorimeter's heat capacity is time independent. Hence, after integration the linearity of Eq.7 becomes straightforward:
dq_
T . i + : β ) c.
Here dq/Cc and T0 are constants, time ( t) is an independent variable, the temperature ( T) is a dependent variable, and TQ represents calorimeter's initial temperature when t=0.
It follows from Eqs . 7 and 8, that to achieve the conditions which are closest to adiabatic it is necessary i) to reduce heat leaks ( dq) by improving the thermal insulation and adjusting the temperature of surroundings as close to the temperature of calorimeter as possible, or ii) to increase the calorimeter's heat capacity (Cc) , or iii) both. It is also obvious, that it is easier to do so when temperature rises, since calorimeter's heat capacity naturally rises too. Another important note should be made at this point about microcalorimeters : since their heat capacities are extremely small, then more strict conditions apply to the quality of their thermal insulation. This is also true for a small sample calorimeters at the lowest (liquid helium and below) temperatures .
Returning to the beginning of this section, whenever (before or after the heat pulse) the temperature of the calorimeter behaves linearly, or almost linearly with time, then such a calorimeter can be considered as being in the semiadiabatic and equilibrium state. Usually, for the majority of calorimeters, described in the literature, it has been a- pri ori assumed, that linearity of calorimeter temperature behavior before the heat pulse (the so-called fore period) does not require special handling, since the calorimeter is always in the state of thermal equilibrium with a surroundings without an energy input from the sample heater. The question is in, for how long such pseudo-equilibrium state is in true semiadiabatic equilibrium condition? (see Eq.7). When calorimetric experiments were not automated, the calorimeter's temperature usually was recorded on XY-recorders as T vs . fc plots, and it was relatively easy to distinguish the linear region before the heat pulse, and to establish when the linear behavior occured after the heat pulse using just human eyes and experience. With the beginning of automatization of the measurements, a different computer systems were used to monitor calorimeter temperature. It was standard practice, that the calorimeter temperature was measured for certain (predetermined) time intervals between each reading, usually 10-15 times and then a least squares fit was employed to determine the straight line ( T=f (t) ) parameters. Furthermore, determination of the moment of time t2 (Fig.8) was usually handled through the establishment of a certain time delays (wait periods) after the heat pulse and the linearity of the after pulse temperature behavior was a utoma ti cally assumed after wai ting time has expired. Usually the temperature reading delays before and after the heat pulse are chosen to be the same. Unfortunately, such "experimental settings" are arbitrary and had to be established by a trial and error procedure for every sample because of differences in thermal conductivity. Such an approach works relatively well only for the cases when heat capacity has been measured over a limited (and typically low, O50K) temperature range. It is obvious, that for a large temperature spans (from liquid helium temperature and up to room temperature and above) thermal conductivity behavior of calorimeter changes drastically. For instance, thermal conductivity of pure copper at 4.2 K initially
24 rises by a factor of 4 at 20 K and then drops by a factor of more than 10 from its peak value for T>100 K. The behavior of another commonly used sample holder material -- sapphire, is even worse: initially it rises by a factor of almost 300 (!) and then drops somewhat, remaining approximately 10 times higher at room temperature than at 4.2K. These changes are nonlinear functions of temperature, and are not known a -pri ori for the material being measured. All this makes the usage of manually adjustable pulse- and time-delays worthless when designing an automated calorimeter for a large (-4.2 to -300K) temperature spans .
Formalization procedure
A formalization of the problem: whether or not calorimeter temperature varies linearly with time is based on a following consideration. Since T=f (t) is supposedly a linear function of time, then a first derivative of this function with respect to time has to be a constant. Or in the other words; when T = α + bt , then
dT
— = α = const . ( 9 ) dt
And when one fits a first derivative of temperature with respect to time versus time to a straight line, then this straight line has to have a zero slope. Unfortunately, the strict condition that the slope of the derivative equals zero can not be used as a sufficient formal criteria of temperature linearity versus time, because both time and calorimeter temperature measurements are always affected with at least random errors. One possible solution is to choose a certain small value as a zero-value threshold and when derivative's slope falls below it, then assume that the condition of Eq.9 is met. Nevertheless, any preset small value will again work only for a limited
25
SUBSmUTE SHEET (RULE 26) temperature interval, since the sensitivity, and therefore, the precision of the thermometry varies with temperature (see below) . However, the random nature of temperature sensor and time measuring errors (we assume, that any serious systematic errors have been eliminated by using a proper thermometer and a well calibrated clock) may be rather helpful in this particular case, and allow us to propose a more elegant solution which is independent of a randomly chosen "preset small" values.
Consider the following: an array of derivatives of temperature with respect to time dT^/ t^, for i=l, 2, ... , n, where n is the number of temperature measurements) is used to determine the least square parameters (A and B) of the appropriate straight line
A + B x t = ^- (10) dt.
where A is the derivative intercept and B is the derivative slope. Simultaneously, a standard uncertainty of both least square parameters A and B ( σA and σB, respectively) can be determined. As noted above, rather than compare a derivative's slope with a randomly chosen, predetermined small value to establish whether or not the former is close enough to zero, we now may use a standard uncertainty of the slope as a criteria of its zeroness in a following way:
when B ≤ N x σB , then B ∞ O (11)
where N is a constant value. Therefore, we propose to replace a preset, small and common for every measurement series "zero" value by another small value which is now a unique one for every series of temperature measurements, and which will vary automatically with changing temperature sensor sensitivity and accuracy. It is obvious, that the higher the precision of temperature readings, the smaller the uncertainty in slope determination and vice versa. We have chosen N=2 (which stays close to a 95% confidence interval, N=1.96), since it seems to work perfectly well with our hardware. However it may be changed and a proper selection of N should depend on the accuracy of the thermometer calibration, and the temperature and time readings . It is also obvious that higher N will permit less "linear" T vs . t curves to qualify as formally linear, and vice versa.
Now a whole cycle of taking one heat capacity data point using the developed formalization procedure will be considered in more details. Figure 9 displays the same real time- temperature diagram as shown on Fig.8, together with a derivative curve (see Fig .9 caption for details). It is obvious, that before introducing any energy to the calorimeter (i.e. before the heat pulse) the presence of semiadiabatic and equilibrium conditions has to be detected. We have chosen, that at least 10 consecutive temperature readings should satisfy conditions, described above (Eqs.8-11). Then, data collection software starts a heater to introduce a predetermined amount of energy into the calorimeter, which causes a sharp rise of calorimeter's temperature. The problem which requires solution after the pulse has been terminated is — to determine as precise as possible when the introduced energy is evenly distributed through the calorimeter, that is: when the calorimeter's temperature again shows a linear with time behavior. A simple continuation with monitoring the dT/dt vs. time curve slope to satisfy Eq.ll conditions is not enough, because the derivative curve usually goes through a maximum and then a minimum (see Fig.9), and their presence may cause the computer to include these values, accidentally making σB very large and thus non-zero derivative slope would be mistakenly accepted as close enough to zero. However, a simple consideration, recalling that temperature of the surroundings does not change much during the short heat pulse (10-20 seconds), and that calorimeter temperature usually rises during
27
SUBST rrESHEB (RULE26) that heat pulse, leads to the conclusion that dq term from Eq.7 , should decrease due to Newton's law of cooling. Together with usual increase of the calorimeter's heat capacity (Cc) this means that the slope of the equilibrium temperature behavior after the pulse must be approximately equal and slightly lower than the same before the pulse. And again the "approximately equal and lower" criterion can easily be used while detecting equilibrium conditions visually (see Fig.9), it does not work as a formal criterion necessary for complete automation. Nevertheless, it is possible to use the random temperature and time measurement errors once more to establish a formal criteria of approximate equity of slopes before and after the heat pulse. We can always extrapolate before the pulse T vs . t slope from the derivative's straight line parameters A and B (Eq.lO), which is shown as a solid line on Fig.2, to after the pulse region, and use the estimated σA and σB to determine the confidence intervals of extrapolation as follows: since E - A + B x t , then
σE = σA + σB x t - ~l) (12)
where / represents the midpoint of the before pulse time for all observations used in the least squares fit. Here E and σE are extrapolated from the before pulse linear region T vs . t slope and its standard uncertainty, respectively. The dotted lines in Fig.9 show an area within E±2σE interval, which again approximately corresponds to a 95% confidence interval. Therefore, the proposed formal criterion is as follows: as soon as the after pulse dT/dt values begin to fall within E±NσE interval, it is safe to conclude that calorimeter has come close to thermal equilibrium with the surroundings and as soon as following 10 consecutive temperature readings satisfy the condition of linearity of Ta£tex. vs. fc behavior (Eq.ll), the after pulse measurements are over. Time t2 corresponds to the first of those 10 consecutive readings when sample is detected
28
Wf to be again in equilibrium with its surrounding conditions after the pulse.
Certainly, the chosen formalization parameters discussed above (10 consecutive data points and agreement within ±2σ) can be changed and adjusted dependending on the actual calorimetric hardware. One has to remember, however, that usage of the suggested criterion is based on standard uncertainties, determined from the least squares. The least squares uncertainties ( σ) are inversely proportional to square root of number of observations (n) less number of independent least squares parameters (m) , i.e. Therefore, particular
Figure imgf000031_0001
care should be taken that standard uncertainties are not overestimated, i.e. number of observations has to be significantly higher than number of independent variables. In our case, we have chosen 10 observations to determine 2 independent least squares variables, and this probably can be considered as a sufficient lower limit.
The Fig.10 illustrates how the developed formalization algorithm works in practice. The results were obtained while measuring the non-magnetic heat capacity of a solid state electrotransport purified polycrystalline Dy sample. It is well known, that ferromagnetic Dy undergoes magnetic and structural first order phase transitions at 91 K on warming and remains antiferromagnetic up to 180K, where the second order antiferromagnetic to paramagnetic phase transition occurs. It is obvious from Fig.10a, that in the ferromagnetic state, the thermal conductivity of calorimeter (the copper sample holder plus a piece of the Dy-metal weighting 1.2238g) is lowered by approximately a factor of four (i.e. the internal thermal relaxation time increases from approximately 11 to approximately 45 seconds) . Figure 10b shows the time-temperature profile of a typical data point in the ferromagnetic region. The longest relaxation time was required at the temperature where
29
SUBSTITUTE SHEET (RULE 25) ferromagnetic to antiferromagnetic transition occurs, Fig.10a and 10c. As soon as Dy becomes antiferromagnetic, thermal conductivity improves sharply and stays almost unchanged until antiferromagnetic to paramagnetic transition occurs at approximately 180K. Then again another step-like lowering of relaxation time occurs and it remains almost unchanged up to room temperature. An example of the time-temperature behavior in the paramagnetic region for Dy is shown in Fig.lOd. At this point we would like to stress that all the significant changes in the thermal relaxation behavior of the calorimeter, containing sample of polycrystalline dysprosium were processed automatically by data collecting software using the described above formalization procedures. No human intervention occured and not a single parameter was changed during data collection. The visual analysis of shown in Fig.lOb, 10c, and lOd time- temperature profiles shows that the proposed algorithm works excellently.
30
Mi 26 Appendix B_
Interface to integer*2 function key[C] End
Interface to ιnteger*2 function keyt[C]() End
Interface to integer*4 function tιme_delay [C] (td)
Integer*4 tdfVALUE]
End
Interface to mteger function sec [C]
Integer* 4 msec [REFERENCE]
End
Interface to integer*2 function zro_onoff [C] (ier, dev, zro) Integer*2 ier [REFERENCE] Integer*2 dev[VALUE] , zro [VALUE]
End
Subroutine datcol
Implicit Integer*2 (i-n)
Integer*2 t2000, actιve_sensor, zro, rnl, rn2, start
Integer* 2 right , Hp3 95, zro_onoff , spec_rgn, high
Integer*4 time_d, time_delay, sO, mO, si, ml, s2, m2, s3, m3
Integer* 4 psO, pmO, rsO, rmO, time_dl, time_d2 !,jt
Integer* sec, passed, stay, ss, mm, mark, ssO, mmO, ssl, mml, sssO,mmmO
Real volt, current, mole
Double precision T_heat
Character*10 Oldn, NewN, OldT, NewT, OldP, NewP, OldM, NewM, OldF, ewF,
* OldQ, ewQ, 01d2 , New2 , OldS, NewS, OldD, NewD, OldA, NewA,
* 01dC,NewC, Poldl,Pold2,Fld,Crnt,Oldv,Newv Character vdc*16, idc*14, lbl*78, mess*50, tname*12 , display*12 Character c_name*48, u_name*48, ad_file*12, output*12 Logical noshield, Suddenly, already
Dimension TtO (10) , Ttl (10) , Dts (10) , Tds (10)
C
Common /instr/ T2000, K224, K181h, K181s, K224s, Hp3495
Common /volts/ zro, rnl, rn2,vdc, volt
Common /curnt/ ldc, current
Common /message/ lbl(19)
Common /tmonitor/ n, temp_readings ( 1024 ) , reading_tιme ( 102 ) ,
* tmax, dtmax, tmin, dtmin, smax, smin, xnew, ynew,
* dnew,ns,dT,at,bt,drvt (1024) , drvt2 (1024) Common /SigmaT/ SigT(1024)
Common /compound/ c_name, u_name, weight, mole, ad_file, output Common /coldat/ pulse_tim , pulse_current, active_sensor,
* total_heat , total_secs, T_max, T_step, Fι_max,
* time_max, del, p_tt, nflatl , stepmax, stepmin, delr ,
* Mflatr
Common /shield/ set_max, shield_step, tAg, delta_t
Common /heap/ Temp (102 ), Cadd (102 ), Ctotal ( 1024) , Csa ple ( 1024 )
Common /magn/ field, fcurrent
Common /temp/ tna e, displa (4) ,Md, T d (4 , 512) , Cmd (4 , 512) ,
* Smd(4,512) ,dTmd(4,512) Data noshield/ . true . / c=====================================================================
C Set initial values C
Nsp=Spec_rgn(int2 (10) , ttO, ttl, dts, tds)
Mess=' '
01dn=' ?
OldT=' ???.???K'
01dP=' No pulse'
Copyright, Iowa Stale University Research Foundation 1996
3 1
TES»ffit (HM 01dM=' No pulse'
OldF=' No pulse'
01dQ=* OO.OOsec'
01d2=' Ctrl OFF'
01dS=' OO.OOhrs'
01dD=' ?.???K'
01dA= ' ????.???'
OldC=' OO.OOmin'
Oldv=' OO.OOmin'
Newv= ' '
Fid = ' '
Crnt=' '
Jsave=0
If (tname (1 : 12 ) . ne . ' ' ) j save=l
Npnt=l Data point number
Active_sensor=l Unknown sample sensor for the beginning
Jfile=l File-save switch == YES
Rnl=4 Lowest Keithley scale ( 2V) , heater
Rn2=6 Highest Keithley scale (200V) , heater
Start=l Switch for the first data point
Slop=0.03
Slope=slop
Delt=del
Fi_min=pulse_current
Shield_step=0.10 Shield heater increment = 0.1%
Avproc=0.0
Open data files
Call file on (j save, j file, npnt, addt)
If (jsave.eq.777) return ! Reselect file name(s)
Prepare the screen
Call realtime ( 0,nstr) ! Organize screen for R_t plotting
Call realtime (-l,nstr) ! Sheet for T-monitor
Write (fid, ' (f9.3, al) ' ) field, ' T"
Write (crnt, ' (f9.3,al) ' ) field/fcurrent, 'A'
Continue
I=index(fld, ' . ' )
If (i.ne.0.and.fld(i-l:i-l) .eq. ' ') fId (i-1 : i-1) = ' 0 '
I=index (crnt, ' . ' )
If (i.ne.O. and. crnt (i-l:i-l) .eq. ' ') crnt (i-1 : i-1) =' 0 '
Call c_out(0) ! Sheet for C vs T real time plot
If (npnt.gt.l) Call c_out (int (npnt-1) )
Call out_col (0, fid, crnt) ! Messages (window #2)
0=============================================================================
C Read addenda data
C
Call AddRead
C=============================================================================
C Determine sample and shield temperatures, shorten initial pulse time @ low-T C
If (interrupt () .eq.283) goto 1000
Jc=l
S_t=sample_temp (active_sensor, s2,m2 , SsT, jc)
T0=s_t
Ipnt=l Kpnt=0 Lpnt=0
Appendix B Copyright, Iowa State University Research Foundation 1996
32
JBBΠΠΠESHEH (PΛIE 6) Hιgh=0
Already=. true . . ^
If (s_t.le.l5.0) then
Kpnt=-4
Lpnt=-9 lpnt=0
Already=. false . End if lt_add=0
C=============================================================================
C Set dT
C
Step=t_step*s_t ! Delta (T)
Step=amιnl (stepmax, amaxl (stepmin, step) ) ! mm <= Delta (T) <= max
Pulse_tιme=pulse_tιm
If (kpnt.lt.O)pulse_tιme=amml (amaxl (pulse_tιm*0.5 , 10.0) ,pulse_tιm)
If (lpnt.lt.0)pulse_time=aminl (amaxl (pulse_tιm*0.25 , 7.0+
* maxO (ιt_add, 0) *0.002) ,pulse_tιm) c=============================================================================
C Ready message Data collection START C
Mess='Ready to begin data collection. Nspec ='
Wrιte(mess(40:41) , ' (ι2) ' ) nsp
Call mess_out ( l,mess)
Lbl(l)=' '
Lbl(l) (6:)='Press ANY KEY when ready to start, or ESC to quit ' //
* 'data collection' Call ask(lθ)
I]=key() i Start data collection
Call mess_out (0, mess) If (13.eq.283) return c=============================================================================
C Data collection almost started from here C
Call clrscreen(l)
Lbl ( 1 ) = ' '
Lbl (1) (20: ) = 'Hιt ESC to interrupt data collection...1
Call ask(lθ)
C=============================================================================
C Finally... Begin main cycle of heat capacity measurement C
Ss0=sec(mm0) ! Time for timestamp
11 Sss0=sec (mmmO) 10 Continue
Nflatr=mflatr
If (Lpnt.lt.0) Nflatr=min0 (maxO (mflatr+ (lpnt-1) /2, 5) ,mflatr)
IF(HIGH.EQ.O) THEN
Tιrae_d=ιnt (delt*1000+0.5 ) ' T-reading delay (ticks)
If (tιme_d.gt.3000. and. ipnt.le.O) Tιme_d=max0 ( (tιme_d+l) *2/3,3000)
If (Lpnt.lt.0) Tιme_d=mm0 (maxO ( (tιme_d+l) /8,2000+maxO (ιt_add, 0) ) , *tιme_d)
Tιme_d2=tιme_d
END IF
Write (NewQ, ' (f7.2,a) ' ) float (Tιme_d/1000. ) , 'sec'
Call out_col (mt (isign (6, mark) ) , 01dQ,NewQ)
Write (NewN, ' (6x,i4.4) ' ) npnt ! Output point # (W_2)
Mark=l ! Blue/Red == (odd/even)
If (mod (npnt, 2) . eq.0) mark=-l
Call out_col (mark, OldN, NewN)
Write(NewT, ' (2x,f7.3,a) ' ) S_t,'K' ! Output Sample_T
Ssl=sec (mml)
Timestamp=elapsed (ss0,mm0, ssi, mml) /3600.00+addt
Write (News, ' (f7.2,a) ' ) timestamp, ' hrs ' ' Output total time
Call out_col (ιnt4 (isign (2, mark) ) ,01dT,NewT)
Appendix B Copyright, Iowa State University Research Foundation
1996
33
SI) lBSπnπtsHϊEiβuu2δ> Cal l out_col ( ιnt 4 ( l sign ( 8 , mark ) ) , 01dS , NewS ) c=============================================================================
C Check for interrupt
C
If (interrupt () .eq.283) goto 1000
C=================================================-============================
C Look for linear region before heat pulse
C
If (start .ne .0) then
N=0
Ξ2=sec (m2)
Start=0 15 N=n+1
S0=sec(m0)
If (interrupt () .eq.283) goto 1000
Jc=0
If (n. eq.1) j c=l c IF(N.EQ.2) THEN c ACTIVE_SENS0R=-1 c JC=1 c ELSE c ACTIVE_SENSOR= 1 c END IF
Temp_readιngs (n) =sample_temp (actιve_sensor, s3, m3, SsT, jc) ' Sample T If ( temp_readmgs (n) . gt . t_max . or . temp_readιngs (n) . le .0.0 ) then T0=t_max+0.1 Goto 1000 End if SigT (n) =SsT
Write (NewT, ' (2x, f7.3,a) ' ) Temp_readιngs (n) , ' K' ' Fιll W-2 (isign (2 , mark) ) , 01dT,NewT)
Figure imgf000036_0001
(ssO, mmO, ssl, mml) /3600.00+addt Write (NewS, ' ( £1 . 2 , a) ' ) timestamp, 'hrs ' Call out_col (ιnt4 ( lsign (8 , mark) ) , Olds, ewS)
C
C Count temp, measurements time
C
If(n.eq.l) then
Elapsed_seconds=0.0 Else
Elapsed_seconds=Elapsed_seconds+elapsed (s2 , m2 , s3, m3) End if
Readmg_tιme ( n) =El apsed_seconds
S2=s3 ' Save last T-read ng time
M2=m3
C
C Plot Temperature change real time
C
If(n.eq.l) then Call realtime (-l,nstr) ' Clean up window #3 when first Pnt
Call realtime (mt4 (n+10000) ,nstr) Else Drvt (n) = (temp_readιngs (n) -temp_readιngs (n-1) ) ' 1-st derivative * / (readιng_tιme (n) -readmg_tιme (n-1)) Call realtime (ιnt4 (n+10000) ,nstr) End if
C
C Watch for suddenly rising temperature...
C
If(n.gt.5) then ' More than 5 points collected
If (Suddenly (already) ) then
Appendix B Copyright, Iowa State University Research Foundation
1996
34
UBSTΠIΠE m(w Noshιeld= . true . 1 No shield
Delta_t=0.0 1 Heater power
Call shieldoff 1 Shield OFF
New2=' Ctrl OFF1 1 Print message
Call out_col (mt4 (isign (7, mark) ) ,Old2,New2)
Start=l 1 Restart...
Kpnt=-4 1 Next 3 points short delay.
Ipnt=-1 Lpnt=-10 lt_add=0 Hιgh=0
Shorter pulse time
If (ct.gt.0.0) then P_t=amιnl (amaxl (p_tt*0.25, 7. O+maxO (ιt_add, 0) *0.002) ,pulse_tιm) Pulse_tιme=tιmeι (ct, R, step, pulse_current, fι_max, fι_mιn, p_t)
End if
Goto 10 End if End if
Check for constant slope (straightness)
Nflat=nstr+1 If (kpnt.l .0) then If (n.ge.nflatr+1) then At low Temperature DO NOT Nflat=nflatr+1 wait too long, and rather Goto 20 start with measurements End if right away... End if
If (T0.1t.25.0.and.slope*nflatr*delt.gt.slop) then If (n.ge.1.25*nflatr) then Nflat=nflatr+1 Goto 20 End if End if
If (nstr . ge .nflatr) goto 20 YES, straight line Ss=sec (mm)
Passed=elapsed (sO, mO, ss, m) *1000.+0.5 t-since last T-read Stay=tιme_d-passed Delay left If (interrupt () .eq.283) goto 1000 If (stay.le.0) goto 15
If (tιme_delay (stay) .eq.283) goto 1000 1 Wait Goto 15 End if ' Endif Linear region
C Constant slope (linear region) found
C
20 Continue
Left=nflat
If (interruptO .eq.283) goto 1000
S_t=temp_readιngs (n)
C
C Initialize timer and other items C
Total_secs=0.0 ' Variable for pulse time
T heat =0.0 1 Heat pulse amount
C Start heat pulse (while controlling pulse time and voltage drop)
C
I]=zro_onoff (Jerr, kl81h, mt2 (1) ) ' Set zero offset to ON
If (time delay(250) .eq.283) Goto 1000 ' Wait 0.25 seconds
Appendix B Copyright, Iowa State University Research Foundation 1996
35
SUBSmUTE SHEET (RUIE 26) Cur rent=pulse_cur rent
Call current_onoff (k224, s0,m0)
Ps0=s0
Pm0=m0
If (tιme_delay (250) .eq.283) Goto 1000 ' Wait 0 25 seconds
Call voltage (klδlh, s2 , m2 ) ' Determine voltage
Volt0=volt
Vl=volt
Nv=l
Pulse_currεnt=abs (current ) ' Actual pulse current
S2=s0 ' Pulse start time -> s2,m2
M2=m0 C
C Determine moment (t) when heat pulse started C
Scl=elapsed_seconds+elapsed (s3,m3, s0,m0) ' Heat pulse begun
M=n- (nflat-1)
C
C Store last Nflat readings, shifting times so, C that heat pulse started at time = 0 seconds' C And prepare variables for LS fit C
Call lsfitl abefore, bbefore, sci, nflat, m, sigmaa, sigmab)
Elapsed_seconds=0.0 ' Start time count from 0 00 seconds
N=nflat ' Start point count from Nflat
C
C Pulse ON1 C
K1=0 ' Number of points after heat pulse
Nflt=0 ' Number of "flat" points found
Tm=Temp_readmgs (n)
Tstart=tm ' Pulse start Temp (K)
Write (NewP, ' (2x, f7.3,a) ' ) Tm, 'K'
Call out_col (ιnt4 (lsign (3, mark) ) ,01dP,NewP)
NewF=' Pulse ON' '
Call out_col (ιnt (isign (5 , mark) ) , OldF, ewF)
C
C Start with controlling voltage and integrating
C
Call realtime (-1, nstr) Nstr=nflatr
Call realtimel (mt4 (n) ,nstr, kl)
Call pulse_out (0, volt, pulse_current, pulse_tιme, poldl, pold2 ) 100 Call voltage (kl81h, si, ml)
T_heat=t_heat+ (vl+volt) *pulse_current*elapsed (psO, pmO, si, l) *0 5 Vl=volt Ps0=sl Pm0=ml
Volt0=volt0+volt Nv=nv+1 C=== Temperature
If (pulse_tιm.gt.l0.0) then ' Control T when
N=n+1 ' Pulse is longer
Temp_readιngs (n) =sample_temp (actιve_sensor, s3,m3, SsT, jc) S_t=temp_ιeadιngs (n) Jc=0
SigT (n)=SsT
Elapsed_seconds=elapsed_seconds+elapsed ( s2 , m2 , s3 , m3 ) S2=s3 M2=m3
Readιng_tιme (n) =Elapsed_seconds ' Store reading time
Drvt (n) = (temp_readιngs (n) -temp_readmgs (n-1) ) ' l-s derivative
* / (readmg_tιme (n) -readmg_tιme (n-1))
Else If (tιme_delay(500) .eq.283) goto 1000 ' Wait 0.5 sec.
Appendix B Copyπght, Iowa State University Research Foundation
1996
36
S«BS!IWE SMEEF (MLE 26' End if C
Rs0=sec (rmO)
Dl=elapsed (si, ml, rsO, rmO)
If (interrupt () .eq.283) goto 1000
If (pulse_tιme-elapsed(sO,mO, rsO, rmO) .gt.1.15*dl) goto 100
C
C Wait until Pulse_tιme expired C
Stay=(pulse_tιme-elapsed (s0,m0, rsO, rmO) ) *1000.0
If (stay . gt .0) then If (tιme_delay (stay) .eq.283) goto 1000
End if
C
C Reset heat pulse
C
101 Current=0.0
Call current_onoff (k224, si, ml)
T_heat=t_heat+ (vl+volt) *pulse_current*elapsed (psO, pmO, si, ml) *0.5
I]=zro_onof (Jerr, l81h, ιnt2 (0) ) ! Set zero offset to OFF
C
C Calculate heat pulse amount C
To tal_secs=e lapsed ( sO , O , s i , ml )
Vol t=volt0 / float ( nv)
Total_heat=-t_heat ' pul se_current *vol t * total_secs ddQ=0 . 01 *pul se_current *volt + total_secs *pul se_current *vol t * 0 . 0005
* +total_secs *pulse_current*vol t * 0 . 000014 ddQ=ddQ* 1000 . 0
C —
NewF= ' Pul se OFF '
Call out__col (ιnt4 (isign (5 , mark) ) , OldF, NewF)
Call pulse_out ( 1 , volt , pulse_current, total_secs , poldl , pold2 )
Jout=l c=============================================================================
C Wait for thermal equillibriu to be established C
Km=-1
Na=0
No=l
45 N=n+1 ' Next T reading
Na=na+1 Sl=sec(ml) Jc=0
Temp_readmgs (n) =sample_temp (actιve_sensor, s3,m3,SsT,jc) SigT (n)=SsT
Write (NewT, ' (2x, f7.3, a) ' ) Temp_readιngs (n) , 'K' Call out_col (ιnt (isign (2, mark) ) ,01dT,NewT) Ssl=sec (mml)
Timestamp=elapsed (ss0,mm0, ssi, mml) /3600.00+addt Write (NewS, ' ( 11 . 2 , a) ' ) timestamp, 'hrs ' If (Temp_readιngs (n) . ge . tm) then
Tm=Temp_readιngs (n)
Wrιte(NewM, ' (2x,f7.3,a) ' ) Tm, 'K'
Call out_col (mt4 (isign (4, mark) ) ,01dM,NewM) End if
Call out_col (ιnt4 (isign (8, ark) ) ,01dS,NewS) Elapsed_seconds=elapsed_seconds+elapsed ( s2 , m2 , s3 , 3 ) S2=s3 M2=m3
Readmg_tιme (n) =Elapsed_seconds ' Store reading time
Drvt (n) = ( temp_readιngs (n) -temp__readmgs (n-1) ) ' 1-st derivative
* / (readιng_tιme (n) -readιng_tιme (n-1)) C
C Watch for suddenly rising temperature...
Appendix B Copyright, Iowa State University Research Foundation
1996
37
LET (RULE 26) If(na.gt.5) then 1 More than 5 points collected If (Suddenly (already) ) then Noshιeld= . true . 1 No shield Delta_t=0.0 1 Heater power Call shieldoff 1 Shield OFF New2=' Ctrl OFF' 1 Print message
Call out_col (mt4 (isign (7, mark) ) , 0ld2,New2)
Kpnt=-4 i Next 3 points short delay lpnt=-l
Start=l i Do not process this point..
Lpnt=-10 lt_add=0
Hιgh=0 C
C- Shorter pulse time C
If (ct.gt.0.0) then P_t=amιnl (amaxl (p_tt*0.25, 7. O+maxO (ιt_add, 0) *0.002) ,pulse_tιm) Pulse_tιme=tιmeι (ct, R, step, pulse_current , fι_max, fI min, p_t )
End if
Goto 10 Restart from next point End if End if
Ddt=abef ore*readmg_tιme (n) +bbef ore
Dιf=abs (drvt (n) - ddt)
If (tO. gt.250.0. or. tO. le.15.0) Dιf=drvt (n) -ddt
If( tO. le.15.0) Dif =drvt (n) -ddt
Xs=amaxl (t0/20.0,12.0)
T_med=r eadmg_tιme ( 2 ) * 0.5
Sddt=amaxl (abs ( (readmg_tιme (n) -t_med) *sιgmaa+sιgmab) , 0.0002)
If (hιgh.eq.0) then
Tιme_d2=tιme_d Else
Tιme_d2=max0 (tιme_d*0.9, 4000) End if
If (km. le .0. and. dif . gt .xs *sddt) goto 472 ' Derivative too high
742 If (lpnt . gt .0. and.no. gt .0) then
Hιgh=l
No=0
Deltt=readmg_tιme (n) / (float (nflatr) )
Tιme_d=mιn0 (maxO (ιnt4 (deltt* 1000+0.5 ) , ιnt (del t* 1000) ) , ιnt4 (12000))
Write (NewQ, ' (f7.2,a) ' ) float (Tιme_d/1000. ) , 'sec'
Call out_col (ιnt4 (isign ( 6, mark) ) ,01dQ,NewQ) End if
C
Km=km+1
472 If (jout .ne.0) then
Call pulse_out (-1, volt, pulse_current, total_secs, poldl, pold2 )
Jout=0 End if If(km.gt.O) then ' Analyse DRVT slope.
No=-l
Call realtimel (ιnt (n) ,nstr, km)
If (nstr . ge.4) goto 47 Else
Call realtιme2 (ιnt (n) , labs (km) ) End if If (kpnt.lt.0) then ' T < 25K
Appendix B Copyright, Iowa State University Research Foundation 1996
38
suBsπrun MX (iULE If(km.ge.4) then Nstr=4 Goto 47 End if End if
If(km.gt.5) then
Nstr=4
Goto 47 End if
If (interrupt () .eq.283) goto 1000 Ps0=sec (pmO)
Passed=elapsed(sl,ml,ps0,pmO) *1000.0+0.5 If(no.ge.O) then
Stay=tιme_d2-passed Else
Stay=tιme_d - passed End if If (stay.gt.O) then
If (time_delay(stay) .eq.283) goto 1000 End if Goto 45 ! Take next T-reading
47 Continue
Kl=l Nadd=nstr-2
C Colect nflatr "flat readings" C
Ps0=sec (pmO) lflag=0 50 N=n+1
Kl=kl+1
Passed=elapsed(sl,ml,ps0,pm0) *1000.0+0.5
Stay=time_d-passed
If (interrupt () .eq.283) goto 1000
If (stay.gt.O) then If (time_delay(stay) .eq.283) goto 1000
End if
Sl=sec (ml) 51 Jc=0
Temp_readings (n) =sample_temp (active_sensor, s3,m3,ΞsT,jc)
SigT (n)=SsT
Write (NewT, ' (2x, f7.3, a) ' ) Temp_readings (n) , 'K'
Call out_col (int (isign (2 ,mark) ) ,01dT,NewT)
Ssl=sec (mml)
Timestamp=elapsed (ss0,mm0, ssi, mml) /3600.00+addt
Write (NewS, ' (f7.2, a) ' ) timestamp, 'hrs '
Call out_col (int (isign (8, mark) ) , Olds, NewS)
If (Temp_readings (n) . ge . tm) then
Tm=Temp_readings (n)
Write (NewM, ' (2x,f7.3, a) ' ) Tm, 'K'
Call out_col (int4 (isign (4 ,mark) ) ,01dM,NewM) End if
S_t=temp_readings (n)
Elapsed_seconds=elapsed_seconds+elapsed (s2, m2 , s3, m3) S2=s3 M2=m3
Reading_time (n) =Elapsed_seconds ! Store reading time
Drvt (n) = ( temp_readings (n) -temp_readings (n-1) ) ! 1-st derivative * / (readιng_time (n) -readιng_time (n-1))
Appendix B Copyright, Iowa State University Research Foundation
1996
39
Figure imgf000041_0001
C Check whether "Nflatr" flat points exist C
Call realtimel ( ιnt4 (n) , nstr, int2 ( kl+nadd) )
C
C Watch for suddenly rising temperature...
C
If(kl.ge.2) then More than 3 points collected If (Suddenly (already) ) then Noshield-- . true . No shield Delta_t=0.0 Heater power Call shieldoff Shield OFF New2=' Ctrl OFF' Print message
Call out_col (int (isign (7, mark) ) ,01d2,New2)
Kpnt=-5 Next 3 points short delay.
Ipnt=-1
Lpnt=-ll lt_add=0
High=0
Kl=kl+nadd
If(kl.ge.3) then
It_add=-250
Goto 60 Else
Start=l
Lpnt=-10
Goto 10 End if End if End if
If (nstr . ge .nflatr) then Nflatr "Flat"
Kl=nstr
Goto 60 End... End if
If (kpnt.lt.0) then ! T < 12K
If (kl+nadd. ge .nflatr) then
Nstr=nflatr
Kl=nstr
Goto 60 End if End if
If (nstr.gt. (nflatr+1) /2) then ! More then 1/2
'Flat'
If (iflag. eq.0) iflag=nstr-l ! Set "flag" End if
If (iflag. gt.0) iflag=i lag+1 If (iflag. ge. nflatr) then Flag >= 'Nflatr"
Kl=iflag
Goto 60 End ... End if
If (kl.ge. nflatr then 1 pnt away.
Kl=nflatr
Goto 60 End if
Ps0=sec (pmO) Goto 50 ! Back to T-monitor
C Stable T-change reached. C
Appendix B Copyright, Iowa State University Research Foundation 1996
40
ES i** ^?*
SUBSTΪ lES ϊ-β 60 Continue
Rιght=kl i Number of "right" linear T's
C
C Determine dT, etc... C dT=amaxl (deltaT (n, left, right, TO, error, sll, slope) ,0.01)
T0=t0+0.5*dT
Start=l
If (lpnt.lt.0. and. delr.gt.0.0) start=0
C
C Restore all T's positive
C
Do ι=l , n Temp_readmgs ( l ) =abs ( temp_r eadings ( I ) )
End do
C
C Output results C
Write (NewD, ' (f9.3,a) ' ) dt,'K'
Call out_col (m (isign (9, mark) ) , OldD,NewD)
Ct =Total_heat*1000.0/Dt > Total heat capacity (mJ/specimenK) dCt= (Ct*eπor+ddQ) /dT ' Error in total heat capacity dCa=0.0
Ca =addenda (TO, dCa) ' Find addenda's contribution & error
If (ca. eq.0.0. and. mole . eq.63.54 ) ca=ct-cu ( tO) *weιght/mole If (mole . eq.1.0. and. weight . eq.1.0) then Cp=ct ' Sample ' s=total when addenda run dCp=dCt ' Error
Else Cp =ct-ca ' Samples heat capacity dCp=dct+dca ' Error
If (mole . eq.63.54 ) then Df=Cp-cu(t0) *weιght/mole Df=100.0*df/cp Avproc=Avproc+df Lbl(l)=' ' Write (Lbl (I) (7:),'(a,f7.3,a,f7.3,a)')
* 'Current ponit differs by:',Df,'%; Average deviation =',
* Avproc/npnt, ' % ' Call ask(l)
End if End if
If (ca. le.0.0) ca=ct ' Ca=Ct, if no addenda data available If (cp.le.0.0) cp=ct Temp (npnt)=t0 Cadd (npnt)=Ca Ctotal (npnt)=Ct If (WtAg.eq.0.0) then
Csample (npnt) =Cp
Cp = Cp*mole/weιght ' Molar heat capacity dCp=dCp*mole/weιght ' Molar Error
Else
AgWt=abs (WtAg*weιght*0.01)
SaWt=weιght-AgWt
If (wtag.gt.0.0) then Csample (npnt) =Cp-Ag (tO) *AgWt
Else Csample (npnt) =Cp-Cu ( tO ) *AgWt/ 63.54
End if
Cp =Csample (npnt) *mole/SaWt dCp=dCp *mole /SaWt
End if
Write (NewA, ' ( f 10 . 3 , a ) ' ) Cp Call out_col ( ιnt 4 ( I sign ( 10 , mark ) ) , OldA, NewA)
Appendix B Copynght, Iowa State University Research Foundation
1996
41 ι iύUE.rL.1. (B21E26 Ssl=sec(mml) ' Time for time stamp
Tιmestamp=elapsed (ssO, mmO, ssi, mml) /60. +~addt* 60.
Write (NewC , ' (f7.2 , a) ' ) Timestamp/npnt , ' min '
Call out_col (ιnt (isign ( 11, mark) ) ,OldC,NewC)
Write (Newv, ' (f7.2, a) ' ) elapsed (sss0,mmm0, ssi, mml) /60. , 'min'
Call out_col (ιnt4 (ιsιgn(12,mark) ) , 01dv, ewv)
If (jfile.eq.O) goto 91
Open (unιt=l , fιle=output, status= 'old' , form= ' formatted' ,
* access= ' append' , err=80) Goto 90
C
C File Opening/saving error
C
80 Call fill (3,0.0)
Wntedbl (4) , ' (a, ι4.4) ' ) 'Data point No : ' , npnt
Call csdhlp(2)
Call ask(0)
Close (unιt=l)
Goto 1000 C
C Save data with time stamp C 90 Continue
Ssl=sec(mml) ' Time for time stamp
Timestamp= lapsed (ssO, mO, ssl, mml) /3600.00+addt
Dcpp=100.0*dcp/amaxl (cp, l.e-5)
Dctt=100.0*dct/amaxl (ct, l.e-5)
Dcaa=100.0*dca/amaxl (ca, l.e-5)
If (mole . eq.63.54 ) then Write (1, ' (f7.3,fll.3,f6.2,2(fl0.3,f6.2),f6.2,fl0.3,f6.3,f9.3) ' )
* T0,Cp, dCpp, Ct,dCtt,Ca,dCaa, Timestamp, Total_heat* 1000.0, dT,
* Cu(T0) *weιght/mole End if
If (mole. eq.101.961) then Write (1, ' (f7.3,fll.3,f6.2,2(fl0.3,f6.2),f6.2,fl0.3,f6.3,f9.3) ')
* T0,Cp, dCpp,Ct,dCtt,Ca,dCaa, Timestamp, Total_heat* 1000.0, dT,
* A1203 (TO) *weιght/mole End if
If (mole . ne.63.54. and.mole.ne .101.961) then If (WtAg.eq.0.0) then Write (1, ' (f7.3,fll.3,f6.2,2(fl0.3,f6.2),f6.2,fl0.3,f6.3,f9.3) ')
* T0,Cp, dCpp,Ct,dCtt,Ca, dCaa, Timestamp, Total_heat* 1000.0 , dT Else
Agg=ag (tO)
If (wtag.lt.0.0) agg=cu (tO) /63.54
Agg=agg*agwt
Write (1, ' (f7.3,fll.3,f6.2,2(fl0.3,f6.2),f6.2,fl0.3,f6.3,f9.3) ')
* T0,Cp, dCpp,Ct,dCtt,Ca, dCaa, Timestamp, Total_heat* 1000.0, dT, agg End if
End if
Close (unιt=l)
C
C Save T vs time data C
If ( ] save .ne .0) then Open (unit=2, fιle=tname, status='old' , form=' formatted' ,
* access= ' append' )
Write (2, ' (a,ι3.3,a,f8.6,a,f8.5,a,f6.2,a,f5.2,a) ') * ' Data poιnt=' ,npnt, ' , 1= ' , pulse_current, ' Amps, V=',volt, *'V, t=' , total_secs, ' sec, Shιeld=' , delta_t, ' % . '
Do ι=l, n Write (2, ' (f7.2, f8.3, f7.5) ' ) readmg_tιme (l) , temp_readmgs (l) ,
SιgT(ι)
End do
Write (2, ' (lx) Close (unιt=2) End if
Appendix B Copynght, Iowa State University Research Foundation
1996 c
91 Continue
C
C Draw Heat capacity plot(s)
C
Call C_out (mt4 (npnt) )
C
C Determine new pulse time and current
C
R=volt/pulse_current ' Heater resistance (average)
Step=t_step*t0 ' Delta (T) = 1% of T
Step=amml (stepmax, amaxl (stepmm, step) ) ι 0.05 <= Delta (T) <= 1 OK If(nsp.gt.O) then > Special region
Do ι=l, nsp If(t0.ge.ttO(ι) . and.s_t.le. ttl (l) ) then Exit End if End do End if
Step=amml (stepmax, step) P_t=p_tt
If (ipnt.lt .0) p_t=amml (amaxl (p_tt* 0.5, 10 0) , pulse_tιm) If (Lpnt.lt.0) p_t=amιnl (amaxl (p_tt*0.25,7 0+maxO (ιt_add, 0) *0 002), * pulse_tιm)
Pulse_tιme=tιmeι (ct, R, step, pulse_current, fι_max, fι_mιn, p_t) ' dQ for addenda
C
C Does maxT reached''
C
If (TO.ge. t_max) Goto 1000 ' Reset data collection
If ( tO+0.5*step. ge . t_max) then ' Reset data collection T0=t_max+0.1
Goto 1000 i Reset data collection End if
If (s_t.gt . t_max.or.s_t.le.0.0) then T0=t_max+0.1
Goto 1000 ' Reset data collection End if If (interrupt () .eq.283) goto 1000 c
C Analyse last value of the slope c
Shιeld_step=0.10 ' Shield heater increment = 0.1%
If (tO. le.15.0) then Shield_step=0.05 IF (.NOT.ALREADY) then If (slope-sll.gt.0.0. and. slope, gt.0.0) then ' Right slope > left slope If (slope*delt.gt.0.002) then ' Each time T-rise > 0.002K If ( .not .noshield) then Noshιeld=. true . Delta_t=0.0 Call shieldoff New2=' Ctrl OFF'
Call out_col (mt4 (isign (7, mark) ) ,Old2,New2) Kpnt=-5 Ipnt=-1 Lpnt=-ll It_add=-250 Already™ . true . Goto 111 End if End if End if END IF
Appendix B Copyright, Iowa State University Research Foundation
1996
43
SUBSTITUTE SiEEF (HI 26) End if
If (slope*delt*nflatr.le.O.15. and. Ipnt . gt .0. and. tO.gt.15.0) ipnt=l
112 Slp=slope*right*delt-slop ! Diff. for T-rise/drop If (delta_t.lt. set_max) -then ! Max power not reached lwait=0
If (sip. gt .0.0) then ! Positive slope
If (delta_t.le.0.0) goto 111 ! Heater still OFF
If (sip. gt .0.02) delta_t=delta_t-shield_step*O.S
If (sip. gt.0.04) delta_t=delta_t-shιeld_step
If (sip. g .0.08) delta_t=delta_t-shιeld_step
If (slp.gt.0.12) delta_t=delta_t-shield_step
If (slp.gt.O.16) delta_t=delta_t-shιeld_step
If (sip. gt.0.20) delta_t=delta_t-shield_step
Delta_t=amaxl (delta_t, 0.0) End if If (slp.lt.0.0) then ! Slope less than specified
Delta_t=delta_t+shield_step
Slp=slope*right*delt
Iffslp.lt. 0.00) then If (tO.gt. 25.0) then c If (tO. It.250.0) Delta_t=delta_t+shιeld_step
End if Iwait=l
End if
If (sip. It. -0.03) delta_t=delta_t+shield_step
If (sip. It. -0.06) delta_t=delta_t+shield_step
If (sip. It. -0.12) delta_t=delta_t+shield_step
If (slp.lt .-0.20) delta_t=delta_t+shιeld_step
Delta_t=aminl (delta_t, set_max)
If (tO. le.25.0) lwa t=0 End if
C
Write(New2, ' (a,f5.2, a) ' ) ' @ ' , elta_t, ' % '
Call out_col (int4 (isign (7, mark) ) ,01d2,New2)
Call heateron (delta_t)
Noshιeld=. false .
If (delta_t . le .0.0) noshield=. true .
If (iwait.ne.0) then ! Wait for T to rise...
Pau=aminl (amaxl (delt*nflatr*0.5/3.0, 10.0) ,30.0)
If (tO. gt.250.0) pau=pau*1.5
Tιme_dl=int4 (pau* 1000 + 0 . 5 ) ! T- readmg del ay ( tι cks )
N=0
S2=sec (m2 )
113 N=n+ 1 Ξ0=sec (m0 )
If ( interrupt ( ) . eq . 283 ) goto 1000
Jc=0
I f (n . eq . l ) j c=l
Temp_readings (n) =sample_temp ( active_sensor , s3 , m3 , S sT , j c ) ! Sampl e T
If ( temp_readings (n) . gt . t_max . or . temp_readings (n) . le . 0 . 0 ) then
T0=t_max+0 . 1
Goto 1000 End if SigT(n)=SsT
Write(NewT, ' (2x,f7.3,a) ' ) Temp_readings (n) , ' K' ! Fill W-2 Call out_col (int4 (isign (2, mark) ) ,01dT,NewT) Ssl=sec (mml)
Timestamp=elapsed (ss0,mm0, ssl, ml) /3600.00+addt Write (NewS, ' (f7.2,a) ' ) timestamp, 'hrs' Call out_col (in 4 (isign (8, ark) ) , Olds, NewS)
C
C Count temp, measurements time
C
If (n. eq.1) then
Elapsed_seconds=0.0 Else
Elapsed_seconds=Elapsed_seconds+elapsed ( s2 , m2 , s3 , m3 )
Appendix B Copyright, Iowa State University Research Foundation
1996
44
SUBSTITUTE S kEάEK U FΛr ' ύ. WS.\ End if
Readιng_time (n) =Elapsed_seconds
S2=s3 Save last T-reading time
M2=m3
C
C Plot Temperature change real time
C
If (n. eq.l) then Call realtime (-l,nstr) ! Clean up window #3 when first Pnt
Call realtime (int4 (n+10000) ,nstr) Else Drvt (n) = (temp_readmgs (n) -temp_readings (n-1 ) ) ! 1-st derivative * / (reading_time (n) -reading_tιme (n-1))
Call realtime (int4 (n+10000) ,nstr) End if
If (nst .ge.3) then Slope=drvt2 (1024) If (slope. It.0.0) goto 112 Goto 111 End if Ss=sec (mm)
Passed=elspsed (sO, mO, ss, mm) *1000. +0.5 ! t-since last T-read Stay=tιme_dl-passed ! Delay left
If (stay.le.O) goto 113
If (time_delay (stay) .eq.283) goto 1000 ! Wait Goto 113 End if
C
End if
C Go to the next point
C
111 Npnt=npnt+1
Kpnt=kpnt+1
If (Ipnt.le.O) then It_add=it_ add+250
Else l _add=0
End if
Lpnt=lpnt+1
Nflat=min0 (right+1, nflatr+1)
If (interrupt () .eq.283) goto 1000
Jc=l c S_t=sample_temp (-active_sensor, s2,m2,SsT, jc)
Ξ_t=sample_temp (active_sensor, s2 , m2 , SsT, j c)
If (Ipnt. eq. -10) start=l
Goto 11
C
C End data collection
C
1000 Continue
C
C Reset heat pulse (if any) and shield temperature control
C
Call k224son(k224s,0.0) If (current .ne.0.0) then Current=0.0 ! Reset heater
Call current_onoff (k224,sl,ml)
Call pulse_out (-1, volt, pulse_current, total_secs, poldl, pold2) End if
Call clrscreen(3) If (tO . ge . t_max) then Call shieldoff Noshield=. true . Call fill(l, delta t)
Appendix B Copyright, Iowa State University Research Foundation 1996 Write (lbl (5) , ' (a, f7.3, a, f9.3) ') 'T=',tO,', C(p)=',Cp Call csdhlp(l)
Lbl(l) (19:) = 'Press any key to go back to main menu... ' Call ask(lθ) I]=key() Else Call fill (2,delta_t) If (delta_t .gt.0.0) then Call csdhlp(2)
Lbl (1) (25 : ) = 'Hιt ESC or any other key... ' Call ask(lθ) Else Call csdhlp(2)
Lbl (1) (26: ) = 'Hιt any key to continue...' Call ask(lθ) End if
If (key () .eq.283) then call shieldoff Noshιeld=. true . End if End if
Call clrscιeen(3) Return End
Integer*2 function Interrupt)) Implicit ιnteger*2 (l-n)
C
Interrupts
Do while (keyt () .ne.O) if (key() .eq.283) Interrupt=2ϊ End do Return End
Real function timei (c, R, deltaT, l, fι_max, fι_mιn, pulse_tιme) Implicit mteger*2 (l-n) Integer*4 j Real l c
P_t =pulse_tιme P_tl=p_t*1000.0
DQ=c*deltaT ' Amount of heat necessary to gain deltaT VI=dQ/p_tl ' E*I @ pulse_tιme seconds heat pulse time I =sqrt(vι/r) ' Current to achieve dQ @ p_t seconds pulse time Tιmeι=p_t C
C Check if current is within limits'7 C
If (I. It.0.000005) then ' I < 5 microamps
1=0.000005 ' 1 = 5 microamps
Q=ι*ι*r ' 1 second Q
Tιmeι=dq/ (q*1000.0) ' Time necessary to gain dQ
End if If (I . gt .fι_max) then ' I > 15000 microamps
I=fι_max ' I = 15000 microamps
Q=ι*ι*r
Tιmeι=dq/(q*1000.0) End if If (ι.lt.fι_mιn) I=fι_mιn
C
C Set current smallest step to 50 mkAmps
C
J=ι*1000000.0+0.5 ' Current, mkAmps
J=(J+25) /50
J=j*50
Appendix B Copyright, Iowa State University Research Foundation
1996 1=3/1000000.0 ' Back to Amps
Fι_mm=ι Q=ι*ι*r
Tιmeι=dq/ (q*1000.0) 1 Change time J=tιmeι*100.+0.5 Tιmeι=]/100. 1 Precise up to 0.01 seconds Return End
Subroutine Filemon (3 save, 3 file, npnt, addt) Implicit Integer*2 (l-n) Integer*2 actιve_sensor, vnumber Real mole
Character c_name*48, u_name*48, ad_fιle*12, output*12, tname*12, k dιsplay*12
Character*24 date_tιme Character*78 lbl Character*120 line Logical yes
Dimension buf (12)
Common /heap/ Temp (1024) ,Cadd(1024) ,Ctotal (1024) , Csample (1024) Common /compound/ c_name, u_name, weight, mole, ad_fιle, output Common /coldat/ pulse_tιme , pulse_current , actιve_sensor, total_heat , total_secs, T_max, T_step, F _ma , tιme_max, del, p_t, nflatl, stepmax, step in, delr , nflatr
Common /sh eld/ set_max, shιeld_step, slop, delta_t Common /magn/ field, fcurrent Common /temp/ tname, display (4) ,Md,Tmd(4, 512) , Cmd ( 4 , 512) ,
Smd(4,512) ,dTmd(4,512)
Common /message/ lbl (19) Common /vexsion/ vnumber c
C Check file existance
C
Addt=0.0
I (3 save . ne .0 ) then Inquire (fιle=tname, exιst=yes) If (yes) then 1 Data file exist Call fill (4,0.0) Lbl (1)=' Data file //tname//' exist Call csdhlp(O) I]=key()
If (13.eq.283) then ESC - reselect name Jsave=777 Return End if If(i] .eq.6255 or .13. eq.6223) then - overwrite Open (unιt=2 , fιle=tname, form= :' formatted' ) Wrιte(2, ' (lx) ' ) Close (unιt=2) End if Else Open (unιt=2 , fιle=tname, form= ' formatted' ) Wπte(2, ' (lx) * ) Close (unιt=2 ) End if End if
Call clrscreen( 3) If (output (1:3) .eq. ' ' ) then Call flll(5,0.0) Call csdhlp(l) If (key () .eq.283) then Jsave=777 Return
Appendix B Copyright, Iowa State University Research Foundation 1996
47
SUBSimiTE SHEET (ROLE 26) End if
Jfιle=0
Call fιll(6,0.0)
Call csdhlp(2)
Lbl(l) (5:)='Hιt ESC to select output data file name or any other'
* //' key to START... ' Call ask(lθ)
If (key() .eq.283) then Jsave=777 Return End if
Call clrscreen(3) End if C
C Check data file existance
C
If (jfile.ne.O) then • Data storage == YES
Inquire (fιle=output, exιst=yes)
If(yes) then ' Data file exist
Lbl(l)='Data file '//output//' exist' Call fill (7,0.0) Call csdhlp(O) 2 I3=key()
Call clr∑creen(l)
If (13. eq.283 ) then ' ESC - reselect name
Jsave=777 Return End if
If (1 . eq.6255. or .1 . eq.6223) then ' "0" - overwrite Open (uni t=l, fιle=output, status=' unknown' , form= ' format ed ' ,
* err=3)
Write ( 1, ' ( 15x, a) ' ) 'Ames Laboratory, Iowa State University' Write ( 1, ' ( 15x, a) ' ) 'Group leader - Karl A. Gschneidner, Jr.' Write ( 1, ' ( lOx, a, ι2.2) ' ) 'Heat capacity data acquisition pro'
* // 'gram. Version 9.', vnumber
Wrιte(l, ' (lx) ' )
Write (1, ' (a) ' ) ' + '
Figure imgf000050_0001
Appendix B Copyright, Iowa State University Research Foundation
1996
48
SUBSTITUTE SHEET LE 28 * Wnted, ' (a,f7.2,a,f8.4,a) ' )
+ 'Heat shield | P(max) =' , set_max, '" % I Wt . % Cu =',-slop,
* ' % I '
Write(l, ' (a,f7.2,a,f8.2,a) ' )
* 'Magn. field I Field =', field, ' T I Current =',
* field/fcurrent, ' A I'
* // ' .===============+==================,
Wnted, ' (lx) ' )
Write (line, ' (a) ') ' T C (Sample) Error C (Total) Error '
* //'C (Holder) Error Time dQ dT C(Cu)clc'
If (slop. gt.0.0) lιne(82:83)='Ag' If (slop. It.0.0) lιne(82:83) = 'Cu' If (mole. eq.63.54) then
Wnte , ' (a) ' ) lιne(l:87) Else
If (slop. ne.0.0) then Wnted, ' (a) ' ) lιne(l:87)
Else Wnted, ' (a) ' ) lιne(l:78)
End if End if Wπtedine, ' (a) ' ) ' (K) (mJ/molK) (%) (mJ/K) (%)
* //' (mJ/K) (%) (hrs) (mJ) (K) (mJ/K) '
If (mole. eq.l.0) write (line (10 : 18) , ' (a) ' ) ' (mJ/gK) ' If (mole. eq.63.54) then
Wnted, ' (a) ' ) lιne(l:87) Else
If (slop. ne.0.0) then Wnted, ' (a) ' ) line (1:87)
Else Wnted, ' (a) ' ) lme(l:78)
End if End if Write (line, ' (a) ') ' '
* / . .
If (mole . eq.63.5 ) then
Wnted, ' (a) ' ) lιne(l:87) Else
If (slop. ne.0.0) then Wnted, ' (a) ' ) lme(l:87)
Else Wnted, ' (a) ' ) line (1:78)
End if End if
Close (unιt=l)
Goto 4 ! Start
End if ' Endlf - overwrite
If (1 .eq.7777. or.13.eq.7745) then ! "A" - append Open (unιt=l, fιle=output, status= ' old' , form= ' formatted' , err=3) Ittι=-5 Itto=6 10 Lιne=' '
Read(l, ' (a) ' ,end=8) line
Ns=12
Do 1=1, ns
Buf (ι)=0.0 End do
Ier=lιner (itti, ltto, line, ns, buf) If(Ier.le.O) then ' Wrong line or EOF
If (ιer.eq.-l) goto 8 ' End-of-file
I (ier . le . -2) goto 10 ! Non-numeric line
End if
If (buf (1) .le.0.0) goto 10 Temp (npnt)=buf (1) Ctotal (npnt)=buf (4) Cadd (npnt)=buf (6)
Appendix B Copyπght, Iowa State University Research Foundation
1996
49 ψ>
HUE 26) If (slop. eq.0.0) then
Csample (npnt) =buf (2 ) *weιght/mole Else Ww=abs (weιght*slop*0.01) Csample (npnt) =buf (2 ) * (weight-ww) /mole End if Addt=buf ( 8 ) Npnt=npnt+1 Goto 10 8 Close (unιt=l) Goto 4 End if
Lbl (1) (18 :) = ' Please, make a selection. A, 0 or ESC ...' Call ask(lθ) Goto 2
C
C Error message (s)
C
3 Call fill (8,0.0)
Lbl (2)=' '//output
Close (uni t=l) Call csdhlp(2) Call ask(0) Return Else Open (unit =1, fιle=output, status=' unknown' , form=' formatted' ,
* err=3)
Write (1, ' ( 15x, a) ' ) 'Ames Laboratory, Iowa State University'
Write (1, ' ( 15x, a) ' ) 'Group leader - Karl A. Gschneidner, Jr '
Write ( 1, ' (lOx, a, ι2.2 ) ' ) 'Heat capacity data acquisition pro' *// 'gram. Version 9.', vnumber
Wnted, ' (lx) ' )
Write (1, ' (a) ') ' +
*// ' '
Iu=len_trιm(c_name)
Write (1, ' (a) ') 'Compound I ' //c_name ( 1 : IU)
Iu=len_tnm (u_name )
Call dt (date_tιme)
Write (1, ' (a) ') 'Started by I ' //u_name ( 1 : iu) // ' on '//date_tιme
Wnted, ' (a) ' ) ' + + '
*// ' + '
Wnted, ' (a,f9.4,a,f9.3,a,f9 7) ' )
* ' Sample I m =' , eight, ' g I M =',mole,' g' *//' I m/M =', weight/mole
Write (1, ' (a,f6.1,a,f7.1,a) ' )
* 'Heat pulse I I (mm) = ' , pulse_current*1000000. , ' mkA I ' *//' I(max) =' ,fι_max*1000000.0, ' mkA I '
Wnted, ' (a,f6.1,a,f7.1,a) ')
* 'Pulse time | t (min) = ' , pulse_tιme, ' sec | t (max) =',
* tιme_max, ' sec | '
Wnted, ' (a,f8.3,a,f8.2,a,f4.2,a) ')
* 'Delta T I dT =' , t_step, ' *T K | dT (mm) =',stepmm,
* ' K I dT (max) =', stepmax, ' K'
Wnted, ' (a,f7.2,a,ι5,a,ιl,a) ' )
* 'T readings | dt(mm) =',del, ' sec | N(flat) =', nflatr,
* ' pnt I #skιp =' , ιnt2 (delr+0.5) , ' Pnt' If (slop. eq.0.0) Write (1, ' (a,f7.2,a) ' )
* 'Heat shield I P (max) =',set_max, ' % I ' If (slop. gt.0.0)
* Wnted, ' (a,f7.2,a,f8.4,a) ')
* 'Heat shield I P(max) =',set_max, ' % | Wt.% Ag =',slop,
* ' % I '
If (slop. It.0.0)
* Wnted, ' (a,f7.2,a,f8.4,a) ' )
* 'Heat shield I P(max) =',set_max, ' % | Wt.% Cu =',-slop,
* ' % I '
Write (1, ' (a,f7.2,a,f8.2,a) ' )
Appendix B Copyπght, Iowa State University Research Foundation
1996
50
suBSTmnisϊffi 'Magn. field Field =' , field, T I Current
Wnted, ' (a) ') ============+=======================+======='
* / / ' ===============+================== i
Wrιte(l, ' (lx) ' )
Write d e, ' (a) ' ) ' T C (Sample) Error C (Total) Error '
*//'C (Holder) Error Time dQ dT C(Cu)clc'
If (slop. gt.0.0) lιne(82:83)='Ag' If (slop. It.0.0) lιne(82:83)='Cu' If (mole. € q.63.54 ) then Wnted, ' (a) ' ) lιne(l:87) Else If (slop. ne.0.0) then
Wrιte(l, ' (a) ' ) lιne(l:87) Else
Write (1, ' (a) ' ) lιne(l:78) End if End if
Write (line, ' (a) ') ' (K) (mJ/molK) (%) (mJ/K) ( ) *//' (mJ/K) (%) (hrs) (mJ) (K) (mJ/K) '
If (mole. eq.l.0) write (line (10 -18 ) , ' (a) ' ) ' (mJ/gK) ' If (mole. eq.63.54) then
Wnted, ' (a) ' ) line (1:87) Else If(slop ne.0.0) then
Write d, ' (a) ' ) line (1:87) Else
Write (1, ' (a) ' ) lme(l:78) End if End if
Wπte(lιne, ' (a) ' ) ' '
*//' '
If (mole. eq.63.54) then
Wnted, ' (a) ' ) lme(l:87) Else If (slop. e.0.0) then
Wnted, ' (a) ' ) lme(l:87) Else
Write (1, ' (a) ' ) l e(l:78) End if End if
Close (uni t=l)
Goto 4 ' Start
End if ' Endlf data file exists
End if ' Endlf Check data file exist
Continue
Call clrscreen(3)
Return
End
Subroutine Fill (l, delta_t) Integer*4 l Character*78 lbl Common /message/ Lbl (19)
If(l.eq.l) then
Lbl(l)='Data collection terminated:'
Lbl (2 )=' Maximum temperature reached'
Lbl (3) = ' Last data point measured:'
Lbl (4)
Lbl (5) T=333.333, C(p)=99999.999'
Lbl (6)
Lbl (7) Shield: Heater now is OFF' End if If (ι.eq.2) then
Lbl(l)=' DDaattaa ccoolllleeccttiioonn terminated:
Appendix B Copyπght, Iowa State University Research Foundation 1996
51 jSUBsnrrE arp Lbl(2)=' Due to operator's request' If (delta_t.gt.0.0) then Lbl (3)=
Lbl (4); IMPORTANT ' i I Lbl(6)> 'Press ESC to shut down shield' Lbl (7)=' or' Lbl (8)=''any OTHER KEY to go back to' Lbl(9)< 'ma menu with shield ON.. '
End if End if If(ι.eq.3) then
Lbl (1)=' Unrecoverable error while'
Lbl (2) =' saving collected data ...'
Lbl (3) = ' '
End if If(l.eq.4) then
Lbl (2) = ' '
Lbl(3)='Hιt "0" key to overwrite it,'
Lbl(4)=' or "A" key to append it,'
Lbl(5)=' or ESC key to reselect name' End if If(ι.eq.5) then
Lbl(l)=' No output data file specified'
Lbl (2)=' and no data will be saved 'it'
Lbl (3) = ' '
Lbl(4)='Hιt ESC to go back to main menu'
Lbl (5)=' or'
Lbl (6)=' any other key to proceed' End if If(ι.eq.6) then
Lbl(l)=' Warning1'
Lbl(2)='No data will be saved...'
Lbl (3)=' '
Lbl(4)="It's not too late to hit"
Lbl(5)='ESC and specify output'
Lbl (6)= 'data file name Another'
Lbl(7)='key pressed starts this'
Lbl (8)=' run without data storage'
Lbl(9)="and thus they'll be lost" End if If(ι.eq.7) then
Lbl (2) = ' '
Lbl(3)='Hιt "0" key to overwrite it,1
Lbl (4)=' or "A" key to append it,'
Lbl (5)=' or ESC key to reselect name' End if If(ι.eq.8) then
Lbl (1) ='Error while Opening/Updating data file'
Lbl (3) = ' '
Lbl (4)=' Can not proceed with the measurements' End if Return End
Integer*2 function Spec_rgn (3 , ttO, ttl, dts, tds)
Implici t mteger*2 ( l -n)
Real mole
Character c_name*48, u_name*48, ad_fιle*12, output*12
Dimension ttO (3) , ttl (3) ,dts (3) , tds (3)
Common /compound/ c_name, u_name, weight, mole, ad_fιle, output
Do 1=1, 1
TtO (1) =0 0
Ttl(l) =0 0
Dts (1) =0 0
Tds (1) =0 0
End do
Appendix B Copyπght, Iowa State University Research Foundation 1996
52
SUBSTITUTE SHEET (lull 26 Spec_rgn=0
If (ad_fιle(l:2) .ne ' ') then Open (unιt=l, fιle=ad_flie, err=77) Do ι=l,3 Readd, ' (4f8.3) ' , err=77, end=77) ttO(ι),ttl(ι),dts(ι), tds (1) If (ttθ(ι) .gt.0.0) Spec_rgn=spec_rgn+1 End do 77 Close (umt=l) End if
C
Return End C=======================================================================
Logical function Suddenly (already)
Implicit mteger*2 (l-n)
Logical already
Common /tmonitor/ n, temp_readmgs ( 1024 ) , readιng_tιme (1024 ) ,
* t ax, dtmax, tmin, dtmin, smax, sm , xnew, ynew,
* dnew,ns,dT,at,bt,drvt (1024) , drvt2 (1024) C
Suddenly=. i alse .
If (temp_readmgs (n) . gt .15.0) return ' Temp too high
If (already) return
If(n.lt.6) return
Sx =readιng_tιme (n-2 ) +readmg_tιme (n-1) +readιng_tιme (n )
Sx2 = readmα_tιme (n-2 ) **2 + readmg_tιme (n-1 ) **2 + readmg_tιme (n ) **2
Sxy=readmg_tιme (n-2 ) *drvt (n-2 ) +
* readmq_tιme (n-1) *drvt (n-l) +
* readmg_tιme (n ) *drvt (n )
Sy =drvt (n-2)+drvt (n-l)+drvt (n )
D=3.0*sx2-sx*sx
If(d.eq.O.O) d=l.e-10
Al= (3.0*sxy-sx*sy) /d
If (al.le.0.0) return
Sx =readιng_tιme (n-3 ) +readmg_tιme (n-2 ) +readmg_tιme (n-1) Sx2=readmg_tιme (n-3) **2 + readmg_tιme (n-2) **2 + readmg_tιme (n-1) **2 Sxy=readιng_tιme (n-3 ) *drvt (n-3 ) +
* readιng_tιme (n-2 ) *drvt (n-2)+
* readmg_tιme (n-1) *drvt (n-1)
Sy =drvt (n-3)+drvt (n-2)+drvt (n-1)
D=3.0*sx2-sx*sx If(d.eq.O.O) d=l.e-10 A2=(3.0*sxy-sx*sy) /d If (a2.1e.0.0) return
Sx =readmg_tιme (n-4 ) +readιng_tιme (n-3 ) +readιng_tιme (n-2 ) Sx2=readmg_tιme (n-4 ) **2 + readmg_tιme (n-3) **2 + readmg_tιme (n-2 ) **2 Sxy=readιng_tιme (n-4 ) *drvt (n-4 ) +
* readmg_tιme (n-3) *drvt (n-3) +
* readmg_tιme (n-2) *drvt (n-2)
Sy =drvt (n-4)+drvt (n-3)+drvt (n-2)
D=3.0*sx2-sx*sx
If(d.eq.O.O) d=l.e-10
A3=(3.0*sxy-sx*sy) /d
If (a3.1e.0.0) return
If (al . Ie.a2.or .a2. Ie.a3) return ' No sudden rise
If (al.gt.l.05*a2.and.a2.gt.l.05*a3) then ' Sudden rise
Suddenly= . true .
Already =.true. End if
Return End c=======================================================================
Subroutine Lsfit (abefore, bbefore, sci, nflat, m, sig aa, sigmab) Implicit mteger*2 (l-n)
Appendix B Copyπght, Iowa State University Research Foundation
1996
53
III Common /tmonitor/ n, temp_readmgs ( 102 ) , readιng_tιme ( 1024 ) ,
* tmax, dtmax, tmm, dtm , smax, smm, xnew, ynew,
* dnew, ns,dT, at, bt, drvt (1024) ,drvt2 (1024) Common /SigmaT/ SιgT(1024)
C
Fttl =0. Sx =0.0 Sx2=0.0 Sxy=0.0 Sy =0.0 C...
Do ι=l, nflat Temp_readmgs (I) =temp_readιngs (m+ι-1) SigT (ι)=SιgT (m+ι-1)
Readιng_tιme (l ) =readmg_tιme (m+ι-1) - sci ' Shift time by Sci Drvt (ι)=drvt (m+ι-1) C...
C Calculate Before-the-pulse derivative vs time straight line C
If(ι.gt.l) then W=1.0 ' (sigmm/ (sigt (ι)+sιgmm) ) ' / (abs ( ts (l ) ) +1. ) Fttl =fttl + w
Sx =sx + readιng_tιme (i) * w
Ξx2=sx2 + readιng_tιme ( l ) * readιng_tιme ( l ) * w Sxy=sxy 4 readmg_tιme ( i ) *drvt ( I ) * w
Sy =sy + drvt (i ) * w
End if C . . .
End do C . . .
C Determine LS straight line for before-the-pulse derivative C
D=fttl*sx2-sx*sx If(d.eq.O.O) d=l.e-10
Bbefore= ( sx2* sy- sx*sxy)/d ' L.S. parameters: Abefore=( fttl*sxy- sx* sy) /d ' Drvt = Abefore*tιme + Bbefore C
C Estimated standard deviation: C
Sdelta=0.0 Do ι=2, nflat
Sdelta=sdelta + (drvt (i) - (readιng_tιme (1) *abefore+bbefore) ) **2 End do
Sdelta=sqrt (sdelta/ (nflat-3) ) *0.675 Sιgmab=sqrt (sx2 /d)*sdelta Sιgmaa=sqrt (fttl/d) *sdelta
Return End
Appendix B Copyπght, Iowa State University Research Foundation
1996

Claims

WE CLAIM Claims
1. Apparatus for making a series of calorimetry measurements of a sample, comprising a sample holder in which a sample is disposed, a sample temperature sensor and a sample heater for providing a sample heat pulse both in thermal connection with said sample, a heat shield in which the sample holder is positioned and including an electrical heat shield heater, electrical power supply means for providing an electrical power pulse to said sample heater to generate each heat pulse, and electrical power control means for adjusting, if necessary, electrical power output of said heat shield heater from one measurement to the next in response to a sample temperature-versus-time change determined before and after a prior heat pulse to provide a subsequent sample temperature- versus-time change that is indicative of the sample being in a thermal equilibrium state relative to its environment.
2. The apparatus of claim 1 wherein said power control means comprises a dc current source and a computer control device that can vary said electrical power from said source to said heat shield heater in increments in response to said sample temperature-versus-time change determined before and after a previous heat pulse to provide a subsequent sample temperature-versus-time change that is indicative of the sample being in thermal equilibrium state relative to its environment.
3. The apparatus of claim 1 wherein said power control means adjusts said power to said heat shield heater to provide a subsequent sample temperature-versus-time change that is substantially linear before and after the subsequent heat pulse.
55
UBSTTfUTE SHEET LE 26*
4. The apparatus of claim 1 wherein said temperature sensor comprises a thin film resistor on said sample holder and operable over a range of temperatures from abut 3K to 350K.
5. The apparatus of claim 1 including means for establishing a dc magnetic field about said sample holder.
6. Method of making a series of calorimetry measurements of a sample, comprising disposing said sample in a heat shield including an electrical heat shield heater, providing respective heat pulses to said sample, measuring sample temperature before and after each heat pulse, determining a sample temperature-versus-time change for each heat pulse, and adjusting electrical power output to said heat shield heater, as necessary, in response to the sample temperature-versus- time change determined before and after a previous heat pulse to provide a subsequent sample temperature-versus-time change that is indicative of the sample being in thermal equilibrium state relative to its environment.
7. The method of claim 6 including adjusting power level of a dc current source to said heat shield heater, as necessary, in response to said sample temperature-versus-time change determined before and after a previous heat pulse to provide a subsequent sample temperature-versus-time change that is substantially linear before and after the subsequent heat pulse.
8. The method of claim 6 including measuring the temperature of said sample by a thin film resistor operable over a range of temperatures from about 3K to 350K.
9. The method of claim 6 including establishing a dc magnetic field about said sample.
10. The method of claim 6 for making a series of heat capacity measurements .
56
SUBSmUTESHEET (ilLE26)
PCT/US1997/021298 1996-11-19 1997-11-18 Calorimetric system WO1998022788A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/753,036 1996-11-19
US08/753,036 US5806979A (en) 1996-11-19 1996-11-19 Calorimetric system and method

Publications (1)

Publication Number Publication Date
WO1998022788A1 true WO1998022788A1 (en) 1998-05-28

Family

ID=25028882

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/US1997/021298 WO1998022788A1 (en) 1996-11-19 1997-11-18 Calorimetric system

Country Status (2)

Country Link
US (1) US5806979A (en)
WO (1) WO1998022788A1 (en)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6095679A (en) * 1996-04-22 2000-08-01 Ta Instruments Method and apparatus for performing localized thermal analysis and sub-surface imaging by scanning thermal microscopy
US6438497B1 (en) 1998-12-11 2002-08-20 Symyx Technologies Method for conducting sensor array-based rapid materials characterization
US6477479B1 (en) 1998-12-11 2002-11-05 Symyx Technologies Sensor array for rapid materials characterization
AU3691700A (en) * 1998-12-11 2000-07-03 Symyx Technologies, Inc. Sensor array-based system and method for rapid materials characterization
EP1111377A1 (en) * 1999-12-23 2001-06-27 Fraunhofer-Gesellschaft Zur Förderung Der Angewandten Forschung E.V. Method and device for determining the concentration of substances in a volume of liquid
US6487866B1 (en) * 2000-07-10 2002-12-03 The United States Of America As Represented By The National Aeronautics & Space Administration Multipurpose thermal insulation test apparatus
US6843595B2 (en) * 2001-01-26 2005-01-18 Waters Investment Limited Differential scanning calorimeter accounting for heat leakage
US6762418B2 (en) * 2001-03-13 2004-07-13 Advanced Cardiovascular Systems, Inc. Calorimetry as a routine dosimeter at an electron beam processing facility
AU2003287576A1 (en) * 2002-11-13 2004-06-03 Iowa State University Research Foundation, Inc. Intermetallic articles of manufacture having high room temperature ductility
US6824306B1 (en) 2002-12-11 2004-11-30 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Thermal insulation testing method and apparatus
EP1491881A1 (en) * 2003-06-23 2004-12-29 Ludovit Kubicar Method and device for measuring thermophysical parameters of materials by pulse transient method
US7371006B2 (en) * 2004-02-10 2008-05-13 Perkinelmer Las, Inc. Differential scanning calorimeter (DSC) with temperature controlled furnace
US7549296B2 (en) * 2004-02-23 2009-06-23 Atlas Scientific Low temperature cryocooler regenerator of ductile intermetallic compounds
CN1995999B (en) * 2006-12-29 2010-05-12 湖南三德科技发展有限公司 Calorimeter with power supply stabilizer
EP2156171A4 (en) * 2007-05-16 2016-06-29 Energetic Genomics Corp A large array defferential scanning calorimeter, dsc measuring unit
ES2333762B1 (en) * 2007-12-24 2011-01-17 Consejo Superior De Investigaciones Cientificas ADIABATIC EQUIPMENT FOR MEASURING THE ABSORPTION COEFFICIENT SPECIFICALLY A MATERIAL SUBJECT TO AN ALTERNATE MAGNETIC FIELD AND METHOD FOR PERFORMING SUCH MEASURE.
RU2466491C2 (en) * 2008-01-14 2012-11-10 ООО "Перспективные магнитные технологии и консультации" Halbach structure-based variable magnetic field generator
CN110223591B (en) * 2019-07-05 2024-02-06 佛山市京木测控科技有限公司 Heat insulation material demonstration instrument
CN113531220A (en) * 2020-04-15 2021-10-22 康普技术有限责任公司 Cable sealing device and cable sealing system
DE102020133710B3 (en) * 2020-12-16 2022-02-17 KRATZER AUTOMATION Aktiengesellschaft power feed sealing assembly
CN113433493A (en) * 2021-06-01 2021-09-24 中国科学院上海光学精密机械研究所 Magnetic resistance element for measuring magnetic field intensity and measuring system thereof

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1118997B (en) * 1959-03-13 1961-12-07 Hannelore Wollenberger Adiabatic calorimeter
US3267728A (en) * 1964-08-25 1966-08-23 Honeywell Inc Dynamic automatically controlled calorimeter and melting point device
US3365944A (en) * 1965-09-13 1968-01-30 Dynatech Corp Adiabatic calorimeter
US3813937A (en) * 1972-06-16 1974-06-04 J Fletcher Heat flow calorimeter
US4892707A (en) * 1983-07-25 1990-01-09 American Cyanamid Company Apparatus for the calorimetry of chemical processes

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SU712696A1 (en) * 1973-07-02 1980-01-30 Предприятие П/Я В-2877 Adiabatic calorimeter
US4208907A (en) * 1976-09-16 1980-06-24 The Dow Chemical Company Accelerating rate calorimeter and method of operation
DE2754275A1 (en) * 1977-12-06 1979-06-07 Kernforschungsz Karlsruhe CALORIMETER
US4185497A (en) * 1978-10-02 1980-01-29 The United States Of America As Represented By The Secretary Of The Navy Adiabatic laser calorimeter
SU901852A1 (en) * 1979-05-21 1982-01-30 Институт Белка Ан Ссср Differential scanning microcalorimeter
DE3529489A1 (en) * 1985-08-16 1987-02-26 Max Planck Gesellschaft METHOD AND DEVICE FOR DETERMINING THE HEAT CAPACITY OF A SAMPLE
FR2592159B1 (en) * 1985-12-19 1988-07-22 Commissariat Energie Atomique QUASI-ADIABATIC CALORIMETER FOR MEASURING THE ENERGY TRANSPORTED BY RADIATION.

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE1118997B (en) * 1959-03-13 1961-12-07 Hannelore Wollenberger Adiabatic calorimeter
US3267728A (en) * 1964-08-25 1966-08-23 Honeywell Inc Dynamic automatically controlled calorimeter and melting point device
US3365944A (en) * 1965-09-13 1968-01-30 Dynatech Corp Adiabatic calorimeter
US3813937A (en) * 1972-06-16 1974-06-04 J Fletcher Heat flow calorimeter
US4892707A (en) * 1983-07-25 1990-01-09 American Cyanamid Company Apparatus for the calorimetry of chemical processes

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
REC. SCI. INSTRUM., Vol. 52, No. 6, June 1981, CASH W.M. et al., "Application of a Digital Computer to Data Acquisition and Shiled Temperature Control of a High-Temperature, Adiabatic Calorimeter", pages 895-901. *
REV. SCI. INSTRUM., Vol. 48, No. 8, August 1977, MOSES D. et al., "Simple Calorimetric System for the Temperature Range 3-300 K with On-Line Computer", pages 1098-1103. *

Also Published As

Publication number Publication date
US5806979A (en) 1998-09-15

Similar Documents

Publication Publication Date Title
WO1998022788A1 (en) Calorimetric system
Pecharsky et al. A 3–350 K fast automatic small sample calorimeter
EP1087217B1 (en) Calibrated isothermal assembly for a thermocouple thermometer
US6788060B1 (en) Imaging system with homogeneous magnetic field
US4840495A (en) Method and apparatus for measuring the thermal resistance of an element such as large scale integrated circuit assemblies
US6086249A (en) Method and apparatus for simulating and indicating the temperature of the winding of an electric power transformer
Strouse Standard platinum resistance thermometer calibrations from the Ar TP to the Ag FP
EP0382414A2 (en) Method and apparatus for the measurement of the thermal conductivity of gases
US4643586A (en) Equipment and method for calibration of instruments having a temperature sensing unit
US6641299B2 (en) Fixed-point cell, thermometer calibration method and fixed-point temperature realizing apparatus
EP0962763A1 (en) Differential scanning calorimeter
CA1127738A (en) Automatic temperature calibration of thermal analyzers
EP0129120A1 (en) Liquid level sensor
US4795884A (en) Method for in-situ restoration of plantinum resistance thermometer calibration
US4762424A (en) Low temperature dilatometer
US3280630A (en) Cold junction
US4882571A (en) Sensor used for electrical heating measurement
Besley Use of ceramic-encapsulated rhodium-iron alloy resistance thermometers below 80K: thermometric properties and stability
CN114364959A (en) Non-invasive thermometer
Novotny et al. Calorimetry of small samples with low thermal diffusivity
Corsan Axial heat flow methods of thermal conductivity measurement for good conducting materials
Ripple et al. Standard reference material 1749: Au/Pt thermocouple thermometer
GB2114293A (en) Equipment for calibration of instruments having a temperature sensing unit
Sauerland et al. An automatic adiabatic calorimeter for intermediate and high temperatures
SU1040379A1 (en) Device for ceramic material specimen bend-testing

Legal Events

Date Code Title Description
AK Designated states

Kind code of ref document: A1

Designated state(s): GB