|
|
|
|
||
|
DEFINITION MODULE MWGFitParams; (******************************************************************* Module MWGFitParams (Version 1.0) Copyright (c) 1996-2006 by Dimitrios Gyalistras and ETH Zurich. Purpose Fit parameters needed for stochastic simulation of monthly weather variables. Remarks Missing data are recognized and returned as DMConversions.UndefREAL() or UndefLONGREAL(). This module is part of the package MonWeathGen. Programming o Design Dimitrios Gyalistras 09/12/1996 o Implementation Dimitrios Gyalistras 09/12/1996 ETH Zurich Systems Ecology CHN E 35.1 Universitaetstrasse 16 8092 Zurich SWITZERLAND URLs: <mailto:RAMSES@env.ethz.ch> <http://www.sysecol.ethz.ch> <http://www.sysecol.ethz.ch/SimSoftware/RAMSES> Last revision of definition: 24/05/2002 AF *******************************************************************) IMPORT Errors; FROM LgMatrices IMPORT LMatrix; FROM MonWeathGen IMPORT MWGLRealVec, MWGIntVec, MWGLRealVecArr, MWGLnTrfTVecArr, MWGLMatrixArr; CONST (* result codes returned *) allOk = Errors.allOk; notDone = Errors.onlyAnInsert; TYPE MWGModelType = ( simple, crossCorr, fixedPhaseCyclostat, phaseAveragedCyclostat ); PROCEDURE FitMWGParams( (* 1. input data *) nVariables : INTEGER; (* number of variables/time series *) nTimePoints : INTEGER; (* number of time points *) timeSeries : LMatrix; (* input time series at a monthly time step: rows = variables, columns = timepoints; first month = Jan *) (* 2. model specification *) mwgModelType : MWGModelType; (* type of model *) chi2SgnfLevForLnTrf : MWGLRealVec; (* a Log-Normal transformation for skewness reduction is applied if the hypothesis that the variable is not normally distributed is accepted with a probability > sgnfLev (given in %); you may choose sgnfLev=0.0 to always force, and sgnfLev=100.0 to always avoid a LogN-transformation *) nHarmonicsMuSig : MWGIntVec; (* number of harmonics for mu and stdev *) nHarmonicsCycSt : INTEGER; (* number of harmonics for determination of matrices A and B if mwgModelType = phaseAveragedCyclostat *) (* 3. fitted parameters *) VAR mu : MWGLRealVecArr; (* long-term means *) VAR sig : MWGLRealVecArr; (* long-term standard deviations *) VAR lnTrfType : MWGLnTrfTVecArr; (* type of Log-Normal transf. applied (if any ) *) VAR lnTrfMu : MWGLRealVecArr; (* mu of transformed variables *) VAR lnTrfSig : MWGLRealVecArr; (* sig of transformed variables *) VAR lnTrfTheta : MWGLRealVecArr; (* theta (offset)-parameter of transformed variables *) VAR A, B : MWGLMatrixArr; (* matrices of stochastic process *) VAR nParsFitted : INTEGER; (* effective number of parameters fitted *) VAR resCode : INTEGER; VAR errTxt : ARRAY OF CHAR ); (* NOTE: all LMatrix objects in A and B are first de-allocated and then re-allocated. Usage of MonWeathGen.ResetMWGLMatrixArr prior to calling this procedure for the first time is recommended. *) END MWGFitParams.
|
||
|
|
|