PyTransit 2.6.19__tar.gz → 2.7.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {pytransit-2.6.19 → pytransit-2.7.0}/PKG-INFO +1 -1
- {pytransit-2.6.19 → pytransit-2.7.0}/PyTransit.egg-info/PKG-INFO +1 -1
- {pytransit-2.6.19 → pytransit-2.7.0}/PyTransit.egg-info/SOURCES.txt +2 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/__init__.py +2 -2
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/__init__.py +3 -1
- pytransit-2.7.0/pytransit/models/roadrunner/esmodel.py +88 -0
- pytransit-2.7.0/pytransit/models/roadrunner/model_ecspec.py +60 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/LICENSE +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/MANIFEST.in +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/PyTransit.egg-info/dependency_links.txt +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/PyTransit.egg-info/requires.txt +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/PyTransit.egg-info/top_level.txt +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/README.md +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pyproject.toml +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/contamination/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/contamination/contamination.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/contamination/data/spectra.h5 +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/contamination/data/transmission.nc +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/contamination/filter.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/contamination/instrument.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/contamination/plotting.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/limb_darkening.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/baselines/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/baselines/legendrebaseline.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/baselines/linearbaseline.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/cntlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/eclipselpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/loglikelihood/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/loglikelihood/celeriteloglikelihood.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/loglikelihood/clloglikelihood.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/loglikelihood/fmcloglikelihood.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/loglikelihood/logisticloglikelihood.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/loglikelihood/multiceleriteloglikelihood.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/loglikelihood/wnloglikelihood.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/logposteriorfunction.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/lpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/mclpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/mptlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/ocllpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/ocltdvlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/oclttvlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/phasecurvelpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/rvlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/tdvlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/tess/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/tess/ctesslpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/tess/tessttvlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/tess/tgclpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/tess/tgcmplpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/tess/tmpclpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/tesslpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/tessoclttvlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/transitanalysis.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/transitlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/ttvlpf.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/eclipse_model.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/gdmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/general.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/ldmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/ldtkldm.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/limb_darkening/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/limb_darkening/general.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/limb_darkening/linear.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/limb_darkening/nonlinear.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/limb_darkening/power_2.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/limb_darkening/quadratic.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/limb_darkening/quadratic_tri.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/limb_darkening/uniform.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/ma_chromosphere.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/ma_quadratic.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/ma_quadratic_cl.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/ma_uniform.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/ma_uniform_cl.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/gdmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/general_nb.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/ldmodels.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/ldtkldm.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/ma_chromosphere_nb.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/ma_quadratic_nb.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/ma_uniform_nb.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/phasecurves.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/qpower2_nb.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/rrmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/spmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/numba/udmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/opencl/ma_quadratic.cl +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/opencl/ma_uniform.cl +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/opencl/orbits.cl +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/opencl/qpower2.cl +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/osmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/qpower2.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/qpower2_cl.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/common.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/ecintersection.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/model.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/model_full.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/model_simple.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/model_trspec.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/opmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/opmodel_full.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/rrmodel.cl +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/rrmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/rrmodel_cl.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/roadrunner/tsmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/transitmodel.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/models/uniform.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/orbits/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/orbits/orbits.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/orbits/orbits_py.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/orbits/taylor_z.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/param/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/param/parameter.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/param/prior.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/param/utilities.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/stars/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/stars/btsettl.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/stars/data/avg_bt_settl.fits +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/stars/data/avg_husser2013.fits +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/stars/husser2013.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/astrometry.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/constants.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/de.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/downsample.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/eclipses.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/io/__init__.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/io/lightcurvedata.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/keplerlc.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/mdwarfs.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/misc.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/mocklc.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/octasphere.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/phasecurves.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/physics.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/rv.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/pytransit/utils/tess.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/requirements.txt +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/setup.cfg +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_contamination.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_jax_uniformdisk.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_limb_darkening.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_ma_quadratic.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_ma_quadratic_nb.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_qpower2_nb.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_transitmodel_helpers.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_uniform_model.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_uniform_model_nb.py +0 -0
- {pytransit-2.6.19 → pytransit-2.7.0}/tests/test_z.py +0 -0
|
@@ -95,7 +95,9 @@ pytransit/models/opencl/qpower2.cl
|
|
|
95
95
|
pytransit/models/roadrunner/__init__.py
|
|
96
96
|
pytransit/models/roadrunner/common.py
|
|
97
97
|
pytransit/models/roadrunner/ecintersection.py
|
|
98
|
+
pytransit/models/roadrunner/esmodel.py
|
|
98
99
|
pytransit/models/roadrunner/model.py
|
|
100
|
+
pytransit/models/roadrunner/model_ecspec.py
|
|
99
101
|
pytransit/models/roadrunner/model_full.py
|
|
100
102
|
pytransit/models/roadrunner/model_simple.py
|
|
101
103
|
pytransit/models/roadrunner/model_trspec.py
|
|
@@ -41,7 +41,7 @@ Date
|
|
|
41
41
|
|
|
42
42
|
"""
|
|
43
43
|
|
|
44
|
-
__version__ = '2.
|
|
44
|
+
__version__ = '2.7.0'
|
|
45
45
|
|
|
46
46
|
# Generic
|
|
47
47
|
# -------
|
|
@@ -59,7 +59,7 @@ from .models.general import GeneralModel
|
|
|
59
59
|
from .models.osmodel import OblateStarModel
|
|
60
60
|
from .models.gdmodel import GravityDarkenedModel
|
|
61
61
|
|
|
62
|
-
from .models import RoadRunnerModel, OblatePlanetModel, TransmissionSpectroscopyModel
|
|
62
|
+
from .models import RoadRunnerModel, OblatePlanetModel, TransmissionSpectroscopyModel, EclipseSpectroscopyModel, ESModel
|
|
63
63
|
|
|
64
64
|
TSModel = TransmissionSpectroscopyModel
|
|
65
65
|
OPModel = OblatePlanetModel
|
|
@@ -14,11 +14,13 @@
|
|
|
14
14
|
# You should have received a copy of the GNU General Public License
|
|
15
15
|
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
16
16
|
|
|
17
|
-
from .transitmodel import TransitModel
|
|
17
|
+
from .transitmodel import TransitModel # noqa
|
|
18
18
|
from .roadrunner.rrmodel import RoadRunnerModel
|
|
19
19
|
from .roadrunner.opmodel import OblatePlanetModel
|
|
20
20
|
from .roadrunner.tsmodel import TransmissionSpectroscopyModel
|
|
21
|
+
from .roadrunner.esmodel import EclipseSpectroscopyModel
|
|
21
22
|
|
|
22
23
|
RRModel = RoadRunnerModel
|
|
23
24
|
OPModel = OblatePlanetModel
|
|
24
25
|
TSModel = TransmissionSpectroscopyModel
|
|
26
|
+
ESModel = EclipseSpectroscopyModel
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# PyTransit: fast and easy exoplanet transit modelling in Python.
|
|
2
|
+
# Copyright (C) 2010-2019 Hannu Parviainen
|
|
3
|
+
#
|
|
4
|
+
# This program is free software: you can redistribute it and/or modify
|
|
5
|
+
# it under the terms of the GNU General Public License as published by
|
|
6
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
7
|
+
# (at your option) any later version.
|
|
8
|
+
#
|
|
9
|
+
# This program is distributed in the hope that it will be useful,
|
|
10
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
11
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
12
|
+
# GNU General Public License for more details.
|
|
13
|
+
#
|
|
14
|
+
# You should have received a copy of the GNU General Public License
|
|
15
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
16
|
+
#
|
|
17
|
+
# This program is free software: you can redistribute it and/or modify
|
|
18
|
+
# it under the terms of the GNU General Public License as published by
|
|
19
|
+
# the Free Software Foundation, either version 3 of the License, or
|
|
20
|
+
# (at your option) any later version.
|
|
21
|
+
#
|
|
22
|
+
# This program is distributed in the hope that it will be useful,
|
|
23
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
24
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
25
|
+
# GNU General Public License for more details.
|
|
26
|
+
#
|
|
27
|
+
# You should have received a copy of the GNU General Public License
|
|
28
|
+
# along with this program. If not, see <https://www.gnu.org/licenses/>.
|
|
29
|
+
from typing import Union, List, Optional
|
|
30
|
+
|
|
31
|
+
from numpy import ndarray, atleast_1d
|
|
32
|
+
from numba import njit
|
|
33
|
+
|
|
34
|
+
from ..transitmodel import TransitModel
|
|
35
|
+
from .model_ecspec import esmodel
|
|
36
|
+
|
|
37
|
+
__all__ = ['EclipseSpectroscopyModel']
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
class EclipseSpectroscopyModel(TransitModel):
|
|
41
|
+
|
|
42
|
+
def __init__(self, parallel: bool = False):
|
|
43
|
+
self.parallel = parallel
|
|
44
|
+
self.model = njit(parallel=parallel, fastmath=False)(esmodel)
|
|
45
|
+
super().__init__()
|
|
46
|
+
|
|
47
|
+
def evaluate(self, f: ndarray, k: Union[float, ndarray], t0: Union[float, ndarray], p: Union[float, ndarray],
|
|
48
|
+
a: Union[float, ndarray], i: Union[float, ndarray], e: Union[float, ndarray] = 0.0,
|
|
49
|
+
w: Union[float, ndarray] = 0.0) -> ndarray:
|
|
50
|
+
"""Evaluate the transit model for a set of scalar or vector parameters.
|
|
51
|
+
|
|
52
|
+
Parameters
|
|
53
|
+
----------
|
|
54
|
+
f
|
|
55
|
+
Flux ratios either as a 1D vector or 2D array
|
|
56
|
+
k
|
|
57
|
+
Radius ratio either as a single float or a 1D vector.
|
|
58
|
+
t0
|
|
59
|
+
Transit center(s) as a float or a 1D vector.
|
|
60
|
+
p
|
|
61
|
+
Orbital period(s) as a float or a 1D vector.
|
|
62
|
+
a
|
|
63
|
+
Orbital semi-major axis (axes) divided by the stellar radius as a float or a 1D vector.
|
|
64
|
+
i
|
|
65
|
+
Orbital inclination(s) as a float or a 1D vector.
|
|
66
|
+
e : optional
|
|
67
|
+
Orbital eccentricity as a float or a 1D vector.
|
|
68
|
+
w : optional
|
|
69
|
+
Argument of periastron as a float or a 1D vector.
|
|
70
|
+
|
|
71
|
+
Notes
|
|
72
|
+
-----
|
|
73
|
+
The model can be evaluated either for one set of parameters or for many sets of parameters simultaneously. In
|
|
74
|
+
the first case, the orbital parameters should all be given as floats. In the second case, the orbital parameters
|
|
75
|
+
should be given as a 1D array-like.
|
|
76
|
+
|
|
77
|
+
Returns
|
|
78
|
+
-------
|
|
79
|
+
ndarray
|
|
80
|
+
Modelled flux either as a 3D ndarray.
|
|
81
|
+
"""
|
|
82
|
+
k, t0, p, a, i, e, w = map(atleast_1d, (k, t0, p, a, i, e, w))
|
|
83
|
+
return self.model(self.time, k, t0, p, a, i, e, w, f, self.nsamples[0], self.exptimes[0])
|
|
84
|
+
|
|
85
|
+
def __call__(self, f: ndarray, k: Union[float, ndarray], t0: Union[float, ndarray], p: Union[float, ndarray],
|
|
86
|
+
a: Union[float, ndarray], i: Union[float, ndarray], e: Union[float, ndarray] = 0.0,
|
|
87
|
+
w: Union[float, ndarray] = 0.0) -> ndarray:
|
|
88
|
+
return self.evaluate(f, k, t0, p, a, i, e, w)
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
from math import fabs, floor
|
|
2
|
+
|
|
3
|
+
from meepmeep.utils import d_from_pkaiews, eclipse_phase
|
|
4
|
+
from meepmeep.xy.position import solve_xy_p5s, pd_t15sc
|
|
5
|
+
from numpy import zeros, ndarray, isnan, nan, pi
|
|
6
|
+
|
|
7
|
+
from .common import circle_circle_intersection_area_kite as ccia
|
|
8
|
+
|
|
9
|
+
__all__ = ['esmodel']
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
def esmodel(times: ndarray, k: ndarray, t0: ndarray, p: ndarray, a: ndarray, i: ndarray, e: ndarray, w: ndarray,
|
|
13
|
+
fratio: ndarray, nsamples: int, exptime: float) -> ndarray:
|
|
14
|
+
if k.ndim != 1:
|
|
15
|
+
raise ValueError(" The radius ratio must be given as an 1D array with shape (npv)")
|
|
16
|
+
|
|
17
|
+
if fratio.ndim != 2:
|
|
18
|
+
raise ValueError(" The flux ratio must be given as a 2D array with shape (npv, npb)")
|
|
19
|
+
|
|
20
|
+
npt = times.size
|
|
21
|
+
npv = fratio.shape[0]
|
|
22
|
+
npb = fratio.shape[1]
|
|
23
|
+
|
|
24
|
+
flux = zeros((npv, npb, npt)) # Model flux
|
|
25
|
+
xyc = zeros((2, 5)) # Taylor series coefficients for the (x, y) position
|
|
26
|
+
|
|
27
|
+
for ipv in range(npv):
|
|
28
|
+
if isnan(a[ipv]) or (a[ipv] <= 1.0) or (e[ipv] < 0.0):
|
|
29
|
+
flux[ipv, :, :] = nan
|
|
30
|
+
continue
|
|
31
|
+
|
|
32
|
+
# -----------------------------------------------------#
|
|
33
|
+
# Calculate the Taylor series expansions for the orbit #
|
|
34
|
+
# -----------------------------------------------------#
|
|
35
|
+
eclipse_shift = eclipse_phase(p[ipv], i[ipv], e[ipv], w[ipv])
|
|
36
|
+
xyc[:, :] = solve_xy_p5s(eclipse_shift, p[ipv], a[ipv], i[ipv], e[ipv], w[ipv])
|
|
37
|
+
te = t0[ipv] + eclipse_shift
|
|
38
|
+
|
|
39
|
+
# --------------------------------#
|
|
40
|
+
# Calculate the half-window width #
|
|
41
|
+
# --------------------------------#
|
|
42
|
+
hww = 0.5 * d_from_pkaiews(p[ipv], k[ipv], a[ipv], i[ipv], e[ipv], w[ipv], -1, 14)
|
|
43
|
+
hww = 0.0015 + exptime + hww
|
|
44
|
+
|
|
45
|
+
# --------------------------#
|
|
46
|
+
# Calculate the light curve #
|
|
47
|
+
# --------------------------#
|
|
48
|
+
for ipt in range(npt):
|
|
49
|
+
epoch = floor((times[ipt] - te + 0.5 * p[ipv]) / p[ipv])
|
|
50
|
+
tc = times[ipt] - (te + epoch * p[ipv])
|
|
51
|
+
if fabs(tc) > hww:
|
|
52
|
+
flux[ipv, :, ipt] = 1.0
|
|
53
|
+
else:
|
|
54
|
+
for isample in range(1, nsamples + 1):
|
|
55
|
+
time_offset = exptime * ((isample - 0.5) / nsamples - 0.5)
|
|
56
|
+
z = pd_t15sc(tc + time_offset, xyc)
|
|
57
|
+
flux[ipv, :, ipt] += 1.0 - (fratio[ipv, :] * ccia(1.0, k[ipv], z)[0] / pi) / (
|
|
58
|
+
1.0 + fratio[ipv, :] * k[ipv] ** 2)
|
|
59
|
+
flux[ipv, :, ipt] /= nsamples
|
|
60
|
+
return flux
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{pytransit-2.6.19 → pytransit-2.7.0}/pytransit/lpf/loglikelihood/multiceleriteloglikelihood.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|