Next: About
this document Up: G3D
Cover Page Previous: Appendix
2: A Sample
In order to allow flexibility in prescribing model formulations for
a wide variety of physical problems, a forms layout cabability is incorporated
into G3D. By inclusion of the file ``mat.cfg'' (see the example
for flow and transport models below) in the `g3d' file, one may specify
the types of coefficients and other parameters used for a particular formulation.
First the user provides a list of `properties' or parameters, followed
by grouping of these parameters into rows which will be displayed on a
text-based form in which users may easily enter parameters in the appropriate
fields. Each property (i.e. parameter) has a (i)
label, which will be printed next to its text entry field, (ii) a brief
explanation of the parameter, which will be displayed in a dialogue at
the bottom of the form whenever the cursor is positioned in that field,
and (iii) a default value for the parameter. The `rows'
of the form (i.e. groupings of parameters) which are to be presented to
the user are determined by `group' type. The group
type is actually used to specify which model formulation will be set for
simulation.
In the case presented below, ``group 1" is used for a single-phase
flow-only model formulation (neither transport parameters nor 2-phase coefficients
are required), while `group 2' (single-phase flow
with transport) requires additional coefficients which must be entered
to override the pre-assigned default values. In this way one may tailor
the forms to simplify model specification for general finite element codes.
G3D automatically layes out a form with the fields appropriate for
the given model. The model type of the forms widget is selected from Option
cascade button shown in Figure 21.a.
Selecting model type "Unsaturated, Flow and Transport" in this
Option will alter the form as in Figure 21.b
to indicate to the user the additional parameters required for that model.
Figure 21.a: Forms Feature - setting parameters for a simple model.
Figure 21.b: Forms Feature - a more realistic model.
A Model Formulation Example for
Saturated/Unsaturated Flow and Transport Simulations
--- property "rkxsat", "saturated conductivity in x-direction", 0.0 "rkysat", "saturated conductivity in y-direction", 0.0 "rkzsat", "saturated conductivity in z-direction", 0.0 "poros", "porosity", 0.0 "sstor", "specific storativity", 0.0 "thsat", "saturated moisture content", 0.0 "thres", "residual moisture content", 0.0 "coef1", "coef 1 for nonlinear fit to moisture retention curve", 0.0 "coef2", "coef 2 for nonlinear fit to moisture retention curve", 0.0 "displ", "longitudinal dispertivity", 0.0 "dispth", "transverse horizontal dispersivity", 0.0 "disptv", "transverse vertical dispersivity", 0.0 "dmolec", "effective molecular diffusion coefficient", 0.0 "aret", "nonlinear retardation coefficient equation constant A", 1.0 "bret", "nonlinear retardation coefficient equation constant B", 0.0 "cret", "nonlinear retardation coefficient equation constant C", 0.0 "dret", "nonlinear retardation coefficient equation constant D", 0.0 "eret", "nonlinear retardation coefficient equation constant E", 0.0 "arxn", "nonlinear reaction term equation constant A", 0.0 "brxn", "nonlinear reaction term equation constant B", 0.0 "crxn", "nonlinear reaction term equation constant C", 0.0 "drxn", "nonlinear reaction term equation constant D", 0.0 "erxn", "nonlinear reaction term equation constant E", 0.0 end class "row0" "rkxsat" "rkysat" "rkzsat" "poros" "sstor" END class "row1" "thsat" "thres" "coef1" "coef2" END class "row2" "displ" "dispth" "disptv" "dmolec" END class "row3" "aret" "bret" "cret" "dret" "eret" END class "row4" "arxn" "brxn" "crxn" "drxn" "erxn" END group "Saturated, Flow-Only" 1 "row0" END group "Saturated, Transport-Only" 2 "row0" "row2" "row3" "row4" END group "Saturated, Flow and Transport" 3 "row0" "row2" "row3" "row4" END group "Unsaturated, Flow-Only" -1 "row0" "row1" END group "Unsaturated, Transport-Only" -2 "row0" "row1" "row2" "row3" "row4" END group "Unsaturated, Flow and Transport" -3 "row0" "row1" "row2" "row3" "row4" END ---