I want to translate MATLAB to fortran

4 Ansichten (letzte 30 Tage)
wonsoek lee
wonsoek lee am 14 Dez. 2015
Beantwortet: Walter Roberson am 14 Dez. 2015
fid = fopen(filename, 'r')
this matlab code to fortran
~iscahr(line)
this matlab code to fortran
sscanf(line, '%f %f %f')
this matlab code to fortran

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 14 Dez. 2015
For the fopen:
INTEGER :: fid, fstatus
fid = 10
OPEN(UNIT = fid, FILE = filename, READONLY, ACCESS = 'READ',
+ STATUS = 'OLD', IOSTAT = fstatus)
IF (fstatus .NE. 0) THEN
WRITE(*,*) 'Could not open file'
CALL EXIT(0)
END IF
for the ~ischar(line) I suspect that the context is to detect end of file. If so then with the above code having set up fstatus as the IOSTAT variable, right after you do the read of the line,
IF (fstatus < 0) THEN
EXIT %exit loop
END IF
for the sscanf, assuming that the result was assigned to INVAR, at some point in the program,
REAL*8 :: INVAR(3)
INTEGER :: I
and the sscanf would be
READ( line, * ) (INVAR(I), I=1,3)

Weitere Antworten (0)

Kategorien

Mehr zu Fortran with MATLAB finden Sie in Help Center und File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by