Opérateur CHI1 DATE 98/12/28 Opérateur CHI1 -------------- TAB2 = CHI1 TAB1 'COMP' VAL1 < 'LOGK' VAL2 > <'ENTH' VAL3 > ; Objet ------- Le but est de calculer la spéciation d'une eau, en tout point d'un domaine à partir de la donnée des concentrations analytiques de chaque composant chimique du système. Le calcul se fait en deux temps à l'aide des opérateurs CHI1 et CHI2. CHI1 rassemble toutes les données relatives à un système chimique, et CHI2 effectue la spéciation. La terminologie est celle de Mineql. Toutes les concentrations sont données en moles par litre. Commentaires ------------ TAB1 est une TABLE indicée par les mots: 'IDEN' <'CHXMX'> <'BDD'> <'CLIM'> <'NVCOMP'> <'NVESP'> <'ECHANGE'> <'TEMPERATURE'> TAB1.IDEN est un objet de type LISTENTI contenant les identifiants (dans la base de données),des composants chimi ques à utiliser. TAB1.CHXMX est un objet de type LISTENTI contenant les identifi ants des minéraux à retenir. A défaut on conserve tous les minéraux dont les composants sont dans TAB1.IDEN. TAB1.BDD contient un mot servant à préciser le format de la base de données. 'STRASBG' ou 'MINEQL' . 'MINEQL' correspond à la base de données standard de Mineql. 'STRASBG' correspond à la base de données issue de Kindis. Les formats sont décrits dans le rapport DMT/94/597. L'option par défaut est 'MINEQL'. TAB1.CLIM est une TABLE servant à définir les contraintes chimi ques. Cette TABLE est indicée par des mots tous facultatifs. <'TYP3'> <'COMP3'> <'TYP4'> <'TYP5'> <'TYP6'> TAB1.CLIM.TYP3 est un objet de type LISTENTI contenant les identifiants des espèces dont on veut imposer l'activi té. TAB1.CLIM.COMP3 est un objet de type LISTENTI contenant pour chacune des espèces de TAB1.CLIM.TYP3 l'identifi ant du composant immobile . Si TAB1.CLIM.TYP3 ne contient que des espèces simples cette donnée est inutile. TAB1.CLIM.TYP4 est un objet de type LISTENTI contenant les identifiants des espèces précipitées. TAB1.CLIM.TYP5 est un objet de type LISTENTI contenant les identifiants des espèces en solution, pouvant être précipités. TAB1.CLIM.TYP6 est un objet de type LISTENTI contenant les identifiants des espèces non prises en compte. TAB1.NVCOMP est une TABLE permettant de rajouter des composants (ne figurant pas dans la base de données). Pour n composants , cette TABLE sera indicée par des nombres de 1 à n. Pour le i ieme composant à rajouter TAB1.NVCOMP.i sera une TABLE indicée par les mots: 'IDEN' 'NOM' 'CHARGE' TAB1.NVCOMP.i.IDEN est un entier identifiant du nouveau composant. TAB1.NVCOMP.i.NOM est un mot nom de ce composant TAB1.NVCOMP.i.CHARGE est un entier charge de l'espèce simple associée. TAB1.NVESP est une TABLE permettant de rajouter ou de modifier des espèces.Pour n espèces, cette TABLE sera indicée par des nombres, de 1 à n. Pour la i ieme espèce à rajouter TAB1.NVESP.i sera une TABLE indicée par les mots: 'IDEN' 'LOGK' <'ITYP'> <'COMP'> <'STOECH'> TAB1.NVESP.i.IDEN est un entier identifiant de l'espèce TAB1.NVESP.i.LOGK est un réel logk de l'espèce TAB1.NVESP.i.ITYP entier type de l'espèce 2 complexe en solution 3 activité fixée 4 minéraux précipités 5 minéraux dissous 6 non pris en compte dans le calcul TAB1.NVESP.i.COMP objet LISTENTI contenant les identifiants des composants de l'espèce. Le nombre de ces identifiants doit être inférieur à 4 pour une base de donnée de type MINEQL et inférieur à 8 pour une base de donnée de type STRASBG. TAB1.NVESP.i.STOECH objet LISTREEL coefficient stoechiomètrique correspondant à chacun de ces composants. TAB1.NVSOSO est une TABLE permettant d'ajouter des solutions solides (qui ne figurent pas encore dans les bases de données). Pour n solutions solides, cette TABLE sera indicée par des nombres, de 1 à n. Pour la i ieme solution solide à ajouter TAB1.NVSOSO.i sera une TABLE indicée par les mots: 'IDEN' <'ITYP'> 'SOLID' <'FRACTIO'> TAB1.NVSOSO.i.IDEN est un entier identifiant de la solution solide TAB1.NVSOSO.i.ITYP entier type de la solution solide 3 activité fixée 4 solutions solides précipitées 5 solutions solides dissoutes 6 non pris en compte dans le calcul Pour les types 3 et 4, il faut obligatoirement donner les fractions molaires des poles des solutions solides; pour les types 5 et 6, ce n'est pas obligatoire. TAB.1.NVSOSO.i.SOLID objet LISTENTI contenant les identifiants des poles mineraux purs de la solution solide. Le nombre de ces poles doit etre inférieur à 36. Ces poles sont mis automatiquement en type 6 (ils servent au calcul, mais n'ont pas d'existance physique). TAB1.NVSOSO.i.FRACTIO objet LISTREEL contenant les fractions molaires correspondant à chacun des poles. (Si la solution solide est mise en type 3 ou 4, l'opérateur chi1 a besoin des fractions molaires pour calculer les coefficients stoechiométriques ainsi que le logK de la solution solide. Si la solution solide est mise en type 5 ou 6, l'opérateur chi2 calculera lui meme les fractions molaires et le reste). TAB1.ECHANGE objet de type LISTENTI contenant les identifiants des sites de surface par échange ionique. L'espèce simple associée sera mise automatiquement en type 6 (sert au calcul mais n'a pas d'existence physique) . Soient les deux epèces échangeables c1b et c2b telles que n1 * c1b + n2 * c2b = ns ( nombre total de sites ) liées par le coefficient de selectivité k12=(c1b/c1)**n2*(c2/c2b)**n1 . On définira deux espèces c1b et c2b dont les constantes de formation seront k1=c1b/c1*(cidx)**n1 et k2=c2b/c2*(cidx)**n2 (avec cidx concentration de l'espèce simple associée au site) telles que k12=(k1)**n2/(k2)**n1. Le coefficient d'activité des espèces de surface est prise égale à 1 TAB1.TEMPERATURE mot 'OUI' 'NON' ou entier (1 ou 2). 'NON' on ne tient pas compte de la température. C'est l'option par défaut. - Cas de la base STRASBG. Si 'OUI' on prendra en compte les effets thermiques sur le logk, par interpolation de données tabulées. - Cas de la base MINEQL. 1 ou 'OUI' on utilise la première approximation d'Ulich K(T)=K0+f(H(T)-H(T0)) 2 on utilise la deuxième approximation d'Ulich K(T)=K0+f((H(T)-H(T0)),(Cp(T)-Cp(T0))) COMP est un mot-clé VAL1 est l'adresse du fichier de composants de la base de données. Cette adresse peut être, soit une chaine de caractères (le nom du fichier), soit un entier (l'unité de lecture). Dans le cas ou l'on donne le nom du fichier, le code lui affecte la première unité de lecture disponible à partir de 80. Cette unité sera libérée à la sortie de l'opérateur. LOGK est un mot-clé VAL2 est l'adresse du fichier de logk de la base de données. Cette adresse peut être,soit une chaine de caractères (le nom du fichier), soit un entier (l'unité de lecture). Dans le cas ou l'on donne le nom du fichier, le code lui affecte la deuxième unité de lecture disponible à partir de 80. Cette unité sera libérée à la sortie de l'opérateur. Dans le cas où les composants et les logk sont sur le mème fichier il est inutile de préciser 'LOGK' VAL2, toutefois si ces données figurent,le code reconnaitra que les fichiers ont le mème nom et lira en séquence. ENTH est un mot-clé VAL3 est l'adresse du fichier de la base de données, permettant de prendre en compte les effets thermiques. Cette adresse peut être,soit une chaine de caractères (le nom du fichier),soit un entier (l'unité de lecture). Dans le cas où l'on donne le nom du fichier, le code lui affecte la troisieme unité de lecture disponible à partir de 80. Cette unité sera libérée à la sortie de l'opérateur. Dans le cas où ces données et les logk sont sur le mème fichier il est inutile de préciser 'ENTH' VAL3, toutefois si VAL2 et VAL3 sont identiques,le code lira en séquence. TAB2 est une TABLE contenant le système chimique. Cette TABLE a pour sous type CHIMI1, et elle est indicée par les mots: 'DESCHI' 'IDEN' <'REDOX'> <'TEMPE'> TAB2.DESCHI est une TABLE contenant la description du système chimique. Elle est indicée par les mots: 'IDX' 'NOM' 'CHARGE' 'IDY' 'NN' 'MATRICEA' 'LOGK' 'IDSURF' <'IDZ' 'MATRICEF' 'IDP'> TAB2.DESCHI.IDX objet LISTENTI contenant les identifiants des composants retenus TAB2.DESCHI.NOM objet LISTMOTS contenant les noms de ces composants. TAB2.DESCHI.CHARGE objet LISTENTI contenant la charge de ces composants. TAB2.DESCHI.IDY objet LISTENTI contenant les identifiants des espèces retenues. TAB2.DESCHI.NN objet LISTENTI de 6 valeurs contenant le nombre d'espèces de chaque type c'est à dire: nombre d'espèces simples en solution (type 1) nombre de complexes en solution (type 2) nombre d'espèces à activité fixée (type 3) nombre de minéraux précipités (type 4) nombre de minéraux précipitables en solution(type 5) nombre d'espèces non prises en compte dans le calcul (type 6) TAB2.DESCHI.MATRICEA objet LISTREEL matrice contenant les coefficients stoechiométriques de chaque espèce. TAB2.DESCHI.LOGK objet LISTREEL valeur pour chaque espèce de la constante de formation logk. TAB2.DESCHI.IDSURF objet LISTENTI nature des especes de type 2. 0 en solution ,1 échange ionique (fixée) ,2 adsorbée TAB2.DESCHI.IDZ objet LISTENTI contenant les identifiants des solutions solides retenues. TAB2.DESCHI.IDP objet LISTENTI contenant les identifiants des poles de solutions solides retenus. TAB2.DESCHI.MATRICEF objet LISTREEL matricie contenant les fractions molaires de chaque solution solide TAB2.IDEN est une TABLE indicée par les mots: 'COMP' 'SOLU' 'NOMSOLU' <'PRECI' 'NOMPRECI'> <'SURF' 'NOMSURF'> <'TYP3' 'NOMTYP3'> <IMP3> <'TYP6' 'NOMTYP6'> <'PARF'> <'REAC'> <'IMMO'> <'SOSO' 'NOMSOSO' 'POLE' 'NOMPOLE'> TAB2.IDEN.COMP objet de type LISTENTI entiers servant à décrire la nature des composants. 1 conservatifs, 2 réactifs, 3 immobiles. TAB2.IDEN.SOLU objet LISTENTI identifiants des espèces en solution TAB2.IDEN.NOMSOLU objet LISTMOTS noms attribués par le code à ces espèces en solution. Ces noms ont 4 caractères dont le premier est W suivi éventuellement de 0 ou 00 et du numéro d'ordre dans la liste TAB2.DESCHI.IDY de l'identifiant concerné. TAB2.IDEN.PRECI objet LISTENTI identifiants des espèces précipités potentiels. TAB2.IDEN.NOMPRECI objet LISTMOTS noms attribués par le code à ces espèces. Ces noms ont 4 caractères dont le premier est W suivi éventuellement de 0 ou 00 et du numéro d'ordre dans la liste TAB2.DESCHI.IDY de l'identifiant concerné. TAB2.IDEN.SURF objet LISTENTI identifiants des espèces de surface. TAB2.IDEN.NOMSURF objet LISTMOTS noms attribués par le code à ces espèces. TAB2.IDEN.TYP3 objet LISTENTI identifiants des espèces dont l activité est imposée(mème liste que TAB1.CLIM.TYP3) TAB2.IDEN.NOMTYP3 objet LISTMOTS noms attribués par le code à ces espèces. TAB2.IDEN.IMP3 objet LISTENTI identifiants des espèces de type 3. (activité imposée, redox). TAB2.IDEN.TYP6 objet LISTENTI identifiants des espèces non prises en compte dans le calcul. TAB2.IDEN.NOMTYP6 objet LISTMOTS noms attribués par le code à ces espèces. TAB2.IDEN.PARF objet LISTENTI identifiants des composants non réactifs TAB2.IDEN.REAC objet LISTENTI identifiants des composants réactifs TAB2.IDEN.IMMO objet LISTENTI identifiants des composants non transportés( par exemple:composant de surface, composant associé à une espèce à activité imposée ) TAB2.IDEN.SOSO objet LISTENTI identifiants des solutions solides. TAB2.IDEN.NOMSOSO objet LISTMOTS noms attribués par le code a ces solutions solides. TAB2.IDEN.POLE objet LISTENTI identifiant des poles de solutions solides. TAB2.IDEN.NOMPOLE objet LISTMOTS noms attribués par le code a ces poles de solutions solides. TAB2.REDOX objet TABLE contenant les données relatives aux redox. Cette TABLE est indicée par les mots: 'I1' 'I2' 'A1' 'A2' TAB2.REDOX.I1 objet LISTENTI identifiant du composant mobile TAB2.REDOX.I2 objet LISTENTI identifiant du composant lié au composant mobile. TAB2.REDOX.A1 objet LISTREEL coefficient stoechiométrique de l'électron e- TAB2.REDOX.A2 objet LISTREEL coefficient stoechiométrique du proton H+ TAB2.TEMPE est une TABLE contenant les données relatives à la température pour les espèces selectionnées. Elle est indicée par les mots: 'DELTAH' 'DELCP' 'APPROX' pour la base MINEQL 'COEF' 'LOGK' 'TMIN' 'TMAX' 'NVT' 'NUMT' pour la base STRASBG TAB2.TEMPE.DELTAH objet LISTREEL. Variation d'enthalpie TAB2.TEMPE.DELCP objet LISTREEL. Variation de capacité calorifique TAB2.TEMPE.APPROX entier (1 ou 2) type d'approximation. TAB2.TEMPE.COEF objet LISTREEL.Coefficients d'interpolation. Pour chaque espèce retenue,il y a 4 valeurs pour chacune des 8 températures de référence. TAB2.TEMPE.LOGK objet LISTREEL. Valeurs des Logk aux températures de référence ( 8 valeurs pour chaque espèce). TAB2.TEMPE.TMIN objet LISTREEL. Pour chaque espèce retenue, température minimale pour laquelle l'espèce existe. TAB2.TEMPE.TMAX objet LISTREEL. Pour chaque espèce retenue, température maximale pour laquelle l'espèce existe. TAB2.TEMPE.NVT objet LISTENTI. Pour chaque espèce retenue, nombre de températures disponibles. TAB2.TEMPE.NUMT objet LISTENTI. Pour chaque espèce retenue, identifiant de l'espèce.