CheckStateOfMatter

Aus JACK Wiki
Version vom 3. Dezember 2018, 15:14 Uhr von PRanz (Diskussion | Beiträge)
(Unterschied) ← Nächstältere Version | Aktuelle Version (Unterschied) | Nächstjüngere Version → (Unterschied)
Zur Navigation springen Zur Suche springen

Zugehörige Evaluatoren

  • ChemEvaluator

Beschreibung

Parameter

Die Funktion hat zwei Parameter.

Die Argumente sind jeweils eine List mit Molekülen, ein einzelnes Molekül oder eine Reaktionsgleichung.

Rückgabewert

Die Funktion gibt Boolean zurück.

Sind alle Moleküle aus Argument 2 in Argument 1 und sind alle Moleküle aus Argument 1 in Argument 2 enthalten (hierbei ist der stateOfMatter der Moleküle auch wichtig!), gibt die Funktion true zurück. Ansonsten wird false zurückgegeben.

Aufbau

checkStateOfMatter(arg1,arg2) => Es wird überprüftob arg1 nur aus Molekülen aus arg2 (nicht mehr und nicht weniger) besteht. Dabei wird der stateOfMatter berücksichtigt!

Hinweise

  • Wichtig! Beim Vergleich der Moleküle wird oxidationState ignoriert!

Beispiel

Variablen:

  • [var=Haq] = molecule(atomarray(atomarrayElement(H)), stateOfMatter('aq'))
  • [var=Hg] = molecule(atomarray(atomarrayElement(H)), stateOfMatter('g'))
  • [var=H] = molecule(atomarray(atomarrayElement(H)))
  • [var=H2aq] = molecule(atomarray(atomarrayElement(H,2)), stateOfMatter('aq'))
  • [var=H2g] = molecule(atomarray(atomarrayElement(H,2)), stateOfMatter('g'))
  • [var=Oaq] = molecule(atomarray(atomarrayElement(O)), stateOfMatter('aq'))
  • [var=Og] = molecule(atomarray(atomarrayElement(O)), stateOfMatter('g'))
  • [var=l1] = list([var=Haq])
  • [var=l2] = list([var=Haq], [var=Oaq])
  • [var=l3] = list([var=H2aq], [var=Haq], [var=Oaq])
  • [var=l4] = list([var=Haq], [var=Haq])

checkStateOfMatter:

  • checkStateOfMatter([var=Haq], [var=Haq]) => true
  • checkStateOfMatter([var=Haq], [var=Hg]) => false
  • checkStateOfMatter([var=Haq], [var=H]) => false
  • checkStateOfMatter([var=Haq], [var=Oaq]) => false
  • checkStateOfMatter([var=l1], [var=Haq]) => true
  • checkStateOfMatter([var=l1], [var=Oaq]) => false
  • checkStateOfMatter([var=l2], [var=Oaq]+[var=Hg]) => false
  • checkStateOfMatter([var=l2], [var=Oaq]+[var=Haq]) => true
  • checkStateOfMatter([var=l1], [var=l4]) => true