/********************************************************************** SUBROUTINE NAMEFILE NAMEFILE CONSTRUCTS A FILE NAME FOR PARAMETER DATA. THE FILE NAME IS CONSTRUCTED AS FOLLOWS: /MAIN BRANCH DIRECTORY/PROBETYPE/OBSERVED OR STANDARD/PARAMETER NAME MAIN BRANCH DIRECTORY IS A GLOBAL CONSTANT. IT IS THE PATHNAME TO THE DATA DIRECTORIES. PROBETYPE IS A GLOBAL C CHARACTER ARRAY INPUT FROM PROBEFILE.D OBSERVED OR STANDARD DEPENDS ON ISOOR, 0 FOR OBSERVED, 1 FOR STANDARD PARAMETER NAME IS ANOTHER GLOBAL C CHARACTER ARRAY FROM PROBEFILE.D PROBE TYPE AND PARAMETER NAME CORRESPOND TO RESPECTIVE CODES. THIS SUBROUTINE ALSO CALCULATES A FILE NUMBER TO CORRESPOND TO THE FILE NAME. THIS NUMBER IS DEPENDENT ON WHETHER OBSERVED OR STANDARD LEVELS ARE BEING INVESTIGATED, THE ORDER IN WHICH A PARAMETER WAS CHOSEN FOR INVESTIGATION AND THE NUMBER OF PARAMETERS BEING INVESTIGATED. SUBROUTINE STEPS: 1. SET OBSERVED AND STANDARD CHARACTER ARRAYS 2. CONSTRUCT FILE NAME 3. CALCULATE FILE NUMBER ********************************************************************/ /************************************************************* FTYPE IS THE OBSERVED OR STANDARD CHARACTER STRING **************************************************************/ char *ftype[1]; namefile_( int *soor, /* OBSERVED (0) OR STANDARD (1) LEVELS ARE TO BE INVESTIGATED */ int *i, /* PARAMETER CODE FOR PRESENT PARAMETER */ int *i0, /* PARAMETER ORDER */ int *type, /* PROBE TYPE CODE */ int *fn, /* CALCULATED FILE NUMBER */ int *parnum, /* NUMBER OF INVESTIGATED PARAMETERS */ char *filename /* CONSTRUCTED FILE NAME */ ) { /**************************************************************** CONSTRUCT FILE NAME *****************************************************************/ if ( *soor == 0 ) sprintf( filename, "%sdata/%s/observed/%s\0", MAINBRANCH, probename_[*type], pname[*i] ); else sprintf( filename, "%sdata/%s/standard/%s\0", MAINBRANCH, probename_[*type], pname[*i] ); /**************************************************************** COMPUTE FILE NUMBER ******************************************************************/ *fn = *parnum * *soor + *i0 + 1; }