src/common/foldrec_net.c

00001 /*********************************************************
00002   foldrec_net.c
00003   --------------------------------------------------------
00004   generated at Sat Dec  3 19:59:20 2005
00005   by snns2c ( Bernward Kett 1995 ) 
00006 *********************************************************/
00007 
00008 #include <math.h>
00009 
00010 #define Act_Logistic(sum, bias)  ( (sum+bias<10000.0) ? ( 1.0/(1.0 + exp(-sum-bias) ) ) : 0.0 )
00011 #ifndef NULL
00012 #define NULL (void *)0
00013 #endif
00014 
00015 typedef struct UT {
00016           float act;         /* Activation       */
00017           float Bias;        /* Bias of the Unit */
00018           int   NoOfSources; /* Number of predecessor units */
00019    struct UT   **sources; /* predecessor units */
00020           float *weights; /* weights from predecessor units */
00021         } UnitType, *pUnit;
00022 
00023   /* Forward Declaration for all unit types */
00024   static UnitType Units[76];
00025   /* Sources definition section */
00026   static pUnit Sources[] =  {
00027 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00028 Units + 11, Units + 12, Units + 13, Units + 14, 
00029 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00030 Units + 11, Units + 12, Units + 13, Units + 14, 
00031 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00032 Units + 11, Units + 12, Units + 13, Units + 14, 
00033 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00034 Units + 11, Units + 12, Units + 13, Units + 14, 
00035 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00036 Units + 11, Units + 12, Units + 13, Units + 14, 
00037 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00038 Units + 11, Units + 12, Units + 13, Units + 14, 
00039 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00040 Units + 11, Units + 12, Units + 13, Units + 14, 
00041 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00042 Units + 11, Units + 12, Units + 13, Units + 14, 
00043 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00044 Units + 11, Units + 12, Units + 13, Units + 14, 
00045 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00046 Units + 11, Units + 12, Units + 13, Units + 14, 
00047 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00048 Units + 11, Units + 12, Units + 13, Units + 14, 
00049 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00050 Units + 11, Units + 12, Units + 13, Units + 14, 
00051 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00052 Units + 11, Units + 12, Units + 13, Units + 14, 
00053 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00054 Units + 11, Units + 12, Units + 13, Units + 14, 
00055 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00056 Units + 11, Units + 12, Units + 13, Units + 14, 
00057 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00058 Units + 11, Units + 12, Units + 13, Units + 14, 
00059 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00060 Units + 11, Units + 12, Units + 13, Units + 14, 
00061 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00062 Units + 11, Units + 12, Units + 13, Units + 14, 
00063 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00064 Units + 11, Units + 12, Units + 13, Units + 14, 
00065 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00066 Units + 11, Units + 12, Units + 13, Units + 14, 
00067 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00068 Units + 11, Units + 12, Units + 13, Units + 14, 
00069 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00070 Units + 11, Units + 12, Units + 13, Units + 14, 
00071 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00072 Units + 11, Units + 12, Units + 13, Units + 14, 
00073 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00074 Units + 11, Units + 12, Units + 13, Units + 14, 
00075 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00076 Units + 11, Units + 12, Units + 13, Units + 14, 
00077 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00078 Units + 11, Units + 12, Units + 13, Units + 14, 
00079 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00080 Units + 11, Units + 12, Units + 13, Units + 14, 
00081 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00082 Units + 11, Units + 12, Units + 13, Units + 14, 
00083 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00084 Units + 11, Units + 12, Units + 13, Units + 14, 
00085 Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, 
00086 Units + 11, Units + 12, Units + 13, Units + 14, 
00087 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00088 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00089 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00090 
00091 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00092 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00093 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00094 
00095 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00096 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00097 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00098 
00099 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00100 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00101 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00102 
00103 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00104 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00105 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00106 
00107 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00108 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00109 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00110 
00111 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00112 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00113 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00114 
00115 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00116 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00117 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00118 
00119 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00120 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00121 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00122 
00123 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00124 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00125 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00126 
00127 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00128 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00129 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00130 
00131 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00132 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00133 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00134 
00135 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00136 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00137 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00138 
00139 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00140 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00141 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00142 
00143 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00144 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00145 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00146 
00147 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00148 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00149 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00150 
00151 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00152 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00153 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00154 
00155 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00156 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00157 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00158 
00159 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00160 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00161 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00162 
00163 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00164 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00165 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00166 
00167 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00168 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00169 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00170 
00171 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00172 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00173 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00174 
00175 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00176 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00177 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00178 
00179 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00180 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00181 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00182 
00183 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00184 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00185 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00186 
00187 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00188 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00189 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00190 
00191 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00192 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00193 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00194 
00195 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00196 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00197 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00198 
00199 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00200 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00201 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00202 
00203 Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, 
00204 Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, 
00205 Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44, 
00206 
00207 Units + 45, Units + 46, Units + 47, Units + 48, Units + 49, Units + 50, Units + 51, Units + 52, Units + 53, Units + 54, 
00208 Units + 55, Units + 56, Units + 57, Units + 58, Units + 59, Units + 60, Units + 61, Units + 62, Units + 63, Units + 64, 
00209 Units + 65, Units + 66, Units + 67, Units + 68, Units + 69, Units + 70, Units + 71, Units + 72, Units + 73, Units + 74, 
00210 
00211 
00212   };
00213 
00214   /* Weigths definition section */
00215   static float Weights[] =  {
00216 0.107270, -0.164160, -0.136320, -0.065520, 1.049150, 0.455120, -0.515130, 0.420840, 0.491020, 0.147520, 
00217 -0.738600, -0.917330, -0.535290, -0.784130, 
00218 0.075240, -0.065190, -0.575750, 0.468780, -0.965500, 0.386430, -0.201710, -0.217430, 0.575120, -0.771790, 
00219 0.390690, 0.696280, 0.324680, 0.225050, 
00220 -0.476770, -0.212930, -0.063580, 0.330340, -0.327620, 0.343790, -0.886550, 0.359710, -0.668790, 1.001590, 
00221 -0.030260, 0.567880, 0.996150, -0.175360, 
00222 -0.753550, 0.876770, 0.481380, 0.474840, -0.870020, -0.004020, -0.416210, 0.430510, -0.632930, -0.337670, 
00223 0.088450, -0.918250, -0.509640, 0.258470, 
00224 0.294490, 0.400020, -0.339880, -0.437930, -0.112160, -0.648660, 0.217830, -0.641710, -0.692190, 0.638700, 
00225 -0.887160, 0.147890, -0.045510, 0.864540, 
00226 -0.747540, -0.531210, 0.202420, -0.224440, -0.785400, 0.190200, 0.763950, 0.099270, 0.700150, -0.735980, 
00227 -0.050930, 1.045750, -0.634410, 0.980900, 
00228 0.587420, 0.370640, -0.928080, -0.643920, -0.565660, 0.013380, 0.561280, 0.256740, 0.603140, 0.364160, 
00229 0.479640, 0.747770, 1.039460, 0.894630, 
00230 0.154070, -0.383820, 0.564490, -0.428950, 1.114200, 0.226930, 0.014110, 0.422600, 0.366140, -0.849430, 
00231 0.287690, 0.569280, 0.461440, -0.316540, 
00232 -0.892450, 0.903410, 0.087530, 0.321100, -0.339620, -0.840690, 0.065730, -1.304790, -0.835380, -0.875830, 
00233 0.084680, -0.052890, -1.000770, -0.312820, 
00234 -0.405750, -0.268600, -0.465390, 0.170800, 0.355280, -0.882990, -0.470810, 1.062070, 0.236040, -0.246770, 
00235 0.665150, -0.055110, -0.258230, 0.854040, 
00236 0.845960, -0.485270, 0.488030, -0.803690, 0.244700, 0.360940, 0.577130, -0.297070, 0.497370, 0.542710, 
00237 0.498160, -0.886440, 0.726570, 0.459880, 
00238 0.242350, -0.736060, 0.408320, -0.772160, -0.656110, -0.756940, -0.296810, 0.471530, -0.987190, 0.480130, 
00239 -0.218920, -0.762320, -0.662480, 0.275620, 
00240 0.781570, -0.701620, -0.118660, -0.715160, 0.313810, -0.383540, 0.309610, -0.787170, -0.917420, 0.756530, 
00241 -0.963090, 0.889950, -0.229550, 0.923750, 
00242 -0.052600, 0.435210, -0.121560, -0.190360, -0.624450, 0.106570, 0.946560, 0.064570, 0.443400, 0.415940, 
00243 0.609150, 0.971130, -0.654550, -0.145180, 
00244 -0.586340, 0.751390, 0.575760, -1.363860, -0.295680, -0.667040, -0.656490, 0.252620, 0.136200, 0.311010, 
00245 0.230030, -0.205900, 0.479490, 0.222910, 
00246 0.926090, 0.319060, 0.283510, 0.331270, 0.610370, -0.612970, 0.116520, 1.261890, 0.730150, -0.691920, 
00247 -0.921380, -0.116930, -0.419980, 0.628410, 
00248 -0.504570, 0.084350, -0.801260, 0.154210, -0.131850, -0.940920, 0.292260, 0.136990, 0.641820, 0.569360, 
00249 0.325650, 0.091260, 0.910550, -0.367760, 
00250 -0.102720, 0.367660, 0.463560, -0.001400, 0.874950, -0.929650, -0.459150, -0.612600, 0.696160, -0.410030, 
00251 -0.459910, -0.685060, -0.235840, -0.910890, 
00252 -0.054170, 0.941230, -0.215220, 0.904860, -0.185540, 0.194710, -0.808790, 0.339740, 0.378330, -0.709890, 
00253 -0.468300, 0.802750, 0.319080, 0.196520, 
00254 -0.259190, -0.663920, 0.125760, -0.582450, 0.881080, 0.729730, -0.087650, -0.860900, -0.769800, 0.220210, 
00255 0.170880, -0.713730, 0.426480, 0.784490, 
00256 -0.262460, 0.773770, -0.611700, -0.884100, 1.124450, 0.134230, 0.257480, 0.106300, 1.077260, -0.054460, 
00257 -0.461200, 0.647970, -0.613930, -0.689530, 
00258 0.964000, 0.345710, -0.929010, -0.431450, 0.286700, -0.937310, 0.102260, 0.955700, 0.207450, 0.982000, 
00259 -0.534410, 1.103020, 0.220290, 0.459530, 
00260 0.444810, -0.596300, -0.455970, 0.301190, 0.439580, -0.671380, 0.010680, -1.260000, 0.574320, 0.349150, 
00261 -0.896430, 0.031500, 0.260270, 0.264720, 
00262 -0.950610, -0.142430, -0.366160, -1.332760, 0.207160, -0.145750, 0.944950, 0.397310, 0.414120, -0.117570, 
00263 0.592140, 0.403170, 0.862060, 0.639900, 
00264 -0.779460, 0.358990, 0.192570, -1.307800, -0.478670, 0.198480, 0.638900, 0.453420, -0.962980, -0.080530, 
00265 -0.307160, 0.112440, 0.182550, -0.052900, 
00266 0.445950, 0.965380, -0.127770, -0.773880, 0.859620, 0.875960, 0.493390, 0.385870, -0.793280, 0.731850, 
00267 -0.895420, 0.141090, 0.843750, -0.567330, 
00268 0.406540, -0.361630, 0.657210, 0.373990, 1.000670, -0.290090, 0.697360, 0.500390, -0.718900, 0.974240, 
00269 -0.855110, 0.191000, -0.231270, 0.382570, 
00270 -0.251080, -0.464930, 0.660910, 0.189440, 1.225750, 0.436790, -0.740870, 0.285140, -0.571880, -0.703670, 
00271 -0.642730, 0.971980, 0.714030, 0.036760, 
00272 0.546880, 0.164380, 0.810100, -0.985740, -0.460790, -0.475500, -0.094990, 0.474170, -0.631350, -0.066680, 
00273 -0.038380, 0.324890, -0.875210, 0.179730, 
00274 -0.404790, 0.483550, -0.622740, -0.760090, 0.997740, 0.785800, 0.453500, -0.967970, 0.279320, -0.633510, 
00275 -0.710520, 0.421900, -0.998970, 0.982480, 
00276 -0.948170, -0.428990, 0.338310, -0.501610, -0.847170, -0.352530, -0.860360, -0.071910, -0.963230, 0.450800, 
00277 0.162880, -0.167310, -0.560600, 0.538810, -0.808640, 0.703520, -0.918850, -0.532920, -0.022150, -0.112750, 
00278 0.981900, 0.185820, 0.233370, -0.466870, -0.106080, -0.355110, -0.188080, 0.424720, 0.776610, 0.401560, 
00279 
00280 -0.978680, 0.180070, -0.743460, 1.094140, -0.039980, -0.529220, 0.420750, -1.465460, 0.064940, -0.158780, 
00281 -0.079070, 0.907650, 0.501870, 0.443600, 0.833510, 0.169740, 0.679890, -1.016110, -0.189340, 0.572650, 
00282 0.825770, -1.020720, 0.497290, 0.768450, -0.669270, -0.348530, 0.571640, -0.316310, -0.402110, 0.581700, 
00283 
00284 0.562880, 0.487450, -0.328600, -0.902910, -0.884170, -0.639560, -0.607740, -0.981400, -0.397050, -0.357370, 
00285 0.764270, -0.370990, 0.689210, 0.341380, 0.104330, 0.172620, -0.018240, -0.693290, -0.653460, -0.137580, 
00286 -0.364000, 0.708120, -0.699200, -0.400670, 0.594700, 0.866090, 0.121260, -0.683330, 0.400970, 0.321670, 
00287 
00288 0.803480, -0.771010, 0.719990, -0.702470, -0.455030, 0.082890, -0.614040, -0.406420, 0.349490, 0.617360, 
00289 -0.474440, 0.156780, 0.299420, -0.215260, -0.878420, 0.779710, -0.498080, 0.778160, -0.186950, -0.315030, 
00290 1.322850, -1.145590, 0.426330, -0.736130, -0.222890, 0.975300, -0.879030, -0.311950, 0.480120, -0.373850, 
00291 
00292 0.854310, -0.323210, -0.021330, -0.682620, 0.276450, 0.786110, 0.549920, -0.160290, -0.740160, -1.029030, 
00293 0.939270, 0.239680, -0.533630, -0.123110, -0.716070, -0.466000, 0.062610, -0.209690, 0.046530, -0.146230, 
00294 0.732390, -0.370080, 0.317430, -0.595860, 1.038600, 0.663460, -0.164840, -1.022630, -0.836580, 0.800960, 
00295 
00296 0.366100, -0.783870, 0.796080, 0.068610, 0.666550, 0.176380, 0.660200, 0.420580, 0.018600, -0.203760, 
00297 0.752430, -0.360590, -0.485680, -0.885590, -0.840130, 0.654670, -0.863170, 0.234900, 0.876110, -0.547200, 
00298 -0.137970, 0.792480, 0.777460, -0.129610, 0.809590, -0.553920, 0.660300, 0.095780, 0.927610, -0.628720, 
00299 
00300 0.687750, -0.177820, -0.080670, -0.819000, 0.033180, 0.414670, 0.803160, 0.859100, 0.084410, 0.982020, 
00301 -0.336050, -0.424020, 0.996280, 0.479300, 0.411460, -0.752620, -0.907850, 0.728410, 0.347130, 0.066560, 
00302 0.021480, -0.708580, 0.143780, 0.650620, -0.108520, -0.853500, 0.334540, -0.069610, 0.541100, 0.139850, 
00303 
00304 -0.334790, -0.818320, -0.558810, 1.088480, -0.005380, -0.655010, 0.028260, -1.047610, -0.312660, -0.388900, 
00305 -0.753760, 1.024700, 0.260240, 0.003330, 0.849790, 0.744890, 1.094480, -0.143600, -0.224940, -0.308310, 
00306 1.381640, -0.527680, 1.305070, 0.631980, 0.720260, 0.480280, -1.034980, -0.765360, 0.540980, -0.521790, 
00307 
00308 -0.536190, -0.403040, -0.001680, -0.770890, 0.778800, -0.577470, -0.711960, -0.548730, -0.590670, -0.028660, 
00309 0.531950, -0.765810, -0.262920, -1.025560, -0.981750, 0.425490, 0.047060, 0.106150, -0.955010, -0.063230, 
00310 -0.552810, -0.395780, 0.152650, 0.153910, 0.957710, 0.619910, -0.226630, 0.712600, 0.939280, -0.166990, 
00311 
00312 -0.865690, 0.034440, 0.540990, 0.140160, 0.336540, -0.327560, -0.402720, 0.262250, -0.163800, -1.023860, 
00313 -0.597410, -0.607240, -0.800230, 0.865860, 1.029950, 0.066230, -0.250060, -1.096000, 0.203780, 0.211810, 
00314 0.085790, -1.316940, 1.090380, 1.035080, -0.012460, -0.994420, -0.333640, -0.531900, 0.857360, -0.214510, 
00315 
00316 -0.113920, 0.033230, -0.494010, 1.027200, 0.316760, -0.198670, -0.312460, -0.394090, 0.635760, 0.241600, 
00317 -0.956040, -0.325630, -0.804680, 0.050640, -0.114220, 0.500480, -0.156470, -1.030490, -0.854680, -0.855230, 
00318 -0.478070, -0.351940, 0.954300, 0.571890, 1.191490, -0.180810, -0.688580, -0.232530, -0.253430, -0.472120, 
00319 
00320 0.311680, 0.021640, 0.163470, -0.090110, 0.187440, -0.652620, -1.047950, 0.104150, 0.947560, -0.571260, 
00321 -0.153510, -0.895950, 0.032420, 0.510300, -0.592820, -0.072190, 0.885240, -0.322920, 0.188220, 0.072430, 
00322 0.110830, -0.043330, -0.202100, -0.145190, 0.739360, -0.453270, 0.777380, -0.687890, 0.761660, 0.515370, 
00323 
00324 0.085720, 0.187900, -0.816080, -0.026140, -0.835720, 0.502990, 0.786620, -0.518290, 0.569630, -0.653660, 
00325 0.088910, 0.764280, 0.948630, 0.856920, 0.798940, 0.392180, -0.776690, -0.215920, -0.383040, -0.503570, 
00326 -0.285350, -0.360810, -0.842410, -0.662470, -0.517840, -0.788320, 0.232270, -0.063010, -0.834520, -0.458600, 
00327 
00328 0.453510, -0.331140, -0.355800, -0.980370, -0.308140, 0.619480, -0.465500, 0.251190, 0.504670, 1.050760, 
00329 -0.587300, 0.611770, -0.235230, 0.260460, -0.150890, 0.251800, 0.152890, -0.159770, -0.526740, -0.587970, 
00330 -1.195420, 0.821950, -1.285400, 0.320210, -0.638920, -0.603840, -0.172270, 0.835670, -0.402670, -0.139670, 
00331 
00332 0.182000, -0.756170, -0.357330, -1.077940, -0.984730, 0.267590, 1.002560, -0.779410, -0.422610, -0.399430, 
00333 0.363950, -0.365620, -0.508180, 0.689950, -0.026070, -0.389190, 0.561430, 1.007260, -0.174860, 0.086630, 
00334 0.780660, -0.116790, 0.794850, 0.565420, -0.059130, -0.746330, 0.139140, 0.545860, 0.577830, -0.077520, 
00335 
00336 0.739340, 0.542070, -0.939670, 0.565080, 0.478230, -0.682030, -0.255650, -0.876600, 0.763870, 0.497910, 
00337 -0.399410, 0.830520, 0.025240, -0.890460, 0.925800, 0.874110, -0.145870, 0.330480, -0.179740, 0.579590, 
00338 1.392570, 0.136550, 0.088220, 0.564890, 0.830540, 0.323790, 0.600410, 0.529800, -0.230960, -0.059410, 
00339 
00340 0.553350, 0.836240, 0.823910, -1.004210, 0.088810, -0.117830, 0.596420, 0.234290, -0.284650, -0.073530, 
00341 0.496810, -0.762430, 0.034680, -0.827240, 0.271650, 0.134460, -0.547130, -0.003810, 0.360990, -0.287350, 
00342 -0.269620, 0.867070, 0.766480, -0.708870, 0.232390, 0.209010, 0.459080, -0.896220, -0.915960, -0.576100, 
00343 
00344 0.689480, -0.869220, -0.989090, 0.218780, 0.716220, -0.515810, 0.310560, 1.052730, -0.159380, 1.191420, 
00345 -0.981060, -0.745960, 0.292020, 0.585970, -1.064870, -1.369840, 0.553740, 0.709680, -0.443690, 0.877060, 
00346 0.515590, 0.364960, -0.153220, 0.083370, 0.400720, 0.475120, 0.205730, -0.065530, -0.603540, 0.894950, 
00347 
00348 0.112750, 1.008690, -0.740940, -0.541610, -0.897430, 0.797870, -0.226990, -0.018110, 0.151660, -1.072920, 
00349 0.883600, -0.361300, -0.786770, 0.831480, 0.372770, -0.663310, -0.292030, -0.465350, -0.462770, -0.362840, 
00350 0.940270, -0.152940, -0.466990, 0.594740, 0.974970, 0.898120, 0.675920, -1.066040, -0.747200, 0.309250, 
00351 
00352 0.378930, 0.697640, -0.370970, 1.546690, 0.958720, 0.045920, 0.183820, -0.198950, 0.219410, -1.550120, 
00353 -0.612540, 1.041380, -0.955790, -0.715510, 0.516310, 0.390760, 0.272130, 0.102170, -0.702860, -0.089550, 
00354 1.066000, -0.838800, 1.099510, 0.574840, 0.599910, -0.868910, 0.225760, 0.402070, 0.756910, 0.605010, 
00355 
00356 -1.076900, 0.113530, 0.304470, 0.454930, 0.348460, -0.196320, -0.564060, -1.161590, -0.549430, 0.034410, 
00357 -0.756710, 1.085580, -0.278170, 0.378260, 0.171930, 0.674680, 1.017100, -0.145770, -0.868090, -0.539750, 
00358 0.729780, 0.605370, -0.407040, -0.332400, 0.061880, -0.719000, 0.082990, -0.470590, -0.390210, 0.071710, 
00359 
00360 0.961600, -0.819640, -1.044170, -0.925550, 0.272930, 0.381240, 0.577140, 0.459980, -0.730010, 0.221150, 
00361 0.446410, -0.165650, 0.349530, -0.258580, -0.600080, -0.872440, -0.331360, 0.578720, 0.772570, 0.259600, 
00362 -0.914660, 1.108410, -0.468870, 0.288900, 0.663790, 0.379450, 0.848800, -0.673640, 0.351980, 0.648490, 
00363 
00364 -0.844280, -0.934950, -0.437550, -0.925830, 0.640130, -0.119330, -0.400890, 1.077510, 0.764460, -0.415790, 
00365 0.567190, 0.645220, 0.031150, 0.851050, -0.864690, 0.824530, -0.573210, -0.841440, -0.582000, 0.478490, 
00366 -0.337730, 0.412840, 0.251330, 0.951070, 0.097760, -0.392820, 0.632640, 0.784760, 0.521520, -0.605740, 
00367 
00368 -0.722490, 0.020140, -0.090410, -0.326370, 0.080550, -0.386860, -0.756500, -0.586470, -0.491590, 0.635930, 
00369 0.307500, -0.649400, -0.397480, -0.336210, 0.319210, 0.294000, -0.833310, 0.476620, -0.099150, -0.327710, 
00370 -0.571220, -0.561090, -0.133000, -0.134220, -0.836610, 0.929120, 0.449800, -0.750270, -0.307630, 0.212430, 
00371 
00372 -0.882140, 0.979750, 0.145660, -0.722480, -0.189840, -0.115740, 0.839300, 0.961380, 0.626020, 0.643470, 
00373 -0.434640, 0.532580, -0.667040, -0.285570, -0.635100, 0.429790, 0.965340, -0.464790, 0.598110, -0.956820, 
00374 -0.621860, 0.872390, 0.373020, -0.371800, -0.457660, 0.509450, 1.001450, 0.490680, 0.955580, 0.201760, 
00375 
00376 0.881410, 0.386480, 0.592570, -1.220630, 0.967770, 0.972010, -0.437030, -0.136090, -0.770670, 1.228310, 
00377 -0.251350, 0.077490, -0.009390, -0.148850, -0.951900, -0.139440, -0.774420, 0.036620, 0.554030, 0.755530, 
00378 0.352260, -0.425280, -0.416650, -0.940230, 0.486960, 0.166200, -0.746800, -0.339830, -0.852140, 0.955140, 
00379 
00380 0.120290, 0.304600, -0.224170, -0.383760, 0.777870, 0.814530, -0.409490, 0.551050, 0.153320, 0.563820, 
00381 0.222760, -0.602520, 0.295300, -1.025220, -0.903580, 0.039420, -0.250090, 0.959820, 0.516630, 0.835180, 
00382 -0.569350, 0.583940, 0.523270, -0.722180, -0.982800, 0.695820, -0.297100, -0.656920, 0.612830, -0.265490, 
00383 
00384 0.743050, 0.492330, 0.649410, 0.613540, 0.625210, 0.942920, -0.550870, 0.685820, -0.921560, 0.159470, 
00385 0.776200, 0.217860, -0.978880, 0.458050, 0.513710, 0.009570, 0.749920, 0.138670, -0.084910, -0.421240, 
00386 -0.531510, -0.379990, -0.617540, 0.713880, -0.218630, -0.151640, -0.623430, -0.002680, 0.629670, 0.679390, 
00387 
00388 1.100480, -0.064450, 0.628220, -1.686150, 0.663850, -0.232420, 0.767730, 1.313670, -0.143740, -0.454910, 
00389 0.230920, 0.386920, -0.399240, 0.661670, 0.322730, 0.568940, -0.462440, -0.055030, -0.771530, -0.776600, 
00390 -0.907740, -0.431560, 0.038050, -0.856610, -0.752320, -0.732000, 1.028190, -0.187870, 0.432540, 0.050370, 
00391 
00392 -0.567800, -0.565170, 0.086240, -1.017290, -0.209190, -0.693680, -0.247480, 0.898930, 0.684210, 1.165810, 
00393 0.246330, 0.323560, -0.882110, 0.345170, 0.732230, -0.493190, 0.228470, -0.737650, -0.464230, 0.515000, 
00394 0.718350, 0.837580, 0.585750, -0.412440, 0.577420, -0.391220, -0.140800, -0.478640, -0.580550, 0.761380, 
00395 
00396 0.150670, 2.083100, 0.048350, 1.125220, 1.141030, -0.265200, -0.961960, 2.856480, -0.842450, 1.690350, 
00397 1.428290, 0.314200, 0.648420, -1.881640, -0.019240, 1.363400, -1.064080, -2.011490, 1.078470, 2.424070, 
00398 1.191660, -2.017600, -0.614870, 0.255370, 0.381000, -1.702330, -1.298260, -1.083640, -1.697020, -0.628480, 
00399 
00400 
00401   };
00402 
00403   /* unit definition section (see also UnitType) */
00404   static UnitType Units[76] = 
00405   {
00406     { 0.0, 0.0, 0, NULL , NULL },
00407     { /* unit 1 (unit) */
00408       0.0, 0.207070, 0,
00409        &Sources[0] , 
00410        &Weights[0] , 
00411       },
00412     { /* unit 2 (unit) */
00413       0.0, -0.680970, 0,
00414        &Sources[0] , 
00415        &Weights[0] , 
00416       },
00417     { /* unit 3 (unit) */
00418       0.0, 0.293330, 0,
00419        &Sources[0] , 
00420        &Weights[0] , 
00421       },
00422     { /* unit 4 (unit) */
00423       0.0, 0.106830, 0,
00424        &Sources[0] , 
00425        &Weights[0] , 
00426       },
00427     { /* unit 5 (unit) */
00428       0.0, 0.362610, 0,
00429        &Sources[0] , 
00430        &Weights[0] , 
00431       },
00432     { /* unit 6 (unit) */
00433       0.0, -0.772860, 0,
00434        &Sources[0] , 
00435        &Weights[0] , 
00436       },
00437     { /* unit 7 (unit) */
00438       0.0, 0.968830, 0,
00439        &Sources[0] , 
00440        &Weights[0] , 
00441       },
00442     { /* unit 8 (unit) */
00443       0.0, -0.168180, 0,
00444        &Sources[0] , 
00445        &Weights[0] , 
00446       },
00447     { /* unit 9 (unit) */
00448       0.0, 0.681260, 0,
00449        &Sources[0] , 
00450        &Weights[0] , 
00451       },
00452     { /* unit 10 (unit) */
00453       0.0, 0.232570, 0,
00454        &Sources[0] , 
00455        &Weights[0] , 
00456       },
00457     { /* unit 11 (unit) */
00458       0.0, -0.382010, 0,
00459        &Sources[0] , 
00460        &Weights[0] , 
00461       },
00462     { /* unit 12 (unit) */
00463       0.0, 0.882280, 0,
00464        &Sources[0] , 
00465        &Weights[0] , 
00466       },
00467     { /* unit 13 (unit) */
00468       0.0, -0.799710, 0,
00469        &Sources[0] , 
00470        &Weights[0] , 
00471       },
00472     { /* unit 14 (unit) */
00473       0.0, 0.672910, 0,
00474        &Sources[0] , 
00475        &Weights[0] , 
00476       },
00477     { /* unit 15 (unit) */
00478       0.0, 0.679310, 14,
00479        &Sources[0] , 
00480        &Weights[0] , 
00481       },
00482     { /* unit 16 (unit) */
00483       0.0, 0.994490, 14,
00484        &Sources[14] , 
00485        &Weights[14] , 
00486       },
00487     { /* unit 17 (unit) */
00488       0.0, -0.285770, 14,
00489        &Sources[28] , 
00490        &Weights[28] , 
00491       },
00492     { /* unit 18 (unit) */
00493       0.0, 0.590930, 14,
00494        &Sources[42] , 
00495        &Weights[42] , 
00496       },
00497     { /* unit 19 (unit) */
00498       0.0, 0.542600, 14,
00499        &Sources[56] , 
00500        &Weights[56] , 
00501       },
00502     { /* unit 20 (unit) */
00503       0.0, -0.825200, 14,
00504        &Sources[70] , 
00505        &Weights[70] , 
00506       },
00507     { /* unit 21 (unit) */
00508       0.0, -0.629630, 14,
00509        &Sources[84] , 
00510        &Weights[84] , 
00511       },
00512     { /* unit 22 (unit) */
00513       0.0, 0.513180, 14,
00514        &Sources[98] , 
00515        &Weights[98] , 
00516       },
00517     { /* unit 23 (unit) */
00518       0.0, 0.891720, 14,
00519        &Sources[112] , 
00520        &Weights[112] , 
00521       },
00522     { /* unit 24 (unit) */
00523       0.0, -0.708560, 14,
00524        &Sources[126] , 
00525        &Weights[126] , 
00526       },
00527     { /* unit 25 (unit) */
00528       0.0, -0.682760, 14,
00529        &Sources[140] , 
00530        &Weights[140] , 
00531       },
00532     { /* unit 26 (unit) */
00533       0.0, -0.097490, 14,
00534        &Sources[154] , 
00535        &Weights[154] , 
00536       },
00537     { /* unit 27 (unit) */
00538       0.0, -0.514100, 14,
00539        &Sources[168] , 
00540        &Weights[168] , 
00541       },
00542     { /* unit 28 (unit) */
00543       0.0, 0.247180, 14,
00544        &Sources[182] , 
00545        &Weights[182] , 
00546       },
00547     { /* unit 29 (unit) */
00548       0.0, 0.786220, 14,
00549        &Sources[196] , 
00550        &Weights[196] , 
00551       },
00552     { /* unit 30 (unit) */
00553       0.0, -0.734680, 14,
00554        &Sources[210] , 
00555        &Weights[210] , 
00556       },
00557     { /* unit 31 (unit) */
00558       0.0, 0.253670, 14,
00559        &Sources[224] , 
00560        &Weights[224] , 
00561       },
00562     { /* unit 32 (unit) */
00563       0.0, 0.875700, 14,
00564        &Sources[238] , 
00565        &Weights[238] , 
00566       },
00567     { /* unit 33 (unit) */
00568       0.0, 0.041220, 14,
00569        &Sources[252] , 
00570        &Weights[252] , 
00571       },
00572     { /* unit 34 (unit) */
00573       0.0, -0.970330, 14,
00574        &Sources[266] , 
00575        &Weights[266] , 
00576       },
00577     { /* unit 35 (unit) */
00578       0.0, -0.159950, 14,
00579        &Sources[280] , 
00580        &Weights[280] , 
00581       },
00582     { /* unit 36 (unit) */
00583       0.0, -0.528820, 14,
00584        &Sources[294] , 
00585        &Weights[294] , 
00586       },
00587     { /* unit 37 (unit) */
00588       0.0, -0.183700, 14,
00589        &Sources[308] , 
00590        &Weights[308] , 
00591       },
00592     { /* unit 38 (unit) */
00593       0.0, 0.005150, 14,
00594        &Sources[322] , 
00595        &Weights[322] , 
00596       },
00597     { /* unit 39 (unit) */
00598       0.0, -0.805920, 14,
00599        &Sources[336] , 
00600        &Weights[336] , 
00601       },
00602     { /* unit 40 (unit) */
00603       0.0, 0.805070, 14,
00604        &Sources[350] , 
00605        &Weights[350] , 
00606       },
00607     { /* unit 41 (unit) */
00608       0.0, 0.107800, 14,
00609        &Sources[364] , 
00610        &Weights[364] , 
00611       },
00612     { /* unit 42 (unit) */
00613       0.0, 0.170030, 14,
00614        &Sources[378] , 
00615        &Weights[378] , 
00616       },
00617     { /* unit 43 (unit) */
00618       0.0, -0.501920, 14,
00619        &Sources[392] , 
00620        &Weights[392] , 
00621       },
00622     { /* unit 44 (unit) */
00623       0.0, 0.011420, 14,
00624        &Sources[406] , 
00625        &Weights[406] , 
00626       },
00627     { /* unit 45 (unit) */
00628       0.0, 0.809820, 30,
00629        &Sources[420] , 
00630        &Weights[420] , 
00631       },
00632     { /* unit 46 (unit) */
00633       0.0, -0.002860, 30,
00634        &Sources[450] , 
00635        &Weights[450] , 
00636       },
00637     { /* unit 47 (unit) */
00638       0.0, -0.557130, 30,
00639        &Sources[480] , 
00640        &Weights[480] , 
00641       },
00642     { /* unit 48 (unit) */
00643       0.0, -0.088530, 30,
00644        &Sources[510] , 
00645        &Weights[510] , 
00646       },
00647     { /* unit 49 (unit) */
00648       0.0, -0.406610, 30,
00649        &Sources[540] , 
00650        &Weights[540] , 
00651       },
00652     { /* unit 50 (unit) */
00653       0.0, -0.684450, 30,
00654        &Sources[570] , 
00655        &Weights[570] , 
00656       },
00657     { /* unit 51 (unit) */
00658       0.0, -0.216490, 30,
00659        &Sources[600] , 
00660        &Weights[600] , 
00661       },
00662     { /* unit 52 (unit) */
00663       0.0, -0.394950, 30,
00664        &Sources[630] , 
00665        &Weights[630] , 
00666       },
00667     { /* unit 53 (unit) */
00668       0.0, -0.116840, 30,
00669        &Sources[660] , 
00670        &Weights[660] , 
00671       },
00672     { /* unit 54 (unit) */
00673       0.0, 0.526480, 30,
00674        &Sources[690] , 
00675        &Weights[690] , 
00676       },
00677     { /* unit 55 (unit) */
00678       0.0, -0.458810, 30,
00679        &Sources[720] , 
00680        &Weights[720] , 
00681       },
00682     { /* unit 56 (unit) */
00683       0.0, 0.069150, 30,
00684        &Sources[750] , 
00685        &Weights[750] , 
00686       },
00687     { /* unit 57 (unit) */
00688       0.0, -0.197610, 30,
00689        &Sources[780] , 
00690        &Weights[780] , 
00691       },
00692     { /* unit 58 (unit) */
00693       0.0, 0.622730, 30,
00694        &Sources[810] , 
00695        &Weights[810] , 
00696       },
00697     { /* unit 59 (unit) */
00698       0.0, -0.813820, 30,
00699        &Sources[840] , 
00700        &Weights[840] , 
00701       },
00702     { /* unit 60 (unit) */
00703       0.0, 0.084230, 30,
00704        &Sources[870] , 
00705        &Weights[870] , 
00706       },
00707     { /* unit 61 (unit) */
00708       0.0, -0.710190, 30,
00709        &Sources[900] , 
00710        &Weights[900] , 
00711       },
00712     { /* unit 62 (unit) */
00713       0.0, 0.227560, 30,
00714        &Sources[930] , 
00715        &Weights[930] , 
00716       },
00717     { /* unit 63 (unit) */
00718       0.0, -0.547650, 30,
00719        &Sources[960] , 
00720        &Weights[960] , 
00721       },
00722     { /* unit 64 (unit) */
00723       0.0, 0.771360, 30,
00724        &Sources[990] , 
00725        &Weights[990] , 
00726       },
00727     { /* unit 65 (unit) */
00728       0.0, -0.912940, 30,
00729        &Sources[1020] , 
00730        &Weights[1020] , 
00731       },
00732     { /* unit 66 (unit) */
00733       0.0, 0.787980, 30,
00734        &Sources[1050] , 
00735        &Weights[1050] , 
00736       },
00737     { /* unit 67 (unit) */
00738       0.0, -0.610670, 30,
00739        &Sources[1080] , 
00740        &Weights[1080] , 
00741       },
00742     { /* unit 68 (unit) */
00743       0.0, 0.367660, 30,
00744        &Sources[1110] , 
00745        &Weights[1110] , 
00746       },
00747     { /* unit 69 (unit) */
00748       0.0, -0.712440, 30,
00749        &Sources[1140] , 
00750        &Weights[1140] , 
00751       },
00752     { /* unit 70 (unit) */
00753       0.0, 0.074810, 30,
00754        &Sources[1170] , 
00755        &Weights[1170] , 
00756       },
00757     { /* unit 71 (unit) */
00758       0.0, 0.060600, 30,
00759        &Sources[1200] , 
00760        &Weights[1200] , 
00761       },
00762     { /* unit 72 (unit) */
00763       0.0, -0.814790, 30,
00764        &Sources[1230] , 
00765        &Weights[1230] , 
00766       },
00767     { /* unit 73 (unit) */
00768       0.0, -0.284370, 30,
00769        &Sources[1260] , 
00770        &Weights[1260] , 
00771       },
00772     { /* unit 74 (unit) */
00773       0.0, 0.413600, 30,
00774        &Sources[1290] , 
00775        &Weights[1290] , 
00776       },
00777     { /* unit 75 (unit) */
00778       0.0, 0.759860, 30,
00779        &Sources[1320] , 
00780        &Weights[1320] , 
00781       }
00782 
00783   };
00784 
00785 
00786 
00787 int foldrec_net(float *in, float *out, int init)
00788 {
00789   int member, source;
00790   float sum;
00791   enum{OK, Error, Not_Valid};
00792   pUnit unit;
00793 
00794 
00795   /* layer definition section (names & member units) */
00796 
00797   static pUnit Input[14] = {Units + 1, Units + 2, Units + 3, Units + 4, Units + 5, Units + 6, Units + 7, Units + 8, Units + 9, Units + 10, Units + 11, Units + 12, Units + 13, Units + 14}; /* members */
00798 
00799   static pUnit Hidden1[30] = {Units + 15, Units + 16, Units + 17, Units + 18, Units + 19, Units + 20, Units + 21, Units + 22, Units + 23, Units + 24, Units + 25, Units + 26, Units + 27, Units + 28, Units + 29, Units + 30, Units + 31, Units + 32, Units + 33, Units + 34, Units + 35, Units + 36, Units + 37, Units + 38, Units + 39, Units + 40, Units + 41, Units + 42, Units + 43, Units + 44}; /* members */
00800 
00801   static pUnit Hidden2[30] = {Units + 45, Units + 46, Units + 47, Units + 48, Units + 49, Units + 50, Units + 51, Units + 52, Units + 53, Units + 54, Units + 55, Units + 56, Units + 57, Units + 58, Units + 59, Units + 60, Units + 61, Units + 62, Units + 63, Units + 64, Units + 65, Units + 66, Units + 67, Units + 68, Units + 69, Units + 70, Units + 71, Units + 72, Units + 73, Units + 74}; /* members */
00802 
00803   static pUnit Output1[1] = {Units + 75}; /* members */
00804 
00805   static int Output[1] = {75};
00806 
00807   for(member = 0; member < 14; member++) {
00808     Input[member]->act = in[member];
00809   }
00810 
00811   for (member = 0; member < 30; member++) {
00812     unit = Hidden1[member];
00813     sum = 0.0;
00814     for (source = 0; source < unit->NoOfSources; source++) {
00815       sum += unit->sources[source]->act
00816              * unit->weights[source];
00817     }
00818     unit->act = Act_Logistic(sum, unit->Bias);
00819   };
00820 
00821   for (member = 0; member < 30; member++) {
00822     unit = Hidden2[member];
00823     sum = 0.0;
00824     for (source = 0; source < unit->NoOfSources; source++) {
00825       sum += unit->sources[source]->act
00826              * unit->weights[source];
00827     }
00828     unit->act = Act_Logistic(sum, unit->Bias);
00829   };
00830 
00831   for (member = 0; member < 1; member++) {
00832     unit = Output1[member];
00833     sum = 0.0;
00834     for (source = 0; source < unit->NoOfSources; source++) {
00835       sum += unit->sources[source]->act
00836              * unit->weights[source];
00837     }
00838     unit->act = Act_Logistic(sum, unit->Bias);
00839   };
00840 
00841   for(member = 0; member < 1; member++) {
00842     out[member] = Units[Output[member]].act;
00843   }
00844 
00845   return(OK);
00846 }

Generated on Wed Apr 11 16:50:49 2007 for open_prospect by  doxygen 1.4.6