Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
295 commits
Select commit Hold shift + click to select a range
6182b5a
correct plot add locs
andrewbaxter439 Nov 29, 2024
36a14ac
add wellbeing and life sat to parameters
andrewbaxter439 Nov 29, 2024
7b41f23
added reg file for wellbeing variables
andrewbaxter439 Dec 3, 2024
566b345
added wellbeing (redundantly?) to regression managers
andrewbaxter439 Dec 3, 2024
f113e2a
adding wellbeing regression processes
andrewbaxter439 Dec 3, 2024
1722547
fixed format of reg wellbeing file
andrewbaxter439 Dec 3, 2024
8b3558e
updated reg_wellbeing with all sheets
andrewbaxter439 Dec 9, 2024
0890737
replace reg_wellbeing
andrewbaxter439 Dec 9, 2024
0b00b1b
regression names added
andrewbaxter439 Dec 9, 2024
cb51d8c
added life satisfaction score updates
andrewbaxter439 Dec 9, 2024
126976f
correcting column numbers
andrewbaxter439 Dec 9, 2024
f2be2ca
moved WB2/LS2 to correct place
andrewbaxter439 Dec 9, 2024
49ac1e5
zerod wb and ls step 2s for testing
andrewbaxter439 Dec 10, 2024
e515181
corrected stage 2 models to add to stage 1
andrewbaxter439 Dec 10, 2024
91bac83
change order of welbbeing calc to after income
andrewbaxter439 Dec 10, 2024
1799faf
change Life Satisfaction to integer
andrewbaxter439 Dec 12, 2024
53c2e04
corrected wellbeing coefficients
andrewbaxter439 Dec 18, 2024
c667bb0
adding wellbeing validators
andrewbaxter439 Dec 18, 2024
dd93224
add validator handling for wellbeing
andrewbaxter439 Dec 18, 2024
967834f
plotting validators
andrewbaxter439 Dec 18, 2024
e77fd35
set wellbeing lag columns as transient
andrewbaxter439 Dec 18, 2024
a722c1f
updated wellbeing estimates
andrewbaxter439 Jan 6, 2025
35292a6
updated wellbeing reg files
andrewbaxter439 Jan 6, 2025
c7fcd43
updated validation statistics to include wellbeing up to 2022
andrewbaxter439 Jan 7, 2025
29a45cd
code for creating mcs/pcs/dls validation statistics
andrewbaxter439 Jan 8, 2025
4bb75a6
renamed wellbeing to health across all code files
andrewbaxter439 Jan 8, 2025
e0e7071
updated estimates of wellbeing variables
andrewbaxter439 Jan 8, 2025
7dd3ac4
updated validation statistics for new variable names
andrewbaxter439 Jan 17, 2025
60b59e9
uncheck testing button
andrewbaxter439 Jan 8, 2025
48d3ded
tidied column numbers
andrewbaxter439 Jan 8, 2025
46414be
added Dag_L1 enum
andrewbaxter439 Jan 8, 2025
398b1fe
re-estimated health and wellbeing variables
andrewbaxter439 Jan 9, 2025
7a85a90
added lagged home ownership status
andrewbaxter439 Jan 15, 2025
1619503
amended regression files
andrewbaxter439 Jan 15, 2025
f4e025a
amend column numbers
andrewbaxter439 Jan 16, 2025
ada4ce6
fix xslx format
andrewbaxter439 Jan 16, 2025
198bfdc
Merge pull request #117 from centreformicrosimulation/114-update-trai…
andrewbaxter439 Jan 20, 2025
2f007d3
remove redundant wellbeing file
andrewbaxter439 Jan 20, 2025
77d8fc9
updated reg files with better weighting
andrewbaxter439 Jan 20, 2025
7427251
experimental - removing early duplicates of HM1 etc collection events
andrewbaxter439 Jan 21, 2025
99d0a5e
changing all mental health and wellbeing events to not run in 1st year
andrewbaxter439 Jan 23, 2025
198a496
longitudinal weighting in regressions
andrewbaxter439 Jan 23, 2025
0770a7e
add missing sheet
andrewbaxter439 Jan 23, 2025
78db765
Merge pull request #79 from MRC-CSO-SPHSU/feature/wellbeing-and-life-…
andrewbaxter439 Jan 29, 2025
90d3138
Added logging for database queries
andrewbaxter439 Feb 4, 2025
056a084
get and persist processed using databaseUrl
andrewbaxter439 Feb 5, 2025
ace87c8
extract RunDatabasePath to private value for SimPathsModel
andrewbaxter439 Feb 5, 2025
4622139
removing redundant logging
andrewbaxter439 Feb 6, 2025
d5fdfbc
passing `persistRootDatabase` as argument
andrewbaxter439 Feb 6, 2025
c33cabd
alternative with long option
andrewbaxter439 Mar 3, 2025
74b8b96
added argument to persist or not persist population and location
andrewbaxter439 Mar 4, 2025
6caf861
if persist=none then load starting pop from run database
andrewbaxter439 Mar 4, 2025
93ea449
try out each type of run in actions
andrewbaxter439 Mar 5, 2025
46dba45
tidied default and actiosn builds
andrewbaxter439 Mar 5, 2025
eeeefb8
adding tot_pen and nvmhome as missing at start
andrewbaxter439 Mar 11, 2025
f637393
export tot_pen and nvm_home at end
andrewbaxter439 Mar 11, 2025
f84fe7a
updated initial population with restored variables
andrewbaxter439 Mar 11, 2025
4214431
Merge pull request #129 from centreformicrosimulation/experimental/ef…
andrewbaxter439 Mar 12, 2025
f9f6483
generate uc rceipt by hh
andrewbaxter439 Mar 12, 2025
64b3eba
uc and nonuc receipt by person from benefit income variable
andrewbaxter439 Mar 12, 2025
032cbfe
keep new econ benefits variables in final dataset
andrewbaxter439 Mar 12, 2025
46cf696
move benefit receipt calc to correct place
andrewbaxter439 Mar 12, 2025
1648cf9
updated initial population with new variables
andrewbaxter439 Mar 17, 2025
21d2181
Person EQ5D column added
andrewbaxter439 Mar 17, 2025
e83cd2a
EQ5D enum added
andrewbaxter439 Mar 17, 2025
d2ea2f9
Added polynomials and interactions for pcs and mcs
andrewbaxter439 Mar 17, 2025
6d89d8a
eq5d coefficient excel sheet
andrewbaxter439 Mar 17, 2025
41d319c
add enum and prediction call in person
andrewbaxter439 Mar 17, 2025
5001f24
add regression processes
andrewbaxter439 Mar 17, 2025
dc9b520
corrected spelling in excel
andrewbaxter439 Mar 17, 2025
3456e7e
add update eq5d
andrewbaxter439 Mar 17, 2025
c8ff3e4
add lower bound to eq5d score
andrewbaxter439 Mar 17, 2025
c359970
add some (failing) person tests
andrewbaxter439 Mar 18, 2025
fe728b8
Further testing for person eq5d - correct calcs
andrewbaxter439 Mar 18, 2025
720061f
Merge branch 'experiment/person_testing' into feature/148-add-eq5d-as…
andrewbaxter439 Mar 18, 2025
0726f14
adding franks coefficients option
andrewbaxter439 Mar 18, 2025
35a6dad
updated tests (running in wrong order)
andrewbaxter439 Mar 18, 2025
28519b0
correct order for EQ5D tests
andrewbaxter439 Mar 18, 2025
90e458b
EQ5D tests trigger events rather than call update methods directly
andrewbaxter439 Mar 18, 2025
9af6fe0
refactored `deq5d` to `he_eq5d` and similar
andrewbaxter439 Mar 18, 2025
10c322d
Merge pull request #147 from centreformicrosimulation/bugfix/145-miss…
andrewbaxter439 Mar 18, 2025
d4b4d78
Merge pull request #150 from centreformicrosimulation/feature/uc_clai…
andrewbaxter439 Mar 18, 2025
fcfd42a
Make aging private
andrewbaxter439 Mar 19, 2025
9b55497
change `healthEQ5D` method to private
andrewbaxter439 Mar 19, 2025
e955154
construct person in setup
andrewbaxter439 Mar 19, 2025
e88c371
rename setup
andrewbaxter439 Mar 19, 2025
92f9364
clearer test naming
andrewbaxter439 Mar 19, 2025
833e645
extract load eq5d parameters as public method
andrewbaxter439 Mar 19, 2025
681bd5b
only re-load eq5d params (and reset)
andrewbaxter439 Mar 19, 2025
9719062
remove test order assertions
andrewbaxter439 Mar 19, 2025
a528a4f
remove redundant re-calling of health regression loading
andrewbaxter439 Mar 19, 2025
cc3063e
simplify not loading all parameters
andrewbaxter439 Mar 20, 2025
cd11f2b
change parameter loading to BeforeEach
andrewbaxter439 Mar 20, 2025
70929ab
add annotation to new Person enums
andrewbaxter439 Mar 20, 2025
99ac342
Merge pull request #151 from centreformicrosimulation/feature/148-add…
andrewbaxter439 Mar 20, 2025
54fa259
generate outline Employment statistics file
andrewbaxter439 Mar 28, 2025
d4f2bf5
add employmetn history filter
andrewbaxter439 Mar 28, 2025
fd4bc98
update to calculate all validation statistics
andrewbaxter439 Mar 28, 2025
e08f682
added collector arguments for employment statistics - default off
andrewbaxter439 Mar 28, 2025
e7fe65a
working employment stats
andrewbaxter439 Mar 28, 2025
ac130ca
bad test
andrewbaxter439 Mar 28, 2025
f884b10
add employment lag1 getters
andrewbaxter439 Mar 28, 2025
27aaad8
workign tests for filtering employed and unemploed
andrewbaxter439 Mar 28, 2025
88c2b5b
working tests for proportions in/out of employment
andrewbaxter439 Mar 28, 2025
b86b138
Update src/test/java/simpaths/data/filters/EmploymentHistoryFilterTes…
andrewbaxter439 Mar 28, 2025
e22c63c
Update src/test/java/simpaths/data/filters/EmploymentHistoryFilterTes…
andrewbaxter439 Mar 28, 2025
87fa2b9
add a config file to only report employment transitions statistics
andrewbaxter439 Mar 28, 2025
8ce401a
added a test class of person with an ID
andrewbaxter439 Mar 25, 2025
a321079
added a test class of Benefit Unit with id
andrewbaxter439 Mar 25, 2025
96d3586
Updated Person test class with seed passed to Innovation object
andrewbaxter439 Mar 28, 2025
fc1f9cf
Merge branch 'feature/flexible-person-bu-test-classes' into feature/1…
andrewbaxter439 Mar 28, 2025
52b25a1
change all persons to test person new class
andrewbaxter439 Mar 28, 2025
e2f38e3
Replicate run-simpaths GitHub action as a Maven integration test
igelstorm Mar 27, 2025
da65305
Split into multiple tests
igelstorm Mar 28, 2025
bd229c5
Compare Statistics1.csv file to expected output
igelstorm Mar 28, 2025
9cbbb5f
Include file comparison in test failure message
igelstorm Mar 29, 2025
e1361aa
Make sure integration tests run in order
igelstorm Mar 29, 2025
cf80e53
Compare all Statistics*.csv files
igelstorm Mar 31, 2025
58c6df4
Run integration tests in GitHub Action
igelstorm Mar 31, 2025
411e183
Revert "change all persons to test person new class"
andrewbaxter439 Apr 2, 2025
4e29271
Revert "Merge branch 'feature/flexible-person-bu-test-classes' into f…
andrewbaxter439 Apr 2, 2025
d5ea53a
change filter tests to parameterised tests across person array
andrewbaxter439 Apr 2, 2025
c7a6ccc
simpler tests
andrewbaxter439 Apr 2, 2025
f235d47
Apply suggestions from code review
andrewbaxter439 Apr 14, 2025
6015943
Merge pull request #160 from centreformicrosimulation/feature/159-add…
andrewbaxter439 Apr 14, 2025
9d89c2d
reads in parameter args
andrewbaxter439 Nov 21, 2024
1662a91
update parameters (when building model)
andrewbaxter439 Nov 21, 2024
195d870
parse parameter config arguments
andrewbaxter439 Apr 14, 2025
cdd2ce7
de-finalise some potential changing parameters
andrewbaxter439 Nov 21, 2024
64c3afa
Let additional GH actions test persist=root and persist=none
igelstorm Apr 15, 2025
c158f2d
Rename integration tests *IntegrationTest instead of *IT
igelstorm Apr 15, 2025
eee6638
No need for integration test step to depend on build
igelstorm Apr 15, 2025
6bb5102
Merge pull request #162 from igelstorm/ei-integration-test
igelstorm Apr 17, 2025
320f43c
Merge pull request #164 from centreformicrosimulation/experimental/pa…
justin-ven May 6, 2025
84ec80e
update 00_master.do to reflect new wave of UKHLS
justin-ven May 6, 2025
1bda44a
Merge remote-tracking branch 'upstream/develop' into develop
justin-ven May 6, 2025
31c88f5
Merge pull request #168 from justin-ven/develop
justin-ven May 6, 2025
3dee2ae
Update 00_master.do
pbronka May 20, 2025
4a210f6
Make sure do files are not commented out
pbronka May 20, 2025
b0bf30b
Introduce l1_lhw (lagged hours of work) to initial populations
pbronka May 20, 2025
301c12d
Correct typo
pbronka May 23, 2025
557c9ab
Update pom.xml
pbronka May 23, 2025
913f783
Load l1_lhw variable
pbronka May 23, 2025
1ea1199
Update population_initial_UK_2019.csv
pbronka May 27, 2025
164af08
Initialise lag_1 of hours worked weekly in the model
pbronka May 27, 2025
93fd708
Merge pull request #174 from pbronka/bug-fix-log-4-j
justin-ven May 27, 2025
90f0864
reduce default popsize parameter from 170,000 to 50,000
andrewbaxter439 May 27, 2025
90ea478
Update Person.java
pbronka May 27, 2025
d2a044f
modifying `Run` and `Setup` cli arguments
andrewbaxter439 May 28, 2025
44f64b3
ensure gui-less run starts up
andrewbaxter439 May 28, 2025
6175ceb
omit observer for gui-less runs
andrewbaxter439 May 28, 2025
89c0e35
reduce default popsize parameter from 170,000 to 50,000
andrewbaxter439 May 27, 2025
2a1beeb
one doomed test for singlerun.jar
andrewbaxter439 May 28, 2025
d7fcc56
make sure runs start from 2019 in singlerun test
andrewbaxter439 May 28, 2025
b6fde23
attempt to detect when single run simulation ends
andrewbaxter439 May 28, 2025
c4c4644
adding quit statement to finish headless simulation
andrewbaxter439 May 28, 2025
a17c829
Update src/main/java/simpaths/experiment/SimPathsStart.java
andrewbaxter439 May 29, 2025
9d95175
new health statistics file
andrewbaxter439 Apr 14, 2025
8fe4742
add health stats calls to collector
andrewbaxter439 Apr 14, 2025
29809d8
fuller health stats calculations
andrewbaxter439 Apr 14, 2025
fccbd5a
add qaly and wellby calcs
andrewbaxter439 Apr 15, 2025
e51fd65
remove redundant benefit statistics
andrewbaxter439 May 30, 2025
1eee849
Update src/main/java/simpaths/data/statistics/HealthStatistics.java
andrewbaxter439 May 30, 2025
169b5f8
switch eq5d process to end of year
andrewbaxter439 Apr 16, 2025
3dce696
multirun `-DBsetup` option now checks whether training data is used
andrewbaxter439 May 30, 2025
a982ac3
create test config files
andrewbaxter439 May 30, 2025
0cff4c2
change integration tests to setup using multirun db setup
andrewbaxter439 May 30, 2025
6ca929c
changes actions tests to setup via multirun dbsetup
andrewbaxter439 May 30, 2025
a928a24
Update src/main/java/simpaths/data/Parameters.java
andrewbaxter439 May 30, 2025
85251c8
read training flag in DBSetup to check where policy schedule should be
andrewbaxter439 May 30, 2025
82a9fc2
fix spelling of EUROMOD in training filename finder
andrewbaxter439 May 30, 2025
f7f7bbf
change dbsetup to copy training policy schedule if training
andrewbaxter439 May 30, 2025
be6b361
update Statistics1.csv
andrewbaxter439 May 30, 2025
759e5f6
update Statistics21.csv
andrewbaxter439 May 30, 2025
72b35c8
update Statistics31.csv
andrewbaxter439 May 30, 2025
d0355cf
Merge pull request #186 from centreformicrosimulation/bugfix/185-mult…
andrewbaxter439 Jun 2, 2025
e65834f
Merge pull request #5 from MRC-CSO-SPHSU/bug-fix-update-initial-popul…
pbronka Jun 2, 2025
0f42101
Merge branch 'develop' into bug-fix-update-initial-population
pbronka Jun 2, 2025
cfb181a
Merge pull request #172 from pbronka/bug-fix-update-initial-population
andrewbaxter439 Jun 2, 2025
289f667
add gender filter to SimPathsCollector for wellbeing statistics
andrewbaxter439 Jun 2, 2025
2a6a1e2
move adjustmant variable to class
andrewbaxter439 Jun 2, 2025
461bb43
alternate age+gender filter
andrewbaxter439 Dec 8, 2023
c31a7ed
re-insert adjustment variable
andrewbaxter439 Jun 2, 2025
7486ae9
apply gender filter
andrewbaxter439 Jun 2, 2025
1410ca9
tidy file header
andrewbaxter439 Jun 2, 2025
d8bb52c
added health statistics to testing
andrewbaxter439 Jun 2, 2025
07520f0
update expected health statistics
andrewbaxter439 Jun 2, 2025
6c476e7
remove failing test
andrewbaxter439 Jun 2, 2025
6252f69
Merge branch 'develop' into feature/182-add-statisticswellbeingjava-t…
andrewbaxter439 Jun 2, 2025
6ab56af
Revert "remove failing test"
andrewbaxter439 Jun 2, 2025
6741ffd
corrected health statistics test file
andrewbaxter439 Jun 2, 2025
10abc69
Merge pull request #183 from centreformicrosimulation/feature/182-add…
andrewbaxter439 Jun 2, 2025
9a09d84
Added yearly cross-sectional employment statistics
andrewbaxter439 Jun 3, 2025
080e6e0
Add break statement at file parsing to avoid default value
andrewbaxter439 Jun 4, 2025
688836a
Merge pull request #190 from centreformicrosimulation/feature/175-add…
andrewbaxter439 Jun 4, 2025
a4f7864
Merge pull request #195 from centreformicrosimulation/bugfix/194-miss…
andrewbaxter439 Jun 4, 2025
5040cfa
Merge pull request #187 from centreformicrosimulation/feature/180-cha…
justin-ven Jun 10, 2025
1e6d59d
Merge pull request #178 from centreformicrosimulation/bugfix/reduce-d…
justin-ven Jun 10, 2025
f841dfa
Merge pull request #179 from centreformicrosimulation/experimental/ad…
justin-ven Jun 10, 2025
62a8f6a
added benefits uc/nonuc lagged/nonlagged getters/setters
andrewbaxter439 Mar 6, 2025
e314689
added enums calling getters for uc/nonuc
andrewbaxter439 Mar 6, 2025
5ad2f3d
safe check if benefit lags are null
andrewbaxter439 Mar 6, 2025
e293047
set benefit receipt lags at baseline value in intialisation
andrewbaxter439 Mar 6, 2025
3fbc46e
setting UC/nonUC flags at initial population matching
andrewbaxter439 Mar 6, 2025
656467f
update lagged variables
andrewbaxter439 Mar 6, 2025
6e01cf5
added uc receipt to babies
andrewbaxter439 Mar 6, 2025
8cebeca
added `bsauc_s` to EUROMOD input
andrewbaxter439 Mar 6, 2025
15686a0
fixed variable names
andrewbaxter439 Mar 12, 2025
dff00a3
Added person enums for UC receipt by hours
andrewbaxter439 Mar 25, 2025
4060ee1
updated MCS2 sheets with additional UC elements
andrewbaxter439 Mar 25, 2025
af36b41
column names for MCS to include UC params
andrewbaxter439 Mar 25, 2025
ccc233c
add markers of benefit receipt to read from initial files
andrewbaxter439 Mar 25, 2025
f3c65ac
add a UC rollout flag and temporary logic
andrewbaxter439 Mar 26, 2025
e9534a6
Update src/main/java/simpaths/model/BenefitUnit.java
andrewbaxter439 Mar 28, 2025
708caaf
added dummy columns for UC effects for all outcomes
andrewbaxter439 Apr 4, 2025
6d3fa1b
UC flat effects applied
andrewbaxter439 Jun 12, 2025
13c293b
added legacy benefit parameters to setup readin
andrewbaxter439 Apr 14, 2025
de50c73
updating legacy benefit and UC receipt from donor population
andrewbaxter439 Apr 14, 2025
3a8b9c7
receives benefit flags default to zero
andrewbaxter439 Apr 14, 2025
c007083
update benefit receipt across benefit units
andrewbaxter439 Apr 14, 2025
11f23a1
alternative UC receipt detection
andrewbaxter439 Apr 14, 2025
3feaa69
make uc_rollout not final so able to change
andrewbaxter439 Apr 14, 2025
08eb0f2
Update src/main/java/simpaths/model/Person.java
andrewbaxter439 Jun 3, 2025
da64a12
add `bsauc_s` dummy to training data 2011-2013
andrewbaxter439 Jun 3, 2025
4f0e2b7
new validation health statistics
andrewbaxter439 Jun 3, 2025
71d962f
parse config files at start of run to set most parameters
andrewbaxter439 Apr 15, 2025
28cb1bf
updated health statistics
andrewbaxter439 Jun 13, 2025
f296a9d
Tidy DB Setup runs
andrewbaxter439 Jun 13, 2025
562ca26
Merge pull request #202 from centreformicrosimulation/feature/add_uc_…
justin-ven Jun 17, 2025
18e44b8
Add process to update financial distress
igelstorm May 30, 2025
ab22c2f
Add financial distress parameters
igelstorm Jun 2, 2025
e7ca48b
Update financial distress after MCS
igelstorm Jun 2, 2025
6e287f9
Add financial distress to input data
igelstorm Jun 2, 2025
5a21266
Get financial distress from initial population data
igelstorm Jun 3, 2025
c06d81b
Impute financial distress when missing
igelstorm Jun 3, 2025
299dfa8
Remove unneeded getter/setter
igelstorm Jun 3, 2025
fe73817
Ensure financial distress is set when cloning or giving birth to people
igelstorm Jun 4, 2025
903f010
Newborns inherit their mother's financial distress
igelstorm Jun 4, 2025
fa41d11
Add ethnicity (dot) variable into simulation
igelstorm Jun 9, 2025
b5d4a27
Update financial distress estimates
igelstorm Jun 9, 2025
640ad01
Remove predictors no longer used by financial distress process
igelstorm Jun 9, 2025
339a6a6
Add financial distress variable to training data
igelstorm Jun 12, 2025
5a9be0d
Update expected output for integration test
igelstorm Jun 12, 2025
210f99a
Update financial distress before health/mental health
igelstorm Jun 18, 2025
77816cc
Update financial distress parameters
igelstorm Jun 19, 2025
38ccb25
Update expected output
igelstorm Jun 19, 2025
94ffedb
Merge pull request #198 from igelstorm/feature/financial-distress
andrewbaxter439 Jun 20, 2025
84ea5a5
Adding getters and setters
dav-sonn Jul 4, 2025
49a2ea0
New estimates
dariaple Jul 4, 2025
2dd81c5
Merge pull request #208 from dav-sonn/bug-fix/collector-fix
pbronka Jul 4, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
85 changes: 67 additions & 18 deletions .github/workflows/SimPathsBuild.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,52 +14,101 @@ on:

jobs:
build:

runs-on: [ ubuntu-latest ]

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK 19
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: '19'
distribution: 'temurin'
cache: maven
- name: Build with Maven
run: mvn -B package --file pom.xml

- uses: actions/upload-artifact@v3
- uses: actions/upload-artifact@v4
with:
name: simpaths_jars
path: ./*.jar

run-simpaths:
needs: build

run-integration-tests:
runs-on: [ ubuntu-latest ]
steps:
- uses: actions/checkout@v4
- name: Set up JDK 19
uses: actions/setup-java@v4
with:
java-version: '19'
distribution: 'temurin'
cache: maven
- name: Run integration tests
run: mvn verify

run-simpaths-start:
needs: build
runs-on: [ ubuntu-latest ]
steps:
- uses: actions/checkout@v4
- name: Set up JDK 19
uses: actions/setup-java@v4
with:
java-version: '19'
distribution: 'temurin'
- uses: actions/download-artifact@v4
with:
name: simpaths_jars
path: .
- name: Do one full Setup and Run with SimPathsStart (mimicking GUI run)
run: java -jar singlerun.jar -c UK -s 2019 -g false --rewrite-policy-schedule
- name: Check input db exists
id: check_file
uses: thebinaryfelix/check-file-existence-action@1.0.0
with:
files: 'input/input.mv.db, input/EUROMODpolicySchedule.xlsx, input/DatabaseCountryYear.xlsx'

run-simpaths-persist-root:
needs: build
runs-on: [ ubuntu-latest ]
steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up JDK 19
uses: actions/setup-java@v3
uses: actions/setup-java@v4
with:
java-version: '19'
distribution: 'temurin'

- uses: actions/download-artifact@v3
- uses: actions/download-artifact@v4
with:
name: simpaths_jars
path: .

- name: Setup run
run: java -jar singlerun.jar -c UK -s 2017 -Setup -g false --rewrite-policy-schedule

run: java -jar multirun.jar -DBSetup -config test_create_database.yml
- name: Check input db exists
id: check_file
uses: thebinaryfelix/check-file-existence-action@1.0.0
with:
files: 'input/input.mv.db, input/EUROMODpolicySchedule.xlsx, input/DatabaseCountryYear.xlsx'
- name: Do two runs with persistence to root database
run: java -jar multirun.jar -config test_run.yml --persist=root

- name: Do one run
run: java -jar multirun.jar -p 20000 -s 2019 -e 2022 -r 100 -n 2 -g false
run-simpaths-no-persist:
needs: build
runs-on: [ ubuntu-latest ]
steps:
- uses: actions/checkout@v4
- name: Set up JDK 19
uses: actions/setup-java@v4
with:
java-version: '19'
distribution: 'temurin'
- uses: actions/download-artifact@v4
with:
name: simpaths_jars
path: .
- name: Setup run
run: java -jar multirun.jar -DBSetup -config test_create_database.yml
- name: Check input db exists
id: check_file
uses: thebinaryfelix/check-file-existence-action@1.0.0
with:
files: 'input/input.mv.db, input/EUROMODpolicySchedule.xlsx, input/DatabaseCountryYear.xlsx'
- name: Do two runs with no persistence
run: java -jar multirun.jar -config test_run.yml --persist=none
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -336,3 +336,5 @@ input/EUROMODoutput/current/uk_2024_std.txt
input/EUROMODoutput/current/uk_2025_std.txt
input/EUROMODoutput/current/uk_2026_std.txt
input/EUROMODoutput/current/uk_2027_std.txt
input/InitialPopulations/current/*
input/InitialPopulations/testing/*
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -56,7 +56,7 @@ To run the SimPathsStart setup phases and set up a population for subsequent mul
- `-c` Country ['UK' or 'IT']
- `-s` Start year
- `-g` [true/false] show/hide gui
- `-r` Re-write policy schedule from detected policy files
- `--rewrite-policy-schedule` Re-write policy schedule from detected policy files
- `-Setup` do setup phases (creating input populations database) only

e.g.
Expand Down
83 changes: 83 additions & 0 deletions analysis/employment analysis.do
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
/**************************************************************************************
*
* PROGRAM TO ANALYSE EMPLOYMENT TRANSATIONS
*
* Last version: Justin van de Ven, 06 May 2025
* First version: Justin van de Ven, 06 May 2025
*
**************************************************************************************/

clear all
global moddir = "C:\Justin\dev\SimPaths\output\20250506123915\csv"
global outdir = "C:\Justin\dev\SimPaths\analysis\"
cd "$outdir"


/**************************************************************************************
* start
**************************************************************************************/
global year_start = 2019
global year_end = 2030


/**************************************************************************************
* load data
**************************************************************************************/
import delimited using "$moddir/BenefitUnit.csv", clear
rename *, l
rename id_benefitunit idbenefitunit
gsort idbenefitunit time
save "$outdir/temp0", replace
import delimited using "$moddir/Person.csv", clear
rename *, l
rename id_person idperson
rename socialcareprovision socialcareprovision_p
gsort idbenefitunit time idperson
merge m:1 idbenefitunit time using temp0
gsort time idbenefitunit idperson
gen refbenefitunit = 0
replace refbenefitunit = 1 if (idbenefitunit != idbenefitunit[_n-1])

destring hoursworkedweekly, replace force
recode hoursworkedweekly (missing=0)
gen idNotEmployedAdult = (hoursworkedweekly<0.1 & dag>17)

gen led = (deh_c3=="Low")
gen med = (deh_c3=="Medium")
gen hed = (deh_c3=="High")

gen male = (dgn=="Male")

gen idna = (dag>17)
gen idnk = (dag<18)
bys time idbenefitunit: egen partnered = sum(idna)
replace partnered = partnered - 1
bys time idbenefitunit: egen nk = sum(idnk)

save "$outdir/temp1", replace


/**************************************************************************************
* analysis
**************************************************************************************/
use "$outdir/temp1", clear
global year_ref = $year_start-1

// block 1 statistics
gen emp = (hoursworkedweekly>0.5)
gen emp_to_nemp = 0
gen nemp_to_emp = 0
gsort idperson time
replace emp_to_nemp = 1 if (idperson[_n-1]==idperson & time[_n-1]+1==time & emp[_n-1]==1 & emp==0)
replace nemp_to_emp = 1 if (idperson[_n-1]==idperson & time[_n-1]+1==time & emp[_n-1]==0 & emp==1)
order time idperson hoursworkedweekly emp emp_to_nemp
matrix store1 = J($year_end-$year_ref,2,.)
forvalues yy = $year_start/$year_end {
qui{
sum emp_to_nemp if (time==`yy' & dag>17 & dag<65), mean
mat store1[`yy'-${year_ref},1] = r(mean)
sum nemp_to_emp if (time==`yy' & dag>17 & dag<65), mean
mat store1[`yy'-${year_ref},2] = r(mean)
}
}
matlist store1
4 changes: 3 additions & 1 deletion config/create database.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,6 @@
# This file can be used to override defaults for multirun arguments.

# CONFIG FILE TO CREATE NEW DATABASE OBJECTS

# Arguments of the SimPathsMultiRun object overridden by the command-line
countryString: "United Kingdom"
maxNumberOfRuns: 1
Expand Down
64 changes: 64 additions & 0 deletions config/employmentTransStats.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# This file can be used to override defaults for multirun arguments.
# Arguments of the SimPathsMultiRun object overridden by the command-line

maxNumberOfRuns: 1
executeWithGui: false
randomSeed: 606
startYear: 2011
endYear: 2020
popSize: 50000

# Arguments passed to the SimPathsModel
model_args:
# maxAge: 130
# fixTimeTrend: true
# timeTrendStopsIn: 2017
# fixRandomSeed: true
# sIndexTimeWindow: 5
# sIndexAlpha: 2
# sIndexDelta: 0
# savingRate: 0
# initialisePotentialEarningsFromDatabase: true
# useWeights: false
# useSBAMMatching:
# projectMortality: true
# alignFertility: true
# labourMarketCovid19On: false
# projectFormalChildcare: true
# donorPoolAveraging: true
# alignEmployment: false
# projectSocialCare: false
# enableIntertemporalOptimisations: true
# responsesToLowWageOffer: true
# saveImperfectTaxDBMatches: false
# useSavedBehaviour: false
# readGrid: "laptop serial"
# saveBehaviour: true
# employmentOptionsOfPrincipalWorker: 3
# employmentOptionsOfSecondaryWorker: 3
# responsesToEducation: true
# responsesToRetirement: false
# responsesToHealth: true
# responsesToDisability: false
# minAgeForPoorHealth: 50
# responsesToRegion: false

# Arguments that alter processing of the SimPathsMultiRun object
innovation_args:
# randomSeedInnov: false
# intertemporalElasticityInnov: false
# labourSupplyElasticityInnov: true

collector_args:
# calculateGiniCoefficients: false
# exportToDatabase: false
# exportToCSV: true
persistStatistics: false
persistStatistics2: false
persistStatistics3: false
persistPersons: false
persistBenefitUnits: false
persistHouseholds: false
persistEmploymentStatistics: true
# dataDumpStartTime: 0L
# dataDumpTimePeriod: 1.0
10 changes: 10 additions & 0 deletions config/test_create_database.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
# FOR TESTING
# CONFIG FILE TO CREATE NEW DATABASE OBJECTS

# Arguments of the SimPathsMultiRun object overridden by the command-line
countryString: "United Kingdom"
executeWithGui: false
randomSeed: 606
startYear: 2019
endYear: 2030
popSize: 40000
17 changes: 17 additions & 0 deletions config/test_run.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# This file can be used to override defaults for multirun arguments.
# Arguments of the SimPathsMultiRun object overridden by the command-line

maxNumberOfRuns: 2
executeWithGui: false
randomSeed: 100
startYear: 2019
endYear: 2022
popSize: 20000

collector_args:
persistStatistics: true
persistStatistics2: true
persistStatistics3: true
persistPersons: false
persistBenefitUnits: false
persistHouseholds: false
Binary file modified input/DatabaseCountryYear.xlsx
Binary file not shown.
Loading
Loading