[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

20011226: GD programs and '//'



Steve,

Following our phone conversation where you mentioned that the
naming of grid functions within the GD programs using the '//'
syntax for further use within the program was known to be broken
after the programs were rewritten in 5.6.E to use the file template
sequences, I have made the following changes in my 5.6.F release:

1) dgmfil.f (and new file dgctmp.f)

   I have added a check to determine if an open file matches the template
   file|dattim in the list of input files. This allows current open
   files to remain open when the user is using a template rather than a
   specific file name. Without this check, the old file is always closed
   and then reopened later which loses the savflg information for
   functions that the user has named with the '//' attribute. The dg_ctmp
   code could be included within the dgmfil.f code, but I pulled it out
   to make things easier to see.

2) Most of the GD programs use the DG_CLAL() routine to close all
   open grid files at the end of every plot (eg within the dynamic
   tutor do loop). The DG_CLAL routine calls DG_CLOS for each open file
   which resets all the savflg array values to .false. which prevents
   the user named '//' gfunc values from being found later. This
   also defeats the purpose of DG_MFIL looking for existing open files
   in the user input list.

   I moved the DG_CLAL call outside the main "DO" loop of the programs
   since the template call to DG_MFIL will first check the user input files
   against the open file list and close those files which are not needed.
   DG_CLAL is only called as the program is exiting. (If I'm missing something
   here please let me know).

I created a directory in the upc account on hp1 called patch5.6.f_changes
which has the dg_ library routines. I also placed the GD program routines
with the DG_CLAL call relocated in the directory. I left gdstat.f and gdtser.f
unchanged.

Let me know if you have any questions/comments
Thanks,
Steve