Open sclaw opened 1 month ago
Did the original model have duplicate names? I must be missing something but why can't we just use what was in the original model?
The original model did not have duplicate names. When this sub model is created, it adjusts stationing from the most d/s cross section (581386). The second cross-section was originally 0.16, but it becomes 581386.16. Since 581386.16 is more than 8 characters (RAS name length limit), ripple1d rounds the name to 581386.0.
Is there a reason why we are renaming cross-sections and not using original cross section names?
I think that decision came out of a conversation before I joined. @mdeshotel can you weigh in?
We have to ensure that river stationing increases as we move upstream (RAS requirement). So if the most downstream cross section on a tributary originally started at 1000 but the main stem (whose cross section we are also using) has a station of 500000 we need to increase the tributary river station to be 500000 + 1000 to ensure river stationing increases as we move upstream.
Secondly different RAS models represent stationing as an integer and some as a floating point (an engineers decision). This causes issues between the text file names and how hdf was storing the names, so forcing it to be floating point was just cleaner.
Similar to the first point, river station 500000 + 15.3948=500015.3948 results in 10 characters. This exceeds the 8 character limit so rounding was implemented to avoid this; i.e, 500015.4.
I think the rounding is causing issues here for models whose river stationing is in miles instead of feet.
As I mentioned previously, because of these complications, I would recommend that we rename the river stations to be 1,2,3,4,5, etc. Simple, clean, and less chance for these issues.
-reminder that RAS doesn't use these river stations for calculations so it would not effect the results.
Ah so RAS does not use station names in calculations but still wants them in order? weird.
yes that is correct. -very weird. furthermore, I found that you can sort of hack RAS by passing a non-numeric character to the river stationing (via the geometry text file) which it will accept.. but we would run into similar character limit issues if we tried to prepended some random non-numeric character to the source model stationing.
I don't have any issues with the solution you recommended here. @sclaw do you take any issue with this solution? We should document why we did what we did in technical documentation.
As I mentioned previously, because of these complications, I would recommend that we rename the river stations to be 1,2,3,4,5, etc. Simple, clean, and less chance for these issues.
It think that's a great solution.
HEC-RAS can only take cross section names of length 8 characters. To fix cases when a sub model would have name greater than 8 length, names are stored as floats and rounded to the nearest whole number. This can create instances of duplicate cross section names, especially when an engineer elected to put their names in units of miles. RAS models with duplicate cross sections are invalid and will not run. See example below. Suggested: use autoincremented station names instead of preserving original stationing/names.
Collection: mip_02050107 Model: SusquehRvr_DanvilleLAMP Sub model: 8153841
Source model:
Sub model (does not run):