iphreeqc/doc/examples/F90GetSelectedOutputValue.f90
Scott R Charlton b1da32aa01 updated for common directory and optional string length argument
git-svn-id: svn://136.177.114.72/svn_GW/IPhreeqc/trunk@10769 1feff8c3-07ed-0310-ac33-dd36852eb9cd
2016-01-30 02:50:37 +00:00

48 lines
1.1 KiB
Fortran

PROGRAM example
USE IPhreeqc
INTEGER(KIND=4) :: id
INTEGER(KIND=4) :: i
INTEGER(KIND=4) :: j
INTEGER(KIND=4) :: vt
REAL(KIND=8) :: dv
CHARACTER(LEN=40) :: sv
INTEGER(KIND=4) :: sl
id = CreateIPhreeqc()
IF (id.LT.0) THEN
STOP
END IF
IF (LoadDatabase(id, "phreeqc.dat").NE.0) THEN
CALL OutputErrorString(id)
STOP
END IF
IF (RunFile(id, "ex2").NE.0) THEN
CALL OutputErrorString(id)
STOP
END IF
WRITE(*,*) "selected-output:"
DO i=0,GetSelectedOutputRowCount(id)
DO j=1,GetSelectedOutputColumnCount(id)
IF (GetSelectedOutputValue(id, i, j, vt, dv, sv, sl).EQ.IPQ_OK) THEN
IF (vt.EQ.TT_DOUBLE) THEN
WRITE(*,"(g12.6,A1)",ADVANCE="NO") dv, " "
ELSE IF (vt.EQ.TT_STRING) THEN
IF (sl.EQ.0) THEN
WRITE(*,"(A12,A1)",ADVANCE="NO") sv, " "
ELSE
WRITE(*,"(A12,A1)",ADVANCE="NO") "#ERR", " "
END IF
END IF
END IF
END DO
WRITE(*,*)
END DO
IF (DestroyIPhreeqc(id).NE.IPQ_OK) THEN
STOP
END IF
END PROGRAM example