- added sulfat ion
This commit is contained in:
+45
-36
@@ -1,14 +1,16 @@
|
||||
i_H = 1;
|
||||
i_C = 2;
|
||||
i_O = 3;
|
||||
i_Na = 4;
|
||||
i_Cl = 5;
|
||||
i_Ca = 6;
|
||||
i_Mg = 7;
|
||||
i_S = 8;
|
||||
i_P = 9;
|
||||
N_mol = 9;
|
||||
EL_H = 1;
|
||||
EL_C = 2;
|
||||
EL_O = 3;
|
||||
EL_Na = 4;
|
||||
EL_Cl = 5;
|
||||
EL_Ca = 6;
|
||||
EL_Mg = 7;
|
||||
EL_S = 8;
|
||||
EL_P = 9;
|
||||
EL_SO4 = 10;
|
||||
EL_COUNT = 10;
|
||||
|
||||
# Elements
|
||||
M_H = 1.00794; % g/mol
|
||||
M_C = 12.0107; % g/mol
|
||||
M_O = 15.9994; % g/mol
|
||||
@@ -19,33 +21,20 @@ M_Mg = 24.305; % g/mol
|
||||
M_S = 32.06; % g/mol
|
||||
M_P = 30.9738; % g/mol
|
||||
|
||||
mol_masses = zeros(1, N_mol);
|
||||
mol_masses(i_H) = M_H;
|
||||
mol_masses(i_C) = M_C;
|
||||
mol_masses(i_O) = M_O;
|
||||
mol_masses(i_Na) = M_Na;
|
||||
mol_masses(i_Cl) = M_Cl;
|
||||
mol_masses(i_Ca) = M_Ca;
|
||||
mol_masses(i_Mg) = M_Mg;
|
||||
mol_masses(i_S) = M_S;
|
||||
mol_masses(i_P) = M_P;
|
||||
# Ions
|
||||
M_SO4 = M_S+4*M_O; % g/mol
|
||||
|
||||
# Create single elements [g/mol]
|
||||
M_EL_Ca = create_mol([i_Ca], [1], mol_masses);
|
||||
M_EL_Mg = create_mol([i_Mg], [1], mol_masses);
|
||||
M_EL_Na = create_mol([i_Na], [1], mol_masses);
|
||||
M_EL_Cl = create_mol([i_Cl], [1], mol_masses);
|
||||
M_EL_S = create_mol([i_S], [1], mol_masses);
|
||||
|
||||
# Create common used compounds [g/mol]
|
||||
M_CaSO4 = create_mol([i_Ca i_S i_O], [1 1 4], mol_masses);
|
||||
M_CaCl2 = create_mol([i_Ca i_Cl], [1 2], mol_masses);
|
||||
M_NaCl = create_mol([i_Na i_Cl], [1 1], mol_masses);
|
||||
M_MgSO4 = create_mol([i_Mg i_S i_O], [1 1 4], mol_masses);
|
||||
M_NaHCO3 = create_mol([i_Na i_H i_C i_O], [1 1 1 3], mol_masses);
|
||||
M_HCl = create_mol([i_H i_Cl], [1 1], mol_masses);
|
||||
M_H2SO4 = create_mol([i_H i_S i_O], [2 1 4], mol_masses);
|
||||
M_H2O = create_mol([i_H i_O], [2 1], mol_masses);
|
||||
mol_masses = zeros(1, EL_COUNT);
|
||||
mol_masses(EL_H) = M_H;
|
||||
mol_masses(EL_C) = M_C;
|
||||
mol_masses(EL_O) = M_O;
|
||||
mol_masses(EL_Na) = M_Na;
|
||||
mol_masses(EL_Cl) = M_Cl;
|
||||
mol_masses(EL_Ca) = M_Ca;
|
||||
mol_masses(EL_Mg) = M_Mg;
|
||||
mol_masses(EL_S) = M_S;
|
||||
mol_masses(EL_P) = M_P;
|
||||
mol_masses(EL_SO4) = M_SO4;
|
||||
|
||||
function mol = create_mol(indices, n, mol_masses)
|
||||
N = length(mol_masses);
|
||||
@@ -53,6 +42,26 @@ function mol = create_mol(indices, n, mol_masses)
|
||||
mol(indices) = n.*mol_masses(indices);
|
||||
endfunction
|
||||
|
||||
# Create single elements [g/mol]
|
||||
M_EL_Ca = create_mol([EL_Ca], [1], mol_masses);
|
||||
M_EL_Mg = create_mol([EL_Mg], [1], mol_masses);
|
||||
M_EL_Na = create_mol([EL_Na], [1], mol_masses);
|
||||
M_EL_Cl = create_mol([EL_Cl], [1], mol_masses);
|
||||
M_EL_S = create_mol([EL_S], [1], mol_masses);
|
||||
|
||||
# Create single ions [g/mol]
|
||||
M_EL_SO4 = create_mol([EL_SO4], [1], mol_masses);
|
||||
|
||||
# Create common used compounds [g/mol]
|
||||
M_CaSO4 = create_mol([EL_Ca EL_SO4], [1 1], mol_masses);
|
||||
M_CaCl2 = create_mol([EL_Ca EL_Cl], [1 2], mol_masses);
|
||||
M_NaCl = create_mol([EL_Na EL_Cl], [1 1], mol_masses);
|
||||
M_MgSO4 = create_mol([EL_Mg EL_SO4], [1 1], mol_masses);
|
||||
M_NaHCO3 = create_mol([EL_Na EL_H EL_C EL_O], [1 1 1 3], mol_masses);
|
||||
M_HCl = create_mol([EL_H EL_Cl], [1 1], mol_masses);
|
||||
M_H2SO4 = create_mol([EL_H EL_SO4], [2 1], mol_masses);
|
||||
M_H2O = create_mol([EL_H EL_O], [2 1], mol_masses);
|
||||
|
||||
function mol = create_vec(indices, quantity, N)
|
||||
mol = zeros(1, N);
|
||||
mol(indices) = quantity;
|
||||
|
||||
Reference in New Issue
Block a user