Class TPhastModel

DescriptionHierarchyFieldsMethodsProperties

Unit

Declaration

type TPhastModel = class(TCustomModel)

Description

TPhastModel is used to read model configuration data to and from a stream and to store TDataArrays and TScreenObjects.

TPhastModel allows model configuration data to be read from a stream by making the significant features of a model published properties. Because TModel is derived from TPersistent, this automatically provides it with methods to read and write its published properties. Most of the published properties of TPhastModel correspond directly to settings for the simulation models it supports such as PHAST and MODFLOW.

DataSetList and ObjectList are are descendants of TCollection. They store and read instances of TDataArray and TScreenObject respectively. However, when not reading data from a stream or writing it to a stream. TDataArrays and TScreenObjects are accessed via FDataArrayManager.DataSets and ScreenObjects respectively. The number TDataArrays or TScreenObjects can be determined using FDataArrayManager.DataSetCount and ScreenObjectCount.

Hierarchy

Overview

Fields

Private FObservationPurpose: TObservationPurpose;
Private FCachedScreenObjectIndex: integer;
Private FBitmaps: TCompressedBitmapCollection;
Private FChemistryOptions: TChemistryOptions;
Private FDiffusivity: double;
Private FDiffusivitySet: boolean;
Private FFileVersion: string;
Private FFluidProperties: TFluidProperties;
Private FFluxBoundaryChemistryGroup: TTimeListGroup;
Private FFluxBoundaryFluxGroup: TTimeListGroup;
Private FFreeSurface: boolean;
Private FFrontBoundaryType: TDataArray;
Private FFrontFluxBoundaryChemistry: TPhastTimeList;
Private FFrontFluxBoundaryFlux: TPhastTimeList;
Private FFrontLeakyAssociatedSolution: TPhastTimeList;
Private FFrontLeakyHead: TPhastTimeList;
Private FGridOptions: TGridOptions;
Private FLeakyAssociatedSolutionGroup: TTimeListGroup;
Private FLeakyHeadGroup: TTimeListGroup;
Private FModelTimes: TRealList;
Private FPrintFrequency: TPrintFrequencyCollection;
Private FPrintInitial: TPrintInitial;
Private FRiverAssociatedSolution: TPhastTimeList;
Private FRiverAssociatedSolutionGroup: TTimeListGroup;
Private FRiverHead: TPhastTimeList;
Private FRiverHeadGroup: TTimeListGroup;
Private FScreenObjectCollection: TScreenObjectCollection;
Private FScreenObjectList: TList;
Private FSideBoundaryType: TDataArray;
Private FSideFluxBoundaryChemistry: TPhastTimeList;
Private FSideFluxBoundaryFlux: TPhastTimeList;
Private FSideLeakyAssociatedSolution: TPhastTimeList;
Private FSideLeakyHead: TPhastTimeList;
Private FSoluteTransport: boolean;
Private FSolutionOptions: TSolutionOptions;
Private FSomeSegmentsUpToDate: boolean;
Private FSpecifiedHeadAssociatedSolution: TPhastTimeList;
Private FSpecifiedHeadGroup: TTimeListGroup;
Private FSpecifiedHeadHead: TPhastTimeList;
Private FSpecifiedHeadSolutionGroup: TTimeListGroup;
Private FSpecifiedSolution: TPhastTimeList;
Private FSteadyFlowOptions: TSteadyFlowOptions;
Private FTimes: TTimeCollection;
Private FTitle: TStrings;
Private FTop2DBoundaryType: TDataArray;
Private FTopBoundaryType: TDataArray;
Private FTopFluxBoundaryChemistry: TPhastTimeList;
Private FTopFluxBoundaryFlux: TPhastTimeList;
Private FTopLeakyAssociatedSolution: TPhastTimeList;
Private FTopLeakyHead: TPhastTimeList;
Private FUnits: TUnits;
Private FUseWaterTable: boolean;
Private FWellInjectionOrPumpingRate: TPhastTimeList;
Private FWellPumpingRateGroup: TTimeListGroup;
Private FWellSolution: TPhastTimeList;
Private FWellSolutionGroup: TTimeListGroup;
Private FLayerStructure: TLayerStructure;
Private FGuiSettings: TGuiSettings;
Private FModflowStressPeriods: TModflowStressPeriods;
Private FModflowOutputControl: TModflowOutputControl;
Private FModflowSteadyParameters: TModflowSteadyParameters;
Private FModflowTransientParameters: TModflowTransientListParameters;
Private FOnGetZoomBox: TGetZoomBoxEvent;
Private FOnScreenObjectsChanged: TNotifyEvent;
Private FOnGetCurrentScreenObject: TGetCurrentScreenObjectEvent;
Private FOnConvertPoint: TConvertPointEvent;
Private FOnScreenObjectSelected: TNotifyEvent;
Private FOnCheckScreenObject: TCheckScreenObjectEvent;
Private FOn3DViewChanged: TNotifyEvent;
Private FOnRefreshScreenObjects: TNotifyEvent;
Private FProgramLocations: TProgramLocations;
Private FModflowFullStressPeriods: TModflowStressPeriods;
Private FOnScreenObjectUnSelected: TNotifyEvent;
Private FSelectedScreenObjectCount: Integer;
Private FScreenObjectUpdateCount: Integer;
Private FArchiveName: string;
Private FSortedObjectList: TLookUpList;
Private FGridColors: TColorParameters;
Private FContourColors: TColorParameters;
Private FModelMateProjectFileName: string;
Private FModelMateProject: TProject;
Private FFormulaManager: TFormulaManager;
Private FHufParameters: THufModflowParameters;
Private FColorLegend: TLegend;
Private FContourLegend: TLegend;
Private FDisplaySettings: TDisplaySettingsCollection;
Private FChildModels: TChildModelCollection;
Private FImportingModel: boolean;
Private FSelectedModel: TCustomModel;
Private FColumnMapping: TMappingArray;
Private FRowMapping: TMappingArray;
Private FLayerMapping: TMappingArray;
Private FCombinedDisplayColumn: integer;
Private FCombinedDisplayLayer: integer;
Private FCombinedDisplayRow: integer;
Private FSaveDataSetValues: TSaveDataSetValues;
Private FChildGridUpdateCount: Integer;
Private FDataSetUpdateCount: Integer;
Private FSaveBfhBoundaryConditions: Boolean;
Private FContourFont: TFont;
Private FShowContourLabels: Boolean;
Private FSfrStreamLinkPlot: TSfrStreamLinkPlot;
Private FMt3dmsOutputControl: TMt3dmsOutputControl;
Private FMt3dmsTimes: TMt3dmsTimeCollection;
Private FImmobileComponents: TChemSpeciesCollection;
Private FMobileComponents: TMobileChemSpeciesCollection;
Private FSutraLayerStructure: TSutraLayerStructure;
Private FSutraTimeOptions: TSutraTimeOptions;
Private FColorSchemes: TUserDefinedColorSchemeCollection;
Private FFishnetMeshGenerator: TFishnetMeshGenerator;

Methods

Private function GetExaggeration: double;
Private function GetOwnsScreenObjects: boolean;
Private function GetScreenObjectCollection: TScreenObjectCollection;
Private function GetVersion: string;
Private procedure InitializePhastBoundaries;
Private procedure RecordTimeControl;
Private procedure SetBitmaps(const Value: TCompressedBitmapCollection);
Private procedure SetDiffusivity(const Value: double);
Private procedure SetExaggeration(Value: double);
Private procedure SetFlowOnly(const Value: boolean);
Private procedure SetFrontHeight(Value : integer);
Private procedure SetFrontX(const Value: double);
Private procedure SetFrontY(const Value: double);
Private procedure SetHeight(const Value: integer);
Private procedure SetLeft(const Value: integer);
Private procedure SetMagnificationFront(Value: double);
Private procedure SetMagnificationSide(Value: double);
Private procedure SetMagnificationTop(Value: double);
Private procedure SetOwnsScreenObjects(const Value: boolean);
Private procedure SetPrintFrequency(const Value: TPrintFrequencyCollection);
Private procedure SetScreenObjectCollection( const Value: TScreenObjectCollection);
Private procedure SetSideWidth(const Value: integer);
Private procedure SetSideX(const Value: double);
Private procedure SetSideY(const Value: double);
Private procedure SetTimes(const Value: TTimeCollection);
Private procedure SetTitle(const Value: TStrings);
Private procedure SetTop(const Value: integer);
Private procedure SetTopViewHeight(const Value: integer);
Private procedure SetTopViewWidth(const Value: integer);
Private procedure SetTopX(const Value: double);
Private procedure SetTopY(const Value: double);
Private procedure SetVersion(const Value: string);
Private procedure SetWidth(const Value: integer);
Private procedure SetWindowState(const Value: TWindowState);
Private procedure SetUnits(const Value: TUnits);
Private procedure UpdateDrainReturnObjects;
Private procedure CreatePhastTimeLists;
Private procedure CreatePhastTimeListGroups;
Private procedure UpdateUseList(DataIndex: integer; NewUseList: TStringList; Item: TCustomModflowBoundaryItem);
Private function DefaultArchiveName: string;
Private function GetArchiveName: string;
Private procedure SetArchiveName(const Value: string);
Private procedure GetUnitID(var UnitID: Integer);
Private procedure NotifyGridColorsChanged(Sender: TObject);
Private procedure SetModelMateProjectFileName(const Value: string);
Private procedure SetModelMateProject(const Value: TProject);
Private procedure UpdateModelMateParameter(ParameterList: TStringList; ModelMuseParam: TModflowParameter; Project: TProject; Operation: TModelMateOperation);
Private procedure UpdateModelMateFluxObservation(ObservationList: TStringList; ModelMuseFluxObsGroup: TFluxObservationGroup; Project: TProject; Operation: TModelMateOperation);
Private procedure UpdateModelMateHeadObservation(ObservationList: TStringList; const OBSNAM: string; ModelMuseHeadObs: THobItem; Project: TProject; Operation: TModelMateOperation; Method: TMultiObsMethod);
Private procedure HandleModelMateParameters(Operation: TModelMateOperation; ParameterList: TStringList; Project: TProject);
Private procedure HandleModelMateObservations(Operation: TModelMateOperation; ObservationList: TStringList; Project: TProject);
Private procedure EnsureModelMateObsGroup(Project: TProject; GroupName: string; PlotSymbol: integer);
Private function PhastUsed(Sender: TObject): boolean;
Private procedure CreateInitialDataSetsForPhastTimeLists;
Private procedure SetDisplaySettings(const Value: TDisplaySettingsCollection);
Private procedure SetChildModels(const Value: TChildModelCollection);
Private function StoreChildModels: Boolean;
Private function GetChildModels: TChildModelCollection;
Private function MaxChildColumnsPerColumn(ColIndex: Integer): integer;
Private function MaxChildRowsPerRow(RowIndex: Integer): integer;
Private function MaxChildLayersPerLayer(LayerIndex: Integer): integer;
Private function CombinedCount(ViewDirection: TViewDirection): integer;
Private function DirectionCount(ViewDirection: TViewDirection): integer;
Private function MaxChildDisPerParentDis(ViewDirection: TViewDirection; Position: integer): integer;
Private procedure UpdateAMapping(var AMapping: TMappingArray; ViewDirection: TViewDirection);
Private procedure SetCombinedDisplayColumn(const Value: integer);
Private procedure SetCombinedDisplayLayer(const Value: integer);
Private procedure SetCombinedDisplayRow(const Value: integer);
Private procedure SetSomeSegmentsUpToDate(const Value: boolean); override;
Private function GetSomeSegmentsUpToDate: boolean; override;
Private function GetNeedToRecalculateFrontCellColors: boolean;
Private function GetNeedToRecalculateSideCellColors: boolean;
Private function GetNeedToRecalculateTopCellColors: boolean;
Private procedure SetNeedToRecalculateFrontCellColors(const Value: boolean);
Private procedure SetNeedToRecalculateSideCellColors(const Value: boolean);
Private procedure SetNeedToRecalculateTopCellColors(const Value: boolean);
Private function AquiferPropertiesUsed(Sender: TObject): boolean; override;
Private function KyUsed(Sender: TObject): boolean; override;
Private function KzUsed(Sender: TObject): boolean; override;
Private function PorosityUsed(Sender: TObject): boolean; override;
Private function SpecificStorageUsed(Sender: TObject): boolean; override;
Private function ChemistryUsed(Sender: TObject): boolean; override;
Private function InitialHeadUsed(Sender: TObject): boolean; override;
Private function EquilibriumPhasesUsed(Sender: TObject): boolean; override;
Private function SurfacesUsed(Sender: TObject): boolean; override;
Private function ExchangeUsed(Sender: TObject): boolean; override;
Private function GasPhaseUsed(Sender: TObject): boolean; override;
Private function SolidSolutionUsed(Sender: TObject): boolean; override;
Private function KineticsUsed(Sender: TObject): boolean; override;
Private function ModflowUsed(Sender: TObject): boolean; override;
Private function RouteUzfDischarge(Sender: TObject): boolean; override;
Private function ModflowInitialHeadUsed(Sender: TObject): boolean; override;
Private function ConfiningBedKzUsed(Sender: TObject): boolean; override;
Private function VerticalAnisotropyUsed(Sender: TObject): boolean; override;
Private function HorizontalAnisotropyUsed(Sender: TObject): boolean; override;
Private function SpecificYieldUsed(Sender: TObject): boolean; override;
Private function WetDryUsed(Sender: TObject): boolean; override;
Private function ModpathUsed(Sender: TObject): boolean; override;
Private function HufReferenceSurfaceNeeded(Sender: TObject): boolean; override;
Private function BcfUsed(Sender: TObject): boolean; override;
Private function ConfinedStorageCoefUsed(Sender: TObject): boolean; override;
Private function ZoneBudgetSelected(Sender: TObject): boolean; override;
Private function SwtSelected(Sender: TObject): boolean; override;
Private function SwtOffsetsUsed(Sender: TObject): boolean; override;
Private function SwtSpecifiedUsed(Sender: TObject): boolean; override;
Private function WettingActive: boolean; override;
Private procedure InternalExportModflowLgrFile(const FileName: string);
Private function GetCombinedDisplayColumn: integer;
Private function GetCombinedDisplayLayer: integer;
Private function GetCombinedDisplayRow: integer;
Private function UpwIsSelected: Boolean;
Private function SsmIsSelected: Boolean;
Private function GetSutraLayerStructure: TSutraLayerStructure;
Private procedure SetSutraLayerStructure(const Value: TSutraLayerStructure);
Private procedure RenameOldVerticalLeakance; override;
Private procedure SetSutraTimeOptions(const Value: TSutraTimeOptions);
Private procedure SetColorSchemes(const Value: TUserDefinedColorSchemeCollection);
Private procedure SetFishnetMeshGenerator(const Value: TFishnetMeshGenerator);
Protected function GetSfrStreamLinkPlot: TSfrStreamLinkPlot; override;
Protected procedure SetSfrStreamLinkPlot(const Value: TSfrStreamLinkPlot); override;
Protected procedure SetFileName(const Value: string); override;
Protected function GetFormulaManager: TFormulaManager; override;
Protected function GetLayerStructure: TLayerStructure; override;
Protected procedure SetLayerStructure(const Value: TLayerStructure); override;
Protected function GetModflowStressPeriods: TModflowStressPeriods; override;
Protected function GetSoluteTransport: boolean; override;
Protected function GetFreeSurface: boolean; override;
Protected function GetUseWaterTable: boolean; override;
Protected function GetChemistryOptions: TChemistryOptions; override;
Protected procedure SetChemistryOptions(const Value: TChemistryOptions); override;
Protected function GetHufParameters: THufModflowParameters; override;
Protected function GetModflowFullStressPeriods: TModflowStressPeriods; override;
Protected function GetModflowOutputControl: TModflowOutputControl; override;
Protected function GetProgramLocations: TProgramLocations; override;
Protected function GetObservationPurpose: TObservationPurpose; override;
Protected procedure SetObservationPurpose(const Value: TObservationPurpose); override;
Protected procedure SetHufParameters(const Value: THufModflowParameters); override;
Protected procedure SetModflowStressPeriods(const Value: TModflowStressPeriods); override;
Protected procedure SetModflowOutputControl(const Value: TModflowOutputControl); override;
Protected procedure SetModflowTransientParameters( const Value: TModflowTransientListParameters); override;
Protected procedure SetProgramLocations(const Value: TProgramLocations); override;
Protected procedure SetUseWaterTable(const Value: boolean); override;
Protected procedure SetSoluteTransport(const Value: boolean); override;
Protected procedure SetFreeSurface(const Value: boolean); override;
Protected function GetModflowTransientParameters: TModflowTransientListParameters; override;
Protected function GetModelSelection: TModelSelection; override;
Protected function GetModflowSteadyParameters: TModflowSteadyParameters; override;
Protected procedure SetModflowSteadyParameters(const Value: TModflowSteadyParameters); override;
Protected function GetScreenObjectCount: integer; override;
Protected function GetScreenObjects(const Index: integer): TScreenObject; override;
Protected procedure ClearViewedItems; override;
Protected procedure SetUpToDate(const Value: boolean); override;
Protected procedure Loaded; override;
Protected procedure InternalClear; override;
Protected function GetSelectedModel: TCustomModel; override;
Protected procedure SetSelectedModel(const Value: TCustomModel); override;
Protected procedure SetFrontTimeList(const Value: TCustomTimeList); override;
Protected procedure SetSideTimeList(const Value: TCustomTimeList); override;
Protected procedure SetTopTimeList(const Value: TCustomTimeList); override;
Protected function GetDisplayName: string; override;
Protected function GetSaveBfhBoundaryConditions: boolean; override;
Protected procedure SetSaveBfhBoundaryConditions(const Value: boolean); override;
Protected procedure InitializeGages; override;
Protected procedure InitializeSfrWriter(EvaluationType: TEvaluationType); override;
Protected procedure FreeSfrWriter; override;
Protected procedure SetContourFont(const Value: TFont) ; override;
Protected procedure SetShowContourLabels(const Value: boolean); override;
Protected function GetContourFont: TFont; override;
Protected function GetShowContourLabels: boolean; override;
Protected procedure SetMt3dmsOutputControl(const Value: TMt3dmsOutputControl); override;
Protected function GetMt3dmsOutputControl: TMt3dmsOutputControl; override;
Protected function GetMt3dmsTimes: TMt3dmsTimeCollection; override;
Protected procedure SetMt3dmsTimes(const Value: TMt3dmsTimeCollection); override;
Protected function GetImmobileComponents: TChemSpeciesCollection; override;
Protected function GetMobileComponents: TMobileChemSpeciesCollection; override;
Protected procedure SetImmobileComponents(const Value: TChemSpeciesCollection); override;
Protected procedure SetMobileComponents(const Value: TMobileChemSpeciesCollection); override;
Protected procedure SetModelSelection(const Value: TModelSelection); override;
Protected procedure GenerateFishNetMesh(var ErrorMessage: string); override;
Public function LakBathymetryUsed: Boolean;
Public function TobIsSelected: Boolean;
Public procedure DrawHeadObservations(const BitMap: TBitmap32; const ZoomBox: TQRbwZoomBox2); override;
Public procedure UpdateMapping;
Public function InitialWaterTableUsed(Sender: TObject): boolean; override;
Public function ReservoirLayerUsed(Sender: TObject): boolean; override;
Public function ReservoirPackageUsed(Sender: TObject): boolean; override;
Public function LakePackageUsed(Sender: TObject): boolean; override;
Public function UzfPackageUsed(Sender: TObject): boolean; override;
Public function UzfUnsatVertKUsed(Sender: TObject): boolean; override;
Public function UzfInitialInfiltrationUsed(Sender: TObject): boolean; override;
Public function UzfResidualWaterContentUsed(Sender: TObject): boolean; override;
Public procedure InvalidateMapping;
Public procedure UpdateChildGrids;
Public procedure UpdateDataSetConnections;
Public function AddDataSet(const DataSet: TDataArray): Integer; override;
Public function IsChildModelEdgeColRow(Col, Row, Layer: integer; out CModel: TBaseModel): boolean;
Public function IsChildModelEdgeCell(Col, Row, Layer: integer; out CModel: TBaseModel): boolean;
Public procedure AllowChildGridUpdates;
Public procedure DisallowChildGridUpdates;
Public procedure Assign(Source: TPersistent); override;
Public procedure FixOldModel;
Public procedure UpdateDisplayUseList(NewUseList: TStringList; ParamType: TParameterType; DataIndex: integer; const DisplayName: string); override;
Public procedure InvalidateModflowBoundaries;
Public function ModelLayerDataArrayUsed(Sender: TObject): boolean;
Public function Mt3dMsInitialConcUsed(Sender: TObject): boolean;
Public function ModDispDataArrayUsed(Sender: TObject): boolean;
Public function Mt3dMsSorbImmobInitialConcUsed(Sender: TObject): boolean;
Public function SubsidenceDataArrayUsed(Sender: TObject): boolean;
Public procedure GetLayerGroupDataSets(LayerGroupsDataSets: TList);
Public procedure LocateNearestLakeOrStream(TestScreenObject: TScreenObject; var NearestLake, NearestStream: TScreenObject; Tolerance: double = 0);
Public procedure BeginScreenObjectUpdate;
Public procedure EndScreenObjectUpdate;
Public procedure ScreenObjectUnSelected;
Public procedure ScreenObjectSelected;
Public function IsCurrentScreenObject(ScreenObject: TScreenObject): boolean;
Public function AddScreenObject(const AScreenObject: TScreenObject): integer; virtual;
Public procedure ClearScreenObjects;
Public constructor Create(AnOwner: TComponent); override;
Public destructor Destroy; override;
Public procedure DrawScreenObjects3D;
Public procedure ExtractScreenObject(const AScreenObject: TScreenObject);
Public procedure IncreaseScreenObjectCapacity(const Delta: integer);
Public function IndexOfScreenObject(const AScreenObject: TScreenObject): integer;
Public procedure InitializeTimes;
Public procedure InsertScreenObject(const Index: integer; const AScreenObject: TScreenObject);
Public procedure InvalidateSegments;
Public function NumberOfLargestScreenObjectsStartingWith( const Root: string): integer;
Public procedure RemoveScreenObject(const AScreenObject: TScreenObject);
Public procedure RestoreColoredDataSets;
Public function ScreenObjectClass: TScreenObjectClass;
Public function GetTimeListByName(const AName: string): TCustomTimeList;
Public procedure UpdateDataSets;
Public procedure UpdateFrontTimeDataSet(const TimeList: TCustomTimeList; const Time: double); override;
Public procedure UpdateScreenObjects;
Public procedure UpdateSideTimeDataSet(const TimeList: TCustomTimeList; const Time: double); override;
Public procedure UpdateThreeDTimeDataSet(const TimeList: TCustomTimeList; const Time: double); override;
Public procedure UpdateTimeLists;
Public procedure UpdateTopTimeDataSet(const TimeList: TCustomTimeList; const Time: double); override;
Public function ZoomBox(VD: TViewDirection): TQrbwZoomBox2;
Public procedure ScreenObjectsChanged(Sender: TObject);
Public procedure RefreshScreenObjects(Sender: TObject);
Public function GetCurrentScreenObject(VD: TViewDirection): TScreenObject;
Public procedure Notify3DViewChanged;
Public function ResetSelectedScreenObjects: boolean;
Public function ConvertPoint(VD: TViewDirection; const RealPoint: TPoint2D): TPoint;
Public procedure InvalidateMfSfrData(Sender: TObject);
Public procedure InvalidateMfSfrSegmentReachAndIcalc(Sender: TObject);
Public procedure InvalidateMfSfrReachLength(Sender: TObject);
Public procedure InvalidateMfSfrIprior(Sender: TObject);
Public procedure InvalidateMfSfrFlow(Sender: TObject);
Public procedure InvalidateMfSfrRunoff(Sender: TObject);
Public procedure InvalidateMfSfrPrecipitation(Sender: TObject);
Public procedure InvalidateMfSfrEvapotranspiration(Sender: TObject);
Public procedure InvalidateMfSfrChannelRoughness(Sender: TObject);
Public procedure InvalidateMfSfrBankRoughness(Sender: TObject);
Public procedure InvalidateMfSfrDepthCoefficient(Sender: TObject);
Public procedure InvalidateMfSfrDepthExponent(Sender: TObject);
Public procedure InvalidateMfSfrWidthCoefficient(Sender: TObject);
Public procedure InvalidateMfSfrWidthExponent(Sender: TObject);
Public procedure InvalidateMfSfrUpstreamDepth(Sender: TObject);
Public procedure InvalidateMfSfrDownstreamDepth(Sender: TObject);
Public procedure CreateArchive(const FileName: string; const ArchiveCommand: string = '');
Public function DefaultHigherElevationFormula(ViewDirection: TViewDirection; EvalAt: TEvaluatedAt): string;
Public function DefaultLowerElevationFormula(ViewDirection: TViewDirection; EvalAt: TEvaluatedAt): string;
Public function DefaultElevationFormula(ViewDirection: TViewDirection; EvalAt: TEvaluatedAt): string;
Public function ParameterDataSetUsed(Sender: TObject): boolean;
Public function GetScreenObjectByName(AName: string): TScreenObject; override;
Public procedure CopyScreenObjectsToClipboard;
Public procedure PasteObjectsFromClipboard(List: TList);
Public procedure UpdateModelMateProject;
Public procedure ImportFromModelMateProject(Project: TProject);
Public procedure RegisterGlobalVariables(Parser: TRbwParser);
Public procedure ClearScreenObjectCollection;
Public function FileVersionEqualOrEarlier(TestVersion: string): boolean;
Public function CombinedColumnCount: integer;
Public function CombinedRowCount: integer;
Public function CombinedLayerCount: integer;
Public procedure UpdateDataSetDimensions;
Public function LgrUsed: boolean;
Public function BcfIsSelected: Boolean;
Public function ChdIsSelected: Boolean;
Public function ChobIsSelected: Boolean;
Public function De4IsSelected: Boolean;
Public function DrnIsSelected: Boolean;
Public function DrobIsSelected: Boolean;
Public function DrtIsSelected: Boolean;
Public function EtsIsSelected: Boolean;
Public function EvtIsSelected: Boolean;
Public function GbobIsSelected: Boolean;
Public function GhbIsSelected: Boolean;
Public function GmgIsSelected: Boolean;
Public function HfbIsSelected: Boolean;
Public function HobIsSelected: Boolean;
Public function HufIsSelected: Boolean;
Public function HydmodIsSelected: Boolean;
Public function LakIsSelected: Boolean;
Public function LpfIsSelected: Boolean;
Public function Mnw2IsSelected: Boolean;
Public function MODPATHIsSelected: Boolean;
Public procedure ModpathHeadWarning;
Public function Mt3dmsIsSelected: Boolean;
Public function Mt3dmsSsmIsSelected: Boolean;
Public function Mt3dmsTobIsSelected: Boolean;
Public function PcgIsSelected: Boolean;
Public function RchIsSelected: Boolean;
Public function ResIsSelected: Boolean;
Public function RivIsSelected: Boolean;
Public function RvobIsSelected: Boolean;
Public function SfrIsSelected: Boolean;
Public function SipIsSelected: Boolean;
Public function SubIsSelected: Boolean;
Public function SwtIsSelected: Boolean;
Public function UzfIsSelected: Boolean;
Public function WelIsSelected: Boolean;
Public function ZoneBudgetIsSelected: Boolean;
Public function PackageIsSelected(APackage: TObject): Boolean;
Public procedure ExportModflowLgrModel(const FileName: string; RunModel, ExportModpath, ExportZoneBudget, ShowWarning: boolean);
Public procedure AdjustDataArray(ADataArray: TDataArray); override;
Public function RchTimeVaryingLayers: boolean;
Public function EvtTimeVaryingLayers: boolean;
Public function EtsTimeVaryingLayers: boolean;
Public procedure BeginGridChange; override;
Public procedure EndGridChange; override;
Public procedure BeginDataSetUpdate;
Public procedure EndDataSetUpdate;
Public procedure UpdateCombinedDisplayColumn;
Public procedure UpdateCombinedDisplayRow;
Public procedure UpdateCombinedDisplayLayer;
Public function DispersionSelected: boolean;
Public function AnyDispersionMultiDiffusion: boolean;
Public function AllDispersionMultiDiffusion: boolean;
Public function AnyMt3dSorbImmobConc: boolean;
Public function AnyMt3dSorbParameter: boolean;
Public function AnyMt3dReactions: Boolean;
Public procedure UpdateMt3dmsChemDataSets; override;
Public function Mt3dMsFirstSorbParamUsed(Sender: TObject): boolean;
Public function Mt3dMsSecondSorbParamUsed(Sender: TObject): boolean;
Public function Mt3dmsReactionRateDisolvedUsed(Sender: TObject): boolean;
Public function Mt3dmsReactionRateSorbedUsed(Sender: TObject): boolean;
Public function CombinedLayerSimulated(ALayer: Integer): boolean;

Properties

Public property ImportingModel: boolean read FImportingModel write FImportingModel;
Public property SelectedScreenObjectCount: Integer read FSelectedScreenObjectCount;
Public property OnScreenObjectSelected: TNotifyEvent read FOnScreenObjectSelected write FOnScreenObjectSelected;
Public property OnScreenObjectUnSelected: TNotifyEvent read FOnScreenObjectUnSelected write FOnScreenObjectUnSelected;
Public property OnCheckScreenObject: TCheckScreenObjectEvent read FOnCheckScreenObject write FOnCheckScreenObject;
Public property GridColorParameters: TColorParameters read FGridColors;
Public property ContourColorParameters: TColorParameters read FContourColors;
Public property FileVersion: string read FFileVersion;
Public property FluxBoundaryChemistryGroup: TTimeListGroup read FFluxBoundaryChemistryGroup;
Public property FluxBoundaryFluxGroup: TTimeListGroup read FFluxBoundaryFluxGroup;
Public property FrontBoundaryType: TDataArray read FFrontBoundaryType;
Public property FrontFluxBoundaryChemistry: TPhastTimeList read FFrontFluxBoundaryChemistry;
Public property FrontFluxBoundaryFlux: TPhastTimeList read FFrontFluxBoundaryFlux;
Public property FrontLeakyAssociatedSolution: TPhastTimeList read FFrontLeakyAssociatedSolution;
Public property FrontLeakyHead: TPhastTimeList read FFrontLeakyHead;
Public property LeakyAssociatedSolutionGroup: TTimeListGroup read FLeakyAssociatedSolutionGroup;
Public property LeakyHeadGroup: TTimeListGroup read FLeakyHeadGroup;
Public property ModelTimes: TRealList read FModelTimes;
Public property OwnsScreenObjects: boolean read GetOwnsScreenObjects write SetOwnsScreenObjects;
Public property RiverAssociatedSolution: TPhastTimeList read FRiverAssociatedSolution;
Public property RiverAssociatedSolutionGroup: TTimeListGroup read FRiverAssociatedSolutionGroup;
Public property RiverHead: TPhastTimeList read FRiverHead;
Public property RiverHeadGroup: TTimeListGroup read FRiverHeadGroup;
Public property SideBoundaryType: TDataArray read FSideBoundaryType;
Public property SideFluxBoundaryChemistry: TPhastTimeList read FSideFluxBoundaryChemistry;
Public property SideFluxBoundaryFlux: TPhastTimeList read FSideFluxBoundaryFlux;
Public property SideLeakyAssociatedSolution: TPhastTimeList read FSideLeakyAssociatedSolution;
Public property SideLeakyHead: TPhastTimeList read FSideLeakyHead;
Public property SpecifiedHeadAssociatedSolution: TPhastTimeList read FSpecifiedHeadAssociatedSolution;
Public property SpecifiedHeadGroup: TTimeListGroup read FSpecifiedHeadGroup;
Public property SpecifiedHeadHead: TPhastTimeList read FSpecifiedHeadHead;
Public property SpecifiedHeadSolutionGroup: TTimeListGroup read FSpecifiedHeadSolutionGroup;
Public property SpecifiedSolution: TPhastTimeList read FSpecifiedSolution;
Public property Top2DBoundaryType: TDataArray read FTop2DBoundaryType;
Public property TopBoundaryType: TDataArray read FTopBoundaryType;
Public property TopFluxBoundaryChemistry: TPhastTimeList read FTopFluxBoundaryChemistry;
Public property TopFluxBoundaryFlux: TPhastTimeList read FTopFluxBoundaryFlux;
Public property TopLeakyAssociatedSolution: TPhastTimeList read FTopLeakyAssociatedSolution;
Public property TopLeakyHead: TPhastTimeList read FTopLeakyHead;
Public property WellInjectionOrPumpingRate: TPhastTimeList read FWellInjectionOrPumpingRate;
Public property WellPumpingRateGroup: TTimeListGroup read FWellPumpingRateGroup;
Public property WellSolution: TPhastTimeList read FWellSolution;
Public property WellSolutionGroup: TTimeListGroup read FWellSolutionGroup;
Public property OnGetZoomBox: TGetZoomBoxEvent read FOnGetZoomBox write FOnGetZoomBox;
Public property OnScreenObjectsChanged: TNotifyEvent read FOnScreenObjectsChanged write FOnScreenObjectsChanged;
Public property OnRefreshScreenObjects: TNotifyEvent read FOnRefreshScreenObjects write FOnRefreshScreenObjects;
Public property OnGetCurrentScreenObject : TGetCurrentScreenObjectEvent read FOnGetCurrentScreenObject write FOnGetCurrentScreenObject;
Public property On3DViewChanged: TNotifyEvent read FOn3DViewChanged write FOn3DViewChanged;
Public property OnConvertPoint: TConvertPointEvent read FOnConvertPoint write FOnConvertPoint;
Public property ArchiveName: string read GetArchiveName write SetArchiveName;
Public property ModelMateProject: TProject read FModelMateProject write SetModelMateProject;
Public property FormulaManager: TFormulaManager read GetFormulaManager;
Public property ColorLegend: TLegend read FColorLegend;
Public property ContourLegend: TLegend read FContourLegend;
Public property NeedToRecalculateTopCellColors: boolean read GetNeedToRecalculateTopCellColors write SetNeedToRecalculateTopCellColors;
Public property NeedToRecalculateFrontCellColors: boolean read GetNeedToRecalculateFrontCellColors write SetNeedToRecalculateFrontCellColors;
Public property NeedToRecalculateSideCellColors: boolean read GetNeedToRecalculateSideCellColors write SetNeedToRecalculateSideCellColors;
Public property DataSetUpdateCount: integer read FDataSetUpdateCount;
Published property FlowOnly: boolean write SetFlowOnly stored False;
Published property FluidProperties: TFluidProperties read FFluidProperties write FFluidProperties stored False;
Published property FrontHeight: integer write SetFrontHeight stored False;
Published property FrontX: double write SetFrontX stored False;
Published property FrontY: double write SetFrontY stored False;
Published property Height: integer write SetHeight stored False;
Published property Left: integer write SetLeft stored False;
Published property MagnificationFront: double write SetMagnificationFront stored False;
Published property MagnificationSide: double write SetMagnificationSide stored False;
Published property MagnificationTop: double write SetMagnificationTop stored False;
Published property SideWidth: integer write SetSideWidth stored False;
Published property SideX: double write SetSideX stored False;
Published property SideY: double write SetSideY stored False;
Published property Top: integer write SetTop stored False;
Published property TopViewHeight: integer write SetTopViewHeight stored False;
Published property TopViewWidth: integer write SetTopViewWidth stored False;
Published property TopX: double write SetTopX stored False;
Published property TopY: double write SetTopY stored False;
Published property Width: integer write SetWidth stored False;
Published property WindowState: TWindowState write SetWindowState stored False;
Published property Diffusivity: double read FDiffusivity write SetDiffusivity;
Published property GridOptions: TGridOptions read FGridOptions write FGridOptions;
Published property PrintFrequency: TPrintFrequencyCollection read FPrintFrequency write SetPrintFrequency;
Published property PrintInitial: TPrintInitial read FPrintInitial write FPrintInitial;
Published property SolutionOptions: TSolutionOptions read FSolutionOptions write FSolutionOptions;
Published property SteadyFlowOptions: TSteadyFlowOptions read FSteadyFlowOptions write FSteadyFlowOptions;
Published property Times: TTimeCollection read FTimes write SetTimes;
Published property Title: TStrings read FTitle write SetTitle stored True;
Published property Units: TUnits read FUnits write SetUnits;
Published property Bitmaps: TCompressedBitmapCollection read FBitmaps write SetBitmaps;
Published property Exaggeration: double read GetExaggeration write SetExaggeration;
Published property ObjectList: TScreenObjectCollection read GetScreenObjectCollection write SetScreenObjectCollection;
Published property Version: string read GetVersion write SetVersion;
Published property GuiSettings: TGuiSettings read FGuiSettings write FGuiSettings;
Published property ModelMateProjectFileName: string read FModelMateProjectFileName write SetModelMateProjectFileName;
Published property DisplaySettings: TDisplaySettingsCollection read FDisplaySettings write SetDisplaySettings;
Published property ChildModels: TChildModelCollection read GetChildModels write SetChildModels stored StoreChildModels;
Published property SaveDataSetValues: TSaveDataSetValues read FSaveDataSetValues write FSaveDataSetValues default sdsvAlways;
Published property ModflowSteadyParameters;
Published property ModelSelection;
Published property LayerStructure;
Published property ModflowStressPeriods;
Published property SoluteTransport;
Published property UseWaterTable;
Published property FreeSurface;
Published property ChemistryOptions;
Published property HufParameters;
Published property ObservationPurpose;
Published property ModflowTransientParameters;
Published property ModflowOutputControl;
Published property Mt3dmsOutputControl;
Published property Mt3dmsTimes;
Published property DataSetList;
Published property CombinedDisplayColumn: integer read GetCombinedDisplayColumn write SetCombinedDisplayColumn;
Published property CombinedDisplayRow: integer read GetCombinedDisplayRow write SetCombinedDisplayRow;
Published property CombinedDisplayLayer: integer read GetCombinedDisplayLayer write SetCombinedDisplayLayer;
Published property SaveBfhBoundaryConditions;
Published property ContourFont;
Published property ShowContourLabels;
Published property SfrStreamLinkPlot;
Published property SutraLayerStructure: TSutraLayerStructure read GetSutraLayerStructure write SetSutraLayerStructure stored False ;
Published property SutraTimeOptions: TSutraTimeOptions read FSutraTimeOptions write SetSutraTimeOptions stored False ;
Published property ColorSchemes: TUserDefinedColorSchemeCollection read FColorSchemes write SetColorSchemes;
Published property FishnetMeshGenerator: TFishnetMeshGenerator read FFishnetMeshGenerator write SetFishnetMeshGenerator stored False ;

Description

Fields

Private FObservationPurpose: TObservationPurpose;
 
Private FCachedScreenObjectIndex: integer;
 
Private FBitmaps: TCompressedBitmapCollection;

See Bitmaps.

Private FChemistryOptions: TChemistryOptions;

See ChemistryOptions.

Private FDiffusivity: double;

See Diffusivity.

Private FDiffusivitySet: boolean;

Values of zero are never stored for real-number properties in Delphi. FDiffusivitySet is used to get around this limitation so that if a value of zero for Diffusivity is specified by the user, it can be recovered correctly when reading the file.

Private FFileVersion: string;

See FileVersion.

Private FFluidProperties: TFluidProperties;

See FluidProperties.

Private FFluxBoundaryChemistryGroup: TTimeListGroup;

See FluxBoundaryChemistryGroup.

Private FFluxBoundaryFluxGroup: TTimeListGroup;

See FluxBoundaryChemistryGroup.

Private FFreeSurface: boolean;

See FreeSurface.

Private FFrontBoundaryType: TDataArray;

See FrontBoundaryType.

Private FFrontFluxBoundaryChemistry: TPhastTimeList;

See FrontFluxBoundaryChemistry.

Private FFrontFluxBoundaryFlux: TPhastTimeList;

See FrontFluxBoundaryFlux.

Private FFrontLeakyAssociatedSolution: TPhastTimeList;

See FrontLeakyAssociatedSolution.

Private FFrontLeakyHead: TPhastTimeList;

See FrontLeakyHead.

Private FGridOptions: TGridOptions;

See GridOptions.

Private FLeakyAssociatedSolutionGroup: TTimeListGroup;

See LeakyAssociatedSolutionGroup.

Private FLeakyHeadGroup: TTimeListGroup;

See LeakyHeadGroup.

Private FModelTimes: TRealList;

See ModelTimes.

Private FPrintFrequency: TPrintFrequencyCollection;

See PrintFrequency.

Private FPrintInitial: TPrintInitial;

See PrintInitial.

Private FRiverAssociatedSolution: TPhastTimeList;

See RiverAssociatedSolution.

Private FRiverAssociatedSolutionGroup: TTimeListGroup;

See RiverAssociatedSolutionGroup.

Private FRiverHead: TPhastTimeList;

See RiverHead.

Private FRiverHeadGroup: TTimeListGroup;

See RiverHeadGroup.

Private FScreenObjectCollection: TScreenObjectCollection;

FScreenObjectCollection is used to store or read TScreenObjects. However, most handling of read TScreenObjects in the program is via FScreenObjectList rather than FScreenObjectCollection. See FScreenObjectList.

Private FScreenObjectList: TList;

FScreenObjectList holds the TScreenObjects in the model. Nearly all access to TScreenObjects is through FScreenObjectList. However, see FScreenObjectCollection. FScreenObjectList is actually as TObjectList.

Private FSideBoundaryType: TDataArray;

See SideBoundaryType.

Private FSideFluxBoundaryChemistry: TPhastTimeList;

See SideFluxBoundaryChemistry.

Private FSideFluxBoundaryFlux: TPhastTimeList;

See SideFluxBoundaryFlux.

Private FSideLeakyAssociatedSolution: TPhastTimeList;

See SideLeakyAssociatedSolution.

Private FSideLeakyHead: TPhastTimeList;

See SideLeakyHead.

Private FSoluteTransport: boolean;

See SoluteTransport.

Private FSolutionOptions: TSolutionOptions;

See SolutionOptions.

Private FSomeSegmentsUpToDate: boolean;

See SomeSegmentsUpToDate.

Private FSpecifiedHeadAssociatedSolution: TPhastTimeList;

See SpecifiedHeadAssociatedSolution.

Private FSpecifiedHeadGroup: TTimeListGroup;

See SpecifiedHeadGroup.

Private FSpecifiedHeadHead: TPhastTimeList;

See SpecifiedHeadHead.

Private FSpecifiedHeadSolutionGroup: TTimeListGroup;

See SpecifiedHeadSolutionGroup.

Private FSpecifiedSolution: TPhastTimeList;

See SpecifiedSolution.

Private FSteadyFlowOptions: TSteadyFlowOptions;

See SteadyFlowOptions.

Private FTimes: TTimeCollection;

See Times.

Private FTitle: TStrings;

See Title.

Private FTop2DBoundaryType: TDataArray;

See Top2DBoundaryType.

Private FTopBoundaryType: TDataArray;

See TopBoundaryType.

Private FTopFluxBoundaryChemistry: TPhastTimeList;

See TopFluxBoundaryChemistry.

Private FTopFluxBoundaryFlux: TPhastTimeList;

See TopFluxBoundaryFlux.

Private FTopLeakyAssociatedSolution: TPhastTimeList;

See TopLeakyAssociatedSolution.

Private FTopLeakyHead: TPhastTimeList;

See TopLeakyHead.

Private FUnits: TUnits;

See Units.

Private FUseWaterTable: boolean;

See UseWaterTable.

Private FWellInjectionOrPumpingRate: TPhastTimeList;

See WellInjectionOrPumpingRate.

Private FWellPumpingRateGroup: TTimeListGroup;

See WellPumpingRateGroup.

Private FWellSolution: TPhastTimeList;

See WellSolution.

Private FWellSolutionGroup: TTimeListGroup;

See WellSolutionGroup.

Private FLayerStructure: TLayerStructure;
 
Private FGuiSettings: TGuiSettings;
 
Private FModflowStressPeriods: TModflowStressPeriods;
 
Private FModflowOutputControl: TModflowOutputControl;
 
Private FModflowSteadyParameters: TModflowSteadyParameters;
 
Private FModflowTransientParameters: TModflowTransientListParameters;
 
Private FOnGetZoomBox: TGetZoomBoxEvent;
 
Private FOnScreenObjectsChanged: TNotifyEvent;
 
Private FOnGetCurrentScreenObject: TGetCurrentScreenObjectEvent;
 
Private FOnConvertPoint: TConvertPointEvent;
 
Private FOnScreenObjectSelected: TNotifyEvent;
 
Private FOnCheckScreenObject: TCheckScreenObjectEvent;
 
Private FOn3DViewChanged: TNotifyEvent;
 
Private FOnRefreshScreenObjects: TNotifyEvent;
 
Private FProgramLocations: TProgramLocations;
 
Private FModflowFullStressPeriods: TModflowStressPeriods;
 
Private FOnScreenObjectUnSelected: TNotifyEvent;
 
Private FSelectedScreenObjectCount: Integer;

See SelectedScreenObjectCount.

Private FScreenObjectUpdateCount: Integer;
 
Private FArchiveName: string;
 
Private FSortedObjectList: TLookUpList;
 
Private FGridColors: TColorParameters;
 
Private FContourColors: TColorParameters;
 
Private FModelMateProjectFileName: string;
 
Private FModelMateProject: TProject;
 
Private FFormulaManager: TFormulaManager;
 
Private FHufParameters: THufModflowParameters;
 
Private FColorLegend: TLegend;
 
Private FContourLegend: TLegend;
 
Private FDisplaySettings: TDisplaySettingsCollection;
 
Private FChildModels: TChildModelCollection;
 
Private FImportingModel: boolean;
 
Private FSelectedModel: TCustomModel;
 
Private FColumnMapping: TMappingArray;
 
Private FRowMapping: TMappingArray;
 
Private FLayerMapping: TMappingArray;
 
Private FCombinedDisplayColumn: integer;
 
Private FCombinedDisplayLayer: integer;
 
Private FCombinedDisplayRow: integer;
 
Private FSaveDataSetValues: TSaveDataSetValues;
 
Private FChildGridUpdateCount: Integer;
 
Private FDataSetUpdateCount: Integer;
 
Private FSaveBfhBoundaryConditions: Boolean;
 
Private FContourFont: TFont;
 
Private FShowContourLabels: Boolean;
 
Private FSfrStreamLinkPlot: TSfrStreamLinkPlot;
 
Private FMt3dmsOutputControl: TMt3dmsOutputControl;
 
Private FMt3dmsTimes: TMt3dmsTimeCollection;
 
Private FImmobileComponents: TChemSpeciesCollection;
 
Private FMobileComponents: TMobileChemSpeciesCollection;
 
Private FSutraLayerStructure: TSutraLayerStructure;
 
Private FSutraTimeOptions: TSutraTimeOptions;
 
Private FColorSchemes: TUserDefinedColorSchemeCollection;
 
Private FFishnetMeshGenerator: TFishnetMeshGenerator;
 

Methods

Private function GetExaggeration: double;

FSutraOutputControl: TSutraOutputControl; See Exaggeration.

Private function GetOwnsScreenObjects: boolean;

See OwnsScreenObjects.

Private function GetScreenObjectCollection: TScreenObjectCollection;

See ObjectList.

Private function GetVersion: string;

See Version.

Private procedure InitializePhastBoundaries;

InitializePhastBoundaries initializes all the TPhastTimeLists in TimeLists.

Private procedure RecordTimeControl;

RecordTimeControl adds all the TTimeItem.EndingTimes in Times to ModelTimes. RecordTimeControl is only used in PHAST models;

Private procedure SetBitmaps(const Value: TCompressedBitmapCollection);

See Bitmaps.

Private procedure SetDiffusivity(const Value: double);

See Diffusivity.

Private procedure SetExaggeration(Value: double);

See Exaggeration.

Private procedure SetFlowOnly(const Value: boolean);

See FlowOnly.

Private procedure SetFrontHeight(Value : integer);

See FrontHeight.

Private procedure SetFrontX(const Value: double);

See FrontX.

Private procedure SetFrontY(const Value: double);

See FrontY.

Private procedure SetHeight(const Value: integer);

See Height.

Private procedure SetLeft(const Value: integer);

See Left.

Private procedure SetMagnificationFront(Value: double);

See MagnificationFront.

Private procedure SetMagnificationSide(Value: double);

See MagnificationSide.

Private procedure SetMagnificationTop(Value: double);

See MagnificationTop.

Private procedure SetOwnsScreenObjects(const Value: boolean);

See OwnsScreenObjects.

Private procedure SetPrintFrequency(const Value: TPrintFrequencyCollection);

See PrintFrequency.

Private procedure SetScreenObjectCollection( const Value: TScreenObjectCollection);

See ObjectList.

Private procedure SetSideWidth(const Value: integer);

See MagnificationTop.

Private procedure SetSideX(const Value: double);

See SideX.

Private procedure SetSideY(const Value: double);

See SideY.

Private procedure SetTimes(const Value: TTimeCollection);

See Times.

Private procedure SetTitle(const Value: TStrings);

See Title.

Private procedure SetTop(const Value: integer);

See Top.

Private procedure SetTopViewHeight(const Value: integer);

See TopViewHeight.

Private procedure SetTopViewWidth(const Value: integer);

See TopViewWidth.

Private procedure SetTopX(const Value: double);

See TopX.

Private procedure SetTopY(const Value: double);

See TopY.

Private procedure SetVersion(const Value: string);

See Version.

Private procedure SetWidth(const Value: integer);

See Width.

Private procedure SetWindowState(const Value: TWindowState);

See WindowState.

Private procedure SetUnits(const Value: TUnits);

See Units;

Private procedure UpdateDrainReturnObjects;
 
Private procedure CreatePhastTimeLists;
 
Private procedure CreatePhastTimeListGroups;
 
Private procedure UpdateUseList(DataIndex: integer; NewUseList: TStringList; Item: TCustomModflowBoundaryItem);
 
Private function DefaultArchiveName: string;
 
Private function GetArchiveName: string;
 
Private procedure SetArchiveName(const Value: string);
 
Private procedure GetUnitID(var UnitID: Integer);
 
Private procedure NotifyGridColorsChanged(Sender: TObject);
 
Private procedure SetModelMateProjectFileName(const Value: string);
 
Private procedure SetModelMateProject(const Value: TProject);
 
Private procedure UpdateModelMateParameter(ParameterList: TStringList; ModelMuseParam: TModflowParameter; Project: TProject; Operation: TModelMateOperation);
 
Private procedure UpdateModelMateFluxObservation(ObservationList: TStringList; ModelMuseFluxObsGroup: TFluxObservationGroup; Project: TProject; Operation: TModelMateOperation);
 
Private procedure UpdateModelMateHeadObservation(ObservationList: TStringList; const OBSNAM: string; ModelMuseHeadObs: THobItem; Project: TProject; Operation: TModelMateOperation; Method: TMultiObsMethod);
 
Private procedure HandleModelMateParameters(Operation: TModelMateOperation; ParameterList: TStringList; Project: TProject);
 
Private procedure HandleModelMateObservations(Operation: TModelMateOperation; ObservationList: TStringList; Project: TProject);
 
Private procedure EnsureModelMateObsGroup(Project: TProject; GroupName: string; PlotSymbol: integer);
 
Private function PhastUsed(Sender: TObject): boolean;
 
Private procedure CreateInitialDataSetsForPhastTimeLists;
 
Private procedure SetDisplaySettings(const Value: TDisplaySettingsCollection);
 
Private procedure SetChildModels(const Value: TChildModelCollection);
 
Private function StoreChildModels: Boolean;
 
Private function GetChildModels: TChildModelCollection;
 
Private function MaxChildColumnsPerColumn(ColIndex: Integer): integer;
 
Private function MaxChildRowsPerRow(RowIndex: Integer): integer;
 
Private function MaxChildLayersPerLayer(LayerIndex: Integer): integer;
 
Private function CombinedCount(ViewDirection: TViewDirection): integer;
 
Private function DirectionCount(ViewDirection: TViewDirection): integer;
 
Private function MaxChildDisPerParentDis(ViewDirection: TViewDirection; Position: integer): integer;
 
Private procedure UpdateAMapping(var AMapping: TMappingArray; ViewDirection: TViewDirection);
 
Private procedure SetCombinedDisplayColumn(const Value: integer);
 
Private procedure SetCombinedDisplayLayer(const Value: integer);
 
Private procedure SetCombinedDisplayRow(const Value: integer);
 
Private procedure SetSomeSegmentsUpToDate(const Value: boolean); override;
 
Private function GetSomeSegmentsUpToDate: boolean; override;
 
Private function GetNeedToRecalculateFrontCellColors: boolean;
 
Private function GetNeedToRecalculateSideCellColors: boolean;
 
Private function GetNeedToRecalculateTopCellColors: boolean;
 
Private procedure SetNeedToRecalculateFrontCellColors(const Value: boolean);
 
Private procedure SetNeedToRecalculateSideCellColors(const Value: boolean);
 
Private procedure SetNeedToRecalculateTopCellColors(const Value: boolean);
 
Private function AquiferPropertiesUsed(Sender: TObject): boolean; override;
 
Private function KyUsed(Sender: TObject): boolean; override;
 
Private function KzUsed(Sender: TObject): boolean; override;
 
Private function PorosityUsed(Sender: TObject): boolean; override;
 
Private function SpecificStorageUsed(Sender: TObject): boolean; override;
 
Private function ChemistryUsed(Sender: TObject): boolean; override;
 
Private function InitialHeadUsed(Sender: TObject): boolean; override;
 
Private function EquilibriumPhasesUsed(Sender: TObject): boolean; override;
 
Private function SurfacesUsed(Sender: TObject): boolean; override;
 
Private function ExchangeUsed(Sender: TObject): boolean; override;
 
Private function GasPhaseUsed(Sender: TObject): boolean; override;
 
Private function SolidSolutionUsed(Sender: TObject): boolean; override;
 
Private function KineticsUsed(Sender: TObject): boolean; override;
 
Private function ModflowUsed(Sender: TObject): boolean; override;
 
Private function RouteUzfDischarge(Sender: TObject): boolean; override;
 
Private function ModflowInitialHeadUsed(Sender: TObject): boolean; override;
 
Private function ConfiningBedKzUsed(Sender: TObject): boolean; override;
 
Private function VerticalAnisotropyUsed(Sender: TObject): boolean; override;
 
Private function HorizontalAnisotropyUsed(Sender: TObject): boolean; override;
 
Private function SpecificYieldUsed(Sender: TObject): boolean; override;
 
Private function WetDryUsed(Sender: TObject): boolean; override;
 
Private function ModpathUsed(Sender: TObject): boolean; override;
 
Private function HufReferenceSurfaceNeeded(Sender: TObject): boolean; override;
 
Private function BcfUsed(Sender: TObject): boolean; override;
 
Private function ConfinedStorageCoefUsed(Sender: TObject): boolean; override;
 
Private function ZoneBudgetSelected(Sender: TObject): boolean; override;
 
Private function SwtSelected(Sender: TObject): boolean; override;
 
Private function SwtOffsetsUsed(Sender: TObject): boolean; override;
 
Private function SwtSpecifiedUsed(Sender: TObject): boolean; override;
 
Private function WettingActive: boolean; override;
 
Private procedure InternalExportModflowLgrFile(const FileName: string);
 
Private function GetCombinedDisplayColumn: integer;
 
Private function GetCombinedDisplayLayer: integer;
 
Private function GetCombinedDisplayRow: integer;
 
Private function UpwIsSelected: Boolean;
 
Private function SsmIsSelected: Boolean;
 
Private function GetSutraLayerStructure: TSutraLayerStructure;
 
Private procedure SetSutraLayerStructure(const Value: TSutraLayerStructure);
 
Private procedure RenameOldVerticalLeakance; override;
 
Private procedure SetSutraTimeOptions(const Value: TSutraTimeOptions);
 
Private procedure SetColorSchemes(const Value: TUserDefinedColorSchemeCollection);
 
Private procedure SetFishnetMeshGenerator(const Value: TFishnetMeshGenerator);
 
Protected function GetSfrStreamLinkPlot: TSfrStreamLinkPlot; override;

procedure SetSutraOutputControl(const Value: TSutraOutputControl);

Protected procedure SetSfrStreamLinkPlot(const Value: TSfrStreamLinkPlot); override;
 
Protected procedure SetFileName(const Value: string); override;
 
Protected function GetFormulaManager: TFormulaManager; override;
 
Protected function GetLayerStructure: TLayerStructure; override;
 
Protected procedure SetLayerStructure(const Value: TLayerStructure); override;
 
Protected function GetModflowStressPeriods: TModflowStressPeriods; override;
 
Protected function GetSoluteTransport: boolean; override;
 
Protected function GetFreeSurface: boolean; override;
 
Protected function GetUseWaterTable: boolean; override;
 
Protected function GetChemistryOptions: TChemistryOptions; override;
 
Protected procedure SetChemistryOptions(const Value: TChemistryOptions); override;
 
Protected function GetHufParameters: THufModflowParameters; override;
 
Protected function GetModflowFullStressPeriods: TModflowStressPeriods; override;
 
Protected function GetModflowOutputControl: TModflowOutputControl; override;
 
Protected function GetProgramLocations: TProgramLocations; override;
 
Protected function GetObservationPurpose: TObservationPurpose; override;
 
Protected procedure SetObservationPurpose(const Value: TObservationPurpose); override;
 
Protected procedure SetHufParameters(const Value: THufModflowParameters); override;
 
Protected procedure SetModflowStressPeriods(const Value: TModflowStressPeriods); override;

procedure SetModflowOptions(const Value: TModflowOptions);override;

Protected procedure SetModflowOutputControl(const Value: TModflowOutputControl); override;
 
Protected procedure SetModflowTransientParameters( const Value: TModflowTransientListParameters); override;
 
Protected procedure SetProgramLocations(const Value: TProgramLocations); override;
 
Protected procedure SetUseWaterTable(const Value: boolean); override;

See UseWaterTable.

Protected procedure SetSoluteTransport(const Value: boolean); override;

See SoluteTransport.

Protected procedure SetFreeSurface(const Value: boolean); override;

See FreeSurface.

Protected function GetModflowTransientParameters: TModflowTransientListParameters; override;
 
Protected function GetModelSelection: TModelSelection; override;
 
Protected function GetModflowSteadyParameters: TModflowSteadyParameters; override;
 
Protected procedure SetModflowSteadyParameters(const Value: TModflowSteadyParameters); override;
 
Protected function GetScreenObjectCount: integer; override;

procedure SetModelSelection(const Value: TModelSelection);override; See ScreenObjectCount.

Protected function GetScreenObjects(const Index: integer): TScreenObject; override;

See ScreenObjects.

Protected procedure ClearViewedItems; override;

ClearViewedItems causes the grid to not be colored by any TDataArray.

Protected procedure SetUpToDate(const Value: boolean); override;
 
Protected procedure Loaded; override;

Loaded is used to fix up the model after Loaded is loaded from a file.

Protected procedure InternalClear; override;

InternalClear restores the model to its initial state. It gets rid of all TDataArrays and TScreenObjects. It initializes Diffusivity and SolutionOptions.

Protected function GetSelectedModel: TCustomModel; override;
 
Protected procedure SetSelectedModel(const Value: TCustomModel); override;
 
Protected procedure SetFrontTimeList(const Value: TCustomTimeList); override;
 
Protected procedure SetSideTimeList(const Value: TCustomTimeList); override;
 
Protected procedure SetTopTimeList(const Value: TCustomTimeList); override;
 
Protected function GetDisplayName: string; override;
 
Protected function GetSaveBfhBoundaryConditions: boolean; override;
 
Protected procedure SetSaveBfhBoundaryConditions(const Value: boolean); override;
 
Protected procedure InitializeGages; override;
 
Protected procedure InitializeSfrWriter(EvaluationType: TEvaluationType); override;
 
Protected procedure FreeSfrWriter; override;
 
Protected procedure SetContourFont(const Value: TFont) ; override;
 
Protected procedure SetShowContourLabels(const Value: boolean); override;
 
Protected function GetContourFont: TFont; override;
 
Protected function GetShowContourLabels: boolean; override;
 
Protected procedure SetMt3dmsOutputControl(const Value: TMt3dmsOutputControl); override;
 
Protected function GetMt3dmsOutputControl: TMt3dmsOutputControl; override;
 
Protected function GetMt3dmsTimes: TMt3dmsTimeCollection; override;
 
Protected procedure SetMt3dmsTimes(const Value: TMt3dmsTimeCollection); override;
 
Protected function GetImmobileComponents: TChemSpeciesCollection; override;
 
Protected function GetMobileComponents: TMobileChemSpeciesCollection; override;
 
Protected procedure SetImmobileComponents(const Value: TChemSpeciesCollection); override;
 
Protected procedure SetMobileComponents(const Value: TMobileChemSpeciesCollection); override;
 
Protected procedure SetModelSelection(const Value: TModelSelection); override;
 
Protected procedure GenerateFishNetMesh(var ErrorMessage: string); override;
 
Public function LakBathymetryUsed: Boolean;
 
Public function TobIsSelected: Boolean;
 
Public procedure DrawHeadObservations(const BitMap: TBitmap32; const ZoomBox: TQRbwZoomBox2); override;

procedure RenameDataArray(DataArray: TDataArray; const NewName: string);

Public procedure UpdateMapping;

procedure DrawSfrStreamLinkages(const BitMap: TBitmap32; const ZoomBox: TQRbwZoomBox2); Update relationships of parent grid with child grids.

Public function InitialWaterTableUsed(Sender: TObject): boolean; override;
 
Public function ReservoirLayerUsed(Sender: TObject): boolean; override;
 
Public function ReservoirPackageUsed(Sender: TObject): boolean; override;
 
Public function LakePackageUsed(Sender: TObject): boolean; override;
 
Public function UzfPackageUsed(Sender: TObject): boolean; override;
 
Public function UzfUnsatVertKUsed(Sender: TObject): boolean; override;
 
Public function UzfInitialInfiltrationUsed(Sender: TObject): boolean; override;
 
Public function UzfResidualWaterContentUsed(Sender: TObject): boolean; override;
 
Public procedure InvalidateMapping;
 
Public procedure UpdateChildGrids;
 
Public procedure UpdateDataSetConnections;
 
Public function AddDataSet(const DataSet: TDataArray): Integer; override;
 
Public function IsChildModelEdgeColRow(Col, Row, Layer: integer; out CModel: TBaseModel): boolean;
 
Public function IsChildModelEdgeCell(Col, Row, Layer: integer; out CModel: TBaseModel): boolean;
 
Public procedure AllowChildGridUpdates;
 
Public procedure DisallowChildGridUpdates;
 
Public procedure Assign(Source: TPersistent); override;
 
Public procedure FixOldModel;

FixOldModel updates and invalidates data sets that may have been calculated incorrectly in previous versions of ModelMuse.

Public procedure UpdateDisplayUseList(NewUseList: TStringList; ParamType: TParameterType; DataIndex: integer; const DisplayName: string); override;

UpdateDisplayUseList is used when determining what data sets or global variables are used when evaluating the formula for a MODFLOW boundary condition. The names of all the TDataArrays and global variables are added to NewUseList.

Public procedure InvalidateModflowBoundaries;

InvalidateModflowBoundaries invalidates all the TModflowBoundaryDisplayTimeLists.

Public function ModelLayerDataArrayUsed(Sender: TObject): boolean;

ModelLayerDataArrayUsed is the event handler for TDataArray.OnDataSetUsed in MODFLOW models for TDataArrays that define the top of the model and the bottom of TLayerGroups.

Public function Mt3dMsInitialConcUsed(Sender: TObject): boolean;
 
Public function ModDispDataArrayUsed(Sender: TObject): boolean;
 
Public function Mt3dMsSorbImmobInitialConcUsed(Sender: TObject): boolean;
 
Public function SubsidenceDataArrayUsed(Sender: TObject): boolean;

SubsidenceDataArrayUsed is the event handler for TDataArray.OnDataSetUsed in MODFLOW models for TDataArrays related to the SUB and SWT packages.

Public procedure GetLayerGroupDataSets(LayerGroupsDataSets: TList);

GetLayerGroupDataSets fills LayerGroupsDataSets with the TDataArrays used by LayerStructure.

Public procedure LocateNearestLakeOrStream(TestScreenObject: TScreenObject; var NearestLake, NearestStream: TScreenObject; Tolerance: double = 0);

LocateNearestLakeOrStream finds the TScreenObject that is closest to the last point in TestScreenObject.

Public procedure BeginScreenObjectUpdate;

BeginScreenObjectUpdate increments FScreenObjectUpdateCount. While FScreenObjectUpdateCount is greater than zero the OnScreenObjectsChanged event is not called.

Public procedure EndScreenObjectUpdate;

EndScreenObjectUpdate decrements FScreenObjectUpdateCount and calls ScreenObjectsChanged. While FScreenObjectUpdateCount is greater than zero the OnScreenObjectsChanged event is not called.

Public procedure ScreenObjectUnSelected;

ScreenObjectUnSelected is called by TScreenObjects when they become unselected. ScreenObjectUnSelected decrements FSelectedScreenObjectCount and calls OnScreenObjectUnSelected.

Public procedure ScreenObjectSelected;

ScreenObjectSelected increments FSelectedScreenObjectCount and then, if assigned, ScreenObjectSelected calls ScreenObjectSelected.

Public function IsCurrentScreenObject(ScreenObject: TScreenObject): boolean;

If assigned, IsCurrentScreenObject calls OnCheckScreenObject.

Public function AddScreenObject(const AScreenObject: TScreenObject): integer; virtual;

AddScreenObject adds AScreenObject to FScreenObjectList.

Public procedure ClearScreenObjects;

ClearScreenObjects removes all TScreenObjects in FScreenObjectList. This will destroy them unless OwnsScreenObjects is set to False first.

Public constructor Create(AnOwner: TComponent); override;

Create creates an instance of TPhastModel.

Public destructor Destroy; override;

Destroy destroys the current instance of TPhastModel. Do not call Destroy directly. Call Free instead.

Public procedure DrawScreenObjects3D;

DrawScreenObjects3D draws the 3D views of the TScreenObjects.

Public procedure ExtractScreenObject(const AScreenObject: TScreenObject);

ExtractScreenObject removes AScreenObject from ScreenObjects without freeing it.

Public procedure IncreaseScreenObjectCapacity(const Delta: integer);

IncreaseScreenObjectCapacity increases the number of TScreenObjects that can be held in ScreenObjects by the amount Delta. If Delta is less than or equal to zero, IncreaseScreenObjectCapacity does nothing.

Public function IndexOfScreenObject(const AScreenObject: TScreenObject): integer;

IndexOfScreenObject returns the position of AScreenObject in ScreenObjects. If AScreenObject is not in / ScreenObjects, IndexOfScreenObject returns -1.

Public procedure InitializeTimes;

InitializeTimes sets all the times in the model in ModelTimes. InitializeTimes calls InitializePhastBoundaries and RecordTimeControl to do this.

Public procedure InsertScreenObject(const Index: integer; const AScreenObject: TScreenObject);

InsertScreenObject inserts AScreenObject into ScreenObjects at the position specified by Index.

Public procedure InvalidateSegments;

Calling InvalidateSegments ensures that TScreenObject.Segments.UpToDate is False for every TScreenObject. InvalidateSegments only does something if SomeSegmentsUpToDate is True.

Public function NumberOfLargestScreenObjectsStartingWith( const Root: string): integer;

NumberOfLargestScreenObjectsStartingWith checks all TScreenObject starting with Root followed by a number and returns the largest number so detected.

Public procedure RemoveScreenObject(const AScreenObject: TScreenObject);

RemoveScreenObject removes AScreenObject from ScreenObjects. AScreenObject is freed unless OwnsScreenObjects is set to False first. At the time this was written RemoveScreenObject always freed AScreenObject.

Public procedure RestoreColoredDataSets;

RestoreColoredDataSets restores coloring the grid by time-varying data sets. The data sets must already be up to date.

Public function ScreenObjectClass: TScreenObjectClass;

ScreenObjectClass returns the class of TScreenObject that is normally used with TPhastModel. ScreenObjectClass returns TScreenObject.

Public function GetTimeListByName(const AName: string): TCustomTimeList;
 
Public procedure UpdateDataSets;

UpdateDataSets is called after reading a TPhastModel to transfer the information about TDataArrays from DataSetList to FDataArrayManager.DataSets.

Public procedure UpdateFrontTimeDataSet(const TimeList: TCustomTimeList; const Time: double); override;
 
Public procedure UpdateScreenObjects;

UpdateScreenObjects is called after reading a TPhastModel to transfer the information about TScreenObjects from ObjectList to ScreenObjects.

Public procedure UpdateSideTimeDataSet(const TimeList: TCustomTimeList; const Time: double); override;
 
Public procedure UpdateThreeDTimeDataSet(const TimeList: TCustomTimeList; const Time: double); override;
 
Public procedure UpdateTimeLists;

UpdateTimeLists calls TPhastTimeList.Loaded for each TPhastTimeList in TimeLists.

Public procedure UpdateTopTimeDataSet(const TimeList: TCustomTimeList; const Time: double); override;
 
Public function ZoomBox(VD: TViewDirection): TQrbwZoomBox2;

If assigned, ZoomBox calls OnGetZoomBox. Otherwise, it returns nil.

Public procedure ScreenObjectsChanged(Sender: TObject);

If assigned, ScreenObjectsChanged calls OnScreenObjectsChanged. Typically, OnScreenObjectsChanged is assigned to TfrmGoPhast.ScreenObjectsChanged.

Public procedure RefreshScreenObjects(Sender: TObject);

RefreshScreenObjects calls OnRefreshScreenObjects if assigned. RefreshScreenObjects is called by TScreenObject.RefreshGui.

Public function GetCurrentScreenObject(VD: TViewDirection): TScreenObject;

If assigned, GetCurrentScreenObject calls OnGetCurrentScreenObject.

Public procedure Notify3DViewChanged;

If assigned, Notify3DViewChanged calls On3DViewChanged.

Public function ResetSelectedScreenObjects: boolean;

ResetSelectedScreenObjects sets the Selected property of all TScreenObjects to false. ResetSelectedScreenObjects returns true if any of them were selected.

Public function ConvertPoint(VD: TViewDirection; const RealPoint: TPoint2D): TPoint;

ConvertPoint calls OnConvertPoint.

Public procedure InvalidateMfSfrData(Sender: TObject);
 
Public procedure InvalidateMfSfrSegmentReachAndIcalc(Sender: TObject);
 
Public procedure InvalidateMfSfrReachLength(Sender: TObject);
 
Public procedure InvalidateMfSfrIprior(Sender: TObject);
 
Public procedure InvalidateMfSfrFlow(Sender: TObject);
 
Public procedure InvalidateMfSfrRunoff(Sender: TObject);
 
Public procedure InvalidateMfSfrPrecipitation(Sender: TObject);
 
Public procedure InvalidateMfSfrEvapotranspiration(Sender: TObject);
 
Public procedure InvalidateMfSfrChannelRoughness(Sender: TObject);
 
Public procedure InvalidateMfSfrBankRoughness(Sender: TObject);
 
Public procedure InvalidateMfSfrDepthCoefficient(Sender: TObject);
 
Public procedure InvalidateMfSfrDepthExponent(Sender: TObject);
 
Public procedure InvalidateMfSfrWidthCoefficient(Sender: TObject);
 
Public procedure InvalidateMfSfrWidthExponent(Sender: TObject);
 
Public procedure InvalidateMfSfrUpstreamDepth(Sender: TObject);
 
Public procedure InvalidateMfSfrDownstreamDepth(Sender: TObject);
 
Public procedure CreateArchive(const FileName: string; const ArchiveCommand: string = '');
 
Public function DefaultHigherElevationFormula(ViewDirection: TViewDirection; EvalAt: TEvaluatedAt): string;

procedure InvalidateMfHobHeads(Sender: TObject);

Public function DefaultLowerElevationFormula(ViewDirection: TViewDirection; EvalAt: TEvaluatedAt): string;
 
Public function DefaultElevationFormula(ViewDirection: TViewDirection; EvalAt: TEvaluatedAt): string;
 
Public function ParameterDataSetUsed(Sender: TObject): boolean;
 
Public function GetScreenObjectByName(AName: string): TScreenObject; override;
 
Public procedure CopyScreenObjectsToClipboard;
 
Public procedure PasteObjectsFromClipboard(List: TList);
 
Public procedure UpdateModelMateProject;
 
Public procedure ImportFromModelMateProject(Project: TProject);
 
Public procedure RegisterGlobalVariables(Parser: TRbwParser);
 
Public procedure ClearScreenObjectCollection;
 
Public function FileVersionEqualOrEarlier(TestVersion: string): boolean;
 
Public function CombinedColumnCount: integer;
 
Public function CombinedRowCount: integer;
 
Public function CombinedLayerCount: integer;
 
Public procedure UpdateDataSetDimensions;
 
Public function LgrUsed: boolean;
 
Public function BcfIsSelected: Boolean;
 
Public function ChdIsSelected: Boolean;
 
Public function ChobIsSelected: Boolean;
 
Public function De4IsSelected: Boolean;
 
Public function DrnIsSelected: Boolean;
 
Public function DrobIsSelected: Boolean;
 
Public function DrtIsSelected: Boolean;
 
Public function EtsIsSelected: Boolean;
 
Public function EvtIsSelected: Boolean;
 
Public function GbobIsSelected: Boolean;
 
Public function GhbIsSelected: Boolean;
 
Public function GmgIsSelected: Boolean;
 
Public function HfbIsSelected: Boolean;
 
Public function HobIsSelected: Boolean;
 
Public function HufIsSelected: Boolean;
 
Public function HydmodIsSelected: Boolean;
 
Public function LakIsSelected: Boolean;
 
Public function LpfIsSelected: Boolean;
 
Public function Mnw2IsSelected: Boolean;
 
Public function MODPATHIsSelected: Boolean;
 
Public procedure ModpathHeadWarning;
 
Public function Mt3dmsIsSelected: Boolean;
 
Public function Mt3dmsSsmIsSelected: Boolean;
 
Public function Mt3dmsTobIsSelected: Boolean;
 
Public function PcgIsSelected: Boolean;
 
Public function RchIsSelected: Boolean;
 
Public function ResIsSelected: Boolean;
 
Public function RivIsSelected: Boolean;
 
Public function RvobIsSelected: Boolean;
 
Public function SfrIsSelected: Boolean;
 
Public function SipIsSelected: Boolean;
 
Public function SubIsSelected: Boolean;
 
Public function SwtIsSelected: Boolean;
 
Public function UzfIsSelected: Boolean;
 
Public function WelIsSelected: Boolean;
 
Public function ZoneBudgetIsSelected: Boolean;
 
Public function PackageIsSelected(APackage: TObject): Boolean;
 
Public procedure ExportModflowLgrModel(const FileName: string; RunModel, ExportModpath, ExportZoneBudget, ShowWarning: boolean);
 
Public procedure AdjustDataArray(ADataArray: TDataArray); override;
 
Public function RchTimeVaryingLayers: boolean;
 
Public function EvtTimeVaryingLayers: boolean;
 
Public function EtsTimeVaryingLayers: boolean;
 
Public procedure BeginGridChange; override;
 
Public procedure EndGridChange; override;
 
Public procedure BeginDataSetUpdate;
 
Public procedure EndDataSetUpdate;
 
Public procedure UpdateCombinedDisplayColumn;
 
Public procedure UpdateCombinedDisplayRow;
 
Public procedure UpdateCombinedDisplayLayer;
 
Public function DispersionSelected: boolean;
 
Public function AnyDispersionMultiDiffusion: boolean;
 
Public function AllDispersionMultiDiffusion: boolean;
 
Public function AnyMt3dSorbImmobConc: boolean;
 
Public function AnyMt3dSorbParameter: boolean;
 
Public function AnyMt3dReactions: Boolean;
 
Public procedure UpdateMt3dmsChemDataSets; override;
 
Public function Mt3dMsFirstSorbParamUsed(Sender: TObject): boolean;
 
Public function Mt3dMsSecondSorbParamUsed(Sender: TObject): boolean;
 
Public function Mt3dmsReactionRateDisolvedUsed(Sender: TObject): boolean;
 
Public function Mt3dmsReactionRateSorbedUsed(Sender: TObject): boolean;
 
Public function CombinedLayerSimulated(ALayer: Integer): boolean;
 

Properties

Public property ImportingModel: boolean read FImportingModel write FImportingModel;
 
Public property SelectedScreenObjectCount: Integer read FSelectedScreenObjectCount;

SelectedScreenObjectCount is the number of TScreenObjects that are selected.

Public property OnScreenObjectSelected: TNotifyEvent read FOnScreenObjectSelected write FOnScreenObjectSelected;

See ScreenObjectSelectionChange.

Public property OnScreenObjectUnSelected: TNotifyEvent read FOnScreenObjectUnSelected write FOnScreenObjectUnSelected;

OnScreenObjectUnSelected is called by ScreenObjectUnSelected. Then event handler for this is ScreenObjectSelectionChange

Public property OnCheckScreenObject: TCheckScreenObjectEvent read FOnCheckScreenObject write FOnCheckScreenObject;

See CheckScreenObject.

Public property GridColorParameters: TColorParameters read FGridColors;

GridColorParameters are the parameters used in setting the colors of the grid cells.

Public property ContourColorParameters: TColorParameters read FContourColors;

ContourColorParameters are the parameters used in setting the colors of contours.

Public property FileVersion: string read FFileVersion;

FileVersion indicates what version of GoPhast last saved the file that is currently open.

Public property FluxBoundaryChemistryGroup: TTimeListGroup read FFluxBoundaryChemistryGroup;

FluxBoundaryChemistryGroup is the group of TPhastTimeLists that are related to the chemistry in specified flux boundaries.

Public property FluxBoundaryFluxGroup: TTimeListGroup read FFluxBoundaryFluxGroup;

FluxBoundaryFluxGroup is the group of TPhastTimeLists that are related to the flux in specified flux boundaries.

Public property FrontBoundaryType: TDataArray read FFrontBoundaryType;

FrontBoundaryType indicates what type of boundary condition (if any) is present on the front face of each grid cell.

Public property FrontFluxBoundaryChemistry: TPhastTimeList read FFrontFluxBoundaryChemistry;

FrontFluxBoundaryChemistry is the TPhastTimeList that specifies the chemistry for specified flux boundaries on the front view of model cells.

Public property FrontFluxBoundaryFlux: TPhastTimeList read FFrontFluxBoundaryFlux;

FrontFluxBoundaryFlux is the TPhastTimeList that specifies the flux for specified flux boundaries on the front view of model cells.

Public property FrontLeakyAssociatedSolution: TPhastTimeList read FFrontLeakyAssociatedSolution;

FrontLeakyAssociatedSolution is the TPhastTimeList that specifies the associated solution for leaky boundaries on the front view of model cells.

Public property FrontLeakyHead: TPhastTimeList read FFrontLeakyHead;

FrontLeakyHead is the TPhastTimeList that specifies the head for leaky boundaries on the front view of model cells.

Public property LeakyAssociatedSolutionGroup: TTimeListGroup read FLeakyAssociatedSolutionGroup;

LeakyAssociatedSolutionGroup is the group of TPhastTimeLists that are related to the associated solution in leaky boundaries.

Public property LeakyHeadGroup: TTimeListGroup read FLeakyHeadGroup;

LeakyHeadGroup is the group of TPhastTimeLists that are related to the head in leaky boundaries.

Public property ModelTimes: TRealList read FModelTimes;

ModelTimes is used to store all the times used in the model. Its contents are set in InitializeTimes.

Public property OwnsScreenObjects: boolean read GetOwnsScreenObjects write SetOwnsScreenObjects;

OwnsScreenObjects is used to get or set FScreenObjectList.OwnsObjects

Public property RiverAssociatedSolution: TPhastTimeList read FRiverAssociatedSolution;

RiverAssociatedSolution is the TPhastTimeList that specifies the associated solution for river boundaries.

Public property RiverAssociatedSolutionGroup: TTimeListGroup read FRiverAssociatedSolutionGroup;

RiverAssociatedSolutionGroup is the group of TPhastTimeLists that are related to the associated solution in river boundaries.

Public property RiverHead: TPhastTimeList read FRiverHead;

RiverHead is the TPhastTimeList that specifies the head for river boundaries.

Public property RiverHeadGroup: TTimeListGroup read FRiverHeadGroup;

RiverHeadGroup is the group of TPhastTimeLists that are related to the head in river boundaries.

Public property SideBoundaryType: TDataArray read FSideBoundaryType;

SideBoundaryType indicates what type of boundary condition (if any) is present on the side face of each grid cell.

Public property SideFluxBoundaryChemistry: TPhastTimeList read FSideFluxBoundaryChemistry;

SideFluxBoundaryChemistry is the TPhastTimeList that specifies the chemistry for specified flux boundaries on the side view of model cells.

Public property SideFluxBoundaryFlux: TPhastTimeList read FSideFluxBoundaryFlux;

SideFluxBoundaryFlux is the TPhastTimeList that specifies the flux for specified flux boundaries on the side view of model cells.

Public property SideLeakyAssociatedSolution: TPhastTimeList read FSideLeakyAssociatedSolution;

SideLeakyAssociatedSolution is the TPhastTimeList that specifies the associated solution for leaky boundaries on the front view of model cells.

Public property SideLeakyHead: TPhastTimeList read FSideLeakyHead;

SideLeakyHead is the TPhastTimeList that specifies the head for leaky boundaries on the side view of model cells.

Public property SpecifiedHeadAssociatedSolution: TPhastTimeList read FSpecifiedHeadAssociatedSolution;

SpecifiedHeadAssociatedSolution is the TPhastTimeList that specifies the associated solution for specified head boundaries.

Public property SpecifiedHeadGroup: TTimeListGroup read FSpecifiedHeadGroup;

SpecifiedHeadGroup is the group of TPhastTimeLists that are related to the head in specified head boundaries.

Public property SpecifiedHeadHead: TPhastTimeList read FSpecifiedHeadHead;

SpecifiedHeadHead is the TPhastTimeList that specifies the specified head for specified head boundaries.

Public property SpecifiedHeadSolutionGroup: TTimeListGroup read FSpecifiedHeadSolutionGroup;

SpecifiedHeadSolutionGroup is the group of TPhastTimeLists that are related to the solution in specified head boundaries.

Public property SpecifiedSolution: TPhastTimeList read FSpecifiedSolution;

SpecifiedSolution is the TPhastTimeList that specifies the specified solution for specified head boundaries.

Public property Top2DBoundaryType: TDataArray read FTop2DBoundaryType;

Top2DBoundaryType indicates what type of 2D boundary condition (if any) is present on the top face of each grid cell.

Public property TopBoundaryType: TDataArray read FTopBoundaryType;

TopBoundaryType indicates what type of boundary condition (if any) is present on the top face of each grid cell.

Public property TopFluxBoundaryChemistry: TPhastTimeList read FTopFluxBoundaryChemistry;

TopFluxBoundaryChemistry is the TPhastTimeList that specifies the chemistry for specified flux boundaries on the top view of model cells.

Public property TopFluxBoundaryFlux: TPhastTimeList read FTopFluxBoundaryFlux;

TopFluxBoundaryFlux is the TPhastTimeList that specifies the flux for specified flux boundaries on the top view of model cells.

Public property TopLeakyAssociatedSolution: TPhastTimeList read FTopLeakyAssociatedSolution;

TopLeakyAssociatedSolution is the TPhastTimeList that specifies the associated solution for leaky boundaries on the top view of model cells.

Public property TopLeakyHead: TPhastTimeList read FTopLeakyHead;

TopLeakyHead is the TPhastTimeList that specifies the head for leaky boundaries on the top view of model cells.

Public property WellInjectionOrPumpingRate: TPhastTimeList read FWellInjectionOrPumpingRate;

WellInjectionOrPumpingRate is the TPhastTimeList that specifies the injection or pumping rate for well boundaries. Positive means flow out of the porous medium.

Public property WellPumpingRateGroup: TTimeListGroup read FWellPumpingRateGroup;

WellPumpingRateGroup is the group of TPhastTimeLists that are related to the injection or pumping rate in well boundaries.

Public property WellSolution: TPhastTimeList read FWellSolution;

WellSolution is the TPhastTimeList that specifies the solution for well boundaries. Positive means flow out of the porous medium.

Public property WellSolutionGroup: TTimeListGroup read FWellSolutionGroup;

WellSolutionGroup is the group of TPhastTimeLists that are related to the solution in well boundaries.

Public property OnGetZoomBox: TGetZoomBoxEvent read FOnGetZoomBox write FOnGetZoomBox;

See GetZoomBox.

Public property OnScreenObjectsChanged: TNotifyEvent read FOnScreenObjectsChanged write FOnScreenObjectsChanged;

See TfrmGoPhast.ScreenObjectsChanged.

Public property OnRefreshScreenObjects: TNotifyEvent read FOnRefreshScreenObjects write FOnRefreshScreenObjects;

The event handler for this event is TfrmGoPhast.UpdateDisplay. OnRefreshScreenObjects is called in RefreshScreenObjects.

Public property OnGetCurrentScreenObject : TGetCurrentScreenObjectEvent read FOnGetCurrentScreenObject write FOnGetCurrentScreenObject;

see GetCurrentScreenObject.

Public property On3DViewChanged: TNotifyEvent read FOn3DViewChanged write FOn3DViewChanged;

See Invalidate3DView.

Public property OnConvertPoint: TConvertPointEvent read FOnConvertPoint write FOnConvertPoint;

see ConvertPoint.

Public property ArchiveName: string read GetArchiveName write SetArchiveName;
 
Public property ModelMateProject: TProject read FModelMateProject write SetModelMateProject;
 
Public property FormulaManager: TFormulaManager read GetFormulaManager;
 
Public property ColorLegend: TLegend read FColorLegend;
 
Public property ContourLegend: TLegend read FContourLegend;
 
Public property NeedToRecalculateTopCellColors: boolean read GetNeedToRecalculateTopCellColors write SetNeedToRecalculateTopCellColors;
 
Public property NeedToRecalculateFrontCellColors: boolean read GetNeedToRecalculateFrontCellColors write SetNeedToRecalculateFrontCellColors;
 
Public property NeedToRecalculateSideCellColors: boolean read GetNeedToRecalculateSideCellColors write SetNeedToRecalculateSideCellColors;
 
Public property DataSetUpdateCount: integer read FDataSetUpdateCount;
 
Published property FlowOnly: boolean write SetFlowOnly stored False;

The following properties are obsolete. FlowOnly stores FlowOnly option in PHAST.

Published property FluidProperties: TFluidProperties read FFluidProperties write FFluidProperties stored False;

FluidProperties is only for backwards compatibility. It is not used.

Published property FrontHeight: integer write SetFrontHeight stored False;

FrontHeight stores the height in pixels of the front view of the model.

Published property FrontX: double write SetFrontX stored False;

read GetFrontHeight FrontX stores the reference X-coordinate for the front view of the model.

Published property FrontY: double write SetFrontY stored False;

FrontY stores the reference Y-coordinate for the front view of the model.

Published property Height: integer write SetHeight stored False;

Height is the height of the main form in pixels.

Published property Left: integer write SetLeft stored False;

Left is the X-coordinate of the main form in pixels.

Published property MagnificationFront: double write SetMagnificationFront stored False;

MagnificationFront is the magnification of the front view of the model.

Published property MagnificationSide: double write SetMagnificationSide stored False;

read GetMagnificationFront MagnificationSide is the magnification of the side view of the model.

Published property MagnificationTop: double write SetMagnificationTop stored False;

read GetMagnificationSide MagnificationTop is the magnification of the top view of the model.

Published property SideWidth: integer write SetSideWidth stored False;

read GetMagnificationTop SideWidth is the width in pixels of the side view of the model.

Published property SideX: double write SetSideX stored False;

read GetSideWidth SideX stores the reference X-coordinate for the side view of the model.

Published property SideY: double write SetSideY stored False;

SideY stores the reference Y-coordinate for the front view of the model.

Published property Top: integer write SetTop stored False;

Top is the Y-coordinate of the main form in pixels.

Published property TopViewHeight: integer write SetTopViewHeight stored False;

TopViewHeight is the height of the top view of the model in pixels

Published property TopViewWidth: integer write SetTopViewWidth stored False;

read GetTopViewHeight TopViewWidth is the width of the top view of the model in pixels

Published property TopX: double write SetTopX stored False;

read GetTopViewWidth TopX stores the reference X-coordinate for the top view of the model.

Published property TopY: double write SetTopY stored False;

TopY stores the reference Y-coordinate for the top view of the model.

Published property Width: integer write SetWidth stored False;

Width is the width of the main form in GoPhast in pixels.

Published property WindowState: TWindowState write SetWindowState stored False;

WindowState stores whether the model is maximized, minimized, or normal.

Published property Diffusivity: double read FDiffusivity write SetDiffusivity;

read GetWindowState The following properties are used only in PHAST models. Diffusivity is the diffusivity in PHAST.

Published property GridOptions: TGridOptions read FGridOptions write FGridOptions;

GridOptions is used to store options related to the grid in PHAST.

Published property PrintFrequency: TPrintFrequencyCollection read FPrintFrequency write SetPrintFrequency;

PrintFrequency represents the TPrintFrequencyItems in PHAST.

Published property PrintInitial: TPrintInitial read FPrintInitial write FPrintInitial;

PrintInitial stores options related to the PRINT_INITIAL data block in PHAST.

Published property SolutionOptions: TSolutionOptions read FSolutionOptions write FSolutionOptions;

SolutionOptions specifies options related to the solution method in PHAST.

Published property SteadyFlowOptions: TSteadyFlowOptions read FSteadyFlowOptions write FSteadyFlowOptions;

SteadyFlowOptions is used to store options related to the STEADY_FLOW data block in PHAST.

Published property Times: TTimeCollection read FTimes write SetTimes;

Times represents a collection of stress periods in PHAST.

Published property Title: TStrings read FTitle write SetTitle stored True;

Title represents the title associated with the PHAST model.

Published property Units: TUnits read FUnits write SetUnits;

Units stores the default units in PHAST.

Published property Bitmaps: TCompressedBitmapCollection read FBitmaps write SetBitmaps;

Bitmaps represents a series of bitmaps that can be displayed on the top, front, or side view of the model. Bitmaps is used in both PHAST and MODFLOW models.

Published property Exaggeration: double read GetExaggeration write SetExaggeration;

Exaggeration is the vertical exaggeration of the front, side, and 3D views of the model in GoPhast. Exaggeration is used in both PHAST and MODFLOW models.

Published property ObjectList: TScreenObjectCollection read GetScreenObjectCollection write SetScreenObjectCollection;

ObjectList is used to read or write TScreenObjects to or from files. ObjectList is used in both PHAST and MODFLOW models.

Published property Version: string read GetVersion write SetVersion;

Version is the version of GoPhast that last saved the model that is being edited. Version is used in both PHAST and MODFLOW models.

Published property GuiSettings: TGuiSettings read FGuiSettings write FGuiSettings;

GuiSettings specifies the size and appearance of various portions of the ModelMuse main window. GuiSettings is used in both PHAST and MODFLOW models.

Published property ModelMateProjectFileName: string read FModelMateProjectFileName write SetModelMateProjectFileName;

ModelMateProjectFileName is the ModelMate file associated with this model.

Published property DisplaySettings: TDisplaySettingsCollection read FDisplaySettings write SetDisplaySettings;

see TDisplaySettingsCollection. DisplaySettings is used in both PHAST and MODFLOW models.

Published property ChildModels: TChildModelCollection read GetChildModels write SetChildModels stored StoreChildModels;
 
Published property SaveDataSetValues: TSaveDataSetValues read FSaveDataSetValues write FSaveDataSetValues default sdsvAlways;
 
Published property ModflowSteadyParameters;
 
Published property ModelSelection;
 
Published property LayerStructure;
 
Published property ModflowStressPeriods;
 
Published property SoluteTransport;
 
Published property UseWaterTable;
 
Published property FreeSurface;
 
Published property ChemistryOptions;
 
Published property HufParameters;
 
Published property ObservationPurpose;
 
Published property ModflowTransientParameters;
 
Published property ModflowOutputControl;
 
Published property Mt3dmsOutputControl;
 
Published property Mt3dmsTimes;
 
Published property DataSetList;
 
Published property CombinedDisplayColumn: integer read GetCombinedDisplayColumn write SetCombinedDisplayColumn;
 
Published property CombinedDisplayRow: integer read GetCombinedDisplayRow write SetCombinedDisplayRow;
 
Published property CombinedDisplayLayer: integer read GetCombinedDisplayLayer write SetCombinedDisplayLayer;
 
Published property SaveBfhBoundaryConditions;
 
Published property ContourFont;
 
Published property ShowContourLabels;
 
Published property SfrStreamLinkPlot;
 
Published property SutraLayerStructure: TSutraLayerStructure read GetSutraLayerStructure write SetSutraLayerStructure stored False ;
 
Published property SutraTimeOptions: TSutraTimeOptions read FSutraTimeOptions write SetSutraTimeOptions stored False ;
 
Published property ColorSchemes: TUserDefinedColorSchemeCollection read FColorSchemes write SetColorSchemes;

User defined color schemes for coloring the grid or mesh or for contour lines.

Published property FishnetMeshGenerator: TFishnetMeshGenerator read FFishnetMeshGenerator write SetFishnetMeshGenerator stored False ;
 

Generated by PasDoc 0.12.1 on 2013-05-13 15:41:57