예제 #1
0
    def transform(p):
        """ A transformation for post-processing. """

        if not isinstance(p, list):
            p = list(p)

        p += [gravradius(p[1]) / p[2]]

        if p[10] < 0.0:
            tempp = p[10] + 1.0
        else:
            tempp = p[10]

        temps = 0.5 + p[11]

        if temps >= tempp:
            p += [temps - tempp]
        else:
            p += [1.0 - tempp + temps]

        p += [p[3] - p[4]]
        p += [p[3] + p[4]]
        p += [p[3] - p[7]]

        return p
    def transform(p):
        """ A transformation for post-processing. """

        if not isinstance(p, list):
            p = list(p)

        # compactness ratio M/R_eq
        p += [gravradius(p[1]) / p[2]]

        # phase transforms
        if p[10] < 0.0:
            tempp = p[10] + 1.0
        else:
            tempp = p[10]

        temps = 0.5 + p[11]

        # phase separation
        if temps >= tempp:
            p += [temps - tempp]
        else:
            p += [1.0 - tempp + temps]

        # angle combinations
        p += [p[3] - p[4]]
        p += [p[3] + p[4]]
        p += [p[3] - p[7]]

        return p
예제 #3
0
                    instrument=NICER,
                    background=None,
                    interstellar=None,
                    energies_per_interval=0.5,
                    default_energy_spacing='logspace',
                    fast_rel_energies_per_interval=0.5,
                    workspace_intervals=1000,
                    adaptive_energies=False,
                    store=False,
                    epsrel=1.0e-8,
                    epsilon=1.0e-3,
                    sigmas=10.0)

from xpsi.global_imports import _c, _G, _M_s, _dpr, gravradius

bounds = [(0.1, 1.0), (1.0, 3.0), (3.0 * gravradius(1.0), 16.0),
          (0.001, math.pi / 2.0)]

spacetime = CustomSpacetime(num_params=4, bounds=bounds, S=300.0)

bounds = [(0.001, math.pi - 0.001), (0.001, math.pi / 2.0 - 0.001), (5.5, 6.5),
          (0.001, math.pi - 0.001), (0.001, math.pi / 2.0 - 0.001), (5.5, 6.5)]

spot = xpsi.Spots(num_params=(3, 3),
                  bounds=bounds,
                  symmetry=True,
                  hole=False,
                  cede=False,
                  concentric=False,
                  antipodal_symmetry=False,
                  sqrt_num_cells=32,
예제 #4
0
                    interstellar = None,
                    energies_per_interval = 0.5,
                    default_energy_spacing = 'logspace',
                    fast_rel_energies_per_interval = 0.5,
                    workspace_intervals = 1000,
                    adaptive_energies = False,
                    store = False,
                    epsrel = 1.0e-8,
                    epsilon = 1.0e-3,
                    sigmas = 10.0)

from xpsi.global_imports import _c, _G, _M_s, _dpr, gravradius

bounds = [(0.1, 1.0),
          (1.0, 3.0),
          (3.0 * gravradius(1.0), 16.0),
          (0.001, math.pi/2.0)]

spacetime = CustomSpacetime(num_params = 4, bounds = bounds, S = 300.0)

bounds = [(0.001, math.pi - 0.001),
          (0.001, math.pi/2.0 - 0.001),
          (5.5, 6.5),
          (0.001, math.pi - 0.001),
          (0.001, math.pi/2.0 - 0.001),
          (5.5, 6.5)]

spot = xpsi.Spots(num_params=(3,3), bounds=bounds,
                    symmetry=True,
                    hole=False,
                    cede=False,
예제 #5
0
                    energies_per_interval=0.5,
                    default_energy_spacing='logspace',
                    fast_rel_energies_per_interval=0.5,
                    workspace_intervals=1000,
                    adaptive_energies=False,
                    store=True,
                    epsrel=1.0e-8,
                    epsilon=1.0e-3,
                    sigmas=10.0)

from xpsi.global_imports import _c, _G, _M_s, _dpr, gravradius

bounds = [
    (0.1, 1.0),  # (Earth) distance
    (1.0, 3.0),  # mass
    (3.0 * gravradius(1.0), 16.0),  # equatorial radius
    (0.001, math.pi / 2.0)
]  # (Earth) inclination to rotation axis

spacetime = CustomSpacetime(num_params=4, bounds=bounds, S=300.0)

bounds = [(0.001, math.pi - 0.001), (0.001, math.pi / 2.0 - 0.001), (5.5, 6.5),
          (0.001, math.pi - 0.001), (0.001, math.pi / 2.0 - 0.001), (5.5, 6.5)]

hot = xpsi.TwoHotRegions(num_params=(3, 3),
                         bounds=bounds,
                         symmetry=True,
                         hole=False,
                         cede=False,
                         concentric=False,
                         antipodal_symmetry=False,