CheckStateOfMatter

Aus JACK Wiki
Zur Navigation springen Zur Suche springen

Wird im Chem-Evaluator genutzt.

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