#ifndef RFerror_H #define RFerror_H 1 // Error codes & messages // positive values are error codes // negative values are messages #define USEOLDINIT -1 /* not an error, just a message !*/ #define NOERROR 0 #define ERRORNOTDEFINED 1 /* the specification for the covariance and method is not given/known, e.g. TBM2 for many covariance functions */ #define ERRORMETHODNOTALLOWED 2 /* wrong method for the specified covariance function or grid */ #define ERRORNOTPROGRAMMED 3 #define ERRORCOVNOTALLOWED 4 /* wrong dimension for the specified covariance function */ #define ERRORFAILED 5 /* method didn't work for the specified parameters */ #define ERRORMEMORYALLOCATION 6 /* malloc returned NULL pointer */ #define ERRORNOTINITIALIZED 7 /* key.active==false in DoSimulateRF; is only checked there !!! */ #define ERRORKEYNROUTOFRANGE 8 /* wrong keynr */ #define ERRORDECOMPOSITION 9 /* direct simulation; matrix inversion failed */ #define ERRORPRECISION 10 /* direct simulation; matrix inversion didn't reach the desired presicion */ #define ERRORRESCALING 11 /* attempt to rescale where not possible */ #define ERRORVARIOGRAMONLY 12 /* attempt to get the covariance whereas only the variogram is defined */ #define ERRORFOURIER 13 /* specific error in Fourier transformation */ #define ERRORCOVFAILED 14 /* covariance model not defined for specified parameters */ #define ERRORREGISTER 15 /* wrong register number */ #define ERRORCOORDINATES 16 /* coordinates are not given or invalid grid specification */ #define ERRORNEGATIVEVAR 17 #define ERRORPARAMNUMBER 18 #define ERRORDIM 19 /* dim<1 or dim>MAXDIM */ #define ERRORNEGATIVESCALE 20 #define ERRORWAVING 21 /* numerical determination of practical range fails */ #define ERRORWRONGINIT 22 /* dosimulate and initsimulate do not match */ #define ERRORNN 23 /* nn in TBM too large */ #define ERRORANISOTROPIC 24 /* trying to call anisotropic fct with isotropic parameters */ #define ERRORMETHODMIX 25 /* diff. methods for multiplication covariance */ #define ERRORTIMENOTANISO 26 /* if time is used then, anisotropic must be true */ #define ERRORNOMULTIPLICATION 27 /* method not allowed for multiplicative covariance functions*/ #define ERRORANISOMIX 28 /* diff. anisotropies for multiplication covariance and tbm */ #define ERRORISOTROPICMETHOD 29 /* TBM might be called only by isotropic functions */ #define ERRORTIMESEPARATE 30 /* last line of matrix */ #define ERRORUNKNOWNMETHOD 31 #define ERRORWITHOUTTIME 32 /* spatially isotropic covariance functions must always be called with a time component */ #define ERRORCOVNROUTOFRANGE 33 /* not allowed covariance number */ #define ERRORWRONGDIM 34 /* (tbm) dimension couldn't be reduced to be appropriate for the respective method */ #define ERRORNOTANISO 35 /* make sure that SPACEISOTROPIC and ANISOTROPIC covariance function are called by anisotropy definition */ #define ERRORDIMMISMATCH 36 /* logical dim does not match physical dim in the covariance function call */ #define ERRORTOOMANYPOINTS 37 /* two many points to determine smallest distance between within TBM! */ #define ERRORTIMENOTALLOWED 38 /* time component not allowed for the specified method */ #define ERRORCOVNUMERICAL 39 /* covariance function of derivative cannot be calculated exactly, e.g. in TBM2 */ #define ERRORMAXMEMORY 40 /* in circulant embedding: circulant vector too large */ #define ERRORTOOMANYLINES 41 /* Hyperplane tesselation: estimated simulated lines passes given threshold*/ #define ERRORANYLEFT 42 /* some covariances have not been simulated yet */ #define ERRORMETHODEXCLUDED 43 /* method explicitely excluded by other parameter; here: stationary_only=TRUE */ #define ERROROUTOFMETHODLIST 44 /* no further method we can try is available */ #define ERRORTBMCENTER 45 /* given values for TBM center contain NAs */ #define ERRORTBMPOINTS 46 /* given number of points is too small */ #define ERRORHYPERNR 47 /* no of announced submodels invalid */ #define ERRORHYPERMETHOD 48 /* no of announced submodels invalid */ #define ERRORHYPERNOTALLOWED 49 /* most methods do not allow for hypermodels yet */ #define ERRORNCOVOUTOFRANGE 50 /* number of cov. functions not in 0/1..MAXDIM*/ #define ERRORPARENTHESIS 51 /* parenthesis as operator iff isohypermodel */ #define ERRORMSG 52 /* parenthesis as operator iff isohypermodel */ #define ERRORTBMPOINTSZERO 53 /* linesimustep and linesimufactor are zero and TBM_POINTS<4 */ #define ERRORFULLRANK 54 /* anisotropy matrix does not have full rank, but needed in circ_embed_local */ #define ERRORTIMECOMPONENT 55 /* some hyper models need vanishing temporal component in the anisotropy matrix*/ #define ERRORLOWRANK 56 #define ERRORLOWRANKTBM 57 /* tbm does not allow that the matrix `a' of a product matrix are all zero */ #define ERRORHYPERNOTISO 58 /* only ISOTROPIC covariance models allowed for submodels of hypermodels */ #define NOERROR_REPEAT 97 #define NOERROR_ENDOFLIST 98 #define ERRORDUMMY 99 /* no error, only for tracing purposes */ #define ERRORSILLNULL 101 /* extremes : sill must be positive */ #define ERRORPAIRS 102 /* extremes : paired not allowed */ #define ERRORTREND 103 /* extremes: no trend allowed */ #define ERRORVARMEAN 201 /* Poisson distr.: mean<>variance */ /* do not use numbers 800 -- 900 : reserved to MPP package */ // messages and strategies for local methods // ENDOFLIST also used for any kind of error appearing in getparam // never change order of the message numbers up to ENDOFLIST #define MSGLOCAL_OK 300 #define MSGLOCAL_NUMOK 301 #define MSGLOCAL_JUSTTRY 302 #define MSGLOCAL_ENDOFLIST 303 #define MSGLOCAL_SIGNPHI 304 #define MSGLOCAL_SIGNPHIFST 305 #define MSGLOCAL_SIGNPHISND 306 #define MSGLOCAL_INITINTRINSIC 307 #define ERRORUNSPECIFIED 999 #endif