Output for my Colleague Andreas Hoppe

Kommandozeilenoptionen:

Alle optionen die für die Modellbildung von Hepatonet wichtig sind siehst Du in hepatonet.php?text=t.

Prepare

Aliases and Variables
export Mein_proxy=' -Dhttp.proxyHost=realproxy.charite.de -Dhttp.proxyPort=888 -Dhttp.nonProxyHosts="www-intern.charite.de|www.charite.de|olli.charite.de" '

oder

export Mein_proxy=' -DproxyHost=realproxy.charite.de -DproxyPort=888 -Dhttp.nonProxyHosts="www-intern.charite.de|www.charite.de" '

alias Metanno="wget  -N http://www.bioinformatics.org/strap/metannogen/metannogen.jar; java -enableassertions $Mein_proxy -Xmx200M -jar metannogen.jar "
## export HOPPE_DATA=http://www-intern.charite.de/cgi-bin/bioinf/metannogenHoppe.pl
export HOPPE_DATA=http://www.bioinformatics.org/strap/cgi-bin/metannogen/hepatonet.pl
      
Du kannst auch offline arbeiten. Dann lade .../metannogenHoppe.pl mit wget und speichere in der Variablen die Datei statt der Web-Adresse.

GUI

Metanno -isHergo 
      
Dann bitte in das URL Feld oben eintragen:
http://www.bioinformatics.org/strap/cgi-bin/metannogen/hepatonet.pl   http://www.bioinformatics.org/strap/metannogen/datasets/hepatonet/*.dataset
Das erste ist die Addresse vom CGI Programm. Das zweite ist das URL eines einzelnen Datensatzes und wird benötigt, um festzustellen, ob 2 Personen gleichzeitig editieren.
Ausserdem bitte Dein Passwort eintragen.
HC-Nummern: Wenn die Tabelle von Olli richtig geladen wurde, dann haben die HC-Identifier einen Tool-Tip und ein Kontextmenu. Die Olli-Dateien werden geladen, wenn die Option -isHergo vorhanden ist.

Export

Metanno -datasets  $HOPPE_DATA  -toHoppeFormat /dev/stdout
      
Da Du keine Metabolit-Namen brauchst, kannst Du Dir das Einlesen der KEGG sparen. Das spart 1 bis 2 Sekunden.
Metanno -datasets  $HOPPE_DATA  -toHoppeFormat /dev/stdout -networks ""
      
Die Option -networks nimmt eine Liste von SBML-Dateien. Fehlt diese Option, dann gilt "-networks kegg". Gross geschrieben "KEGG" hiesse alle 3 Keggdateien und "kegg" klein geschrieben heisst nur die Kegg-Datei "compound".

DeltaG-Wert in einer Attribut-Datei:
echo -e 'HR00085\t $DELTA_G=9.9' > myDeltaG
Metanno -datasets  $HOPPE_DATA  -toHoppeFormat /dev/stdout -attributes myDeltaG | fgrep HR00085
      
Überschreiben des DeltaG-Wertes durch eine weitere Datei:
echo -e 'HR00085\t $DELTA_G=8.8' > myDeltaG2
Metanno -datasets  $HOPPE_DATA  -toHoppeFormat /dev/stdout -attributes myDeltaG -attributesOverride myDeltaG2 | fgrep HR00085
      

Kompartmentumwandlung
echo -e 'cisgol transgol endo micro\nmitoTm mitoOm cyto\nmitoMx mitoIm mito \n' > dictCompart
Metanno -datasets  $HOPPE_DATA  -toHoppeFormat /dev/stdout -dictionaryOfCompartments  dictCompart | fgrep HR00085
						

Reaktionsrichtung:
echo -e 'HR00085\t$DIRECTION=0'> myDirection
Metanno -datasets  $HOPPE_DATA  -toHoppeFormat /dev/stdout -attributes myDeltaG myDirection | fgrep HR00085
      
Beispiele für Compartment-Spezifität:
echo -e 'HR00085\t$DIRECTION@cytoYendo=0'> myDirection
						
Im Zusammenhang mit der Kompartmentumwandlung:
echo -e 'HR00085\t$DIRECTION@cytoYmicro=0'> myDirection
						
Aufzählung von Kompartments geht auch. Die drei Blöcke sind semantisch äquivalent:

echo -e 'HR00085\t$DIRECTION@cytoYendo=0 '> myDirection
echo -e 'HR00085\t$DIRECTION@cytoYperoxy=0'>> myDirection


echo -e 'HR00085\t $DIRECTION@cytoYendo=0  $DIRECTION@cytoYperoxy=0'> myDirection

echo -e 'HR00085\t$DIRECTION@cytoYendo,cytoYperoxy=0'> myDirection

						

Bugs

In der Datei http://olli.charite.de/Forschung/HepatoNet/FlatNet/compounds.tsv ist ein Fehler: Bitte gelegentlich die Leerzeichen wegmachen und mir dann sagen. Also "\t\t" statt "\t \t".

Überprüfe den Server
 w3m $HOPPE_DATA
      

Maintanance

Modifizieren des Java-Quellcodes: Öffne in der Metannogen GUI menu-bar>File>Export>SBML Gehe auf das Tab Hoppe. Hier kannst Du den Quelltext ändern und auch Exportieren. Dabei compiliert er ney, g.d.w. Du nach der letzten Compilierung erneut gespeichert hast. Unten links mit "Settings" kannst Du Deinen Lieblingseditor einstellen. Er nimmt gnuclient oder emacsclient, falls vorhanden. Also z.B. vorher im xemacs Alt-X "gnuserv-start".

Verschiedenes

Ausgabe aller Comments, dereferenzieren der INCLUDE-Anweisungen:
      java -jar metannogen.jar -datasets http://www-intern.charite.de/cgi-bin/bioinf/metannogenHoppe.pl  -networks "" -hepatonetWriteComment
    

Flag Reaction.UNIQUE

Das Flag Reaction.UNIQUE wird an den Funktionsaufruf final ReactionCollection collection=Metannogen.newReactionCollectionDatasets(options); weitergegeben. Als Ergebnis werden bei identischen Reaktionen nur eine Version ausgegeben. Bevor identische rausgefiltert werden, werden die Ersetzungen durchgefuehrt. Die Ersetzungen sind durch die Kommandozeilenoptionen -dictionaryOfSpecies und -dictionaryOfCompartments definiert.

In unserer Pipeline tritt folgendes Problem auf weshalb das UNIQUE nicht gesetzt wurde und stattdessen Andreas das Filtern durchführt: Betrachte die folgenden beiden Reaktion. Beide sind identisch. Durch UNIQUE wuerde nur eine von beiden ausgegeben. Welche, das ist Zufall.
      HR02549@cytoYmito	-236.814	HC01941@mito + HC00019@cyto <=> HC01941@cyto + HC00019@mito 	3
        HR05117@cytoYmito	NaN	HC00019@cyto + HC01941@mito <=> HC00019@mito + HC01941@cyto 	0
				
Was aber, wenn Andreas eine Referenz genau auf diejenige benötigt, die rausgeflogen ist. Z.B. könnte er in einer anderen Tabelle eine Referenz auf diesen Reaktionsidentifier haben.

Workaround: Die Schalter UNIQUE im Quelltext von Export_HoppeFormat.java aktivieren.

Option -dictionaryOfSpecies

In unserer Datei compounds.tsv stehen die Spalten für Metannogen an falscher Stelle. Darum habe ich die Möglichkeit eingebaut, die Spalten explizit zu deklarieren. Das geschieht durch einen Klammerausdruck am Ende des Dateinamens oder des URLs. Beispiel:
      -dictionaryOfSpecies '/nfs/sysbio/Forschung/HepatoNet/FlatNet/compounds.tsv(3,1)'
      -dictionaryOfSpecies '/nfs/sysbio/Forschung/HepatoNet/FlatNet/compounds.tsv(9,1)'
    
In der Spalte 3 steht der Kegg ID und in der Spalte 1 der HC-ID. Somit werden alle Kegg IDs in die entsprechenden HC-IDs übersetzt.