mirror of
https://github.com/Richard-Sti/csiborgtools_public.git
synced 2025-05-12 13:41:13 +00:00
Clean density calculation (#97)
* Get rid of utils * Clean up imports * Move some utils here * Rename file * Add simname to boxsize * Add imports * Delete old files * Update README * Update imports * Add a new draft of the density calculator * Update fields * Draft of new density field calculatiosn * Add snapshot * Add boxsizes * Little updates * Bring back utils * Edit docstrings * Edits imports * Add progress on snapshots * edit improts * add basic snapshot catalogue * Add support for CSiBORG2 snapshot reader * add paths to fofcat for csiborg2 * Add more imports * Add more boxsize * Add more imports * Add field readers * Simplify field paths * Fix typo * Add observer vp * Clean up density field calculation * Add a short note * Edit args * Remove old comments * Edit docs * Remove blank line * Stop flipping RAMSES * Remove comment * Edit desc * Remove normalization * Remove old dist array * Remove non-volume weighting * Remove non-volume weight * Add ignore of flake8 notebooks * Fix path typo * Fix units * Edit paths docs * Update nb
This commit is contained in:
parent
eeff8f0ab9
commit
eb1797e8a9
19 changed files with 1260 additions and 1139 deletions
|
@ -60,16 +60,6 @@ def now():
|
|||
return datetime.now()
|
||||
|
||||
|
||||
def flip_cols(arr, col1, col2):
|
||||
"""
|
||||
Flip values in columns `col1` and `col2` of a structured array `arr`.
|
||||
"""
|
||||
if col1 not in arr.dtype.names or col2 not in arr.dtype.names:
|
||||
raise ValueError(f"Both `{col1}` and `{col2}` must exist in `arr`.")
|
||||
|
||||
arr[col1], arr[col2] = numpy.copy(arr[col2]), numpy.copy(arr[col1])
|
||||
|
||||
|
||||
def convert_str_to_num(s):
|
||||
"""
|
||||
Convert a string representation of a number to its appropriate numeric type
|
||||
|
@ -221,11 +211,6 @@ class CSiBORG1Reader:
|
|||
raise ValueError(f"Unknown kind `{kind}`. "
|
||||
"Options are: `pid`, `pos`, `vel` or `mass`.")
|
||||
|
||||
# Because of a RAMSES bug x and z are flipped.
|
||||
if kind in ["pos", "vel"]:
|
||||
print(f"For kind `{kind}` flipping x and z.")
|
||||
x[:, [0, 2]] = x[:, [2, 0]]
|
||||
|
||||
del sim
|
||||
collect()
|
||||
|
||||
|
@ -273,8 +258,6 @@ class CSiBORG1Reader:
|
|||
out["y"] = pos[:, 1] * h + 677.7 / 2
|
||||
out["z"] = pos[:, 2] * h + 677.7 / 2
|
||||
|
||||
# Because of a RAMSES bug x and z are flipped.
|
||||
flip_cols(out, "x", "z")
|
||||
out["totpartmass"] = totmass * 1e11 * h
|
||||
out["m200c"] = m200c * 1e11 * h
|
||||
|
||||
|
|
|
@ -15,9 +15,8 @@
|
|||
from os import system
|
||||
|
||||
if __name__ == "__main__":
|
||||
# Quijote chains
|
||||
chains = [1]
|
||||
simname = "quijote"
|
||||
chains = [7444]
|
||||
simname = "csiborg1"
|
||||
mode = 2
|
||||
|
||||
env = "/mnt/zfsusers/rstiskalek/csiborgtools/venv_csiborg/bin/python"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue