Validation Methods of Geometric 3D-CityGML Data for Urban Wind Simulations

Validation of the geometric data such as 3D city model is quite crucial for simulation tasks, since the simulation process strongly correlates to the quality of geometric data being meshed. Validation methodology and healing of the 3D city models using different tools are presented. The most common inherited geometrical errors are checked and analyzed. Accordingly, an appropriate healing process to the case study is performed, which illustrates that the required closed solids and closed shells are obtained within the geometrical structures of the 3D city model being processed. Also, in this paper we compare some related open source and commercial software tools for the validation and healing process. It is noticed that they differ from each other in performing the required healing process. Some of them are quite good in healing specific errors, whereas not successful in healing the rest of errors. The goal of the paper is to obtain more understanding of the geometric validation and healing capabilities of various software tools, and the qualities of generated meshes, to lead to more effective and reliable simulations in the field of urban wind


Introduction
3D CityGML in dif f erent (LoDs) is a common information model and XML-based encoding for the representation, storage, and exchange of digital 3D city and landscape models. CityGML provides a standard model and mechanism for describing 3D objects with respect to their geometry, topology, semantics and appearance, and defines five different levels of detail. Included are also generalization hierarchies between thematic classes, aggregations, relations between objects, and spatial properties [1]. Besides, 3D Buildings also in different (LoDs) could be obtained directly from airborne Light Detection and Ranging (LiDAR) point clouds, but this method still requires development in order to improve the performance of extracting building details [2].
Geometric quality of 3D city models is crucial for data analysis and simulation tasks, which are part of modern applications of the data (e.g. potential heating energy consumption of city quarters, solar potential, etc.) [3]. Especially in the field of numerical simulation, such as flow and acoustic simulation, the interest in using virtual 3D models to optimize urban system is increasing [4]. The quality of 3D urban models needs to be validated and improved. The quality is essential in scenarios where application results are directly related to the correctness of the 3D model, e.g. simulation [5]. The LoD2 building models defined in CityGML are widely used in 3D city applications. However, a LoD2 building model often contains different types of geometric errors such as gaps in a surface, intersection between surfaces, non-manifold situations and degenerated edge and surface primitives are present, which violates the criteria of a valid LoD2 building geometry. These flawed geometric models eventually lead to serious errors or crashing of the downstream application. Therefore, they should be repaired before being used [6]. Automatic building modeling allows a cost-effective access to 3D semantic of cities. However, even state-of-the-art algorithms have intrinsic limits and many errors exist in 3D reconstructions, requiring expensive manual corrections [7]. Automated domain-specific tool is widely used for validation of business-critical data but still common standards defining correct geometric modeling are not precise enough to define a sound base for data validation of 3D city models. A tool to repair the errors detected during the validation process is under development [8].
Computational fluid Dynamics (CFD) has been widely used and developed in the field of wind engineering, particularly in the flow analysis, comfort and safety, power resource assessment, energy distribution, prediction, and forecasting in urban areas [9]. The main purpose of this paper is to identify an appropriate strategy to handle 3DCity models so as to be used later effectively and compatible with the ANSYS ICEM-CFD [10] (hereafter referred to as ICEM-CFD), in which the required mesh can be generated correctly, and, thus, the simulation of the related investigation to the urban area such as wind investigation can be performed adequately.

Outline of study and methodology
This study consists of two main parts: 1) Pre-processing of the 3D buildings data related to the specific region, namely the "Münsterstraße" (Münster Street) located in Düsseldorf city and, 2) Simulation of the wind in this region to investigate some hydrodynamic parameters such as pressure and velocity distributions on and around existing buildings. Figure 1 shows the investigated area.
The methodology of the study consists of, thus, two main stages, first is the pre-processing the related geometric data for the area of interest, and second is the CFD modelling for estimating aerodynamic parameters of the wind effecting the selected urban area. The applied workflow is sketched in Figure 2.

Pre-processing of related 3DCityGML
There are different sources where 3DCityGML in both formats LoD1 and LoD2 can be obtained. However, none of them can guarantee that the provided 3DCityGML is free of errors, and the data quality can change.
Bogdahn and Coors [5] pointed out that the quality of the geodata could be identified by seven elements which are; Lineage, positional accuracy, attribute accuracy, completeness, logical consistency, semantic accuracy, and finally the temporal information. So, this is quite sure that the 3DCityGML needs to be cleaned and this is the main big challenge for the CFD modeler.
Different software tools are provided to handle inherited errors within the 3DcityGML data in order to assist the CFD modeler to perform the simulation effectively and correctly without so much struggling against dirty 3DCityGML.
In  [16] and SpaceClaim [17]. These software tools have different capabilities to handle the most common inherited errors which are; holes, gaps, overlaps, selfintersections, non-manifolds. This comparison is performed in order to identify the most robust software tool that could be used to overcome the above mentioned errors and defects in a way that enable ICEM-CFD to mesh converted 3DCityGML to the STL, since ICEM-CFD does not support 3DCityGML format.
Throughout this investigation, we found out that the above-mentioned software tools, despite that they might indicate a successful healing and repair process, some small inherited errors and problems could remain undetected and unrepaired.
The latter could only be noticed during the subsequent meshing process. Also, we found out that some software tools could not cope with the large volume of data, as it is the case in 3D buildings, especially when we were simulating, for example, large areas exceeding a few square kilometers or areas that contain some very complex designed buildings and constructions.

Validation of the related LoD2 data
The validation of the LoD2 file, weather it was saved originally in GML format, or converted from the GML to the STL format, were performed using above-mentioned software. Both formats, GML and STL, were considered in the validation process. First, the City Doctor was used for validating the related 3DCityGML. This tool is quite capable in filtering out the defected buildings quickly, while the healing tool is quite time-consuming in handling existing errors in such a large volume of buildings.
Free CAD is well-prepared to analyze existing errors in the STL and to provide required repairs, but it produces severe damage in the geometry, when it handlesthe self-intersection problems.
Although the NetFabb does not support GML files, it is one of the most recommended software tool to handle a large amount of errors effectively, and in some cases, the cleaned geometry can get directly compatible with the ICEM-CFD. But this does not mean that all processed 3D models by NetFabb are compatible with the ICEM-CFD. Thus, we concluded that the NetFabb is quite application dependent.
GeomagicWrap also is supporting STL file and it is provided with the tool, which is so-called MeshDoctor. But it was not compatible with the large volume of 3D models data. On the other hand, the processed 3D buildings by GeomagicWrap usually suffered under serious damages during the healing process.
MeshLab provides a large number of cleaning and healing capabilities. However the output 3D-Buildings is not compatible with ICEM-CFD.
SpaceClaim which is also a supplementary tool of ANSYS, was not successful in handling 3D buildings effectively.

Analysing detected errors and defects
Basically, the modeler should take several very important points in consideration during pre-processing 3DCityGML data. First, there are non-homogeneous distribution of geometrical errors within the structure of the 3D buildings. Second, it is quite possible that some kinds of errors are generated during the process of conversion, especially when we converting 3D buildings from GML to STL format. Thus, converted geometry need to be validated and subjected to the healing process prior to commence meshing the geometry. Free CAD and NetFabb were used to detect errors and perform the required repair processes. A summary of typical errors is given below (Figure 3) Orientation of surfaces should be compatible with each other. All closed surfaces should be directed outwards. Figure 3a shows false orientation of surfaces.
Duplicated faces are errors which obstacle meshing process. It was observed that most of the 3D-Buildings exhibit such errors. Figure 3b shows duplicated faces.
Non-manifold errors are the most problematic ones that prevent the 3D-Buildings to get meshed. They should be resolved without causing additional defects in the processed geometry. Figure 3c shows distributed nonmanifolds within the 3D Buildings model. Degenerated faces are also an obstacle against the meshing process that need to be removed. Figure 3d shows degenerated faces in this part of the 3D Buildings.
Self-intersections of surfaces are very hard to repair, since the processed data can get seriously damaged during the repair process. It was noticed that FreeCAD causes serious damages in the 3D Buildings when self-intersection gets repaired. However, FreeCAD is quite capable in detecting self-intersections errors. Figure 3e shows selfintersections in the building of the Church and the surrounding buildings. Beside self-intersections, folds on surfaces represent an additional difficult issue to repair. FreeCAD is quite capable in detecting and analyzing this error and repairing them. Figure 3f shows distributed fold errors intensively within the 3D Buildings.
In addition to the above-mentioned errors, there are further errors such as holes, gaps, overshoots, overlay steep roof, unrealistic thin wall, non-closed shell that were reviewed by Mulder [18] and illustrated in Figure 4. However, some of these errors are not detected in the selected case study, but these types of errors are quite possible to exist within the data structure of the 3D City models.

Healing of LoD2 using different 3D software
None of the considered software tools were capable to completely repair the dirty geometry without damage, i.e., none of them were successful in healing all inherited errors entirely. Especially the repair of self-intersections led to the serious damages in the surfaces and could produce additional gaps, holes, and disconnections. Figure 5 shows the damaged geometry during the repair stage.
The evaluated performance of the software tools in validating and healing the 3D city models are summarized in Table 1 (healing in so far that the date was compatible with ICEM-CFD).

CFD modelling and simulation
Fortunately, for the presently considered case study "Münster Street" the 3DCityGML data was not very problematic, including some specific types of errors, which could be resolved using NetFabb. NetFabb was successful to analyze and repair related STL file.
Note that the present simulation does not necessarily aim at an accurate numerical solution, for which a much finer mesh would be necessary. The present CFD

Setting boundary conditions and meshing
3D-Buildings of the area of interest are imported into the ICEM-CFD as STL format, the boundary conditions (inlet, outlet, wall, and symmetry) are identified precisely, taking into consideration the direction of the wind.
There are some guidelines suggested by different researchers for the definition of the solution domain for simulations of flows in urban areas [19]. It is recommended to set the domain size 5 times larger than the tallest existed building within the processed area and both the inlet and outlet set far enough from the tallest building. Then, the meshing process is commenced after setting up the required shell and volume parameters. The shell mesh parameter is determined in a way that mesh type "All Tri" has been selected, in accordance with the "Shrink Wrap" as an implemented mesh method. Meanwhile, for the volume mesh parameter, Tetra/Mix is selected as a mesh type and Robust Octree as an implemented mesh method. Figure 6 shows generated shell mesh. The generated total nodes was 997927.

Solver
ANSYS Fluent [10] was selected to read generated mesh and perform the solving processes. It is quite important to set adequate parameters in order to enable the solver to initiate the simulation process.
In this simulation, the inflow velocity is determined to be 5 m/s. At the outlet the static pressure is prescribed. Convective or radiative heat transfer effects [20,21] are neglected. The air flow is calculated as incompressible flow, with constant material properties. Although highresolution turbulence modelling approaches such as the Large Eddy Simulation (LES) [22] are being increasingly used in various engineering applications [23,24], a Reynolds Averaged Numerical Simulation (RANS) [25] approach is preferred at the present stage The turbulence is described by the standard k-ε model [26] due to its robustness [27]. At later stages, its different versions such as the realizable one [28], or the Shear Stress Transport model [29] will also be investigated which were successfully applied to different flow problems in the previous studies [30].

Results
The results of the simulated wind flow shows the velocity magnitude and its path-lines that affect existing buildings within the area of interest. The pattern of the distributed velocities on the tallest building in comparison with the surrounding buildings are investigated as shown in Figure  7. Further simulation activities could be performed for example wind interaction with the pollution could be investigated as well.

Conclusions
We conclude that the process of healing 3D-CityGML models still requires development in order to overcome all inherited errors automatically. On the other hand, we conclude that the process of repairing 3D-Buildings by using ICEM-CFD is time consuming, mainly because of the large size of complex geometrical data. Thus, manual repairing of all these errors is not feasible. Converting 3D CityGML to the other formats such as STL, STEP, and IGES could be considered as an additional source of errors. It is well-known that ICEM-CFD does not support 3D CityGMl, so the data should be converted to one of the supported formats. However, it might occur that some software like NetFabb and FreeCAD gets success in repairing 3D models as in our case study, but still this could not be guaranteed for all the other case studies. In comparison between different software which have been used to repair 3D models in both formats as 3D CityGML file and STL files, we concluded that still no concrete automated solution is available to handle 3D buildings data which contain all types of errors and defects in both aspects; validation and healing. Thus, an automated software/ tool that has powerful capability in validating and healing 3D City models that is capable to repair all above mentioned errors and defects entirely without any kind of side effects is quite necessary for successful meshing by ICEM-CFD and then successful urban wind simulation by Fluent.
We gratefully acknowledge the financial support by the Alexander von Humboldt Foundation.