28 character(len=2),
parameter ::
mfvnam =
' 6'
29 character(len=*),
parameter ::
mftitle = &
30 &
'U.S. GEOLOGICAL SURVEY MODULAR HYDROLOGIC MODEL'
33 &'As a work of the United States Government, this USGS product is ',/,&
34 &'in the public domain within the United States. You can copy, ',/,&
35 &'modify, distribute, and perform the work, even for commercial ',/,&
36 &'purposes, all without asking permission. Additionally, USGS ',/,&
37 &'waives copyright and related rights in the work worldwide ',/,&
38 &'through CC0 1.0 Universal Public Domain Dedication ',/,&
39 &'(https://creativecommons.org/publicdomain/zero/1.0/).',//,&
40 &'The following GNU Lesser General Public License (LGPL) libraries',/,&
41 &'are used in this USGS product:',//,"// &
42 "' SPARSKIT version 2.0',/,&
43 &' ilut, luson, and qsplit ',/,&
44 &' (https://www-users.cse.umn.edu/~saad/software/SPARSKIT/)',//,&
45 &' RCM - Reverse Cuthill McKee Ordering',/,&
46 &' (https://people.math.sc.edu/Burkardt/f_src/rcm/rcm.html)',//,&
47 &' BLAS - Basic Linear Algebra Subprograms Level 1',/,&
48 &' (https://people.math.sc.edu/Burkardt/f_src/blas1_d/',&
49 &'blas1_d.html)',//,"// &
50 "' SPARSEKIT - Sparse Matrix Utility Package',/,&
51 &' amux, dperm, dvperm, rperm, and cperm',/,&
52 &' (https://people.sc.fsu.edu/~jburkardt/f77_src/sparsekit/',&
53 &'sparsekit.html)',//,&
54 &'The following BSD-3 License libraries are used in this USGS product:',//,&
55 &' Modern Fortran DAG Library',/,&
56 &' Copyright (c) 2018, Jacob Williams',/,&
57 &' All rights reserved.',/,&
58 &' (https://github.com/jacobwilliams/daglib)',/&
62 &'The following 2-clause BSD License library is used in this',/,&
64 &' PETSc, the Portable, Extensible Toolkit for Scientific',/,&
65 &' Computation Library',/,&
66 &' Copyright (c) 1991-2021, UChicago Argonne, LLC',/,&
67 &' and the PETSc Development Team All rights reserved.',/,&
68 &' (https://petsc.org/release/)',/&
72 &'The following library is used in this USGS product:',//,&
73 &' NetCDF, network Common Data Form software library',/,&
74 &' Copyright (c) 1993-2014 University Corporation for Atmospheric',/,&
75 &' Research/Unidata. Redistribution and use in source and binary',/,&
76 &' forms, with or without modification, are permitted provided that',/,&
77 &' the conditions in the NetCDF copyright are met',/,&
78 &' (https://www.unidata.ucar.edu/software/netcdf/copyright.html)',/&
83 &'This software is preliminary or provisional and is subject to ',/,&
84 &'revision. It is being provided to meet the need for timely best ',/,&
85 &'science. The software has not received final approval by the U.S. ',/,&
86 &'Geological Survey (USGS). No warranty, expressed or implied, is made ',/,&
87 &'by the USGS or the U.S. Government as to the functionality of the ',/,&
88 &'software and related material nor shall the fact of release ',/,&
89 &'constitute any such warranty. The software is provided on the ',/,&
90 &'condition that neither the USGS nor the U.S. Government shall be held ',/,&
91 &'liable for any damages resulting from the authorized or unauthorized ',/,&
92 &'use of the software.',/)"
104 integer(I4B),
intent(in) :: iout
105 character(len=*),
intent(in),
optional :: cmodel_type
106 logical(LGP),
intent(in),
optional :: write_sys_command
107 logical(LGP),
intent(in),
optional :: write_kind_info
109 integer(I4B),
parameter :: iheader_width = 80
110 character(len=22) :: cheader
111 character(len=LENBIGLINE) :: syscmd
112 character(len=LENBIGLINE) :: compiler
113 character(len=LENBIGLINE) :: compiler_options
119 write (cheader,
'(3a)')
'MODFLOW',
mfvnam,
' EXTENDED'
121 write (cheader,
'(2a)')
'MODFLOW',
mfvnam
131 if (
present(cmodel_type))
then
138 linelen=iheader_width, iunit=iout)
143 linelen=iheader_width, iunit=iout)
151 linelen=iheader_width, iunit=iout)
169 if (
present(write_sys_command)) wsc = write_sys_command
171 call get_command(syscmd)
172 write (iout,
'(/,a,/,a)') &
173 'System command used to initiate simulation:', trim(syscmd)
178 if (
present(write_kind_info)) wki = write_kind_info
180 write (iout,
'(/,a)')
'MODFLOW was compiled using uniform precision.'
194 integer(I4B),
intent(in),
optional :: iout
197 if (
present(iout))
then
205 if (
present(iout))
then
214 if (
present(iout))
then
subroutine, public get_compiler(txt)
@ brief Get compiler information
subroutine, public get_compile_options(txt)
@ brief Get compilation options
This module contains simulation constants.
integer(i4b), parameter lenhugeline
maximum length of a huge line
integer(i4b), parameter lenbigline
maximum length of a big line
real(dp), parameter dzero
real constant zero
logical(lgp) function, public is_extended()
Determine if this is the extended version.
logical(lgp) function, public using_petsc()
Determine if using petsc.
logical(lgp) function, public using_netcdf()
Determine if using netcdf.
This module defines variable data types.
subroutine, public write_kindinfo(iout)
Write variable data types.
Store and issue logging messages to output units.
subroutine, public write_message_centered(text, linelen, iunit)
Write horizontally centered text, left-padding as needed.
subroutine, public write_message(text, iunit, fmt, skipbefore, skipafter, advance)
Write a message to an output unit.
subroutine, public write_message_counter(text, iunit, icount, iwidth, skipbefore, skipafter)
Write a message with configurable indentation and numbering.
This module contains simulation variables.
integer(i4b) istdout
unit number for stdout
This module contains version information.
character(len= *), parameter petsclicense
subroutine write_license(iout)
@ brief Write program license
subroutine write_listfile_header(iout, cmodel_type, write_sys_command, write_kind_info)
@ brief Write program header
character(len= *), parameter fullversion
character(len= *), parameter versionvcstag
character(len= *), parameter fmtlicense
character(len= *), parameter fmtdisclaimer
character(len= *), parameter versiontitle
character(len= *), parameter mftitle
integer(i4b), parameter idevelopmode
character(len= *), parameter netcdflicense
character(len= *), parameter versionnumber
character(len=2), parameter mfvnam
character(len= *), parameter version