Skip to content

Commit 3a29859

Browse files
ywkim312Rashmil-1999longshuicy
authored
Updated the description to be more verbose (#651)
* Updated the description to be more verbose * Updated housing valuation recovery analysis * Updated INDP * Added period to INDP and housing valuation recovery * Updated Joplincge * Updated Joplin Empirical Building Restoration * Updated mean damage * Updated Montecarlo Limit State Probability * updated montecarlo failure probability * updated mlcge joplin * updated mlcge joplin * updated mlcge slc * updated meandamage * multipobjective retrofit optimization * nci functionality * Updated until joplincge * Updated indp.py * Removed ShelbyCGE * Updated changelog * added description to housing valuation recovery * update analyses desriptions * Removed quotation marks in desctiption for safety --------- Co-authored-by: Rashmil Panchani <damonsalvatore833@gmail.com> Co-authored-by: Chen Wang <cwang138@illinois.edu>
1 parent 5dd3625 commit 3a29859

File tree

24 files changed

+1549
-1039
lines changed

24 files changed

+1549
-1039
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,12 +5,15 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog](http://keepachangelog.com/)
66
and this project adheres to [Semantic Versioning](http://semver.org/).
77

8+
89
## [Unreleased]
910

1011
### Changed
1112
- Descriptions of the analyses to be more verbose. [#645](https://github.com/IN-CORE/pyincore/issues/645)
1213
- Descriptions of the analyses, inputs and parameters. [#649](https://github.com/IN-CORE/pyincore/issues/649)
1314
- Descriptions of the analyses, inputs and parameters. [#646](https://github.com/IN-CORE/pyincore/issues/646)
15+
- Descriptions of the analyses to be more verbose. [#647](https://github.com/IN-CORE/pyincore/issues/647)
16+
1417

1518
## [1.21.0] - 2025-02-12
1619

pyincore/analyses/housingvaluationrecovery/housingvaluationrecovery.py

Lines changed: 42 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -14,15 +14,17 @@
1414

1515

1616
class HousingValuationRecovery(BaseAnalysis):
17-
"""The analysis predicts building values and value changes over time following a disaster event.
18-
The model is calibrated with respect to demographics, parcel data, and building value trajectories
19-
following Hurricane Ike (2008) in Galveston, Texas. The model predicts building value at the parcel
20-
level for 8 years of observation. The models rely on Census (Decennial or American Community Survey, ACS)
21-
and parcel data immediately prior to the disaster event (year -1) as inputs for prediction.
17+
"""The analysis forecasts building values and their changes over time following a disaster event.
18+
The model is calibrated using demographic data, parcel records, and building value trends observed after
19+
Hurricane Ike (2008) in Galveston, Texas. It predicts building values at the parcel level over an eight-year
20+
observation period.
2221
23-
The Galveston, TX example makes use of 2010 Decennial Census and Galveston County Appraisal District (GCAD)
24-
tax assessor data and outputs from other analysis (i.e., Building Damage, Housing Unit Allocation,
25-
Population Dislocation) .
22+
The model relies on Census data (either Decennial Census or the American Community Survey, ACS) and
23+
parcel records from the year preceding the disaster (year -1) as inputs for prediction.
24+
25+
For the Galveston, TX case study, the analysis utilizes data from the 2010 Decennial Census, tax assessment
26+
records from the Galveston County Appraisal District (GCAD), and outputs from related analyses, including
27+
Building Damage, Housing Unit Allocation, and Population Dislocation..
2628
2729
The CSV outputs of the building values for the 6 years following the disaster event (with year 0 being
2830
the impact year).
@@ -46,58 +48,64 @@ def __init__(self, incore_client):
4648
def get_spec(self):
4749
return {
4850
"name": "housing-valuation-recovery",
49-
"description": "Housing Valuation Recovery Analysis",
51+
"description": "The model forecasts parcel-level building values and their changes over an eight-year "
52+
"period following a disaster. It is calibrated using demographic data, parcel records, and "
53+
"post-disaster building value trends from Hurricane Ike (2008) in Galveston, Texas, relying "
54+
"on pre-disaster Census or ACS data and parcel records for its predictions.",
5055
"input_parameters": [
5156
{
5257
"id": "base_year",
5358
"required": False,
54-
"description": "Base year is used to calculate improvement age. It needs to be set to the tax "
55-
"assessment year representing pre-disaster building values. For example for GCAD "
56-
"data which represents improvement valuation before Hurricane Ike impacts."
57-
"Deafult 2008",
59+
"description": "Base year is used to calculate the improvement age. It should be set to the "
60+
"tax assessment year that represents pre-disaster building values. For example, "
61+
"in GCAD data, this corresponds to the improvement valuation before the impacts "
62+
"of Hurricane Ike. The default value is 2008.",
5863
"type": int,
5964
},
6065
{
6166
"id": "result_name",
6267
"required": True,
63-
"description": "Result CSV dataset name",
68+
"description": "Base name of the resulting CSV dataset.",
6469
"type": str,
6570
},
6671
],
6772
"input_datasets": [
6873
{
6974
"id": "population_dislocation",
7075
"required": True,
71-
"description": "Population Dislocation aggregated to the block group level",
76+
"description": "Population dislocation data aggregated at the block group level.",
7277
"type": ["incore:popDislocation"],
7378
},
7479
{
7580
"id": "building_area",
7681
"required": True,
77-
"description": "Building square footage and damage. Damage is the actual building value loss "
78-
"in percentage terms observed through the County Appraisal District (GCAD) data",
82+
"description": "Building square footage and damage: Damage refers to the actual loss in "
83+
"building value, expressed as a percentage, as observed in the County Appraisal "
84+
"District (GCAD) data.",
7985
"type": ["incore:buildingInventoryArea"],
8086
},
8187
{
8288
"id": "census_block_groups_data",
8389
"required": True,
84-
"description": "Census ACS data, 2010 5yr data for block groups available at IPUMS NHGIS "
90+
"description": "Census ACS 2010 5-year data for block groups, available from IPUMS NHGIS."
8591
"website.",
8692
"type": ["incore:censusBlockGroupsData"],
8793
},
8894
{
8995
"id": "census_appraisal_data",
9096
"required": True,
91-
"description": "Census data, 2010 Decennial Census District (GCAD) Census data",
97+
"description": "Census data from the 2010 Decennial Census and Galveston County Appraisal "
98+
"District (GCAD).",
9299
"type": ["incore:censusAppraisalData"],
93100
},
94101
],
95102
"output_datasets": [
96103
{
97104
"id": "result",
98-
"description": "A csv file with the building values for the 6 years following the disaster"
99-
"event (year -1 denotes pre-impact conditions and 0 being the impact year). "
100-
"Index year values represent building values against a base, pre-impact value.",
105+
"description": "A CSV file containing building values for the six years following the disaster "
106+
"event. Year -1 represents pre-impact conditions, while year 0 marks the impact "
107+
"year. Index year values indicate building values relative to the base, pre-impact "
108+
"value.",
101109
"type": "incore:buildingValues",
102110
}
103111
],
@@ -204,17 +212,17 @@ def run(self):
204212

205213
def get_owneship(self, popd):
206214
"""Filter ownership based on the vacancy codes
207-
Assumption:
208-
Where ownershp is "missing", let vacancy codes 0/3/4 be considered owner-occupied,
209-
and 1/2/5/6/7 be considered renter-occupied.
210-
It is uncertain whether vacancy codes 3,4,5,6,7 will become owner- or renter-occupied or primarily
211-
one or the other.
212-
.
213-
Args:
214-
popd (pd.DataFrame): Population dislocation results with ownership information.
215+
Assumption:
216+
Where ownershp is "missing", let vacancy codes 0/3/4 be considered owner-occupied,
217+
and 1/2/5/6/7 be considered renter-occupied.
218+
It is uncertain whether vacancy codes 3,4,5,6,7 will become owner- or renter-occupied or primarily
219+
one or the other.
215220
216-
Returns:
217-
pd.DataFrame: Ownership data.
221+
Args:
222+
popd (pd.DataFrame): Population dislocation results with ownership information.
223+
224+
Returns:
225+
pd.DataFrame: Ownership data.
218226
219227
"""
220228
# Create ownership dummy variable from popd.ownership
@@ -232,8 +240,8 @@ def get_owneship(self, popd):
232240
return own
233241

234242
def get_vac_season_housing(self, vac_status):
235-
"""Calculate the percent vacation or seasonal housing of all housing units within a census tract and
236-
add dummy variable for census tract as a seasonal/vacation housing submarket.
243+
"""Calculate the percentage of vacation or seasonal housing units within each census tract and add a dummy
244+
variable to indicate whether the census tract functions as a seasonal/vacation housing submarket.
237245
.
238246
Args:
239247
vac_status (obj): Seasonal/vacation housing Census ACS data from json reader.

pyincore/analyses/indp/dislocationutils.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ def create_dynamic_param(params, pop_dislocation, dt_params, T=1, N=None):
3030
Returns
3131
-------
3232
dynamic_params : dict
33-
Dictionary of dynamic demand value for nodes
33+
Dictionary of dynamic demand value for nodes.
3434
"""
3535
dynamic_param_dict = params["DYNAMIC_PARAMS"]
3636
return_type = dynamic_param_dict["RETURN"]

0 commit comments

Comments
 (0)