2016-04-06 17 views
0

Ich möchte ein Gnuplot-Skript aus einem Programm in Fortran aufrufen. Das Programm soll eine lineare Anpassung durchführen, um die linearen Parameter zu erhalten und an das Hauptprogramm zurückzusenden. Ich weiß, dass gnuplot aus Fortran denFortran und gnuplot: Parameter übergeben und einen Wert

Befehl aufgerufen werden
call system ('gnuplot script.gnu') 

, was ich nicht weiß, ist, wie Parameter senden in diesem Aufruf gnuplot (sagen wir mal eine echte Variable t genannt) und auf die Rückkehr zurück Hauptprogramm die Werte der angepassten Parameter (zwei reale Werte a und b).

Hinweis: Ich möchte die Verwendung von Dateien zur Kommunikation zwischen den Programmen vermeiden: Ich möchte nicht gnuplot eine Datei schreiben, die es dann vom Fortran-Programm gelesen wird.

Mein Skript für die lineare Anpassung:

f(x)=a*x+b fit [t:*] f(x) "data.txt" u 1:2 via a,b;

Antwort

1

können Sie die -e Befehlszeilenargument von gnuplot

call system (`gnuplot -e "t=1" script.gnu') 

passieren einen Parameter gnuplot verwenden. Mir ist jedoch keine Möglichkeit bekannt, einen Wert zurückzugeben.

(Um es wirklich nützlich, um die Zahlen in den String bekommen müssen, sehen Convert integers to strings to create output filenames at run time und viele damit verbundene Frage in der „verlinkte“ -Reiter darüber, wie Sie das tun können.)

Es sollte sehr sein In Fortran ist die Formel sehr einfach und es gibt auch Bibliotheken, die all diese Komplikationen vermeiden.

Verwandte Themen