Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: ability use builtin observatories #75

Merged
merged 15 commits into from
Jan 18, 2024
Merged
Show file tree
Hide file tree
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion 21cmSense.egg-info/PKG-INFO
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
Metadata-Version: 2.1
Name: 21cmSense
Version: 2.0.0b1.dev14+g8464956.d20220121
Version: 2.0.0b1.dev42+g7de0639.d20220610
Summary: Compute sensitivies of radio interferometers to the cosmic 21cm signal.
Home-page: https://github.com/steven-murray/21cmSense
Author: Jonathan Pober
Expand Down
6 changes: 4 additions & 2 deletions 21cmSense.egg-info/SOURCES.txt
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,10 @@ CONTRIBUTING.rst
CONTRIBUTORS.rst
LICENSE.rst
README.rst
moderate_150.000 MHz.h5
pyproject.toml
setup.cfg
setup.py
.eggs/README.txt
.github/workflows/deploy.yaml
.github/workflows/test-deploy.yaml
.github/workflows/testsuite.yaml
Expand Down Expand Up @@ -49,7 +49,6 @@ docs/tutorials/data/observation_mwa.yml
docs/tutorials/data/observatory_mwa.yml
docs/tutorials/data/ps_EoS_z9.24.txt
docs/tutorials/data/sensitivity_mwa.yml
example_configs/mwa_phase2_compact_antpos.txt
example_configs/observation_hera.yml
example_configs/observatory_hera.yml
example_configs/sensitivity_hera.yml
Expand All @@ -64,6 +63,7 @@ py21cmsense/observation.py
py21cmsense/observatory.py
py21cmsense/sensitivity.py
py21cmsense/types.py
py21cmsense/yaml.py
py21cmsense/data/__init__.py
py21cmsense/data/ps_no_halos_nf0.521457_z9.50_useTs0_zetaX-1.0e+00_200_400Mpc_v2
tests/conftest.py
Expand All @@ -73,5 +73,7 @@ tests/test_conversions.py
tests/test_observation.py
tests/test_observatory.py
tests/test_sensitivity.py
tests/test_types.py
tests/test_yaml.py
tests/test_data/test_load_k_0.114.npz
tests/test_data/test_observatory_dct.yml
3 changes: 2 additions & 1 deletion 21cmSense.egg-info/requires.txt
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
numpy
numpy<1.22
scipy
future
click
Expand All @@ -20,6 +20,7 @@ numpydoc
nbsphinx
ipython
commitizen
pytest-cov

[docs]
sphinx>=1.3
Expand Down
1 change: 1 addition & 0 deletions CHANGELOG.rst
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@ Features
a closer resemblance to the original 21cmSense v1.
* New ``calculate_sensitivity_2d_grid`` method that makes it easier to obtain a gridded
cylindrical power spectrum sensitivity for arbitrary bins.
* Ability to use builtin observatories that set certain parameters.

v2.0.0
======
Expand Down
71 changes: 71 additions & 0 deletions py21cmsense/data/antpos/hera-h1c-idr3.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
-1.353014802932739258e+01 -1.181450861941557378e+02 -9.566264385916292667e+01
-1.884822099935263395e+01 -1.045396618698723614e+02 -9.560969073977321386e+01
-2.416632062196731567e+01 -9.093424828629940748e+01 -9.555672054504975677e+01
-4.963128907606005669e+00 -1.226810004494618624e+02 -8.473808013228699565e+01
-1.032920262496918440e+01 -1.090944140243809670e+02 -8.465448297793045640e+01
-1.568730055075138807e+01 -9.550469809141941369e+01 -8.457597754057496786e+01
-2.088537837285548449e+01 -8.185218258900567889e+01 -8.459963086619973183e+01
3.616637547500431538e+00 -1.272119525789748877e+02 -7.381000724295154214e+01
-1.677401631139218807e+00 -1.135970968017354608e+02 -7.377239787951111794e+01
-6.995474578812718391e+00 -9.999167313100770116e+01 -7.371944511728361249e+01
-1.231357416976243258e+01 -8.638626019703224301e+01 -7.366647527972236276e+01
-1.754367469064891338e+01 -7.274631206132471561e+01 -7.366968489065766335e+01
1.216759750898927450e+01 -1.317541681148577482e+02 -6.287519241962581873e+01
6.929588386788964272e+00 -1.181173241157084703e+02 -6.287335302354767919e+01
1.611528756096959114e+00 -1.045118953352794051e+02 -6.282040897523984313e+01
-3.722562248818576336e+00 -9.091275831824168563e+01 -6.275723033817484975e+01
-9.016668104566633701e+00 -7.729792946088127792e+01 -6.271957841515541077e+01
-1.437481941841542721e+01 -6.370823565078899264e+01 -6.264103935798630118e+01
2.073930714093148708e+01 -1.362882810833398253e+02 -5.194197718473151326e+01
1.543729238305240870e+01 -1.226765558507759124e+02 -5.189927640836685896e+01
1.018326523993164301e+01 -1.090459983693435788e+02 -5.188721100054681301e+01
4.849187562242150307e+00 -9.544685633759945631e+01 -5.182404111279174685e+01
-4.529072642326354980e-01 -8.183516302471980453e+01 -5.178128911461681128e+01
-5.787038208916783333e+00 -6.823604255751706660e+01 -5.171808507852256298e+01
2.935423192940652370e+01 -1.408053934818599373e+02 -4.104799868678674102e+01
2.403622569236904383e+01 -1.271999440449289978e+02 -4.099508914165198803e+01
1.871019040886312723e+01 -1.135976458243094385e+02 -4.093705380149185658e+01
1.337612610403448343e+01 -9.999849888263270259e+01 -4.087389266397804022e+01
8.082047081552445889e+00 -8.638366017048247159e+01 -4.083625806961208582e+01
2.795943728648126125e+00 -7.276569152832962573e+01 -4.080371512426063418e+01
-2.426167435944080353e+00 -5.912260896083898842e+01 -4.081202489137649536e+01
3.800914182141423225e+01 -1.453068140144459903e+02 -3.017954673757776618e+01
3.263513191975653172e+01 -1.317233424813020974e+02 -3.009088496211916208e+01
2.730110753513872623e+01 -1.181241796358954161e+02 -3.002774964505806565e+01
2.199106373731046915e+01 -1.045156061430461705e+02 -2.997992337681353092e+01
1.667299088090658188e+01 -9.091018385859206319e+01 -2.992697132704779506e+01
1.136289375368505716e+01 -7.730163178127259016e+01 -2.987911090813577175e+01
6.068774718791246414e+00 -6.368680928973481059e+01 -2.984145083045586944e+01
8.146408256143331528e-01 -5.005629452969878912e+01 -2.982931720791384578e+01
4.663678712863475084e+01 -1.498189747424330562e+02 -1.928204166609793901e+01
4.119076853897422552e+01 -1.362637619809247553e+02 -1.914741051895543933e+01
3.587276234664022923e+01 -1.226583132378291339e+02 -1.909450133051723242e+01
3.055472950357943773e+01 -1.090528752345126122e+02 -1.904157506953924894e+01
2.525267482269555330e+01 -9.544116695993579924e+01 -1.899884911347180605e+01
1.994259106274694204e+01 -8.183260986534878612e+01 -1.895099739450961351e+01
1.464848541282117367e+01 -6.821778237237595022e+01 -1.891334597999230027e+01
5.522762353345751762e+01 -1.543455392380710691e+02 -8.372686089947819710e+00
4.983763517625629902e+01 -1.407683382581453770e+02 -8.273824636824429035e+00
4.447162763122469187e+01 -1.271817270356696099e+02 -8.190272127743810415e+00
3.915360810887068510e+01 -1.135762839457020164e+02 -8.137354581616818905e+00
3.385156677942723036e+01 -9.996457059821113944e+01 -8.094637305941432714e+00
2.854149635229259729e+01 -8.635600842442363501e+01 -8.046794284600764513e+00
2.324740406591445208e+01 -7.274117586575448513e+01 -8.009151534643024206e+00
1.795328508038073778e+01 -5.912635391880758107e+01 -7.971491708420217037e+00
1.264313461817800999e+01 -4.551782375038601458e+01 -7.923597465734928846e+00
5.846523955091834068e+01 -1.452805143310688436e+02 2.623705561738461256e+00
5.305123051907867193e+01 -1.317127406052313745e+02 2.737901186104863882e+00
4.774122678861021996e+01 -1.181041520228609443e+02 2.785701361019164324e+00
4.242319395206868649e+01 -1.044987146286293864e+02 2.838627268560230732e+00
3.712914174795150757e+01 -9.088386643514968455e+01 2.876244280021637678e+00
3.181905800569802523e+01 -7.727530992147512734e+01 2.924095677677541971e+00
2.651695000752806664e+01 -6.366362354950979352e+01 2.966855493839830160e+00
2.120681292377412319e+01 -5.005508840736001730e+01 3.014741037972271442e+00
7.158875706698745489e+01 -1.558917650254443288e+02 1.722577638877555728e+01
6.632682151719927788e+01 -1.422643128440249711e+02 1.724289040965959430e+01
5.364556475449353456e+01 -9.236911282641813159e+01 2.836392122181132436e+01
4.835149925202131271e+01 -7.875427055638283491e+01 2.840154647780582309e+01
4.304940461181104183e+01 -6.514257945213466883e+01 2.844429742032662034e+01
3.773127843067049980e+01 -5.153718014876358211e+01 2.849728266801685095e+01
1.048607184821739793e+02 -2.995865078354254365e+02 -1.968903261562809348e+01
1.376887764884158969e+02 -2.087586419745348394e+02 8.991649550758302212e+01
128 changes: 128 additions & 0 deletions py21cmsense/data/antpos/mwa_phase2_compact_antpos.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
3.902100000000000080e+01 9.781999999999999318e+01 3.758999999999999773e+02
2.500400000000000134e+01 9.783599999999999852e+01 3.760099999999999909e+02
1.101900000000000013e+01 9.783299999999999841e+01 3.761399999999999864e+02
-2.998000000000000220e+00 9.781900000000000261e+01 3.762300000000000182e+02
3.201299999999999812e+01 8.571299999999999386e+01 3.759100000000000250e+02
1.801800000000000068e+01 8.571599999999999397e+01 3.760400000000000205e+02
4.017999999999999794e+00 8.569799999999999329e+01 3.761600000000000250e+02
-9.987000000000000099e+00 8.570199999999999818e+01 3.762500000000000000e+02
1.003730000000000047e+02 2.598469999999999800e+02 3.759599999999999795e+02
8.634900000000000375e+01 2.598439999999999941e+02 3.761000000000000227e+02
7.237999999999999545e+01 2.598480000000000132e+02 3.762400000000000091e+02
1.353669999999999902e+02 2.719619999999999891e+02 3.756499999999999773e+02
6.536199999999999477e+01 2.477230000000000132e+02 3.762300000000000182e+02
1.423600000000000136e+02 2.598489999999999895e+02 3.755000000000000000e+02
1.283460000000000036e+02 2.598480000000000132e+02 3.756999999999999886e+02
1.143569999999999993e+02 2.598389999999999986e+02 3.758199999999999932e+02
1.283449999999999989e+02 2.113580000000000041e+02 3.754800000000000182e+02
1.143589999999999947e+02 2.113530000000000086e+02 3.756000000000000227e+02
1.003640000000000043e+02 2.113379999999999939e+02 3.757500000000000000e+02
8.636199999999999477e+01 2.113410000000000082e+02 3.758799999999999955e+02
3.201299999999999812e+01 1.584420000000000073e+02 3.761399999999999864e+02
1.802199999999999847e+01 1.584389999999999930e+02 3.762599999999999909e+02
4.006000000000000227e+00 1.584559999999999889e+02 3.764100000000000250e+02
-9.990000000000000213e+00 1.565900000000000034e+02 3.763509999999999991e+02
2.500199999999999889e+01 1.463199999999999932e+02 3.761399999999999864e+02
1.102200000000000024e+01 1.463110000000000070e+02 3.763100000000000023e+02
-2.984999999999999876e+00 1.463160000000000025e+02 3.764200000000000159e+02
-1.701300000000000168e+01 1.463089999999999975e+02 3.765899999999999750e+02
4.004999999999999893e+00 1.342059999999999889e+02 3.763000000000000114e+02
-9.983000000000000540e+00 1.341850000000000023e+02 3.764200000000000159e+02
-2.396600000000000108e+01 1.342009999999999934e+02 3.765699999999999932e+02
3.901400000000000290e+01 1.463040000000000020e+02 3.760400000000000205e+02
-5.452700000000000102e+01 2.375180000000000007e+02 3.771229999999999905e+02
-4.048899999999999721e+01 2.351699999999999875e+02 3.769610000000000127e+02
-2.380199999999999960e+01 2.223530000000000086e+02 3.768720000000000141e+02
-2.362000000000000099e+01 2.015459999999999923e+02 3.768050000000000068e+02
-5.067600000000000193e+01 2.645459999999999923e+02 3.771000000000000227e+02
-6.005700000000000216e+01 2.636759999999999877e+02 3.771800000000000068e+02
-7.007500000000000284e+01 2.594019999999999868e+02 3.772660000000000196e+02
-6.485099999999999909e+01 2.508129999999999882e+02 3.772389999999999759e+02
-7.869799999999999329e+01 2.584309999999999832e+02 3.772909999999999968e+02
-8.851200000000000045e+01 2.660210000000000150e+02 3.773090000000000259e+02
-9.536499999999999488e+01 2.701879999999999882e+02 3.772850000000000250e+02
-1.497849999999999966e+02 2.658140000000000214e+02 3.770110000000000241e+02
-1.483300000000000125e+02 2.202709999999999866e+02 3.772139999999999986e+02
-9.334600000000000364e+01 2.422789999999999964e+02 3.772699999999999818e+02
-1.023250000000000028e+02 2.440879999999999939e+02 3.772579999999999814e+02
-8.693999999999999773e+01 2.484519999999999982e+02 3.773389999999999986e+02
-4.655400000000000205e+01 2.874689999999999941e+02 3.771150000000000091e+02
-2.515000000000000124e+00 2.928410000000000082e+02 3.768919999999999959e+02
1.734250000000000114e+02 1.935949999999999989e+02 3.750319999999999823e+02
3.261410000000000196e+02 2.036080000000000041e+02 3.739449999999999932e+02
8.487999999999999545e+01 5.191409999999999627e+02 3.763140000000000214e+02
5.012700000000000244e+01 5.361589999999999918e+02 3.761809999999999832e+02
-3.370499999999999829e+01 3.510480000000000018e+02 3.769759999999999991e+02
-5.614099999999999824e+01 2.959220000000000255e+02 3.771560000000000059e+02
-7.873099999999999454e+01 2.972590000000000146e+02 3.771960000000000264e+02
-6.977100000000000080e+01 2.940310000000000059e+02 3.771920000000000073e+02
-1.280459999999999923e+02 3.504940000000000282e+02 3.765699999999999932e+02
-1.604650000000000034e+02 5.732069999999999936e+02 3.747730000000000246e+02
-2.635470000000000255e+02 3.892740000000000009e+02 3.753220000000000027e+02
-3.954519999999999982e+02 3.711519999999999868e+02 3.745149999999999864e+02
-1.001719999999999970e+02 2.888960000000000150e+02 3.771569999999999823e+02
-1.039410000000000025e+02 3.009139999999999873e+02 3.770500000000000114e+02
-4.553999999999999915e+01 2.732450000000000045e+02 3.770659999999999741e+02
-7.088500000000000512e+01 2.788179999999999836e+02 3.772520000000000095e+02
-6.005799999999999983e+01 2.719049999999999727e+02 3.772040000000000077e+02
-6.798999999999999488e+01 2.711030000000000086e+02 3.772359999999999900e+02
-1.490000000000000036e+01 2.738700000000000045e+02 3.769100000000000250e+02
-7.698799999999999955e+01 2.726370000000000005e+02 3.772980000000000018e+02
-2.265899999999999892e+01 2.636940000000000168e+02 3.769479999999999791e+02
-5.315599999999999881e+01 2.762679999999999723e+02 3.770899999999999750e+02
-7.954099999999999682e+01 2.381279999999999859e+02 3.772699999999999818e+02
-8.184499999999999886e+01 2.293369999999999891e+02 3.772699999999999818e+02
-9.853000000000000114e+01 2.301620000000000061e+02 3.772599999999999909e+02
-1.052810000000000059e+02 2.171800000000000068e+02 3.772549999999999955e+02
-5.069100000000000250e+01 2.218849999999999909e+02 3.770779999999999745e+02
-6.256700000000000017e+01 2.289869999999999948e+02 3.772099999999999795e+02
-7.101699999999999591e+01 2.359290000000000020e+02 3.772389999999999759e+02
-7.512000000000000455e+01 2.470020000000000095e+02 3.772549999999999955e+02
-9.288899999999999579e+01 2.813580000000000041e+02 3.772540000000000191e+02
-1.236670000000000016e+02 2.848539999999999850e+02 3.770500000000000114e+02
-1.398669999999999902e+02 2.754979999999999905e+02 3.770179999999999723e+02
-1.329389999999999930e+02 2.826109999999999900e+02 3.770020000000000095e+02
-1.760060000000000002e+02 2.899030000000000200e+02 3.766229999999999905e+02
-5.509700000000000131e+01 2.842850000000000250e+02 3.771809999999999832e+02
-8.347599999999999909e+01 2.775629999999999882e+02 3.773000000000000114e+02
-7.783499999999999375e+01 2.828389999999999986e+02 3.772529999999999859e+02
1.283400000000000034e+02 2.841039999999999850e+02 3.757699999999999818e+02
1.143460000000000036e+02 2.840919999999999845e+02 3.759100000000000250e+02
1.003469999999999942e+02 2.840969999999999800e+02 3.761800000000000068e+02
8.637300000000000466e+01 2.841209999999999809e+02 3.762500000000000000e+02
1.213550000000000040e+02 2.719909999999999854e+02 3.758299999999999841e+02
1.073649999999999949e+02 2.719569999999999936e+02 3.759499999999999886e+02
9.333899999999999864e+01 2.719759999999999991e+02 3.760699999999999932e+02
7.936899999999999977e+01 2.719859999999999900e+02 3.762400000000000091e+02
1.353530000000000086e+02 2.477210000000000036e+02 3.755899999999999750e+02
1.213689999999999998e+02 2.477439999999999998e+02 3.757200000000000273e+02
9.335500000000000398e+01 2.477429999999999950e+02 3.759399999999999977e+02
7.936599999999999966e+01 2.477419999999999902e+02 3.760799999999999841e+02
1.003670000000000044e+02 2.356160000000000139e+02 3.758500000000000227e+02
8.634399999999999409e+01 2.356059999999999945e+02 3.759700000000000273e+02
7.236299999999999955e+01 2.356100000000000136e+02 3.760899999999999750e+02
1.493580000000000041e+02 2.477309999999999945e+02 3.754100000000000250e+02
7.937399999999999523e+01 2.234739999999999895e+02 3.759900000000000091e+02
1.423400000000000034e+02 2.355860000000000127e+02 3.754399999999999977e+02
1.283489999999999895e+02 2.356100000000000136e+02 3.755600000000000023e+02
1.143349999999999937e+02 2.355980000000000132e+02 3.757400000000000091e+02
1.353520000000000039e+02 2.234859999999999900e+02 3.754800000000000182e+02
1.213719999999999999e+02 2.234879999999999995e+02 3.755699999999999932e+02
1.073569999999999993e+02 2.234619999999999891e+02 3.757699999999999818e+02
9.334300000000000352e+01 2.234879999999999995e+02 3.758700000000000045e+02
-3.099099999999999966e+01 1.220750000000000028e+02 3.766000000000000227e+02
4.601599999999999824e+01 1.342210000000000036e+02 3.759200000000000159e+02
3.200900000000000034e+01 1.341839999999999975e+02 3.760500000000000114e+02
1.798999999999999844e+01 1.341819999999999879e+02 3.761499999999999773e+02
3.901400000000000290e+01 1.220900000000000034e+02 3.759499999999999886e+02
2.501500000000000057e+01 1.220550000000000068e+02 3.760899999999999750e+02
-2.971999999999999975e+00 1.220580000000000069e+02 3.763199999999999932e+02
-1.698900000000000077e+01 1.220699999999999932e+02 3.764599999999999795e+02
3.995999999999999996e+00 1.099509999999999934e+02 3.762200000000000273e+02
-9.980000000000000426e+00 1.099440000000000026e+02 3.763299999999999841e+02
-2.399399999999999977e+01 1.099369999999999976e+02 3.764900000000000091e+02
5.301899999999999835e+01 1.220520000000000067e+02 3.758100000000000023e+02
-1.698699999999999832e+01 9.781000000000000227e+01 3.763600000000000136e+02
4.602199999999999847e+01 1.099489999999999981e+02 3.758100000000000023e+02
3.202400000000000091e+01 1.099440000000000026e+02 3.759599999999999795e+02
1.802499999999999858e+01 1.099590000000000032e+02 3.760699999999999932e+02
17 changes: 17 additions & 0 deletions py21cmsense/data/profiles/HERA-H1C-IDR3.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
antpos: !astropy.units.Quantity
value: !txt "{{ DATA_PATH }}/antpos/hera-h1c-idr3.txt"
unit: !astropy.units.Unit {unit: m}
beam:
class: GaussianBeam
frequency: !astropy.units.Quantity
unit: !astropy.units.Unit {unit: MHz}
value: 150
dish_size: !astropy.units.Quantity
unit: !astropy.units.Unit {unit: m}
value: 14.0
latitude: !astropy.units.Quantity
unit: !astropy.units.Unit {unit: rad}
value: 0.536189
Trcv: !astropy.units.Quantity
unit: !astropy.units.Unit {unit: K}
value: 100
15 changes: 15 additions & 0 deletions py21cmsense/data/profiles/MWA-PhaseII.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
antpos: "../mwa_phase_compact_antpos.txt"
steven-murray marked this conversation as resolved.
Show resolved Hide resolved
beam:
class: GaussianBeam
frequency: !astropy.units.Quantity
unit: !astropy.units.Unit {unit: MHz}
value: 150
dish_size: !astropy.units.Quantity
unit: !astropy.units.Unit {unit: m}
value: 4
latitude: !astropy.units.Quantity
unit: !astropy.units.Unit {unit: rad}
value: 0.4660
Trcv: !astropy.units.Quantity
unit: !astropy.units.Unit {unit: K}
value: 100
36 changes: 35 additions & 1 deletion py21cmsense/observatory.py
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,14 @@

logger = logging.getLogger(__name__)

DATA = Path(__file__).parent / "data"


def get_builtin_profiles() -> list[str]:
"""Print available built-in profiles."""
fls = (DATA / "profiles").glob("*.yaml")
return [fl.stem for fl in fls]


@attr.s(frozen=True, kw_only=True, order=False)
class Observatory:
Expand Down Expand Up @@ -122,7 +130,9 @@ def from_yaml(cls, yaml_file: str | dict) -> Observatory:
"""Instantiate an Observatory from a compatible YAML config file."""
if isinstance(yaml_file, (str, Path)):
with open(yaml_file) as fl:
data = yaml.load(fl)
lines = fl.read()
lines = lines.replace("{{ DATA_PATH }}", str(DATA.absolute()))
data = yaml.load(lines)
elif isinstance(yaml_file, collections.abc.Mapping):
data = yaml_file
else:
Expand Down Expand Up @@ -152,6 +162,30 @@ def from_yaml(cls, yaml_file: str | dict) -> Observatory:

return cls(antpos=antpos, beam=_beam, **data)

@classmethod
def from_profile(cls, profile: str, **kwargs):
"""Instantiate the Observatory from a builtin profile.

Parameters
----------
profile
A string label identifying the observatory. Available built-in observatories
can be obtained with :func:`get_builtin_profiles`.

Other Parameters
----------------
All other parameters passed will be passed into the initializer for the class,
overwriting the profile.
"""
fl = DATA / "profiles" / (profile + ".yaml")
if not fl.exists():
raise FileNotFoundError(
f"profile {profile} not available. Available profiles: {get_builtin_profiles()}"
)

obj = cls.from_yaml(fl)
return obj.clone(**kwargs)

@cached_property
def baselines_metres(self) -> tp.Meters:
"""Raw baseline distances in metres for every pair of antennas.
Expand Down
Loading