uDALES / u-dales

uDALES: large-eddy-simulation software for urban flow, dispersion and microclimate modelling
https://udales.github.io/u-dales
GNU General Public License v3.0
54 stars 18 forks source link

Restructure and retest modinlet and moddriver. Improved modboundary. #68

Open tomgrylls opened 4 years ago

tomgrylls commented 4 years ago

Summary: Necessity to test modinlet. Potential to improve implementation of modinlet and moddriver within modstartup and modboundary. Potential to have consistent notation for all BC input parameters.

Initial thoughts:

1) modinlet.f90 has not been used for a long time and requires testing to make sure it is still compatible with the latest version of the code.

2) The implementation of both of these modules is outdated and not consistent with the desired structure of modboundary (moddriver was developed to follow the same implementation as modinlet). Examples include:

3) Other related improvements to modboundary:

tomgrylls commented 4 years ago

Additional thing to check in modboundary:

Scalar boundary conditions only set to ke + 1. This should be ke+khc. This change may require variables changing including svprof that is only allocated to ke+kh?

tomgrylls commented 4 years ago

Attention is required on the calculation of uouttot with regards to the different momentum forcings and how they are used in modboundary. This was already mentioned above but https://github.com/uDALES/u-dales/pull/70/files/858986c1bddf8ff3e2f8143f934efa8b78118eb1#r406108539 mentions a specific important example.

tomgrylls commented 4 years ago

Note that uouttot is overwritten in a later subroutine if idriver = 2 (in subroutine iolet). This should be brought into the main loop at the start of subroutine boundary for consistency.

samoliverowens commented 2 months ago

Modboundary was restructured for uDALES v2, but modinlet is unchanged since this issue was initially raised. I think it should be removed entirely.