Hacktoberfest 2026: the issues maintainers tagged for October, open and beginner-friendly. Browse Hacktoberfest issues

Joint targeted coverage ranks locations by p_inf, which crowds out workplaces

Open
#162 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
3/5
Estimated time
1-2 days
Newbie friendliness
55/100
Issue type
Bug
Clarity
Mostly clear
Activity status
Active
Tech stack
r
Domain
backend

Research direction

Start with generate_joint_intervention_switches() and trace its use of ach_to_p_inf(), volume_per_person_<setting>, and size_per_individual_<setting>. Review #139 and the discussion in #142 to resolve whether the budget metric uses floor area or air volume. Done means the selected benefit-per-budget ranking is implemented and compared with the current default-parameter coverage results for workplaces, schools, and leisure locations.

Written by the indexing model from the issue text.

Description

In joint targeted mode, generate_joint_intervention_switches() ranks the pooled workplace, school and leisure locations by ach_to_p_inf(). This was agreed in #142 as a minimum fix.

p_inf divides by volume_per_person_<setting>, which the transmission model never uses. The model's per-location FOI is riskiness_i × (1 − efficacy_i) × beta_s × I_i / N_i. As a result, leisure (8 m³ per person) outranks workplaces (27 m³ per person) at the same ACH. With default parameters at 33% joint coverage, only 4–13% of workplace people are covered, against 50–58% of leisure.

Proposed fix: rank by benefit per unit of budget, beta_s × riskiness_i × efficacy_i / cost_i, where cost_i depends on the coverage target:

  • Per person: 1
  • Per space: space per person × delta_i, since larger spaces cost more to ventilate. Space could be floor area or air volume. The current square_footage target uses size_per_individual_<setting>, which is documented as either, while Wells-Riley uses volume_per_person_<setting>. Which one to use is still open (see #139).

This gives a per-person and a per-space ranking to compare.

Dominant language
R
Stars
8
Forks
4
PR merge metrics
No merged PRs in 30d

Getting set up

This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from petal-code/helios

All issues in petal-code/helios

Similar issues

More R issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.