Appendix A. Model Equations
Stocks:
Distress:
High_Distress = ∫(increasing_to_high + leaving_military_high_distressed
− decreasing_to_moderate - dying_high)dt
Low_Distress = ∫(leaving_military_low_distressed + decreasing_to_low − dying_low
− increasing_to_moderate)dt
Moderate_Distress = ∫(increasing_to_moderate + decreasing_to_moderate
+ leaving_military_moderate_distressed − increasing_to_high − decreasing_to_low
− dying_moderate)dt
Suicides:
Suicide_Deaths = ∫(increasing_deaths)dt
Treatment:
Comm_Screening[Distress_Level] = ∫(starting_comm_screening[Distress_Level]
− treating_with_clinical_CRP[Distress_Level] − treating_with_comm_CRP[Distress_Level]
− treating_at_VA[Distress_Level] − leaving_comm_no_treatment[Distress_Level])dt
Receiving_bCBT_Treatment[Distress_Level] = ∫(entering_bCBT_treatment[Distress_Level] −
finishing_bCBT_treatment[Distress_Level] − dropping_out_of_treatment[Distress_Level]dt
transit time(Receiving_bCBT_Treatment) = treatment_time
capacity(Receiving_bCBT_Treatment) = treatment_capacity
Receiving_Caring_Contacts[Distress_Level] = ∫(entering_caring_contacts[Distress_Level]
− finishing_caring_contacts[Distress_Level]
− dropping_out_of_caring_contacts[Distress_Level])dt
transit time(Receiving_Caring_Contacts) = caring_contacts_treatment_time
capacity(Receiving_Caring_Contacts) = caring_contacts_capacity
Receiving_Comm_Caring_Contacts[Distress_Level] =
∫(entering_comm_caring_contacts[Distress_Level]
− finishing_comm_caring_contacts[Distress_Level]
− dropping_out_of_comm_caring_contacts[Distress_Level])dt
transit time(Receiving_Comm_Caring_Contacts) = caring_contacts_treatment_time
capacity(Receiving_Comm_Caring_Contacts) = comm_caring_contacts_capacity
Screening[Distress_Level] = ∫(seeking_treatment[Distress_Level]
− referring_to_bCBT[Distress_Level] − "treating_with_CRP/SPI"[Distress_Level]
− treating_with_lethal_means[Distress_Level] − leaving_no_treatment[Distress_Level])dt
Self_referral_To_Treatment[Distress_Level] =
∫(at_risk_noticing_distress_impacts[Distress_Level] − seeking_treatment[Distress_Level])dt
Treated_Caring_Contacts[Distress_Level] = ∫(finishing_caring_contacts[Distress_Level] −
dying_caring_contacts[Distress_Level])dt
Treated_Comm_Caring_Contacts[Distress_Level] =
∫(finishing_comm_caring_contacts[Distress_Level]
− dying_comm_caring_contacts[Distress_Level])dt
Treated_Comm_Lethal_Means[Distress_Level] = ∫(treating_comm_lethal_means[Distress_Level]
− losing_comm_lethal_means_impact[Distress_Level])
Treated_Comm_Screened[Distress_Level] = ∫(leaving_comm_no_treatment[Distress_Level]
− losing_comm_screening_impact[Distress_Level])dt
Treated_Lock_Dist[Distress_Level] = ∫(treating_lock_distribution[Distress_Level]
− losing_distribution_impact[Distress_Level])dt
Treated_Low_Touch[Distress_Level] = ∫(treating_low_touch[Distress_Level]
− losing_low_touch_impact[Distress_Level])dt
Treated_Partner_Storage[Distress_Level] = ∫(treating_partner_storage[Distress_Level]
− losing_partner_storage_impact[Distress_Level])dt
Treated_Peer_Support[Distress_Level] = ∫(treating_peer_support[Distress_Level]
− losing_peer_support_impact[Distress_Level])dt
Treated_Screened[Distress_Level] = ∫(finished_screening[Distress_Level]
− losing_screening_impact[Distress_Level])dt
Treated_TM_Gatekeeper[Distress_Level] = ∫(treating_TM_gatekeeper[Distress_Level]
− losing_TM_gatekeeper_impact[Distress_Level])dt
Treated_TM_Storage[Distress_Level] = ∫(treating_TM_storage[Distress_Level]
− losing_TM_storage_impact[Distress_Level])dt
Treated_with_bCBT[Distress_Level] = ∫(finishing_bCBT_treatment[Distress_Level]
+ comm_finishing_bCBT[Distress_Level] − dying_treated_bCBT[Distress_Level])dt
Treated_with_Comm_CRP[Distress_Level] = ∫(treating_with_comm_CRP[Distress_Level]
− dying_treated_comm_CRP[Distress_Level])dt
Treated_with_CRP[Distress_Level] = ∫("treating_with_CRP/SPI"[Distress_Level]
+ cross_treating_with_CRP[Distress_Level] − dying_treated_CRP[Distress_Level])dt
Treated_with_CRP_at_VA[Distress_Level] = ∫(treating_at_VA[Distress_Level]
− dying_treated_at_VA[Distress_Level])dt
Treated_with_Lethal_Means[Distress_Level] = ∫(treating_with_lethal_means[Distress_Level]
− dying_treated_lethal_means[Distress_Level])dt
Waiting_For_bCBT_Treatment[Distress_Level] = ∫(referring_to_bCBT[Distress_Level]
− entering_bCBT_treatment[Distress_Level] − giving_up_waiting[Distress_Level])dt
Flows:
Distress:
decreasing_to_low = Transitions.medium_to_low_distress_rate*Moderate_Distress
decreasing_to_moderate = Transitions.high_to_medium_distress_rate*High_Distress
dying_high = Suicides.distressed_suicides[High] + normal_death_rate*High_Distress
dying_low = Suicides.distressed_suicides[Low] + normal_death_rate*Low_Distress
dying_moderate = Suicides.distressed_suicides[Medium] + normal_death_rate*Moderate_Distress
increasing_to_high = Transitions.medium_to_high_distress_rate*Moderate_Distress
increasing_to_moderate = Transitions.low_to_medium_distress_rate*Low_Distress
leaving_military_high_distressed = leaving_military_high
leaving_military_low_distressed = leaving_military_low
leaving_military_moderate_distressed = leaving_military_moderate
Suicides:
increasing_deaths = SUM(distressed_suicides + screened_suicides + comm_screened_suicides
+ caring_contacts_suicides + comm_CRP_suicides + CRP_treated_suicides
+ bCBT_treated_suicides) + lethal_means_suicides + additional_suicides
Treatment:
at_risk_noticing_distress_impacts[Distress_Level] = treatment_switch
*capacity_utilization_clinical*desired_screening
cross_treating_with_CRP[Distress_Level] = community_treated_CRP
dropping_out_of_caring_contacts[Distress_Level] =
leakage outflow(Receiving_Caring_Contacts)
leakage fraction = caring_contacts_dropout_rate
dropping_out_of_comm_caring_contacts[Distress_Level] =
leakage outflow(Receiving_Comm_Caring_Contacts)
leakage fraction = comm_caring_contacts_dropout_rate
dropping_out_of_treatment[Distress_Level] = leakage outflow(Receiving_bCBT_Treatment)
leakage fraction = treatment_dropout_rate
dying_caring_contacts[Distress_Level] = normal_death_rate*Treated_Caring_Contacts +
Suicides.caring_contacts_treated_suicides
dying_comm_caring_contacts[Distress_Level] = normal_death_rate
*Treated_Comm_Caring_Contacts + Suicides.comm_caring_contacts_suicides
dying_treated_at_VA[Distress_Level] = normal_death_rate*Treated_with_CRP_at_VA
dying_treated_bCBT[Distress_Level] = Suicides.bCBT_treated_suicides
+ normal_death_rate*Treated_with_bCBT
dying_treated_comm_CRP[Distress_Level] = normal_death_rate*Treated_with_Comm_CRP
+ Suicides.comm_CRP_suicides
dying_treated_CRP[Distress_Level] = normal_death_rate*Treated_with_CRP
+ Suicides.CRP_treated_suicides
dying_treated_lethal_means[Distress_Level] = normal_death_rate*Treated_with_Lethal_Means
+ Suicides.lethal_means_treated_suicides
entering_bCBT_treatment[Distress_Level] = queue outflow(Waiting_For_bCBT_Treatment)
entering_caring_contacts[Distress_Level] = treatment_switch*capacity_utilization_clinical
*desired_caring_contacts
entering_comm_caring_contacts[Distress_Level] = treatment_switch
*capacity_utilization_community*desired_comm_caring_contacts
finished_screening[Distress_Level] = leaving_no_treatment + giving_up_waiting
+ dropping_out_of_treatment + dropping_out_of_caring_contacts
finishing_bCBT_treatment[Distress_Level] = conveyor outflow(Receiving_bCBT_Treatment)
finishing_caring_contacts[Distress_Level] = conveyor outflow(Receiving_Caring_Contacts)
finishing_comm_caring_contacts[Distress_Level] =
conveyor outflow(Receiving_Comm_Caring_Contacts)
giving_up_waiting[Distress_Level] = queue outflow(Waiting_For_bCBT_Treatment)
purge after age = average_time_before_giving_up
leaving_comm_no_treatment[Distress_Level] = starting_comm_screening
− CRP_treatment_flows
leaving_no_treatment[Distress_Level] = seeking_treatment − other_treatments
losing_comm_lethal_means_impact[Distress_Level] =
Treated_Comm_Lethal_Means/time_to_lose_comm_lethal_means_impact
+ Suicides.comm_lethal_means_suicides
losing_comm_screening_impact[Distress_Level] =
Treated_Comm_Screened/time_to_lose_comm_screening_impact
+ Suicides.comm_screened_suicides
losing_distribution_impact[Distress_Level] =
Treated_Lock_Dist/time_to_lose_distribution_impact + Suicides.lock_distribution_suicides
losing_low_touch_impact[Distress_Level] =
Treated_Low_Touch/time_to_lose_low_touch_impact + Suicides.low_touch_suicides
losing_partner_storage_impact[Distress_Level] =
Treated_Partner_Storage/time_to_lose_partner_storage_impact
+ Suicides.partner_storage_suicides
losing_peer_support_impact[Distress_Level] =
Treated_Peer_Support/time_to_lose_peer_support_impact + Suicides.peer_support_suicides
losing_screening_impact[Distress_Level] = Treated_Screened/time_to_lose_screening_impact
+ Suicides.screened_suicides
losing_TM_gatekeeper_impact[Distress_Level] =
Treated_TM_Gatekeeper/time_to_lose_TM_gatekeeper_impact
+ Suicides.TM_gatekeeper_suicides
losing_TM_storage_impact[Distress_Level] =
Treated_TM_Storage/time_to_lose_TM_storage_impact + Suicides.TM_storage_suicides
referring_to_bCBT[Distress_Level] =
bCBT_treatment_distribution*capacity_utilization_clinical*Staffing.bCBT_capacity
seeking_treatment[Distress_Level] = Self_referral_To_Treatment/time_to_seek_treatment
starting_comm_screening[Distress_Level] =
treatment_switch*capacity_utilization_community*desired_comm_screening
treating_at_VA[Distress_Level] = comm_to_VA
treating_comm_lethal_means[Distress_Level] = treatment_switch
*capacity_utilization_community*desired_comm_lethal_means
treating_lock_distribution[Distress_Level] =
treatment_switch*capacity_utilization_community*desired_lock_distribution
treating_low_touch[Distress_Level] =
treatment_switch*capacity_utilization_community*desired_low_touch
treating_partner_storage[Distress_Level] =
treatment_switch*capacity_utilization_community*desired_partner_storage
treating_peer_support[Distress_Level] =
treatment_switch*capacity_utilization_community*desired_peer_support
treating_TM_gatekeeper[Distress_Level] =
treatment_switch*capacity_utilization_community*desired_TM_gatekeeper
treating_TM_storage[Distress_Level] =
treatment_switch*capacity_utilization_community*desired_TM_storage
treating_with_clinical_CRP[Distress_Level] = MIN(effective_CRP_capacity
− clinical_CRP_allocated, desired_comm_to_clinical_CRP)
treating_with_comm_CRP[Distress_Level] = MIN(effective_comm_CRP_capacity
− comm_CRP_allocated, desired_comm_to_comm_CRP)
"treating_with_CRP/SPI"[Distress_Level] = MAX(CRP_treatment_distribution
*capacity_utilization_clinical*Staffing.CRP_capacity − cross_treating_with_CRP, 0)
treating_with_lethal_means[Distress_Level] = lethal_means_treatment_distribution
*capacity_utilization_clinical*Staffing.lethal_means_capacity
Parameters and other variables:
Distress:
leaving_military_high_distressed = leaving_military_high
leaving_military_low_distressed = leaving_military_low
leaving_military_moderate_distressed = leaving_military_moderate
expected_fraction_distressed[Low] = 1 − initial_moderate_fraction − initial_high_fraction
expected_fraction_distressed[Medium] = initial_moderate_fraction
expected_fraction_distressed[High] = initial_high_fraction
fraction_distressed[Distress_Level] = population_by_distress/Total_Population
fraction_in_VA_treatment_end_state = 0.025
fraction_not_seeking_VA_care = 1 − fraction_in_VA_treatment_end_state
Initial_High_Distress = initial_high_fraction*Initial_Subject_Veteran_Population
initial_high_fraction = 0.04
Initial_Low_Distress = Initial_Subject_Veteran_Population
− (Initial_Moderate_Distress + Initial_High_Distress)
Initial_Moderate_Distress = initial_moderate_fraction*Initial_Subject_Veteran_Population
initial_moderate_fraction = 0.23
Initial_Subject_Veteran_Population
= fraction_not_seeking_VA_care*Initial_Veteran_Population
Initial_Veteran_Population = 18.8e6
leaving_military = leaving_military_per_year/months_per_year
leaving_military_high = initial_high_fraction*leaving_military
leaving_military_low = leaving_military − (leaving_military_moderate + leaving_military_high)
leaving_military_moderate = initial_moderate_fraction*leaving_military
leaving_military_per_year = 200000
normal_death_rate = (1/40)/12
population_by_distress[Low] = Low_Distress
population_by_distress[Medium] = Moderate_Distress
population_by_distress[High] = High_Distress
Total_Population = High_Distress + Low_Distress + Moderate_Distress
Suicides:
annual_attempt_rate_by_distress[Distress_Level]
= annual_attempts_by_distress/INIT(Distress.population_by_distress)
annual_attempts = annual_deaths/death_probability
annual_attempts_by_distress[Distress_Level] = attempts_distribution*annual_attempts
annual_deaths = (1 + underreporting_fraction)*base_annual_deaths
attempt_rate_bCBT_treated[Distress_Level] = (1 − bCBT_effectiveness)*attempt_rate_by_distress
attempt_rate_by_distress[Distress_Level] = annual_attempt_rate_by_distress/months_per_year
attempt_rate_caring_contacts_treated[Distress_Level]
= (1 − caring_contacts_effectiveness)*attempt_rate_by_distress
attempt_rate_comm_caring_contacts[Distress_Level]
= (1 − comm_caring_contacts_effectiveness)*attempt_rate_by_distress
attempt_rate_comm_CRP_treated[Distress_Level]
= (1 − comm_CRP_effectiveness)*attempt_rate_by_distress
attempt_rate_comm_lethal_means[Distress_Level]
= (1 − comm_lethal_means_effectiveness)*attempt_rate_by_distress
attempt_rate_comm_screening[Distress_Level]
= (1 − comm_screening_effectiveness)*attempt_rate_by_distress
attempt_rate_CRP_treated[Distress_Level] = (1 − CRP_effectiveness)*attempt_rate_by_distress
attempt_rate_enhanced_peer_support[Distress_Level] =
(1 − enhanced_peer_support_effectiveness)*attempt_rate_by_distress
attempt_rate_lethal_means_treated[Distress_Level]
= (1 − lethal_means_effectiveness)*attempt_rate_by_distress
attempt_rate_lock_distribution[Distress_Level]
= (1 − lock_distribution_effectiveness)*attempt_rate_by_distress
attempt_rate_low_touch[Distress_Level]
= (1 − low_touch_effectiveness)*attempt_rate_by_distress
attempt_rate_partner_storage[Distress_Level]
= (1 − partner_storage_effectiveness)*attempt_rate_by_distress
attempt_rate_screened[Distress_Level] = (1 − screening_effectiveness)*attempt_rate_by_distress
attempt_rate_TM_gatekeeper[Distress_Level]
= (1 − TM_gatekeeper_effectiveness)*attempt_rate_by_distress
attempt_rate_TM_storage[Distress_Level]
= (1 − TM_storage_effectiveness)*attempt_rate_by_distress
attempts_distribution[Low] = 0.04
attempts_distribution[Medium] = 0.15
attempts_distribution[High] = 0.81
base_annual_deaths = 6392
bCBT_effectiveness = 0.55
bCBT_treated_attempts[Distress_Level]
= attempt_rate_bCBT_treated*Treatment.Treated_with_bCBT
bCBT_treated_suicides[Distress_Level] = death_probability*bCBT_treated_attempts
caring_contacts_effectiveness = 0.5
caring_contacts_suicides[Distress_Level]
= caring_contacts_treated_suicides + comm_caring_contacts_suicides
caring_contacts_treated_attempts[Distress_Level]
= attempt_rate_caring_contacts_treated*Treatment.Treated_Caring_Contacts
caring_contacts_treated_suicides[Distress_Level]
= death_probability*caring_contacts_treated_attempts
change_in_lives_saved = lives_saved − HISTORY(lives_saved, TIME, -1)
comm_caring_contacts_attempts[Distress_Level]
= attempt_rate_comm_caring_contacts*Treatment.Treated_Comm_Caring_Contacts
comm_caring_contacts_effectiveness = 0.4
comm_caring_contacts_suicides[Distress_Level]
= death_probability*comm_caring_contacts_attempts
comm_CRP_attempts[Distress_Level]
= attempt_rate_comm_CRP_treated*Treatment.Treated_with_Comm_CRP
comm_CRP_effectiveness = 0.4
comm_CRP_suicides[Distress_Level] = death_probability*comm_CRP_attempts
comm_lethal_means_attempts[Distress_Level]
= attempt_rate_comm_lethal_means*Treatment.Treated_Comm_Lethal_Means
comm_lethal_means_effectiveness = 0.3
comm_lethal_means_suicides[Distress_Level] = death_probability*comm_lethal_means_attempts
comm_screened_attempts[Distress_Level]
= attempt_rate_comm_screening*Treatment.Treated_Comm_Screened
comm_screened_suicides[Distress_Level] = death_probability*comm_screened_attempts
comm_screening_effectiveness = 0.10
CRP_effectiveness = 0.5
CRP_treated_attempts[Distress_Level]
= attempt_rate_CRP_treated*Treatment.total_treated_with_CRP
CRP_treated_suicides[Distress_Level] = death_probability*CRP_treated_attempts
death_probability = 0.10
distressed_attempts[Distress_Level] = attempt_rate_by_distress
*MAX(Distress.population_by_distress − Treatment.treated, 0)
distressed_suicides[Distress_Level] = death_probability*distressed_attempts
enhanced_peer_support_effectiveness = 0.2
lethal_means_effectiveness = 0.2
lethal_means_suicides = SUM(lethal_means_treated_suicides + comm_lethal_means_suicides)
lethal_means_treated_attempts[Distress_Level]
= attempt_rate_lethal_means_treated*Treatment.Treated_with_Lethal_Means
lethal_means_treated_suicides[Distress_Level] =
death_probability*lethal_means_treated_attempts
lives_saved = MAX(base_suicide_deaths − Suicide_Deaths, 0)
Note: base_suicide_deaths is the saved data from running the model with no treatment
lock_distribution_attempts[Distress_Level]
= attempt_rate_lock_distribution*Treatment.Treated_Lock_Dist
lock_distribution_effectiveness = 0.05
lock_distribution_suicides[Distress_Level] = death_probability*lock_distribution_attempts
low_touch_attempts[Distress_Level] = attempt_rate_low_touch*Treatment.Treated_Low_Touch
low_touch_effectiveness = 0.05
low_touch_suicides[Distress_Level] = death_probability*low_touch_attempts
partner_storage_attempts[Distress_Level]
= attempt_rate_partner_storage*Treatment.Treated_Partner_Storage
partner_storage_effectiveness = 0.2
partner_storage_suicides[Distress_Level] = death_probability*partner_storage_attempts
peer_support_attempts[Distress_Level]
= attempt_rate_enhanced_peer_support*Treatment.Treated_Peer_Support
peer_support_suicides[Distress_Level] = death_probability*peer_support_attempts
screened_attempts[Distress_Level] = attempt_rate_screened*Treatment.Treated_Screened
screened_suicides[Distress_Level] = death_probability*screened_attempts
screening_effectiveness = 0.15
TM_gatekeeper_attempts[Distress_Level]
= attempt_rate_TM_gatekeeper*Treatment.Treated_TM_Gatekeeper
TM_gatekeeper_effectiveness = 0.15
TM_gatekeeper_suicides[Distress_Level] = death_probability*TM_gatekeeper_attempts
TM_storage_attempts[Distress_Level]
= attempt_rate_TM_storage*Treatment.Treated_TM_Storage
TM_storage_effectiveness = 0.1
TM_storage_suicides[Distress_Level] = death_probability*TM_storage_attempts
underreporting_fraction = 0.37
Transitions:
high_to_medium_distress_rate = normal_high_to_medium_distress_rate
low_to_medium_distress_rate = normal_low_to_medium_distress_rate
medium_to_high_distress_rate = normal_medium_to_high_distress_rate
medium_to_low_distress_rate = normal_medium_to_low_distress_rate
normal_high_to_medium_distress_rate = 0.25/12
normal_low_to_medium_distress_rate = 0.000562968166781
normal_medium_to_high_distress_rate = 0.00375779213118
normal_medium_to_low_distress_rate = 0.02/12
Treatment:
average_time_before_giving_up = 1
average_treatment_time = 3.375
bCBT_treatment_distribution[Low] = 0
bCBT_treatment_distribution[Medium] = 0
bCBT_treatment_distribution[High] = 1
capacity_utilization_clinical[Distress_Level] = f(IF TIME < STARTTIME + 6 THEN 100
ELSE Untreated_Population//desired_treatment_clinical):
(0.000, 0.000), (0.120, 0.120), (0.240, 0.282), (0.360, 0.455), (0.480, 0.629), (0.600, 0.798), (0.720, 0.897), (0.840, 0.948), (0.960, 0.972), (1.080, 0.987), (1.200, 1.000)
capacity_utilization_community[Distress_Level] = f(IF TIME < STARTTIME + 6 THEN 100
ELSE Untreated_Population//desired_treatment):
(0.000, 0.000), (0.120, 0.120), (0.240, 0.282), (0.360, 0.455), (0.480, 0.629), (0.600, 0.798), (0.720, 0.897), (0.840, 0.948), (0.960, 0.972), (1.080, 0.987), (1.200, 1.000)
caring_contacts_capacity = Staffing.caring_contacts_capacity*caring_contacts_treatment_time
caring_contacts_distribution[Low] = 0
caring_contacts_distribution[Medium] = 0.5
caring_contacts_distribution[High] = 0.5
caring_contacts_dropout_rate = 0.02
caring_contacts_treatment_time = 1
clinical_CRP_allocated[Low] = SUM(treating_with_clinical_CRP[Medium:High])
clinical_CRP_allocated[Medium] = treating_with_clinical_CRP[High]
clinical_CRP_allocated[High] = 0
comm_caring_contacts_capacity
= Staffing.comm_caring_contacts_capacity*caring_contacts_treatment_time
comm_caring_contacts_distribution[Low] = 0.2
comm_caring_contacts_distribution[Medium] = 0.7
comm_caring_contacts_distribution[High] = 0.1
comm_caring_contacts_dropout_rate = 0.03
comm_CRP_allocated[Low] = SUM(treating_with_comm_CRP[Medium:High])
comm_CRP_allocated[Medium] = treating_with_comm_CRP[High]
comm_CRP_allocated[High] = 0
comm_lethal_means_distribution[Low] = 0.4
comm_lethal_means_distribution[Medium] = 0.5
comm_lethal_means_distribution[High] = 0.1
comm_screened_crossover[Distress_Level]
= crossover_switch*comm_screened_crossover_rate*starting_comm_screening
comm_screening_distribution[Low] = 0.1
comm_screening_distribution[Medium] = 0.7
comm_screening_distribution[High] = 0.2
comm_to_VA[Distress_Level] = seek_VA_treatment_distribution*desired_comm_to_CRP
community_treated_bCBT[Distress_Level]
= SUM(comm_LM_crossover_to_bCBT + comm_screened_crossover_to_bCBT)
community_treated_CRP[Distress_Level] = comm_LM_crossover_to_CRP
+ comm_screened_crossover_to_CRP + treating_with_clinical_CRP
cross_treating_external_capacity_fraction = 1
CRP_treatment_distribution[Low] = 0.1
CRP_treatment_distribution[Medium] = 0.45
CRP_treatment_distribution[High] = 0.45
CRP_treatment_flows[Distress_Level] = treating_at_VA + treating_with_clinical_CRP
+ treating_with_comm_CRP
desired_caring_contacts[Distress_Level] =
caring_contacts_distribution*Staffing.caring_contacts_capacity
desired_comm_caring_contacts[Distress_Level]
= comm_caring_contacts_distribution*Staffing.comm_caring_contacts_capacity
desired_comm_lethal_means[Distress_Level]
= comm_lethal_means_distribution*Staffing.comm_lethal_means_capacity
desired_comm_screening[Distress_Level]
= comm_screening_distribution*Staffing.comm_screening_capacity
desired_comm_to_clinical_CRP[Distress_Level]
= seek_clinical_CRP_distribution*desired_comm_to_CRP
desired_comm_to_comm_CRP[Distress_Level]
= seek_comm_CRP_distribution*desired_comm_to_CRP
desired_comm_to_CRP[Distress_Level] = screening_positive_rate*starting_comm_screening
desired_lock_distribution[Distress_Level]
= lock_dist_distribution*Staffing.lock_distribution_capacity
desired_low_touch[Distress_Level] = low_touch_distribution*Staffing.low_touch_capacity
desired_partner_storage[Distress_Level]
= partner_storage_distribution*Staffing.partner_strategic_storage_capacity
desired_peer_support[Distress_Level]
= peer_support_distribution*Staffing.enhanced_peer_support_capacity
desired_screening[Distress_Level] = screening_distribution*Staffing.screening_capacity
desired_TM_gatekeeper[Distress_Level]
= TM_gatekeeper_distribution*Staffing.trusted_messenger_gatekeeper_capacity
desired_TM_storage[Distress_Level]
= TM_storage_distribution*Staffing.trusted_messenger_strategic_storage_capacity
desired_treatment[Distress_Level] = desired_TM_gatekeeper + desired_TM_storage
+ desired_caring_contacts + desired_comm_caring_contacts + desired_comm_lethal_means
+ desired_comm_screening + desired_lock_distribution + desired_low_touch
+ desired_partner_storage + desired_peer_support + desired_screening
desired_treatment_clinical[Distress_Level] = desired_caring_contacts + desired_comm_to_CRP
+ desired_comm_to_clinical_CRP + desired_screening
effective_comm_CRP_capacity = SUM(capacity_utilization_community)
/SIZE(Distress_Level)*Staffing.suicide_management_capacity
effective_CRP_capacity = SUM(capacity_utilization_clinical)/SIZE(Distress_Level)
*Staffing.CRP_capacity
in_treatment[Distress_Level] = treated + Waiting_Or_In_Treatment
lethal_means_treatment_distribution[Low] = 0.1
lethal_means_treatment_distribution[Medium] = 0.5
lethal_means_treatment_distribution[High] = 0.4
lock_dist_distribution[Low] = 0.4
lock_dist_distribution[Medium] = 0.5
lock_dist_distribution[High] = 0.1
low_touch_distribution[Low] = 0.4
low_touch_distribution[Medium] = 0.5
low_touch_distribution[High] = 0.1
normal_death_rate = (1/40)/12
other_treatments[Distress_Level] = "treating_with_CRP/SPI" + referring_to_bCBT
+ treating_with_lethal_means
partner_storage_distribution[Low] = 0.4
partner_storage_distribution[Medium] = 0.5
partner_storage_distribution[High] = 0.1
peer_support_distribution[Low] = 0
peer_support_distribution[Medium] = 0.4
peer_support_distribution[High] = 0.6
screening_distribution[Low] = 0.1
screening_distribution[Medium] = 0.5
screening_distribution[High] = 0.4
screening_positive_rate = 0.2
seek_clinical_CRP_distribution[Low] = 0
seek_clinical_CRP_distribution[Medium] = 0.1
seek_clinical_CRP_distribution[High] = 0.2
seek_comm_CRP_distribution[Low] = 0.03
seek_comm_CRP_distribution[Medium] = 0.07
seek_comm_CRP_distribution[High] = 0.10
seek_VA_treatment_distribution[Low] = 0.02
seek_VA_treatment_distribution[Medium] = 0.33
seek_VA_treatment_distribution[High] = 0.40
time_to_lose_comm_lethal_means_impact = 3
time_to_lose_comm_screening_impact = 1
time_to_lose_distribution_impact = 1
time_to_lose_low_touch_impact = 1
time_to_lose_partner_storage_impact = 2
time_to_lose_peer_support_impact = 3
time_to_lose_screening_impact = 1
time_to_lose_TM_gatekeeper_impact = 3
time_to_lose_TM_storage_impact = 3
time_to_seek_treatment = 0.5
TM_gatekeeper_distribution[Low] = 0.1
TM_gatekeeper_distribution[Medium] = 0.7
TM_gatekeeper_distribution[High] = 0.2
TM_storage_distribution[Low] = 0.4
TM_storage_distribution[Medium] = 0.5
TM_storage_distribution[High] = 0.1
total_treated_with_CRP[Distress_Level] = Treated_with_CRP + Receiving_bCBT_Treatment
treated[Distress_Level] = treated_short_term + treated_long_term
treated_long_term[Distress_Level] = Receiving_bCBT_Treatment + Treated_Caring_Contacts
+ Treated_Comm_Caring_Contacts + Treated_with_CRP + Treated_with_CRP_at_VA
+ Treated_with_Comm_CRP + Treated_with_Lethal_Means + Treated_with_bCBT
treated_short_term[Distress_Level] = Treated_Comm_Lethal_Means + Treated_Comm_Screened
+ Treated_Lock_Dist + Treated_Low_Touch + Treated_Partner_Storage
+ Treated_Peer_Support + Treated_Screened + Treated_TM_Gatekeeper
+ Treated_TM_Storage
treatment_capacity = Staffing.bCBT_capacity*average_treatment_time
treatment_dropout_rate = 0.01
treatment_switch = 0
treatment_time = average_treatment_time
Untreated_Population[Distress_Level]
= MAX(Distress.population_by_distress − in_treatment, 0)
Waiting_Or_In_Treatment[Distress_Level] = Self_referral_To_Treatment + Comm_Screening
+ Receiving_Caring_Contacts + Receiving_Comm_Caring_Contacts
+ Receiving_bCBT_Treatment + Screening + Waiting_For_bCBT_Treatment
Graphical functions:
capacity_utilization_clinical: As we approach capacity, efficiency tapers off.
capacity_utilization_community: As we approach capacity, efficiency tapers off.
Staffing.Screening_Reach: Sample staffing function for Cohort 4. All staffing functions show the resources for that treatment over time.