# Temperature color schemes

The temperature value represents the uncertainty in the position of an atom in a crystallographic model. Coloring each atom according to its temperature value makes it easy to see variations in the uncertainty of atomic positions throughout the model. This reveals local uncertainty whereas the Resolution represents the average uncertainty for the model.

Fixed (Absolute) Temperature Color Scheme (Recommended)

 0 50 100

Relative Temperature Color Scheme (Limited Value/Misleading)

 min temp max temp

(Instructions for inserting the above color keys into Proteopedia articles.)

• The fixed (absolute) color scheme is by far the most informative, because colors are mapped to the absolute temperature values themselves. It enables valid comparisions to be made between different models (PDB files).
• The relative color scheme is of limited value. Because it gives no sense of the actual temperature values, it can be misleading. Different models (PDB files) cannot be meaningfully compared using the relative color scheme. The only value of this color scheme is to make it easier to find the atoms with the highest temperature values. Using the fixed/absolute color scheme, these highest-temperature-atoms are difficult to see when the maximum temperature is below 50.

As the examples below illustrate, generally, the average temperature value in a crystallographic model goes up as the value of resolution goes up. For more data, please see Temperature value vs. resolution.

## Fixed vs. Relative

Jmol offers two methods for coloring by temperature value. (For an introduction to the temperature value or B factor, please see Temperature value.)

Color Mapping to Temperature Values

SAT colors button

Blue

White

Red

temperature, fixed

color fixedTemperature

0

50

100

temperature, relative

color relativeTemperature*

minimum
value

midpoint**

maximum
value

*The relativeTemperature color scheme is the same as the temperature color scheme.
**Midpoint between the minimum and maximum temperature values, that is, min + ((max - min)/2).

## Examples

 Show:Asymmetric Unit Biological Assembly Drag the structure with the mouse to rotate

Resolution, PDB ID

Temperature values

Min

Av

Rel White

Max

1cbn

2

5

11

20

2a4x

6

18

45

84

1io1

4

29

36

68

1uwb

10

67

54

100

3a8n

4

107

105

203

3lvh

50

103

--

328

Temperature of an atom is reported in the hover report (touch the atom, don't click).

Other examples:

• 2zqp 6.0 Å Temperature min/av/max: 328/328/328. Fixed is red; relative is white.
• 1bdx 6.0 Å Temperature min/av/max: 30/30/30. Fixed is light blue; relative is white.
• 1qd7 5.5 Å Temperature min/av/max: 0.0/19/102. Fixed & relative seem identical.

## Jmol Scripts

The Jmol scripts used by the Temperature 0-10 and Add 10 buttons (below the table in the previous section) are:

These scripts require that the main script below be run beforehand.

The following Jmol script produces the above scenes, after loading any PDB file. After running this script, you enter the command "echo pdbID" to display the PDB ID in the upper left. When pasting this script into the Jmol Console (Jmol 11.8 used in Proteopedia in June, 2011), the semicolons were required in order for the echo commands to work properly.

```select all;
color fixedTemperature;
cartoon off;
spacefill off;
wireframe 0.2;
select solvent;
spacefill 0.5;
background black;
ssbonds off;

hover Temp=%t, %n %R, Chain=%c, Element=%e(%a);
# Example: Temp=50.00, HOH 671, Chain=A, Element=O(O)

~tempmax = {*}.temperature.max;
~tempav = {*}.temperature;
~tempmin = {*}.temperature.min;

~tempmax = (~tempmax) % (0);
~tempav = (~tempav) % (0);
if (~tempmin < 1) {~tempmin = (~tempmin) % (1)};
else {~tempmin = (~tempmin) % (0)};

set echo all;
font echo 15 sansserif;
color echo [x00ff00];

set echo echotr 100% 100%;
set echo echotr right;
~report = "Temperature/B values:|Max " + @~tempmax ;
~report += "|Av " + @~tempav + "|Min " + @~tempmin;
echo @~report;

set echo echobl 0% 0%;
echo Fixed;

set echo echotrange 0% 8%;
echo All Atoms

set echo echotl 0% 100%;
```