Calculating liquid viscosities
The VESIcal.calculate_liquid_viscosity()
function calculates the viscosity of the silicate liquid given composition and temperature. The function uses the model of Giordano et al (2008). No other models are currently available for this calculation.
Method Structure
Single sample:
def calculate_liquid_viscosity(self, sample, temperature).result
BatchFile process:
def calculate_liquid_viscosity(self, temperature)
Required inputs:
sample
: Only for single-sample calculations. The composition of a sample as Sample class.
temperature
: The temperature in degres C. For BatchFile calculations, if temperature information is present in the file (e.g., as a column with unique temperature values for each sample), this can be accessed by passing the column name in quotes to the temperature variable.
Calculated outputs: The Log viscosity of the liquid in Pa*s, rounded to 4 dp.
For an entire dataset
Import a data file
myfile = v.BatchFile('example_data.xlsx')
myfile.get_data()
Label |
SiO2 |
TiO2 |
Al2O3 |
Fe2O3 |
Cr2O3 |
FeO |
MnO |
MgO |
NiO |
CoO |
CaO |
Na2O |
K2O |
P2O5 |
H2O |
CO2 |
Press |
Temp |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
BT-ex |
77.5 |
0.08 |
12.5 |
0.207 |
0 |
0.473 |
0 |
0.03 |
0 |
0 |
0.43 |
3.98 |
4.88 |
0 |
5.5 |
0.05 |
500 |
900 |
TVZMa-ex |
78.37 |
0.13 |
11.94 |
0 |
0 |
0.99 |
0.04 |
0.05 |
0 |
0 |
0.53 |
3.8 |
4.14 |
0 |
4.06 |
0.005 |
600 |
800 |
TVZOh-ex |
77.9 |
0.08 |
12.15 |
0 |
0 |
0.95 |
0.05 |
0.06 |
0 |
0 |
0.55 |
4.05 |
4.12 |
0 |
4.63 |
0.005 |
50 |
900 |
Oh48-FTIR1-MI1-a |
78.27 |
0.0298 |
12.02 |
0 |
0 |
0.9828 |
0.0336 |
0.0515 |
0 |
0 |
0.4772 |
4.05 |
4.09 |
0 |
4.214912406 |
0.004565932 |
250 |
950 |
Oh48-FTIR1-MI1-b |
78.27 |
0.0298 |
12.02 |
0 |
0 |
0.9828 |
0.0336 |
0.0515 |
0 |
0 |
0.4772 |
4.05 |
4.09 |
0 |
4.005815793 |
0.004447963 |
500 |
1025 |
Oh48-FTIR1-MI1-IRc |
78.27 |
0.0298 |
12.02 |
0 |
0 |
0.9828 |
0.0336 |
0.0515 |
0 |
0 |
0.4772 |
4.05 |
4.09 |
0 |
3.885649341 |
0.004654367 |
5000 |
925 |
Oh50-4.1 |
77.91 |
0.0984 |
12.07 |
0 |
0 |
1.0556 |
0.0257 |
0.0999 |
0 |
0 |
0.5216 |
4.04 |
4.18 |
0 |
4.641842879 |
0.004565932 |
1000 |
862 |
Oh50-4.2 |
77.91 |
0.0984 |
12.07 |
0 |
0 |
1.0556 |
0.0257 |
0.0999 |
0 |
0 |
0.5216 |
4.04 |
4.18 |
0 |
4.402133476 |
0.004447963 |
100 |
770 |
Oh49-4.1 |
77.92 |
0.0099 |
12.11 |
0 |
0 |
1.002 |
0.0672 |
0.0546 |
0 |
0 |
0.5346 |
4.01 |
4.3 |
0 |
4.283934433 |
0.004565932 |
1000 |
855 |
Oh49-4.2 |
77.92 |
0.0099 |
12.11 |
0 |
0 |
1.002 |
0.0672 |
0.0546 |
0 |
0 |
0.5346 |
4.01 |
4.3 |
0 |
4.230532593 |
0.004447963 |
500 |
1000 |
Ma55-5a.1 |
77.68 |
0.0096 |
12.27 |
0 |
0 |
1.0272 |
0.0628 |
0.0342 |
0 |
0 |
0.6064 |
3.97 |
4.35 |
0 |
4.459767403 |
0.004654367 |
5000 |
1010 |
Ma57-3b.2 |
77.9 |
0.0498 |
12.07 |
0 |
0 |
1.0844 |
0.0748 |
0.0355 |
0 |
0 |
0.4759 |
4.1 |
4.21 |
0 |
3.712506046 |
0.004447963 |
1000 |
1012 |
Ma57-3c.1 |
77.65 |
0.159 |
12.28 |
0 |
0 |
0.9769 |
0.0597 |
0.0577 |
0 |
0 |
0.5598 |
4.08 |
4.18 |
0.0064 |
4.443973024 |
0.004654367 |
100 |
885 |
Ma57-3c.2 |
77.65 |
0.159 |
12.28 |
0 |
0 |
0.9769 |
0.0597 |
0.0577 |
0 |
0 |
0.5598 |
4.08 |
4.18 |
0.0064 |
4.283171078 |
0.004644523 |
1000 |
885 |
Do the calculation
viscosities = myfile.calculate_liquid_viscosity(temperature=900)
viscosities
SiO2 |
TiO2 |
Al2O3 |
Fe2O3 |
Cr2O3 |
FeO |
MnO |
MgO |
NiO |
CoO |
CaO |
Na2O |
K2O |
P2O5 |
H2O |
CO2 |
Press |
Temp |
Viscosity_liq_VESIcal |
Temperature_C_VESIcal |
Model |
Warnings |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
BT-ex |
77.5 |
0.08 |
12.5 |
0.207 |
0.0 |
0.473 |
0.0 |
0.03 |
0.0 |
0.0 |
0.43 |
3.98 |
4.88 |
0.0 |
5.5 |
0.05 |
500 |
900 |
3.9209 |
900 |
Giordano et al. (2008) |
|
TVZMa-ex |
78.37 |
0.13 |
11.94 |
0.0 |
0.0 |
0.99 |
0.04 |
0.05 |
0.0 |
0.0 |
0.53 |
3.8 |
4.14 |
0.0 |
4.06 |
0.005 |
600 |
800 |
4.6534 |
900 |
Giordano et al. (2008) |
|
TVZOh-ex |
77.9 |
0.08 |
12.15 |
0.0 |
0.0 |
0.95 |
0.05 |
0.06 |
0.0 |
0.0 |
0.55 |
4.05 |
4.12 |
0.0 |
4.63 |
0.005 |
50 |
900 |
4.3229 |
900 |
Giordano et al. (2008) |
|
Oh48-FTIR1-MI1-a |
78.27 |
0.0298 |
12.02 |
0.0 |
0.0 |
0.9828 |
0.0336 |
0.0515 |
0.0 |
0.0 |
0.4772 |
4.05 |
4.09 |
0.0 |
4.214912406 |
0.004565932 |
250 |
950 |
4.5219 |
900 |
Giordano et al. (2008) |
|
Oh48-FTIR1-MI1-b |
78.27 |
0.0298 |
12.02 |
0.0 |
0.0 |
0.9828 |
0.0336 |
0.0515 |
0.0 |
0.0 |
0.4772 |
4.05 |
4.09 |
0.0 |
4.005815793 |
0.004447963 |
500 |
1025 |
4.6215 |
900 |
Giordano et al. (2008) |
|
Oh48-FTIR1-MI1-IRc |
78.27 |
0.0298 |
12.02 |
0.0 |
0.0 |
0.9828 |
0.0336 |
0.0515 |
0.0 |
0.0 |
0.4772 |
4.05 |
4.09 |
0.0 |
3.885649341 |
0.004654367 |
5000 |
925 |
4.6803 |
900 |
Giordano et al. (2008) |
|
Oh50-4.1 |
77.91 |
0.0984 |
12.07 |
0.0 |
0.0 |
1.0556 |
0.0257 |
0.0999 |
0.0 |
0.0 |
0.5216 |
4.04 |
4.18 |
0.0 |
4.641842879 |
0.004565932 |
1000 |
862 |
4.3073 |
900 |
Giordano et al. (2008) |
|
Oh50-4.2 |
77.91 |
0.0984 |
12.07 |
0.0 |
0.0 |
1.0556 |
0.0257 |
0.0999 |
0.0 |
0.0 |
0.5216 |
4.04 |
4.18 |
0.0 |
4.402133476 |
0.004447963 |
100 |
770 |
4.4138 |
900 |
Giordano et al. (2008) |
|
Oh49-4.1 |
77.92 |
0.0099 |
12.11 |
0.0 |
0.0 |
1.002 |
0.0672 |
0.0546 |
0.0 |
0.0 |
0.5346 |
4.01 |
4.3 |
0.0 |
4.283934433 |
0.004565932 |
1000 |
855 |
4.4602 |
900 |
Giordano et al. (2008) |
|
Oh49-4.2 |
77.92 |
0.0099 |
12.11 |
0.0 |
0.0 |
1.002 |
0.0672 |
0.0546 |
0.0 |
0.0 |
0.5346 |
4.01 |
4.3 |
0.0 |
4.230532593 |
0.004447963 |
500 |
1000 |
4.4849 |
900 |
Giordano et al. (2008) |
|
Ma55-5a.1 |
77.68 |
0.0096 |
12.27 |
0.0 |
0.0 |
1.0272 |
0.0628 |
0.0342 |
0.0 |
0.0 |
0.6064 |
3.97 |
4.35 |
0.0 |
4.459767403 |
0.004654367 |
5000 |
1010 |
4.3743 |
900 |
Giordano et al. (2008) |
|
Ma57-3b.2 |
77.9 |
0.0498 |
12.07 |
0.0 |
0.0 |
1.0844 |
0.0748 |
0.0355 |
0.0 |
0.0 |
0.4759 |
4.1 |
4.21 |
0.0 |
3.712506046 |
0.004447963 |
1000 |
1012 |
4.7267 |
900 |
Giordano et al. (2008) |
|
Ma57-3c.1 |
77.65 |
0.159 |
12.28 |
0.0 |
0.0 |
0.9769 |
0.0597 |
0.0577 |
0.0 |
0.0 |
0.5598 |
4.08 |
4.18 |
0.0064 |
4.443973024 |
0.004654367 |
100 |
885 |
4.3889 |
900 |
Giordano et al. (2008) |
|
Ma57-3c.2 |
77.65 |
0.159 |
12.28 |
0.0 |
0.0 |
0.9769 |
0.0597 |
0.0577 |
0.0 |
0.0 |
0.5598 |
4.08 |
4.18 |
0.0064 |
4.283171078 |
0.004644523 |
1000 |
885 |
4.4623 |
900 |
Giordano et al. (2008) |
For a single sample
Extract a single sample from your dataset
SampleName = 'BT-ex'
extracted_bulk_comp = myfile.get_sample_composition(SampleName, asSampleClass=True)
Do the calculation
v.calculate_liquid_viscosity(sample=extracted_bulk_comp, temperature=900).result
3.9209