The CIPW Norm
Steven Dutch, Professor Emeritus, Natural and Applied Sciences, Universityof Wisconsin - Green Bay
The CIPW norm is named for the four petrologists, Cross, Iddings, Pirsson andWashington, who devised it in 1931
What is a Norm and Why is it Needed?
A norm is a means of converting the chemical composition of an igneous rock to an idealmineral composition. It often reveals similarities in rocks that have quite different modes,or observed mineral assemblages. Some of the factors that can cause such variations are:
- Disequilibrium (for example, zoned minerals or reaction rims isolating the interiors of grains)
- Water content (otherwise identical rocks might contain biotite, amphibole, or pyroxene, depending on water content)
- Other minor constituents. For example, excess sulfur or chlorine might cause scapolite to form instead of feldspar. Boron typically causes tourmaline to form.
The CIPW norm calculates mineral composition as if the magma were anhydrous (water issimply treated as a separate phase) and at low pressure. Other more complex norms havebeen devised for high-pressure or very hydrous situations. In an ideal world, a norm wouldmatch the observed mineral phases perfectly. To create such a norm, we would have tounderstand magma crystallization perfectly (and we don't), and the norm would be extremelycomplex to calculate.
Logic of Calculation
The logic of calculating a norm is simple even if the steps are tedious. Deal with thesimplest and most predictable minerals first, then apply corrections if the rock issilica-deficient.
- Allocate the most predictable elements
- Allot Common Substitution Elements to Major Elements
Nickel and manganese are combined with ferrous iron, strontium and barium with calcium.
- Allot Minor Elements to Accessory Minerals. These include P (Apatite), S, (Pyrite), Cr (Chromite), F, (Fluorite), CO2 (Calcite) and Zr (Zircon)
- Allot Titanium to ilmenite or sphene. Later on, Ti may need to be alloted to perovskite or rutile.
- Allot Calcium and Aluminum to anorthite.
- Provisionally form silica-saturated silicates
- Provisionally Allot Alkalis and Aluminum
- Begin Alloting Iron and Magnesium
- Create Provisional Pyroxenes
- Silica Excess forms Quartz
- If there is no silica deficit, calculation is complete.
- Convert Provisional Minerals to Remove Silica Deficit
- Convert Hypersthene to Olivine
- Convert Sphene to Perovskite
- Convert Albite to Nepheline
- Convert Orthoclase to Leucite
- Convert Wollastonite and Diopside to Calcium Orthosilicate (Rare)
- Convert Orthoclase to Kaliophilite (Rare)
Calculating the Norm
- Convert all weight percentages to molecular percentages.
- All quantities are running amounts; that is, use the quantity remaining after any previous calculations.
- Formulas follow common computer program syntax. For example, FeO = FeO + MnO + NiO means sum FeO, MnO and NiO, then replace the value of FeO with the calculated value.
- Provisional calculations are denoted by P*; for example, P*Albite means a provisional quantity for albite, which may be converted later on to nepheline. Any provisional amounts remaining at the end become final amounts.
Allot Common Substitution Elements to Major Elements
- FeO = FeO + MnO + NiO
- CaO = CaO + BaO + SrO
Allot Minor Elements to Accessory Minerals
- Apatite = P2O5, CaO = CaO - (10/3)P2O5, P2O5 = 0
- Pyrite = S, FeO = FeO - S/2, S = 0
- Chromite = Cr2O3, FeO = FeO - Cr2O3, Cr2O3 = 0
- Fluorite = F, CaO = CaO - F, F = 0
- Calcite = CO2, CaO = CaO - CO2, CO2 = 0
- Zircon = ZrO2, SiO2 = SiO2 - ZrO2, ZrO2 = 0
- If FeO exceeds Titanium then Ilmenite = TiO2, FeO = FeO - TiO2, TiO2 = 0
- If TiO2 exceeds FeO then:
P*Sphene = TiO2, CaO = CaO - TiO2, SiO2 = SiO2 - TiO2, TiO2 = 0
Provisionally Allot Alkalis and Aluminum
- P*Orthoclase = K2O, Al2O3 = Al2O3 - K2O, SiO2 = SiO2 - 6 K2O
- If Al2O3 exceeds Na2O then:
P*Albite = Na2O, Al2O3 = Al2O3 - Na2O, SiO2 = SiO2 - 6 Na2O, Na2O = 0
- If Na2O exceeds Al2O3 then:
- Albite = Al2O3, Na2O = Na2O - Al2O3, SiO2 = SiO2 - 6 Na2O, Al2O3 = 0
- Aegerine = Na2O, Fe2O3 = Fe2O3 - Na2O, SiO2 = SiO2 - 4 Na2O
- In the very rare case where Na2O is left over due to insufficient Fe2O3, allot it to sodium metasilicate. SiO2 = SiO2 - Na2O.
- If Al2O3 is left after alloting orthoclase and albite, then:
Anorthite = Al2O3, CaO = CaO - Al2O3, SiO2 = SiO2 - 2 Al2O3, Al2O3 = 0
- If Al2O3 exceeds CaO in the preceding calculation, then:
- Anorthite = CaO, Al2O3 = Al2O3 - CaO, SiO2 = SiO2 - 2 CaO
- Corundum = Al2O3, CaO =0, Al2O3 = 0
Begin Alloting Iron and Magnesium
- If FeO exceeds Fe2O3 then:
Magnetite = Fe2O3, FeO = FeO - Fe2O3, Fe2O3 = 0
- If Fe2O3 exceeds FeO then:
Magnetite = FeO, Fe2O3 = Fe2O3 - FeO, FeO = 0, Hematite = Fe2O3, Fe2O3 = 0
- From here on, all FeO and MgO go to pyroxene plus olivine, but their relative proportions are maintained in all minerals. The sum of MgO plus FeO is designated FM in what follows.
Create Provisional Pyroxenes
- If FM exceeds CaO then:
- P*Diopside = CaO, FM = FM - CaO, SiO2 = SiO2 - CaO, CaO = 0
- P*Hypersthene = FM, SiO2 = SiO2 - FM
- If CaO exceeds FM then:
- P*Diopside = FM, CaO = CaO - FM, SiO2 = SiO2 - 2 CaO, FM = 0
- P*Wollastonite = CaO, SiO2 = SiO2 - CaO
Deal With Silica Excess or Deficit
- If SiO2 is still positive then: Quartz = SiO2, SiO2 = 0, Calculation Finished
- If SiO2 is negative, then we must convert some of the P*minerals. Call the silica deficit D (D = -SiO2) and proceed as follows. Whenever D = 0, the calculation is done.
Convert Provisional Minerals to Remove Silica Deficit
- If D is less than 1/2 of P*hypersthene, then:
Olivine = D, Hypersthene = P*Hypersthene - 2D, D = 0, Calculation Finished
- If D is greater than 1/2 of P*hypersthene, then:
Olivine = P*Hypersthene, D = D - 1/2(P*Hypersthene), Hypersthene = 0,
- If D is less than P*Sphene, then:
Perovskite = D, Sphene = P*Sphene - D, D = 0, Calculation Finished
- If D is greater than P*Sphene, then:
Perovskite = P*Sphene, D = D - P*Sphene, Sphene = 0
- Any excess TiO2 is accounted as Rutile
- If D is less than 4(P*Albite) then:
Nepheline = D/4, Albite = P*Albite - D/4, P*Albite = 0, D = 0, Calculation Finished
- If D is greater than 4(P*Albite) then:
Nepheline = P*Albite, D = D - 4(P*Albite), Albite = 0
- If D is less than 2(P*Orthoclase) then:
Leucite = D/2, Orthoclase = P*Orthoclase - D/2, P*Orthoclase = 0, D = 0, Calculation Finished
- If D is greater than 2(P*Orthoclase) then:
Leucite = P*Orthoclase, D = D - 2(P*Orthoclase), Orthoclase = 0
Form Calcium Orthosilicate (Rare)
- If D is less than (1/2)(P*Wollasonite) then: Calcium Orthosilicate = D, Wollastonite = P*Wollasonite - 2D, D = 0, Calculation Finished
- If D is greater than (1/2)(P*Wollasonite) then: Calcium Orthosilicate = P*Wollasonite, D = P*Wollastonite/2, Wollastonite = 0
- If there is still a deficit, convert Diopside to Olivine + Calcium Orthosilicate as follows:
- If D is less than P*Diopside then:
Additional Calcium Orthosilicate = D/2, Additional Olivine = D/2. Add these amounts to the previously-formed minerals. Diopside = P*Diopside - D, D = 0, Calculation Finished
- If D is greater than P*Diopside then:
Additional Calcium Orthosilicate = P*Diopside/2, Additional Olivine = P*Diopside/2. Add these amounts to the previously-formed minerals. D = D-P*Diopside, Diopside = 0
Form Kaliophilite (Rare)
If there is still a deficit, convert Leucite to Kaliophilite: Kaliophilite =D/2, Leucite = Leucite - D/2, D = 0, Calculation Finished
Convert all remaining provisional minerals, if any, to final quantities
Myron G. Best; Igneous and Metamorphic Petrology, Freeman, 1982, Appendix E, pp.616-619
Thanks to Dr. Chris McLaren for catching several errors in the original version of thispage.
Return to Mineralogy-Petrology Index
Return to Professor Dutch's Home Page
Created 10 Nov 1997, Last Update 22 November 1999