Urban weather generator

My name is Alireza Karimi, and I am an Urban Policy Researcher focusing on Heat Resilience of Buildings. For my current research project, I require the source code of the Urban Weather Generator (UWG) in Python to perform comprehensive analyses for different coordinates simultaneously.

I have come across an algorithm on GitHub; however, it is limited to calculations for the first 30 days and does not cover entire years. If I could resolve this issue, I would be able to implement a loop to incorporate multiple coordinates, thereby calculating the Urban Heat Island (UHI) effect for several locations at once.

Could you please guide me and provide the UWG source code to help address this limitation?

Thank you very much for your assistance.

Best regards,

from uwg import UWG

Define the .epw, .uwg paths to create an uwg object.

epw_path = “resources/SGP_Singapore.486980_IWEC.epw” # available in resources directory.

Initialize the UWG model by passing parameters as arguments, or relying on defaults

model = UWG.from_param_args(epw_path=epw_path, bldheight=10, blddensity=0.5,
vertohor=0.8, grasscover=0.1, treecover=0.1, zone=‘1A’)

Uncomment these lines to initialize the UWG model using a .uwg parameter file

param_path = “initialize_singapore.uwg” # available in resources directory.

model = UWG.from_param_file(param_path, epw_path=epw_path)

model.generate()
model.simulate()

Write the simulation result to a file.

model.write_epw()

Hi @Alirezza ,

The source code of the Python version of the UWG that Ladybug Tools maintains is here:

Also note that you can interact with the UWG via Grasshopper using the dragonfly plugin. Here is a sample Grasshopper file that runs the UWG.

Hello professor,
As i mentioned before, below code calculated for 31 days of 365 days of year and doesnt able to calculate for whole year. Morever, i have added my epw file to explore more.
from uwg import UWG

Define the .epw, .uwg paths to create an uwg object.

epw_path = “resources/SGP_Singapore.486980_IWEC.epw” # available in resources directory.

Initialize the UWG model by passing parameters as arguments, or relying on defaults

model = UWG.from_param_args(epw_path=epw_path, bldheight=10, blddensity=0.5,
vertohor=0.8, grasscover=0.1, treecover=0.1, zone=‘1A’)

Uncomment these lines to initialize the UWG model using a .uwg parameter file

param_path = “initialize_singapore.uwg” # available in resources directory.

model = UWG.from_param_file(param_path, epw_path=epw_path)

model.generate()
model.simulate()

Write the simulation result to a file.

model.write_epw()

let me ask you my question in another way, how to calculate uhi for different cordinatores simulatiniously by havin their needed data in ladybug
best regard

I sense you are using an automated translator, @Alirezza , but I cannot understand what you are trying to ask. Perhaps some screenshots of what you are trying to accomplish may help?

As you see figure, I have divided the desired area into 200 * 200 girids and all the desired indicators have been calculated in UWG for each of them. Now I want to calculate the amount of UHI in each girid simulatniously.
if i want to make calculate one by one .it will take so long and it is is inmosible
best regard professor