macro mfm requires that:
1. mfm has been loaded
2. values have been ascribed to:
nflf,nflr,nx,ny,mz,lstep,conrea,conmix,mfmmod
NFLUIDS=NFLF*NFLR
IF(NFLF.GT.1) THEN
STORE(AVEF); VARMAX(AVEF)=1.0; VARMIN(AVEF)=0.0
IF(NFLR.EQ.1) THEN
+ STORE(MNSQ); VARMAX(MNSQ)=1.0; VARMIN(MNSQ)=0.0
ENDIF
ENDIF
IF(NFLR.GT.1) THEN
STORE(AVER); VARMAX(AVER)=1.0; VARMIN(AVER)=0.0
IF(NFLF.EQ.1) THEN
+ STORE(MNSQ); VARMAX(MNSQ)=1.0; VARMIN(MNSQ)=0.0
ENDIF
ENDIF
mesg(mfm1 arranges solution for :nfluids: fluids in rising order
INTEGER(III)
III=NFLUIDS+1
! DO loop order chosen so that
! F1 is solved first
DO II = 1,NFLUIDS
III = III-1
SOLVE(F:III:)
VARMAX(F:III:)=1.0; VARMIN(F:III:)=0.0; RELAX(F:III:,LINRLX,0.5)
ENDDO
mesg(macro mfm1 sets linear relaxation for all fluids = 0.5
mesg(mfmmod = :mfmmod:; viscon = :viscon:; nfluids = :nfluids:; $
CONMIX= :CONMIX:
IF(CONREA.GT.0.0) THEN
MESG(conrea = :conrea:; Chemical reaction is active
mesg(ratexp = :ratexp:; highf = :highf:; lowf = :lowf:
ENDIF
mesg(macro mfm1 transmits data to EARTH via SPEDAT
SPEDAT(MFM,MFMMOD,C,:MFMMOD:)
SPEDAT(MFM,NFLUIDS,I,:NFLUIDS:)
SPEDAT(MFM,NFLR,I,:NFLR:)
SPEDAT(MFM,NFLF,I,:NFLF:)
SPEDAT( MFM, CONREA, R, :CONREA:)
SPEDAT( MFM, CONMIX, R, :CONMIX:)
IF(CONREA.GT.0.0) THEN
SPEDAT(MFM,RATEXP,R,:RATEXP:)
SPEDAT(MFM,highf,R,:highf:)
SPEDAT(MFM,lowf,R,:lowf:)
ENDIF
SPEDAT(MFM,VISCON,R,:VISCON:)
mesga(>> During an EARTH run with graphical monitor active, <<
mesg(>> entering S S brings fluid-population display <<
mesg(>> to screen, and allows some data-change opportunity. <<
mesgb(macro mfm1, i.e. L003, ends
STOP