2016-04-06 26 views
0

Fortran'daki bir programdan gnuplot komut dosyasını çağırmak istiyorum. Programın, doğrusal parametreleri elde etmek ve bunları ana programa geri göndermek için doğrusal bir uyum göstermesi beklenir. Ben gnuplot bilmiyorum neyiFortran ve gnuplot: parametre aktarılıyor ve bir değer döndürüyor

call system ('gnuplot script.gnu') 

bu görüşmede gnuplot parametre göndermek nasıl komutunu kullanarak Fortran çağrılabilir olduğunu biliyoruz ve geri dönmek için (en gerçek değişken t denilen diyelim) ana program takılı parametrelerin değerlerini (iki gerçek değer a ve b).

Not: Programların arasında iletişim kurmak için dosyaların kullanılmasını önlemek istiyorum: gnuplot'un daha sonra Fortran programı tarafından okunan bir dosya yazmasını istemiyorum. Doğrusal montaj için

Benim komut dosyası:

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

cevap

1

Sen gnuplot için parametre geçirmek için gnuplot

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

ait -e komut satırı argümanı kullanabilirsiniz. Yine de bir değer döndürmenin herhangi bir yolunun farkında değilim.

(bunu yapabilir nasıl "Bağlantılı" sekmesinde Convert integers to strings to create output filenames at run time pek çok ilgili soruya bakın, katar üzerine rakamları elde etmek zorunda kalacak gerçekten kullanışlı hale getirmek için.)

Çok olmalı Fortran'da lineer uyumunuzu kolaylaştırmak için, formül çok basittir ve ayrıca kütüphaneler mevcuttur ve tüm bu komplikasyonlardan kaçının.