Skip to main content

FPsim: Family Planning Simulator

This repository contains the code for the Institute for Disease Modeling's family planning simulator, FPsim.

FPsim is currently under development.

User guide

FPsim is designed as an open-source tool for family planning research. However, it is not a silver bullet tool. It is designed to answer complex questions about emerging dynamics in complex social and behavioral systems. Its strength stems from a life-course approach, which allows researchers to examine how compounding and temporal effects unfold over women's lives, and how these individual-level changes lead to macro-level outcomes.

Before using FPsim, please refer to the following guidelines:

  • FPsim is only as good as the data and assumptions provided. Be sure you are familiar with both before using FPsim.
  • FPsim is not a replacement for good data. The model cannot tell you what demand for a hypothetical method will be.
  • FPsim is not a replacement for descriptive statistics. Before using FPsim, assess your primary research question(s). Can they be answered using descriptive statistics?
  • FPsim cannot predict exogenous events. Use caution when interpreting and presenting results. For example, FPsim cannot predict regional conflicts or pandemics, nor their impacts on FP services.

Repo structure

The structure is as follows:

  • FPsim, in the folder fpsim, is a standalone Python library for performing family planning analyses.
  • Within fpsim, the locations folder contains parameters and input data for all countries currently calibrated.
  • Docs are in the docs folder.
  • Examples are in the examples folder.
  • Tests are in the tests folder.

Installation

Run pip install fpsim to install and its dependencies from PyPI. Alternatively, clone the repository and run pip install -e . (including the final dot!). To be able to run tests and build the docs as well, use pip install -e .[dev].

Documentation

Documentation is available at https://docs.fpsim.org.

Disclaimer

The code in this repository was developed by IDM and other collaborators to support our joint research on family planning. We've made it publicly available under the MIT License to provide others with a better understanding of our research and an opportunity to build upon it for their own work. Note that FPsim depends on a number of user-installed Python packages that can be installed automatically via pip install. We make no representations that the code works as intended or that we will provide support, address issues that are found, or accept pull requests. You are welcome to create your own fork and modify the code to suit your own modeling needs as contemplated under the MIT License. See the contributing and code of conduct READMEs for more information.

Release files for fpsim 3.5.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for fpsim 3.5.3
File Size Uploaded
fpsim-3.5.3.tar.gz 1.3 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for fpsim 3.5.3
File Interpreter ABI Platform
fpsim-3.5.3-py3-none-any.whl Python 3 none any Details

Total release size: 2.3 MB

Release files / fpsim-3.5.3.tar.gz

Download URL fpsim-3.5.3.tar.gz
Size 1.3 MB
Tags Source
SHA-256 checksum
How to use checksums
1cc4e6941ce65cf0718f79ee35c7f78aca1d5c09f3affef919f00c0ebd5d79b9
BLAKE2b-256 checksum
How to use checksums
a2ab4ccb90f856b091e4719648a7980ccb7601803583085a40d7a1f81efe1ec5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 27, 2026.

Transparency log

Release files / fpsim-3.5.3-py3-none-any.whl

Download URL fpsim-3.5.3-py3-none-any.whl
Size 998.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
54b57fd43abb3dff2d286b17dd39cb9581773d22d359e88ea8a657981d561451
BLAKE2b-256 checksum
How to use checksums
3a7d75eb9ad11571a0d83e80b10741cb46f4ef2628ffce45d60a08317a0c40cb
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.7

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Mar 27, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

3.5.3 This release

2 release files

3.5.2

2 release files

3.3.0

2 release files

3.2.0

2 release files

3.0.0

2 release files

1.0.4

2 release files

0.28.1

2 release files

0.22.0

2 release files

0.19.2

2 release files

0.19.1

2 release files

0.12.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page