# imperialchepi/healthgps-examples architecture

> Architecture diagram of the GitHub repository imperialchepi/healthgps-examples, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-30). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/imperialchepi/healthgps-examples
- Repository: https://github.com/imperialchepi/healthgps-examples

## Overview

This repository is a collection of Health-GPS example model configurations and supporting parameter data, not the simulator itself. The intended workflow is to select a model directory and run it with the separate Health-GPS console program; sample result CSVs are also included. The README documents HPC job submission, while the available source index contains no R-script excerpts, so links involving those generators or specific configuration internals are omitted.

Main entry points: [`HLM_France`](https://github.com/imperialchepi/healthgps-examples/tree/main/HLM_France) (France HLM), [`HLM_India`](https://github.com/imperialchepi/healthgps-examples/tree/main/HLM_India) (India HLM), [`Dummy_disease_test`](https://github.com/imperialchepi/healthgps-examples/tree/main/Dummy_disease_test) (Dummy disease), [`KevinHall_FINCH`](https://github.com/imperialchepi/healthgps-examples/tree/main/KevinHall_FINCH) (FINCH model)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_models["Example models"]
  node_hlm_france["France HLM"]
  node_hlm_india["India HLM"]
  node_dummy_test["Dummy disease"]
  node_finch["FINCH model"]
  node_kevin_india["India scenarios"]
  node_pif["PIF scenarios"]
end

subgraph group_generators["Parameter generators"]
  node_factor_gen["Factor means"]
  node_height_weight["Height and weight<br/>[HeightWeight.R]"]
  node_nutrient_gen["Nutrient parameters"]
  node_activity_gen["Activity parameters"]
  node_policy_gen["Policy parameters"]
  node_quantile_gen["Quantiles"]
  node_region_gen["Region and ethnicity<br/>[Region_Ethnicity.R]"]
end

subgraph group_outputs["Sample outputs"]
  node_sample_results["France run results"]
end

node_user(("Model user"))
node_healthgps["Health-GPS console"]

node_user -->|"runs separately"| node_healthgps
node_healthgps -->|"uses configuration"| node_hlm_france
node_healthgps -.->|"uses configuration"| node_hlm_india
node_healthgps -.->|"uses configuration"| node_dummy_test
node_healthgps -.->|"uses configuration"| node_finch
node_healthgps -.->|"uses configuration"| node_kevin_india
node_healthgps -.->|"uses configuration"| node_pif

click node_hlm_france "https://github.com/imperialchepi/healthgps-examples/tree/main/HLM_France"
click node_hlm_india "https://github.com/imperialchepi/healthgps-examples/tree/main/HLM_India"
click node_dummy_test "https://github.com/imperialchepi/healthgps-examples/tree/main/Dummy_disease_test"
click node_finch "https://github.com/imperialchepi/healthgps-examples/tree/main/KevinHall_FINCH"
click node_kevin_india "https://github.com/imperialchepi/healthgps-examples/tree/main/KevinHall_India"
click node_pif "https://github.com/imperialchepi/healthgps-examples/tree/main/KevinHall_PIF"
click node_factor_gen "https://github.com/imperialchepi/healthgps-examples/blob/main/R/FactorsMeanGenerator.R"
click node_height_weight "https://github.com/imperialchepi/healthgps-examples/blob/main/R/HeightWeight.R"
click node_nutrient_gen "https://github.com/imperialchepi/healthgps-examples/blob/main/R/NutrientParamGenerator.R"
click node_activity_gen "https://github.com/imperialchepi/healthgps-examples/blob/main/R/PhysicalActivityParam.R"
click node_policy_gen "https://github.com/imperialchepi/healthgps-examples/blob/main/R/PolicyParamGenerator.R"
click node_quantile_gen "https://github.com/imperialchepi/healthgps-examples/blob/main/R/QuantilesGenerator.R"
click node_region_gen "https://github.com/imperialchepi/healthgps-examples/blob/main/R/Region_Ethnicity.R"
click node_sample_results "https://github.com/imperialchepi/healthgps-examples/tree/main/HLM_France_results-50sims"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_hlm_france,node_hlm_india,node_dummy_test,node_finch,node_kevin_india,node_pif,node_user toneBlue
class node_factor_gen,node_height_weight,node_nutrient_gen,node_activity_gen,node_policy_gen,node_quantile_gen,node_region_gen toneAmber
class node_sample_results toneMint
class node_healthgps toneIndigo
```

## Components

### Example models

- [France HLM](https://github.com/imperialchepi/healthgps-examples/tree/main/HLM_France): `HLM_France`
- [India HLM](https://github.com/imperialchepi/healthgps-examples/tree/main/HLM_India): `HLM_India`
- [Dummy disease](https://github.com/imperialchepi/healthgps-examples/tree/main/Dummy_disease_test): `Dummy_disease_test`
- [FINCH model](https://github.com/imperialchepi/healthgps-examples/tree/main/KevinHall_FINCH): `KevinHall_FINCH`
- [India scenarios](https://github.com/imperialchepi/healthgps-examples/tree/main/KevinHall_India): `KevinHall_India`
- [PIF scenarios](https://github.com/imperialchepi/healthgps-examples/tree/main/KevinHall_PIF): `KevinHall_PIF`

### Parameter generators

- [Factor means](https://github.com/imperialchepi/healthgps-examples/blob/main/R/FactorsMeanGenerator.R): `R/FactorsMeanGenerator.R`
- [Height and weight](https://github.com/imperialchepi/healthgps-examples/blob/main/R/HeightWeight.R): `R/HeightWeight.R`
- [Nutrient parameters](https://github.com/imperialchepi/healthgps-examples/blob/main/R/NutrientParamGenerator.R): `R/NutrientParamGenerator.R`
- [Activity parameters](https://github.com/imperialchepi/healthgps-examples/blob/main/R/PhysicalActivityParam.R): `R/PhysicalActivityParam.R`
- [Policy parameters](https://github.com/imperialchepi/healthgps-examples/blob/main/R/PolicyParamGenerator.R): `R/PolicyParamGenerator.R`
- [Quantiles](https://github.com/imperialchepi/healthgps-examples/blob/main/R/QuantilesGenerator.R): `R/QuantilesGenerator.R`
- [Region and ethnicity](https://github.com/imperialchepi/healthgps-examples/blob/main/R/Region_Ethnicity.R): `R/Region_Ethnicity.R`

### Sample outputs

- [France run results](https://github.com/imperialchepi/healthgps-examples/tree/main/HLM_France_results-50sims): `HLM_France_results-50sims`

### Other components

- **Model user**
- **Health-GPS console**

## Connections

- Model user → Health-GPS console: runs separately (evidence: `README.md`)
- Health-GPS console → France HLM: uses configuration (evidence: `README.md`)
- Health-GPS console → India HLM: uses configuration
- Health-GPS console → Dummy disease: uses configuration
- Health-GPS console → FINCH model: uses configuration
- Health-GPS console → India scenarios: uses configuration
- Health-GPS console → PIF scenarios: uses configuration
