---
title: The CosmoAI project
---
# The CosmoSim software
This project provides a simulator for gravitational lensing based on
Chris Clarkson's Roulettes framework.
The initial prototype was an undergraduate
[final year project](https://ntnuopen.ntnu.no/ntnu-xmlui/handle/11250/3003634)
by Ingebrigtsen, Remøy, Westbø, Nedreberg, and Austnes (2022).
The software includes both a GUI simulator for interactive experimentation,
and a command line interface for batch generation of datasets.
The intention is to be able to use the synthetic datasets to train
machine learning models which can in turn be used to map the dark
matter of the Universe. This is work in progress.
Documentation is being written at
[https://cosmoai-aes.github.io/](https://cosmoai-aes.github.io/),
but it still incomplete and fragmented.
## Installation Guide
CosmoSim is set up to build python packages (wheels) that
can be installed with pip.
```sh
pip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ CosmoSim
```
The current distribution is only available on the PyPI test server.
Starting with the next release, it will be available on the regular server
and installable by
```sh
pip install CosmoSim
```
We successfully build CosmoSim for the following configurations.
+ Linux/x86_64, python 3.11 trough 3.14, and 3.14.t
+ MacOS/arm, python 3.11 trough 3.14, and 3.14.t
Building on Windows (amd64, python 3.11-3.14) sometimes works,
but currently not.
Buiilding for python 3.10 is impossible because tomllib is required.
To build locally from source, you can run (from the root of
the repo),
```
pip install build
python -m build
```
This is highly dependent on the local configuration, and may fail
for a number of reasons. If it succeeds, the binary file for the
python module appears under src/CosmoSim.
If you can build, pip can also install the package from the working
directory. Again, from the root of the repo,
```
pip install .
```
For non-standard building, see [BUILD.md](BUILD.md).
## Running the GUI
```sh
python3 -m CosmoSim.GUI
```
The GUI tool is hopefully quite self-explanatory.
The images shown are the actual source on the left and the distorted (lensed)
image on the right.
## The Command Line Interface (CLI)
### Overview of Tools
The modules that can be run as command line scripts are the following:
+ `python -m CosmoSim.datagen` (simulate images from lens parameters)
+ `python -m CosmoSim.roulettegen` (simulate images from roulette amplitudes)
+ `python -m CosmoSim.roulettestatistics` (descriptive statistics of roulette amplitudes)
### Testing
Once built, an illustrative test set can be generated by
the following command issued from the root directory.
Note that you have to install python dependencies from the requirements
file. You may want to install python libraries in a virtual environment.
Here this is given to do that in global user space.
```sh
mkdir images
python3 -m CosmoSim.datagen -CR -Z 400 --csvfile Datasets/debug.csv --directory images
```
This generates a range of images in the newly created images directory. This should be on the .gitignore.
The flags may be changed; `-C` centres det distorted image in the centre
of the image (being debugged); `-Z` sets the image size; `-R` prints an
axes cross.
### Dataset generation
The basic use case is bulk generation of images.
The parameter distribution can be specified in a TOML file,
see `Datasets/dataset.toml` for an example.
The following command generates a dataset.
```sh
python3 -m CosmoSim.datagen --toml dataset.toml --csvfile dataset.csv --outfile roulette.csv --directory images -C
```
Note the following
+ `dataset.csv` - contains the dataset with all the lens and source parameters.
+ The `images` directory contains the images generated from the dataset.
+ `roulette.csv` gives the dataset with roulette amplitudes.
+ `-C` centres the images on the centre of mass (luminence). This is necessary
to avoid leaking information to a machine learning model.
Most of the options are optional, and further options are available. See below.
### Two-step generation
It is possible two generate the dataset and the images in two separate steps.
```
python3 -m CosmoSim.dataset input.toml output.csv
python3 -m CosmoSim.datagen --csvfile output.csv --outfile roulette.csv --directory images -C
```
### Roulette Resimulation
**TODO**
```sh
python3 -m CosmoSim.roulettegen
```
### Generating individual images
To generate images from specified parameters, you can use
```sh
python3 -m CosmoSim.datagen -S sourcemodel -L lensmodel -x x -y y -s sigma -X chi -E einsteinR -n n -I imageSize -N name -R -C
```
Here are the options specified:
+ `lensmodel` is `p` for point mass (exact), `r` for Roulette (point mass),
or `s` for SIS (Roulette).
+ `sourcemodel` is `s` for sphere, `e` for ellipse, or `t` for
triangle.
+ `-C` centres the image on the centre of mass (centre of light)
+ `-R` draw the axes cross
+ `x` and `y` are the coordinates of the actual source
+ `s` is the standard deviation of the source
+ `chi` is the distance to the lens in percent of the distance to the source
+ `einsteinR` is the Einstein radius of the lens
+ `n` is the number of terms to use in roulette sum.
(Not used for the point mass model.)
+ `imageSize` size of output image in pixels. The image will be
`imageSize`$\times$`imageSize` pixels.
+ `name` is the name of the simulation, and used to generate filenames.
+ `--help` for a complete list of options.
## Use cases
### Training sets for roulette amplitudes
The datasets generated from `datasetgen.py` give the parameters for the
lens and the source, as well as the image file.
This allows us to train a machine learning model to identify the lens
parameters, *assuming* a relatively simple lens model.
It is still a long way to go to map cluster lenses.
An alternative approach is to try to estimate the effect (lens potential)
in a neighbourhood around a point in the image. For instance, we may want
to estimate the roulette amplitudes in the centre of the image.
The `datagen.py` script can generate a CSV file containing these data along
with the image, as follows:
```sh
mkdir images
python3 -m CosmoSim.datagen -C -Z 400 --csvfile Datasets/debug.csv \
--directory images --outfile images.csv --nterms 5
```
The images should be centred (`-C`); the amplitudes may not be
meaningful otherwise. The `--directory` flag puts images in
the given directory which must exist. The image size is given by
`-Z` and is square. The input and output files go without saying.
The number of terms (`--nterms`) is the maximum $m$ for which the
amplitudes are generated; 5 should give about 24 scalar values.
The amplitudes are labeled `alpha[`$s$,$m$`]` and `beta[`$s$,$m$`]`
in the outout CSV file. One should focus on predicting the amplitudes
for low values of $m$ first. The file also reproduces the source
parameters, and the centre of mass $(x,y)$ in the original co-ordinate
system using image coordinates with the origin in the upper left corner.
The most interesting lens model for this exercise is PsiFunctionSIS (fs),
which gives the most accurate computations. The roulette amplitudes have
not been implemented for any of the point mass lenses yet, and it also
does not work for «SIS (rotated)» which is a legacy implementation of
the roulette model with SIS and functionally equivalent to «Roulette SIS«
(rs).
**Warning** This has yet to be tested properly.
## Other scripts
The `python/` directory contains scripts which do not depend on
C++ code.
+ `compare.py` is used to compare images in the Regression Tests.
+ Several scripts used to calculate roulette amplitudes.
## Versions
+ The imortant git branches are
- develop is the current state of the art
- master should be the last stable version
+ Releases
- v-test-* are test releases, used to debug workflows. Please ignore.
- see the releases on githun and CHANGELOG.md
+ Prior to v2.0.0 some releases have been tagged, but not registered
as releases in github.
- v0.1.0, v0.2.0, v1.0.0 are versions made by the u/g students
Spring 2022.
- v1.0.1 is cleaned up to be able to build v1.0.0
## Caveats
The simulator makes numerical calculations and there will always
be approximation errors.
1. The images generated from the same parameters have changed slightly
between version. Some changes are because some unfortunate uses of
integers and single-precision numbers have later been avoided, and some
simply because the order of calculation has changed.
1. The SIS model is implemented in two versions, one rotating
to have the source on the x-axis and one working directly with
arbitrary position. Difference are not perceptible by visual
comparison, but the difference image shows noticeable difference.
## Contributors
+ **Idea and Current Maintainance** Hans Georg Schaathun <hasc@ntnu.no>
+ **Mathematical Models** Ben David Normann
+ **Initial Prototype** Simon Ingebrigtsen, Sondre Westbø Remøy,
Einar Leite Austnes, and Simon Nedreberg Runde
Raw data
{
"_id": null,
"home_page": null,
"name": "CosmoSim",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": null,
"keywords": "cosmology, gravitational lensing, simulation",
"author": "Hans Georg Schaathun et al",
"author_email": "Hans Georg Schaathun <georg+github@schaathun.net>",
"download_url": "https://files.pythonhosted.org/packages/07/0e/ed4aaec185b725cdf3a14b4ccdf4402b53c04bac2d8362d4df32fdaeb653/cosmosim-2.5.3.tar.gz",
"platform": null,
"description": "---\ntitle: The CosmoAI project\n---\n\n# The CosmoSim software\n\nThis project provides a simulator for gravitational lensing based on\nChris Clarkson's Roulettes framework.\nThe initial prototype was an undergraduate\n[final year project](https://ntnuopen.ntnu.no/ntnu-xmlui/handle/11250/3003634)\nby Ingebrigtsen, Rem\u00f8y, Westb\u00f8, Nedreberg, and Austnes (2022).\nThe software includes both a GUI simulator for interactive experimentation, \nand a command line interface for batch generation of datasets.\n\nThe intention is to be able to use the synthetic datasets to train\nmachine learning models which can in turn be used to map the dark\nmatter of the Universe. This is work in progress.\n\nDocumentation is being written at \n[https://cosmoai-aes.github.io/](https://cosmoai-aes.github.io/),\nbut it still incomplete and fragmented.\n\n## Installation Guide\n\nCosmoSim is set up to build python packages (wheels) that\ncan be installed with pip. \n```sh\npip install --index-url https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ CosmoSim\n```\nThe current distribution is only available on the PyPI test server.\nStarting with the next release, it will be available on the regular server\nand installable by\n```sh\npip install CosmoSim\n```\n\nWe successfully build CosmoSim for the following configurations.\n\n+ Linux/x86_64, python 3.11 trough 3.14, and 3.14.t\n+ MacOS/arm, python 3.11 trough 3.14, and 3.14.t\n\nBuilding on Windows (amd64, python 3.11-3.14) sometimes works,\nbut currently not.\nBuiilding for python 3.10 is impossible because tomllib is required.\n\nTo build locally from source, you can run (from the root of\nthe repo),\n```\npip install build\npython -m build\n```\nThis is highly dependent on the local configuration, and may fail\nfor a number of reasons. If it succeeds, the binary file for the\npython module appears under src/CosmoSim.\n\nIf you can build, pip can also install the package from the working\ndirectory. Again, from the root of the repo,\n```\npip install .\n```\n\nFor non-standard building, see [BUILD.md](BUILD.md).\n\n## Running the GUI\n\n```sh\npython3 -m CosmoSim.GUI\n```\n\nThe GUI tool is hopefully quite self-explanatory. \nThe images shown are the actual source on the left and the distorted (lensed)\nimage on the right.\n\n\n\n## The Command Line Interface (CLI)\n\n### Overview of Tools\n\nThe modules that can be run as command line scripts are the following:\n+ `python -m CosmoSim.datagen` (simulate images from lens parameters)\n+ `python -m CosmoSim.roulettegen` (simulate images from roulette amplitudes)\n+ `python -m CosmoSim.roulettestatistics` (descriptive statistics of roulette amplitudes)\n\n### Testing\n\nOnce built, an illustrative test set can be generated by\nthe following command issued from the root directory.\nNote that you have to install python dependencies from the requirements\nfile. You may want to install python libraries in a virtual environment.\nHere this is given to do that in global user space.\n\n```sh\nmkdir images\npython3 -m CosmoSim.datagen -CR -Z 400 --csvfile Datasets/debug.csv --directory images\n```\n\nThis generates a range of images in the newly created images directory. This should be on the .gitignore.\n\nThe flags may be changed; `-C` centres det distorted image in the centre\nof the image (being debugged); `-Z` sets the image size; `-R` prints an\naxes cross.\n\n### Dataset generation\n\nThe basic use case is bulk generation of images.\nThe parameter distribution can be specified in a TOML file,\nsee `Datasets/dataset.toml` for an example.\n\nThe following command generates a dataset.\n```sh\npython3 -m CosmoSim.datagen --toml dataset.toml --csvfile dataset.csv --outfile roulette.csv --directory images -C\n```\nNote the following\n+ `dataset.csv` - contains the dataset with all the lens and source parameters.\n+ The `images` directory contains the images generated from the dataset.\n+ `roulette.csv` gives the dataset with roulette amplitudes.\n+ `-C` centres the images on the centre of mass (luminence). This is necessary\n to avoid leaking information to a machine learning model. \nMost of the options are optional, and further options are available. See below.\n\n### Two-step generation\n\nIt is possible two generate the dataset and the images in two separate steps.\n```\npython3 -m CosmoSim.dataset input.toml output.csv\npython3 -m CosmoSim.datagen --csvfile output.csv --outfile roulette.csv --directory images -C\n```\n\n### Roulette Resimulation\n\n**TODO**\n\n```sh\npython3 -m CosmoSim.roulettegen \n```\n\n\n### Generating individual images\n\nTo generate images from specified parameters, you can use\n```sh\npython3 -m CosmoSim.datagen -S sourcemodel -L lensmodel -x x -y y -s sigma -X chi -E einsteinR -n n -I imageSize -N name -R -C\n```\nHere are the options specified:\n+ `lensmodel` is `p` for point mass (exact), `r` for Roulette (point mass),\n or `s` for SIS (Roulette).\n+ `sourcemodel` is `s` for sphere, `e` for ellipse, or `t` for\n triangle.\n+ `-C` centres the image on the centre of mass (centre of light)\n+ `-R` draw the axes cross\n+ `x` and `y` are the coordinates of the actual source\n+ `s` is the standard deviation of the source\n+ `chi` is the distance to the lens in percent of the distance to the source\n+ `einsteinR` is the Einstein radius of the lens\n+ `n` is the number of terms to use in roulette sum. \n (Not used for the point mass model.)\n+ `imageSize` size of output image in pixels. The image will be\n `imageSize`$\\times$`imageSize` pixels.\n+ `name` is the name of the simulation, and used to generate filenames.\n+ `--help` for a complete list of options.\n\n\n## Use cases\n\n### Training sets for roulette amplitudes\n\nThe datasets generated from `datasetgen.py` give the parameters for the \nlens and the source, as well as the image file.\nThis allows us to train a machine learning model to identify the lens\nparameters, *assuming* a relatively simple lens model.\nIt is still a long way to go to map cluster lenses.\n\nAn alternative approach is to try to estimate the effect (lens potential)\nin a neighbourhood around a point in the image. For instance, we may want\nto estimate the roulette amplitudes in the centre of the image.\nThe `datagen.py` script can generate a CSV file containing these data along\nwith the image, as follows:\n\n```sh\nmkdir images\npython3 -m CosmoSim.datagen -C -Z 400 --csvfile Datasets/debug.csv \\\n --directory images --outfile images.csv --nterms 5\n```\n\nThe images should be centred (`-C`); the amplitudes may not be\nmeaningful otherwise. The `--directory` flag puts images in\nthe given directory which must exist. The image size is given by\n`-Z` and is square. The input and output files go without saying.\nThe number of terms (`--nterms`) is the maximum $m$ for which the\namplitudes are generated; 5 should give about 24 scalar values.\n\nThe amplitudes are labeled `alpha[`$s$,$m$`]` and `beta[`$s$,$m$`]` \nin the outout CSV file. One should focus on predicting the amplitudes\nfor low values of $m$ first. The file also reproduces the source\nparameters, and the centre of mass $(x,y)$ in the original co-ordinate\nsystem using image coordinates with the origin in the upper left corner.\n\nThe most interesting lens model for this exercise is PsiFunctionSIS (fs),\nwhich gives the most accurate computations. The roulette amplitudes have\nnot been implemented for any of the point mass lenses yet, and it also\ndoes not work for \u00abSIS (rotated)\u00bb which is a legacy implementation of\nthe roulette model with SIS and functionally equivalent to \u00abRoulette SIS\u00ab\n(rs).\n\n**Warning** This has yet to be tested properly.\n\n## Other scripts\n\nThe `python/` directory contains scripts which do not depend on\nC++ code.\n\n+ `compare.py` is used to compare images in the Regression Tests.\n+ Several scripts used to calculate roulette amplitudes.\n\n## Versions\n\n+ The imortant git branches are\n - develop is the current state of the art\n - master should be the last stable version\n+ Releases\n - v-test-* are test releases, used to debug workflows. Please ignore.\n - see the releases on githun and CHANGELOG.md\n+ Prior to v2.0.0 some releases have been tagged, but not registered\nas releases in github.\n - v0.1.0, v0.2.0, v1.0.0 are versions made by the u/g students\n Spring 2022.\n - v1.0.1 is cleaned up to be able to build v1.0.0\n\n## Caveats\n\nThe simulator makes numerical calculations and there will always\nbe approximation errors.\n\n1. The images generated from the same parameters have changed slightly\n between version. Some changes are because some unfortunate uses of\n integers and single-precision numbers have later been avoided, and some \n simply because the order of calculation has changed.\n1. The SIS model is implemented in two versions, one rotating\n to have the source on the x-axis and one working directly with\n arbitrary position. Difference are not perceptible by visual\n comparison, but the difference image shows noticeable difference.\n\n\n## Contributors\n\n+ **Idea and Current Maintainance** Hans Georg Schaathun <hasc@ntnu.no>\n+ **Mathematical Models** Ben David Normann\n+ **Initial Prototype** Simon Ingebrigtsen, Sondre Westb\u00f8 Rem\u00f8y,\n Einar Leite Austnes, and Simon Nedreberg Runde\n\n\n",
"bugtrack_url": null,
"license": null,
"summary": "Simulator of Gravitational Lenses",
"version": "2.5.3",
"project_urls": {
"Homepage": "https://github.com/CosmoAI-AES/CosmoSim",
"Issues": "https://github.com/CosmoAI-AES/CosmoSim/issues"
},
"split_keywords": [
"cosmology",
" gravitational lensing",
" simulation"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "00ea9eff680e93be6e62834a2c2ed987fe462ad43cf9ec4539ea3c6b9487b117",
"md5": "f250ba0beed16a551004d3efa78793f0",
"sha256": "45c184adbd63db026d3c7dc41bfb7e9a9ecb7d3c047abd035958b8fcb9c364eb"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "f250ba0beed16a551004d3efa78793f0",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.11",
"size": 19439621,
"upload_time": "2025-08-05T15:28:19",
"upload_time_iso_8601": "2025-08-05T15:28:19.677882Z",
"url": "https://files.pythonhosted.org/packages/00/ea/9eff680e93be6e62834a2c2ed987fe462ad43cf9ec4539ea3c6b9487b117/cosmosim-2.5.3-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "ef73102dfb07f34685c7ac8ccb1b7d319c73653ad3afa93dbbf256ea2b53e9a7",
"md5": "d25ff7b26e63fa2448d1157a2095249b",
"sha256": "5e1ca8adebe1300758f6e864483439d351dd9696b6075f4715ef15ccf51866c6"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "d25ff7b26e63fa2448d1157a2095249b",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.11",
"size": 22675445,
"upload_time": "2025-08-05T15:28:22",
"upload_time_iso_8601": "2025-08-05T15:28:22.484648Z",
"url": "https://files.pythonhosted.org/packages/ef/73/102dfb07f34685c7ac8ccb1b7d319c73653ad3afa93dbbf256ea2b53e9a7/cosmosim-2.5.3-cp311-cp311-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "34b4d7b016d43f76a867d87eb4f1bbba7051fbb4cf4e3e34fb1d3cb4b1df1daa",
"md5": "b56558b8ea9994f71b02b0d85524a18b",
"sha256": "f48997fcaae61766e4e09b3365ee0b86f4a0b19ac064472078acc1228df4dc83"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp312-cp312-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "b56558b8ea9994f71b02b0d85524a18b",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.11",
"size": 19440094,
"upload_time": "2025-08-05T15:28:25",
"upload_time_iso_8601": "2025-08-05T15:28:25.269041Z",
"url": "https://files.pythonhosted.org/packages/34/b4/d7b016d43f76a867d87eb4f1bbba7051fbb4cf4e3e34fb1d3cb4b1df1daa/cosmosim-2.5.3-cp312-cp312-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "4a51fa8f104dc6a03f267fbb752aee303238c0a3f4b0075325f37701741bb571",
"md5": "97be0eaa1dcd650bdd88436758d85ef1",
"sha256": "e226d5daac8a80a09191d415340df7d8776691a0155ff31e8addc84a36c44ef9"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "97be0eaa1dcd650bdd88436758d85ef1",
"packagetype": "bdist_wheel",
"python_version": "cp312",
"requires_python": ">=3.11",
"size": 22674533,
"upload_time": "2025-08-05T15:28:28",
"upload_time_iso_8601": "2025-08-05T15:28:28.533112Z",
"url": "https://files.pythonhosted.org/packages/4a/51/fa8f104dc6a03f267fbb752aee303238c0a3f4b0075325f37701741bb571/cosmosim-2.5.3-cp312-cp312-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "848562b60eb2f0f74c001b97c1a7516c41637e779f4cb66fd30c1163fe316de7",
"md5": "6b666f51debb9fd7f30cce2278301536",
"sha256": "a1ac25355160b193b60bce8e86e6441020eca94ae7b58e7e86bd57b2cc1bdda5"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp313-cp313-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "6b666f51debb9fd7f30cce2278301536",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.11",
"size": 19440451,
"upload_time": "2025-08-05T15:28:32",
"upload_time_iso_8601": "2025-08-05T15:28:32.010105Z",
"url": "https://files.pythonhosted.org/packages/84/85/62b60eb2f0f74c001b97c1a7516c41637e779f4cb66fd30c1163fe316de7/cosmosim-2.5.3-cp313-cp313-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "b1f227f5d11e6b7efb91d672aa418b6534a76b3bb8e6e9240b50cd8a69e81c78",
"md5": "8fcafa4b9b27580386b847c7f287cdd2",
"sha256": "18c07ecd83bb33672837a23d2edd6b3d596a9097d378b48535690dad93430268"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "8fcafa4b9b27580386b847c7f287cdd2",
"packagetype": "bdist_wheel",
"python_version": "cp313",
"requires_python": ">=3.11",
"size": 22674520,
"upload_time": "2025-08-05T15:28:35",
"upload_time_iso_8601": "2025-08-05T15:28:35.022052Z",
"url": "https://files.pythonhosted.org/packages/b1/f2/27f5d11e6b7efb91d672aa418b6534a76b3bb8e6e9240b50cd8a69e81c78/cosmosim-2.5.3-cp313-cp313-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "0255455b47b76ca58d49b2f7c31dbc1865850e37c8ac9d940c06055829204353",
"md5": "92f21665a5b094b027e8da5d174f526c",
"sha256": "e9bb26d846f49a6d94069ff68e57d35bb5cae0f84726a4a01233894fd8debbd0"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp314-cp314-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "92f21665a5b094b027e8da5d174f526c",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.11",
"size": 19441581,
"upload_time": "2025-08-05T15:28:37",
"upload_time_iso_8601": "2025-08-05T15:28:37.494027Z",
"url": "https://files.pythonhosted.org/packages/02/55/455b47b76ca58d49b2f7c31dbc1865850e37c8ac9d940c06055829204353/cosmosim-2.5.3-cp314-cp314-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "23c1b06fb256df517cd70104765758524087cabd5cf0c0077cb582084918f2f7",
"md5": "3257c3fa5c8eb9221d80bb3d3405b8d6",
"sha256": "4d1719b333338366e616e7c851d761f6b40eb8a21f28bffda1bdca3b94f363c4"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "3257c3fa5c8eb9221d80bb3d3405b8d6",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.11",
"size": 22674978,
"upload_time": "2025-08-05T15:28:39",
"upload_time_iso_8601": "2025-08-05T15:28:39.862613Z",
"url": "https://files.pythonhosted.org/packages/23/c1/b06fb256df517cd70104765758524087cabd5cf0c0077cb582084918f2f7/cosmosim-2.5.3-cp314-cp314-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "8b69ecda1da99fa792c184e99dd1bb853cd7636ad217a28f4c776dfa41f0e83f",
"md5": "223d0073b44fed7e9f2d339585d170f9",
"sha256": "011a1c000cb3f5232a33e2bb5993b5dc6f0925323c19b50a090ce37b568fc6b9"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp314-cp314t-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "223d0073b44fed7e9f2d339585d170f9",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.11",
"size": 23777159,
"upload_time": "2025-08-05T15:28:42",
"upload_time_iso_8601": "2025-08-05T15:28:42.527268Z",
"url": "https://files.pythonhosted.org/packages/8b/69/ecda1da99fa792c184e99dd1bb853cd7636ad217a28f4c776dfa41f0e83f/cosmosim-2.5.3-cp314-cp314t-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "65ac45b06a96aad3cfb3b98f832eb45493b9f683fae5cdee755f7f85c9200e5b",
"md5": "965c178d4ea95aaa6f4d0f840f69bea1",
"sha256": "478747dd4b713f8ce68130591ee3c2b6c69f1cd254901b010f84cb092ea76301"
},
"downloads": -1,
"filename": "cosmosim-2.5.3-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"has_sig": false,
"md5_digest": "965c178d4ea95aaa6f4d0f840f69bea1",
"packagetype": "bdist_wheel",
"python_version": "cp314",
"requires_python": ">=3.11",
"size": 30088441,
"upload_time": "2025-08-05T15:28:45",
"upload_time_iso_8601": "2025-08-05T15:28:45.051848Z",
"url": "https://files.pythonhosted.org/packages/65/ac/45b06a96aad3cfb3b98f832eb45493b9f683fae5cdee755f7f85c9200e5b/cosmosim-2.5.3-cp314-cp314t-manylinux_2_27_x86_64.manylinux_2_28_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "070eed4aaec185b725cdf3a14b4ccdf4402b53c04bac2d8362d4df32fdaeb653",
"md5": "56768bf815377617bde447596bd928f1",
"sha256": "aec9d5638008ace8b22f37c6ad1967615c59fc072650c4c2718f78b6c75ea5b2"
},
"downloads": -1,
"filename": "cosmosim-2.5.3.tar.gz",
"has_sig": false,
"md5_digest": "56768bf815377617bde447596bd928f1",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 22163467,
"upload_time": "2025-08-05T15:28:47",
"upload_time_iso_8601": "2025-08-05T15:28:47.509744Z",
"url": "https://files.pythonhosted.org/packages/07/0e/ed4aaec185b725cdf3a14b4ccdf4402b53c04bac2d8362d4df32fdaeb653/cosmosim-2.5.3.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-08-05 15:28:47",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "CosmoAI-AES",
"github_project": "CosmoSim",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"requirements": [
{
"name": "sympy",
"specs": [
[
">=",
"1.13"
]
]
},
{
"name": "numpy",
"specs": []
},
{
"name": "matplotlib",
"specs": []
},
{
"name": "opencv-python",
"specs": []
},
{
"name": "pandas",
"specs": []
}
],
"lcname": "cosmosim"
}