00001
00027 #ifndef WindAzimuth_H
00028 #define WindAzimuth_H
00029
00030 #include <stdlib.h>
00031 #include <math.h>
00032
00033 #include "NLIBRand.h"
00034 #include "FireProp.h"
00035 #include "ChHashTable.h"
00036 #include "KeyVal.h"
00037 #include "DblTwoDArray.h"
00038 #include "FStreamIO.h"
00039 #include "Err.h"
00040
00041
00042
00043
00044
00045
00046
00047 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00048
00049
00050 #define WIND_AZIMUTH_WAZ_COMMENT_CHAR ("#")
00051 #define WIND_AZIMUTH_SEP_CHARS (" =,;\t")
00052
00053
00054 #define WIND_AZIMUTH_YR_WAZ_TBL_INDEX (0)
00055 #define WIND_AZIMUTH_MO_WAZ_TBL_INDEX (1)
00056 #define WIND_AZIMUTH_DY_WAZ_TBL_INDEX (2)
00057
00058
00059 #define WIND_AZIMUTH_WAZ_NO_DATA_VALUE (-1)
00060
00061
00062 #define WIND_AZIMUTH_RANDU_MIN_AZ (0.0)
00063 #define WIND_AZIMUTH_RANDU_MAX_AZ (360.0)
00064
00065 #endif
00066
00067
00068
00069
00070
00071
00072
00073
00074
00075
00076
00077
00078
00079 #ifndef DOXYGEN_SHOULD_SKIP_THIS
00080
00081
00082 #define WIND_AZIMUTH_HR_TO_WAZ_TBL_INDEX(hour) ((hour) + 3)
00083
00084 #endif
00085
00086
00087
00088
00089
00090
00091
00117 int GetWindAzimuthFIXEDFromProps(ChHashTable * proptbl, int month, int day, int hour,
00118 unsigned int row, unsigned int col, double * waz);
00119
00144 int GetWindAzimuthRANDUFromProps(ChHashTable * proptbl, int month, int day, int hour,
00145 unsigned int row, unsigned int col, double * waz);
00146
00175 int GetWindAzimuthRANDHFromProps(ChHashTable * proptbl, int month, int day, int hour,
00176 unsigned int row, unsigned int col, double * waz);
00177
00200 int GetWindAzimuthSPATIALFromProps(ChHashTable * proptbl, int month, int day, int hour,
00201 unsigned int row, unsigned int col, double * waz);
00202
00203 #endif WindAzimuth_H