24 #ifndef __GyotoDefs_H_ 25 #define __GyotoDefs_H_ 40 #define sincos(t, s, c) *s=sin(t); *c=cos(t) 43 # define sincos(t, s, c) (undefined) 77 #define GYOTO_QUANTITY_NONE 0 80 #define GYOTO_QUANTITY_INTENSITY 1 81 #define GYOTO_QUANTITY_EMISSIONTIME 2 87 #define GYOTO_QUANTITY_MIN_DISTANCE 4 88 #define GYOTO_QUANTITY_FIRST_DMIN 8 90 #define GYOTO_QUANTITY_REDSHIFT 16 96 #define GYOTO_QUANTITY_IMPACTCOORDS 32 97 #define GYOTO_QUANTITY_SPECTRUM 512 99 #define GYOTO_QUANTITY_BINSPECTRUM 1024 103 #define GYOTO_QUANTITY_USER1 32768 104 #define GYOTO_QUANTITY_USER2 16384 106 #define GYOTO_QUANTITY_USER3 8192 108 #define GYOTO_QUANTITY_USER4 4096 110 #define GYOTO_QUANTITY_USER5 2048 132 #define GYOTO_DEFAULT_DEBUG_MODE 0 140 #define GYOTO_QUIET_VERBOSITY 1 149 #define GYOTO_SEVERE_VERBOSITY 3 158 #define GYOTO_WARNING_VERBOSITY GYOTO_SEVERE_VERBOSITY 167 #define GYOTO_DEFAULT_VERBOSITY 5 176 #define GYOTO_INFO_VERBOSITY 10 186 #define GYOTO_DEBUG_VERBOSITY 3000 198 #define GYOTO_QUIET if (Gyoto::verbose() >= GYOTO_QUIET_VERBOSITY) std::cout 206 #define GYOTO_SEVERE if(Gyoto::verbose()>=GYOTO_SEVERE_VERBOSITY) std::cerr<<"SEVERE: " 214 #define GYOTO_WARNING if(Gyoto::verbose()>=GYOTO_SEVERE_VERBOSITY) std::cerr<<"WARNING: " 225 #define GYOTO_MSG if (Gyoto::verbose() >= GYOTO_DEFAULT_VERBOSITY) std::cout 236 #define GYOTO_INFO if (Gyoto::verbose() >= GYOTO_INFO_VERBOSITY) std::cerr<<"INFO: " 246 #define GYOTO_WARNING_UDUNITS(from, to) \ 247 GYOTO_WARNING << "unit ignored (trying to convert from \"" << from \ 250 << "\"), you may have more chance recompiling Gyoto with --with-udunits\n" 265 #define GYOTO_DEBUG_EXPR(a) GYOTO_DEBUG << #a << "=" << a << std::endl 284 #define GYOTO_DEBUG_ARRAY(a,n) if (GYOTO_DEBUG_MODE) { \ 285 std::cerr << "DEBUG: " << __PRETTY_FUNCTION__ << ": " \ 286 << #a << "=[" << a[0] ; \ 287 for (size_t _gyoto_debug_array_i=1; _gyoto_debug_array_i < n; ++_gyoto_debug_array_i) \ 288 std::cerr << "," << a[_gyoto_debug_array_i] ; \ 289 std::cerr << "]" << std::endl ;} 301 #define GYOTO_DEBUG if (GYOTO_DEBUG_MODE) std::cerr << "DEBUG: " << __PRETTY_FUNCTION__ << ": " 308 #define GYOTO_IF_DEBUG if (GYOTO_DEBUG_MODE) { 315 #define GYOTO_ENDIF_DEBUG } 318 #define GYOTO_DEBUG_MODE Gyoto::debug() 335 #define GYOTO_COORDKIND_UNSPECIFIED 0 336 #define GYOTO_COORDKIND_CARTESIAN 1 337 #define GYOTO_COORDKIND_SPHERICAL 2 346 #define GYOTO_DEFAULT_X_SIZE 1024 355 #define GYOTO_DEFAULT_DELTA 0.01 360 #define GYOTO_DEFAULT_DELTA_MAX DBL_MAX 365 #define GYOTO_DEFAULT_DELTA_MIN DBL_MIN 375 #define GYOTO_DEFAULT_DELTA_MAX_OVER_R 1. 377 #define GYOTO_DEFAULT_ABSTOL 1e-6 378 #define GYOTO_DEFAULT_RELTOL 1e-6 383 #define GYOTO_DEFAULT_MAXITER 100000 390 #define GYOTO_T_TOL 1e-4 392 #define GYOTO_KERR_HORIZON_SECURITY 0.01 395 #define GYOTO_SCREEN_DMAX DBL_MAX 399 #define GYOTO_PREC 15 400 #define GYOTO_WIDTH 25 405 #ifndef GYOTO_DEFAULT_PLUGINS 406 #define GYOTO_DEFAULT_PLUGINS "stdplug,nofail:lorene" 409 #ifndef GYOTO_PLUGIN_SFX 410 #define GYOTO_PLUGIN_SFX "so" 419 #define GYOTO_C 299792458. 421 #define GYOTO_C_CGS 2.99792458e10 423 #define GYOTO_G 6.67428e-11 425 #define GYOTO_G_CGS 6.67428e-8 427 #define GYOTO_G_OVER_C_SQUARE 7.426138e-28 429 #define GYOTO_PLANCK 6.62606896e-34 431 #define GYOTO_PLANCK_CGS 6.62606896e-27 433 #define GYOTO_PLANCK_OVER_C_SQUARE 7.372496e-51 435 #define GYOTO_BOLTZMANN 1.3806504e-23 437 #define GYOTO_BOLTZMANN_CGS 1.3806504e-16 439 #define GYOTO_STEFANBOLTZMANN_CGS 5.670373e-5 441 #define GYOTO_PLANCK_OVER_BOLTZMANN 4.7992373e-11 443 #define GYOTO_GAS_CST 8.3144621 445 #define GYOTO_GAS_CST_CGS 8.3144621e7 447 #define GYOTO_AVOGADRO 6.0221413e23 449 #define GYOTO_THOMSON_CGS 6.6524e-25 451 #define GYOTO_ALPHA_F 0.00729927 453 #define GYOTO_PROTON_MASS_CGS 1.67262158e-24 455 #define GYOTO_ELECTRON_MASS_CGS 9.10938188e-28 457 #define GYOTO_ELECTRON_CLASSICAL_RADIUS_CGS 2.8179e-13 459 #define GYOTO_ELEMENTARY_CHARGE_CGS 4.80320427e-10 461 #define GYOTO_EULER_MASCHERONI 0.577216 463 #define GYOTO_ATOMIC_MASS_UNIT_CGS 1.660537781e-24 465 #define GYOTO_INU_CGS_TO_SI 0.001 469 #define GYOTO_SUN_MASS 1.98843e30 470 #define GYOTO_SUN_MASS_CGS 1.98843e33 472 #define GYOTO_SUN_RADIUS 6.955e8 474 #define GYOTO_KPC 3.08568025e19 476 #define GYOTO_ASTRONOMICAL_UNIT 1.49597870700e11 478 #define GYOTO_LIGHT_YEAR 9.4607304725808e15 482 #define GYOTO_RADEG 57.2957795130823 483 #define GYOTO_DEGRAD 0.0174532925199433 485 #define GYOTO_MINRAD 2.908882086657216e-04 487 #define GYOTO_SECRAD 4.848136811095360e-06 489 #define GYOTO_MASRAD 4.848136811095360e-09 491 #define GYOTO_MUASRAD 4.848136811095360e-12 495 #define GYOTO_eV2Hz 2.417989348e+14 500 #define GYOTO_STRINGIFY(a) GYOTO_STRINGIFY_ARGUMENT(a) 503 #define GYOTO_STRINGIFY_ARGUMENT(a) #a 505 #ifndef GYOTO_NO_DEPRECATED 506 #warning Using deprecated method names.\ 507 Define GYOTO_NO_DEPRECATED to disable. 517 # define getMetric metric 518 # define setMetric metric 519 # define setScreen screen 520 # define getScreen screen 521 # define getRmax rMax 522 # define setRmax rMax 523 # define getMass mass 524 # define setMass mass 525 # define getCoordKind coordKind 526 # define setCoordKind coordKind 527 # define getKind kind 528 # define setKind kind 529 # define getSpin spin 530 # define setSpin spin 531 # define getIntegKind integKind 532 # define setIntegKind integKind 533 # define getFileName fileName 534 # define setFileName fileName 535 # define getDistance distance 536 # define setDistance distance 537 # define getPALN PALN 538 # define setPALN PALN 539 # define getArgument argument 540 # define setArgument argument 541 # define getInclination inclination 542 # define setInclination inclination 543 # define getAstrobj astrobj 544 # define setAstrobj astrobj 545 # define getSpectrometer spectrometer 546 # define setSpectrometer spectrometer 547 # define getSpectrum spectrum 548 # define setSpectrum spectrum 549 # define getOpacity opacity 550 # define setOpacity opacity 551 # define setDelta delta 552 # define getDelta delta 553 # define setDelta delta 554 # define getDelta delta 555 # define setDelta0 delta0 556 # define getDelta0 delta0 557 # define setAlpha0 alpha0 558 # define getAlpha0 alpha0 559 # define setAnglekind anglekind 560 # define getTmin tMin 561 # define setTmin tMin 562 # define getTime time 563 # define setTime time 564 # define getFreqObs freqObs 565 # define setFreqObs freqObs 566 # define getFieldOfView fieldOfView 567 # define setFieldOfView fieldOfView 568 # define getRadius radius 569 # define setRadius radius 570 # define getLargeRadius largeRadius 571 # define setLargeRadius largeRadius 572 # define getSmallRadius smallRadius 573 # define setSmallRadius smallRadius 574 # define getCentralDensity centralDensity 575 # define setCentralDensity centralDensity 576 # define getDmax dMax 577 # define setDmax dMax 578 # define getTemperature temperature 579 # define setTemperature temperature 580 # define getScaling scaling 581 # define setScaling scaling 582 # define getPatternVelocity patternVelocity 583 # define setPatternVelocity patternVelocity 584 # define getLambda lambda 585 # define setLambda lambda 586 # define getCentralTempOverVirial centralTempOverVirial 587 # define setCentralTempOverVirial centralTempOverVirial 588 # define getBeta beta 589 # define setBeta beta 590 # define getConstant constant 591 # define setConstant constant 592 # define getExponent exponent 593 # define setExponent exponent 594 # define getFlag_radtransf opticallyThin 595 # define setFlag_radtransf opticallyThin 596 # define getNThreads nThreads 597 # define setNThreads nThreads 598 # define getResolution resolution 599 # define setResolution resolution 600 # define getNSamples nSamples 601 # define setNSamples nSamples 602 # define getSpectralOverSampling spectralOversampling 603 # define setSpectralOverSampling spectralOversampling 604 # define setBinSpectrumConverter binSpectrumConverter 605 # define setSpectrumConverter spectrumConverter 606 # define setIntensityConverter intensityConverter 607 # define getSafetyValue safetyValue; 608 # define setSafetyValue safetyValue; 609 # define setInnerRadius innerRadius; 610 # define getInnerRadius innerRadius; 611 # define setOuterRadius outerRadius; 612 # define getOuterRadius outerRadius; 613 # define setThickness thickness; 614 # define getThickness thickness; 617 # define setBand band; 618 # define setObserverKind observerKind; 619 # define getObserverKind observerKind; unsigned int Verbosity_t
Type for verbosity levels.
Definition: GyotoDefs.h:129
Compile-time configuration.
unsigned int CoordKind_t
Type for coordinate system kinds.
Definition: GyotoDefs.h:334
Namespace for the Gyoto library.
Definition: GyotoAstrobj.h:43
unsigned int Quantity_t
Type for observabke quantities.
Definition: GyotoDefs.h:73