numerix_doc 0.4
|
00001 00002 #include <basix/double.hpp> 00003 #include <numerix/integer.hpp> 00004 #include <numerix/rational.hpp> 00005 #include <numerix/complex.hpp> 00006 #include <numerix/complex_double.hpp> 00007 #include <numerix/ball.hpp> 00008 #include <numerix/ball_complex.hpp> 00009 #include <basix/glue.hpp> 00010 00011 #define double_literal(x) as_double (as_string (x)) 00012 00013 namespace mmx { 00014 static mmx_ball(double, double) 00015 GLUE_1 (const double &arg_1) { 00016 return make_mmx_ball (arg_1); 00017 } 00018 00019 static mmx_ball(double, double) 00020 GLUE_2 (const double &arg_1, const double &arg_2) { 00021 return make_mmx_ball (arg_1, arg_2); 00022 } 00023 00024 static mmx_ball(double, double) 00025 GLUE_3 (const double &arg_1) { 00026 return make_mmx_ball (arg_1); 00027 } 00028 00029 static double 00030 GLUE_4 (const mmx_ball(double, double) &arg_1) { 00031 return center (arg_1); 00032 } 00033 00034 static double 00035 GLUE_5 (const mmx_ball(double, double) &arg_1) { 00036 return mmx_radius (arg_1); 00037 } 00038 00039 static mmx_ball(double, double) 00040 GLUE_6 (const mmx_ball(double, double) &arg_1) { 00041 return sharpen (arg_1); 00042 } 00043 00044 static mmx_ball(double, double) 00045 GLUE_7 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00046 return blur (arg_1, arg_2); 00047 } 00048 00049 static bool 00050 GLUE_8 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00051 return included (arg_1, arg_2); 00052 } 00053 00054 static mmx_ball(double, double) 00055 GLUE_9 (const mmx_ball(double, double) &arg_1) { 00056 return -arg_1; 00057 } 00058 00059 static mmx_ball(double, double) 00060 GLUE_10 (const mmx_ball(double, double) &arg_1) { 00061 return square (arg_1); 00062 } 00063 00064 static mmx_ball(double, double) 00065 GLUE_11 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00066 return arg_1 + arg_2; 00067 } 00068 00069 static mmx_ball(double, double) 00070 GLUE_12 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00071 return arg_1 - arg_2; 00072 } 00073 00074 static mmx_ball(double, double) 00075 GLUE_13 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00076 return arg_1 * arg_2; 00077 } 00078 00079 static mmx_ball(double, double) 00080 GLUE_14 (const double &arg_1, const mmx_ball(double, double) &arg_2) { 00081 return arg_1 + arg_2; 00082 } 00083 00084 static mmx_ball(double, double) 00085 GLUE_15 (const mmx_ball(double, double) &arg_1, const double &arg_2) { 00086 return arg_1 + arg_2; 00087 } 00088 00089 static mmx_ball(double, double) 00090 GLUE_16 (const double &arg_1, const mmx_ball(double, double) &arg_2) { 00091 return arg_1 - arg_2; 00092 } 00093 00094 static mmx_ball(double, double) 00095 GLUE_17 (const mmx_ball(double, double) &arg_1, const double &arg_2) { 00096 return arg_1 - arg_2; 00097 } 00098 00099 static mmx_ball(double, double) 00100 GLUE_18 (const double &arg_1, const mmx_ball(double, double) &arg_2) { 00101 return arg_1 * arg_2; 00102 } 00103 00104 static mmx_ball(double, double) 00105 GLUE_19 (const mmx_ball(double, double) &arg_1, const double &arg_2) { 00106 return arg_1 * arg_2; 00107 } 00108 00109 static mmx_ball(double, double) 00110 GLUE_20 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00111 return arg_1 / arg_2; 00112 } 00113 00114 static mmx_ball(double, double) 00115 GLUE_21 (const mmx_ball(double, double) &arg_1, const double &arg_2) { 00116 return arg_1 / arg_2; 00117 } 00118 00119 static mmx_ball(double, double) 00120 GLUE_22 (const double &arg_1, const mmx_ball(double, double) &arg_2) { 00121 return arg_1 / arg_2; 00122 } 00123 00124 static bool 00125 GLUE_23 (const mmx_ball(double, double) &arg_1) { 00126 return is_finite (arg_1); 00127 } 00128 00129 static bool 00130 GLUE_24 (const mmx_ball(double, double) &arg_1) { 00131 return is_infinite (arg_1); 00132 } 00133 00134 static bool 00135 GLUE_25 (const mmx_ball(double, double) &arg_1) { 00136 return is_nan (arg_1); 00137 } 00138 00139 static mmx_ball(double, double) 00140 GLUE_26 (const mmx_ball(double, double) &arg_1) { 00141 return times_infinity (arg_1); 00142 } 00143 00144 static int 00145 GLUE_27 (const mmx_ball(double, double) &arg_1) { 00146 return precision (arg_1); 00147 } 00148 00149 static int 00150 GLUE_28 (const mmx_ball(double, double) &arg_1) { 00151 return exponent (arg_1); 00152 } 00153 00154 static double 00155 GLUE_29 (const mmx_ball(double, double) &arg_1) { 00156 return magnitude (arg_1); 00157 } 00158 00159 static mmx_ball(double, double) 00160 GLUE_30 (const mmx_ball(double, double) &arg_1, const int &arg_2) { 00161 return incexp2 (arg_1, arg_2); 00162 } 00163 00164 static mmx_ball(double, double) 00165 GLUE_31 (const mmx_ball(double, double) &arg_1, const int &arg_2) { 00166 return decexp2 (arg_1, arg_2); 00167 } 00168 00169 static mmx_ball(double, complex<double> ) 00170 GLUE_32 (const complex<double> &arg_1) { 00171 return make_mmx_ball (arg_1); 00172 } 00173 00174 static mmx_ball(double, complex<double> ) 00175 GLUE_33 (const complex<double> &arg_1, const double &arg_2) { 00176 return make_mmx_ball (arg_1, arg_2); 00177 } 00178 00179 static mmx_ball(double, complex<double> ) 00180 GLUE_34 (const complex<double> &arg_1) { 00181 return make_mmx_ball (arg_1); 00182 } 00183 00184 static complex<double> 00185 GLUE_35 (const mmx_ball(double, complex<double> ) &arg_1) { 00186 return center (arg_1); 00187 } 00188 00189 static double 00190 GLUE_36 (const mmx_ball(double, complex<double> ) &arg_1) { 00191 return mmx_radius (arg_1); 00192 } 00193 00194 static mmx_ball(double, complex<double> ) 00195 GLUE_37 (const mmx_ball(double, complex<double> ) &arg_1) { 00196 return sharpen (arg_1); 00197 } 00198 00199 static mmx_ball(double, complex<double> ) 00200 GLUE_38 (const mmx_ball(double, complex<double> ) &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00201 return blur (arg_1, arg_2); 00202 } 00203 00204 static bool 00205 GLUE_39 (const mmx_ball(double, complex<double> ) &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00206 return included (arg_1, arg_2); 00207 } 00208 00209 static mmx_ball(double, complex<double> ) 00210 GLUE_40 (const mmx_ball(double, complex<double> ) &arg_1) { 00211 return -arg_1; 00212 } 00213 00214 static mmx_ball(double, complex<double> ) 00215 GLUE_41 (const mmx_ball(double, complex<double> ) &arg_1) { 00216 return square (arg_1); 00217 } 00218 00219 static mmx_ball(double, complex<double> ) 00220 GLUE_42 (const mmx_ball(double, complex<double> ) &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00221 return arg_1 + arg_2; 00222 } 00223 00224 static mmx_ball(double, complex<double> ) 00225 GLUE_43 (const mmx_ball(double, complex<double> ) &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00226 return arg_1 - arg_2; 00227 } 00228 00229 static mmx_ball(double, complex<double> ) 00230 GLUE_44 (const mmx_ball(double, complex<double> ) &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00231 return arg_1 * arg_2; 00232 } 00233 00234 static mmx_ball(double, complex<double> ) 00235 GLUE_45 (const complex<double> &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00236 return arg_1 + arg_2; 00237 } 00238 00239 static mmx_ball(double, complex<double> ) 00240 GLUE_46 (const mmx_ball(double, complex<double> ) &arg_1, const complex<double> &arg_2) { 00241 return arg_1 + arg_2; 00242 } 00243 00244 static mmx_ball(double, complex<double> ) 00245 GLUE_47 (const complex<double> &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00246 return arg_1 - arg_2; 00247 } 00248 00249 static mmx_ball(double, complex<double> ) 00250 GLUE_48 (const mmx_ball(double, complex<double> ) &arg_1, const complex<double> &arg_2) { 00251 return arg_1 - arg_2; 00252 } 00253 00254 static mmx_ball(double, complex<double> ) 00255 GLUE_49 (const complex<double> &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00256 return arg_1 * arg_2; 00257 } 00258 00259 static mmx_ball(double, complex<double> ) 00260 GLUE_50 (const mmx_ball(double, complex<double> ) &arg_1, const complex<double> &arg_2) { 00261 return arg_1 * arg_2; 00262 } 00263 00264 static mmx_ball(double, complex<double> ) 00265 GLUE_51 (const mmx_ball(double, complex<double> ) &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00266 return arg_1 / arg_2; 00267 } 00268 00269 static mmx_ball(double, complex<double> ) 00270 GLUE_52 (const mmx_ball(double, complex<double> ) &arg_1, const complex<double> &arg_2) { 00271 return arg_1 / arg_2; 00272 } 00273 00274 static mmx_ball(double, complex<double> ) 00275 GLUE_53 (const complex<double> &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00276 return arg_1 / arg_2; 00277 } 00278 00279 static mmx_ball(double, double) 00280 GLUE_54 (const mmx_ball(double, double) &arg_1) { 00281 return sqrt (arg_1); 00282 } 00283 00284 static mmx_ball(double, double) 00285 GLUE_55 (const mmx_ball(double, double) &arg_1) { 00286 return exp (arg_1); 00287 } 00288 00289 static mmx_ball(double, double) 00290 GLUE_56 (const mmx_ball(double, double) &arg_1) { 00291 return log (arg_1); 00292 } 00293 00294 static mmx_ball(double, double) 00295 GLUE_57 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00296 return pow (arg_1, arg_2); 00297 } 00298 00299 static mmx_ball(double, double) 00300 GLUE_58 (const mmx_ball(double, double) &arg_1) { 00301 return cos (arg_1); 00302 } 00303 00304 static mmx_ball(double, double) 00305 GLUE_59 (const mmx_ball(double, double) &arg_1) { 00306 return sin (arg_1); 00307 } 00308 00309 static mmx_ball(double, double) 00310 GLUE_60 (const mmx_ball(double, double) &arg_1) { 00311 return tan (arg_1); 00312 } 00313 00314 static mmx_ball(double, double) 00315 GLUE_61 (const mmx_ball(double, double) &arg_1) { 00316 return acos (arg_1); 00317 } 00318 00319 static mmx_ball(double, double) 00320 GLUE_62 (const mmx_ball(double, double) &arg_1) { 00321 return asin (arg_1); 00322 } 00323 00324 static mmx_ball(double, double) 00325 GLUE_63 (const mmx_ball(double, double) &arg_1) { 00326 return atan (arg_1); 00327 } 00328 00329 static bool 00330 GLUE_64 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00331 return arg_1 < arg_2; 00332 } 00333 00334 static bool 00335 GLUE_65 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00336 return arg_1 > arg_2; 00337 } 00338 00339 static bool 00340 GLUE_66 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00341 return arg_1 <= arg_2; 00342 } 00343 00344 static bool 00345 GLUE_67 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00346 return arg_1 >= arg_2; 00347 } 00348 00349 static mmx_ball(double, double) 00350 GLUE_68 (const mmx_ball(double, double) &arg_1) { 00351 return abs (arg_1); 00352 } 00353 00354 static mmx_ball(double, double) 00355 GLUE_69 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00356 return min (arg_1, arg_2); 00357 } 00358 00359 static mmx_ball(double, double) 00360 GLUE_70 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00361 return max (arg_1, arg_2); 00362 } 00363 00364 static mmx_ball(double, double) 00365 GLUE_71 (const mmx_ball(double, double) &arg_1) { 00366 return floor (arg_1); 00367 } 00368 00369 static mmx_ball(double, double) 00370 GLUE_72 (const mmx_ball(double, double) &arg_1) { 00371 return ceil (arg_1); 00372 } 00373 00374 static mmx_ball(double, double) 00375 GLUE_73 (const mmx_ball(double, double) &arg_1) { 00376 return trunc (arg_1); 00377 } 00378 00379 static mmx_ball(double, double) 00380 GLUE_74 (const mmx_ball(double, double) &arg_1) { 00381 return round (arg_1); 00382 } 00383 00384 static mmx_ball(double, double) 00385 GLUE_75 (const mmx_ball(double, complex<double> ) &arg_1) { 00386 return Re (arg_1); 00387 } 00388 00389 static mmx_ball(double, double) 00390 GLUE_76 (const mmx_ball(double, complex<double> ) &arg_1) { 00391 return Im (arg_1); 00392 } 00393 00394 static mmx_ball(double, complex<double> ) 00395 GLUE_77 (const mmx_ball(double, complex<double> ) &arg_1) { 00396 return conj (arg_1); 00397 } 00398 00399 static mmx_ball(double, complex<double> ) 00400 GLUE_78 (const mmx_ball(double, complex<double> ) &arg_1) { 00401 return times_i (arg_1); 00402 } 00403 00404 static mmx_ball(double, complex<double> ) 00405 GLUE_79 (const mmx_ball(double, complex<double> ) &arg_1) { 00406 return over_i (arg_1); 00407 } 00408 00409 static mmx_ball(double, complex<double> ) 00410 GLUE_80 (const mmx_ball(double, double) &arg_1) { 00411 return gaussian (arg_1); 00412 } 00413 00414 static mmx_ball(double, complex<double> ) 00415 GLUE_81 (const mmx_ball(double, double) &arg_1, const mmx_ball(double, double) &arg_2) { 00416 return gaussian (arg_1, arg_2); 00417 } 00418 00419 static mmx_ball(double, double) 00420 GLUE_82 (const mmx_ball(double, complex<double> ) &arg_1) { 00421 return abs (arg_1); 00422 } 00423 00424 static mmx_ball(double, double) 00425 GLUE_83 (const mmx_ball(double, complex<double> ) &arg_1) { 00426 return arg (arg_1); 00427 } 00428 00429 static mmx_ball(double, complex<double> ) 00430 GLUE_84 (const mmx_ball(double, complex<double> ) &arg_1) { 00431 return sqrt (arg_1); 00432 } 00433 00434 static mmx_ball(double, complex<double> ) 00435 GLUE_85 (const mmx_ball(double, complex<double> ) &arg_1) { 00436 return exp (arg_1); 00437 } 00438 00439 static mmx_ball(double, complex<double> ) 00440 GLUE_86 (const mmx_ball(double, complex<double> ) &arg_1) { 00441 return log (arg_1); 00442 } 00443 00444 static mmx_ball(double, complex<double> ) 00445 GLUE_87 (const mmx_ball(double, complex<double> ) &arg_1, const mmx_ball(double, complex<double> ) &arg_2) { 00446 return pow (arg_1, arg_2); 00447 } 00448 00449 static mmx_ball(double, complex<double> ) 00450 GLUE_88 (const mmx_ball(double, complex<double> ) &arg_1) { 00451 return cos (arg_1); 00452 } 00453 00454 static mmx_ball(double, complex<double> ) 00455 GLUE_89 (const mmx_ball(double, complex<double> ) &arg_1) { 00456 return sin (arg_1); 00457 } 00458 00459 static mmx_ball(double, complex<double> ) 00460 GLUE_90 (const mmx_ball(double, complex<double> ) &arg_1) { 00461 return tan (arg_1); 00462 } 00463 00464 static mmx_ball(double, complex<double> ) 00465 GLUE_91 (const mmx_ball(double, complex<double> ) &arg_1) { 00466 return acos (arg_1); 00467 } 00468 00469 static mmx_ball(double, complex<double> ) 00470 GLUE_92 (const mmx_ball(double, complex<double> ) &arg_1) { 00471 return asin (arg_1); 00472 } 00473 00474 static mmx_ball(double, complex<double> ) 00475 GLUE_93 (const mmx_ball(double, complex<double> ) &arg_1) { 00476 return atan (arg_1); 00477 } 00478 00479 static mmx_ball(double, complex<double> ) 00480 GLUE_94 (const mmx_ball(double, double) &arg_1) { 00481 return as<mmx_ball(double, complex<double> ) > (arg_1); 00482 } 00483 00484 static bool 00485 GLUE_95 (const mmx_ball(double, complex<double> ) &arg_1) { 00486 return is_finite (arg_1); 00487 } 00488 00489 static bool 00490 GLUE_96 (const mmx_ball(double, complex<double> ) &arg_1) { 00491 return is_infinite (arg_1); 00492 } 00493 00494 static bool 00495 GLUE_97 (const mmx_ball(double, complex<double> ) &arg_1) { 00496 return is_nan (arg_1); 00497 } 00498 00499 static mmx_ball(double, complex<double> ) 00500 GLUE_98 (const mmx_ball(double, complex<double> ) &arg_1) { 00501 return times_infinity (arg_1); 00502 } 00503 00504 static int 00505 GLUE_99 (const mmx_ball(double, complex<double> ) &arg_1) { 00506 return precision (arg_1); 00507 } 00508 00509 static int 00510 GLUE_100 (const mmx_ball(double, complex<double> ) &arg_1) { 00511 return exponent (arg_1); 00512 } 00513 00514 static double 00515 GLUE_101 (const mmx_ball(double, complex<double> ) &arg_1) { 00516 return magnitude (arg_1); 00517 } 00518 00519 static mmx_ball(double, complex<double> ) 00520 GLUE_102 (const mmx_ball(double, complex<double> ) &arg_1, const int &arg_2) { 00521 return incexp2 (arg_1, arg_2); 00522 } 00523 00524 static mmx_ball(double, complex<double> ) 00525 GLUE_103 (const mmx_ball(double, complex<double> ) &arg_1, const int &arg_2) { 00526 return decexp2 (arg_1, arg_2); 00527 } 00528 00529 void 00530 glue_ball_double () { 00531 static bool done = false; 00532 if (done) return; 00533 done = true; 00534 call_glue (string ("glue_complex_double")); 00535 define_type<mmx_ball(double, double) > (gen (lit ("Ball"), lit ("Double"), lit ("Double"))); 00536 define_type<mmx_ball(double, complex<double> ) > (gen (lit ("Ball"), lit ("Double"), gen (lit ("Complex"), lit ("Double")))); 00537 define ("ball", GLUE_1); 00538 define ("ball", GLUE_2); 00539 define_converter ("upgrade", GLUE_3, PENALTY_INCLUSION); 00540 define ("center", GLUE_4); 00541 define ("radius", GLUE_5); 00542 define ("sharpen", GLUE_6); 00543 define ("blur", GLUE_7); 00544 define ("included?", GLUE_8); 00545 define ("-", GLUE_9); 00546 define ("square", GLUE_10); 00547 define ("+", GLUE_11); 00548 define ("-", GLUE_12); 00549 define ("*", GLUE_13); 00550 define ("+", GLUE_14); 00551 define ("+", GLUE_15); 00552 define ("-", GLUE_16); 00553 define ("-", GLUE_17); 00554 define ("*", GLUE_18); 00555 define ("*", GLUE_19); 00556 define ("/", GLUE_20); 00557 define ("/", GLUE_21); 00558 define ("/", GLUE_22); 00559 define ("finite?", GLUE_23); 00560 define ("infinite?", GLUE_24); 00561 define ("nan?", GLUE_25); 00562 define ("times_infinity", GLUE_26); 00563 define ("precision", GLUE_27); 00564 define ("exponent", GLUE_28); 00565 define ("magnitude", GLUE_29); 00566 define ("increase_exponent", GLUE_30); 00567 define ("decrease_exponent", GLUE_31); 00568 define ("ball", GLUE_32); 00569 define ("ball", GLUE_33); 00570 define_converter ("upgrade", GLUE_34, PENALTY_INCLUSION); 00571 define ("center", GLUE_35); 00572 define ("radius", GLUE_36); 00573 define ("sharpen", GLUE_37); 00574 define ("blur", GLUE_38); 00575 define ("included?", GLUE_39); 00576 define ("-", GLUE_40); 00577 define ("square", GLUE_41); 00578 define ("+", GLUE_42); 00579 define ("-", GLUE_43); 00580 define ("*", GLUE_44); 00581 define ("+", GLUE_45); 00582 define ("+", GLUE_46); 00583 define ("-", GLUE_47); 00584 define ("-", GLUE_48); 00585 define ("*", GLUE_49); 00586 define ("*", GLUE_50); 00587 define ("/", GLUE_51); 00588 define ("/", GLUE_52); 00589 define ("/", GLUE_53); 00590 define ("sqrt", GLUE_54); 00591 define ("exp", GLUE_55); 00592 define ("log", GLUE_56); 00593 define ("^", GLUE_57); 00594 define ("cos", GLUE_58); 00595 define ("sin", GLUE_59); 00596 define ("tan", GLUE_60); 00597 define ("arccos", GLUE_61); 00598 define ("arcsin", GLUE_62); 00599 define ("arctan", GLUE_63); 00600 define ("<", GLUE_64); 00601 define (">", GLUE_65); 00602 define ("<=", GLUE_66); 00603 define (">=", GLUE_67); 00604 define ("abs", GLUE_68); 00605 define ("min", GLUE_69); 00606 define ("max", GLUE_70); 00607 define ("floor", GLUE_71); 00608 define ("ceil", GLUE_72); 00609 define ("trunc", GLUE_73); 00610 define ("round", GLUE_74); 00611 define ("Re", GLUE_75); 00612 define ("Im", GLUE_76); 00613 define ("conj", GLUE_77); 00614 define ("times_i", GLUE_78); 00615 define ("over_i", GLUE_79); 00616 define ("complex", GLUE_80); 00617 define ("complex", GLUE_81); 00618 define ("abs", GLUE_82); 00619 define ("arg", GLUE_83); 00620 define ("sqrt", GLUE_84); 00621 define ("exp", GLUE_85); 00622 define ("log", GLUE_86); 00623 define ("^", GLUE_87); 00624 define ("cos", GLUE_88); 00625 define ("sin", GLUE_89); 00626 define ("tan", GLUE_90); 00627 define ("arccos", GLUE_91); 00628 define ("arcsin", GLUE_92); 00629 define ("arctan", GLUE_93); 00630 define_converter (":>", GLUE_94, PENALTY_HOMOMORPHISM); 00631 define ("finite?", GLUE_95); 00632 define ("infinite?", GLUE_96); 00633 define ("nan?", GLUE_97); 00634 define ("times_infinity", GLUE_98); 00635 define ("precision", GLUE_99); 00636 define ("exponent", GLUE_100); 00637 define ("magnitude", GLUE_101); 00638 define ("increase_exponent", GLUE_102); 00639 define ("decrease_exponent", GLUE_103); 00640 } 00641 }