[The word "bathymetry" is for underwater terrain, such as bottom of a lake or river; for a city, or any terrain above sea/river level, use "topography"]
- If you have a topography with trees and buildings already removed from LiDAR, most of the softwares like HEC-RAS, TuFlow, Flo-2D, SRH-2D and ICM directly use that DEM as a layer;also you can put couple of them on top of each other in TuFlow or HEC-RAS (bare land below, buildings on top, etc.). You may want to assign artificially high roughness to buildings and trees to account for their form drag.
- If the DEM is raw (with cars, trees, and buildings; just what the drone or airplane see from sky) you have to first process it to get bare land elevation. This can be done in most of GIS software, in particular Global Mapper and ArcGIS has special tools for that. I am sure QGIS and .... have the similar capabilities. This is not the job of hydraulic engineer and usually it is done by GIS and remote sensing specialists
If you have DEM, it is usually terrestrial land cover (trees, houses, roads, infrastructure ...) but bathymetry is the underwater terrain you need to measure to combine with DEM that you had to build full DEM.
You can download DEM for your city from SRTM and ASTER DEM official website. If you want bathymetry, you can download GEBCO bathymetry data from this website https://www.gebco.net/data_and_products/gridded_bathymetry_data/
DEM digital elevation model used for terrain elevation and bathymetry is used to find out ocean depth and you cannot create Bathymetry from DEM and bathymetry can create from GEBCO bathymetry data