{"id":34656428,"url":"https://github.com/andim/optimmune","last_synced_at":"2026-05-23T13:31:53.604Z","repository":{"id":29771873,"uuid":"33315824","full_name":"andim/optimmune","owner":"andim","description":"Source code accompanying the paper \"How a well-adapted immune system is organized\"","archived":false,"fork":false,"pushed_at":"2017-06-21T18:50:09.000Z","size":74,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-09-09T06:41:54.359Z","etag":null,"topics":["biophysics","openscience"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/andim.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-04-02T15:17:45.000Z","updated_at":"2019-05-17T21:35:34.000Z","dependencies_parsed_at":"2022-09-07T00:52:31.413Z","dependency_job_id":null,"html_url":"https://github.com/andim/optimmune","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/andim/optimmune","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andim%2Foptimmune","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andim%2Foptimmune/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andim%2Foptimmune/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andim%2Foptimmune/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/andim","download_url":"https://codeload.github.com/andim/optimmune/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/andim%2Foptimmune/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28005981,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-24T02:00:07.193Z","response_time":83,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["biophysics","openscience"],"created_at":"2025-12-24T18:04:13.025Z","updated_at":"2025-12-24T18:07:32.296Z","avatar_url":"https://github.com/andim.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Optimal immune repertoires\n\nThis repository contains the code associated with the manuscript\n\nMayer, Balasubramanian, Mora, Walczak : [How a well adapted immune system is organized](http://dx.doi.org/10.1073/pnas.1421827112), PNAS 2015\n\nIt allows reproduction of all numerical results reported in the manuscript.\n\n[![DOI](https://zenodo.org/badge/doi/10.5281/zenodo.16796.svg)](http://dx.doi.org/10.5281/zenodo.16796)\n\n## Dependencies\n\nThe code is written in Python and depends on a number of numerical and scientific libraries.\nBelow we give the version numbers of the packages for which the code is known to run.\n\n* Python 2.7.8\n* Numpy 1.8.2\n* Scipy 0.16.0\n* Matplotlib 1.3.1\n* Cython 0.20.2 and relevant development versions of libraries (only needed for figure 5) \n\nOptionally pyFFTW can be used to speed up some of the calculations.\nIn the absence of this package the code automatically falls back to the corresponding scipy functions.\n\n## Usage\n\nDownload the source code by cloning the repository `git clone https://github.com/andim/optimmune`. \nFollow the following set of instructions in the given order.\n\n* run `make cython` in library directory (only needed for figure 5)\n* run `python run*.py` in figure directories to produce data.\n    - In a number of cases the optimization files produce results for a range of parameters. Which parameters are used is controlled by a command line argument. The command line argument is a single integer between one and the number of different parameter combinations. On a computing cluster on which a grid engine is installed the looping over different arguments can be performed via the provided submit files (`qsub arrayjob.sh`).\n    - Warning: some of the optimizations run for a long time (\u003e 1h).\n* for some figures the results need to be postprocessed by invoking `python calc*.py`\n* run `python fig*.py` in figure directories to produce figures\n\nHere the * is a placeholder for the specific filenames. Note: As most of the simulations are stochastic you generally do not get precisely equivalent plots.\n\n## License\n\nThe source code is freely available under an MIT license, unless otherwise noted within a file.\nThe plots are licensed under a Creative commons attributions license (CC-BY).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandim%2Foptimmune","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fandim%2Foptimmune","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fandim%2Foptimmune/lists"}