# Create Surface Mesh

# maxEdgeLength

maxEdgeLength restricts the global maximum edge length of the cells on the surface mesh. This value will be overwritten on the faces with a different local maxEdgeLength.

# curvatureResolutionAngle

Reducing curvatureResolutionAngle will locally refine the mesh near the high-curvature regions, such as the fuselage nose. For the medium mesh, we will typically set curvatureResolutionAngle between 10 to 15 degrees For the fine mesh, we will set it as low as 5 degrees.

# growthRate

This is the growth rate of anisotropic layers along the direction orthogonal to the target edges. Take the leading edge for example, it controls the growth rate of anisotropic cells along the chord-wise direction. Typically we set the growthRate as 1.2/1.16/1.13 for coarse/medium/fine mesh, respectively.

# edges

The edge names in the surfaceMesh.json should match the edgeName attribute you assigned to the edges in the CSM file.

# type

There are 2 types of edges:

  1. aniso You will have anisotropic layers along the direction orthogonal to the target edge. Typically for leading and trailing edges.

  2. projectAnisoSpacing The node distribution along the edge will be updated. The adjacent anisotropic spacing will be projected to the target edge. Typically for the C0 airfoils in the middle of your wing/blade.

# method

If you set type as aniso, then there are 3 methods to prescribe the 1st anisotropic layer:

  1. angle Resolves surface curvature along the direction orthogonal to the target edge. For the medium mesh, we typically set angle resolution as 1 degree for the leading edge.

  2. height Directly prescribe the 1st anisotropic layer thickness of the anisotropic cells.

  3. aspectRatio The thickness of the 1st anisotropic layer will be automatically calculated to ensure the max aspect ratio does not exceed the given aspectRatio. Typically aspectRatio is between 20 to 100.

# value

If you set type as aniso, after deciding the method, now you need to provide the angle (in degrees), height or aspectRatio.

Here is an example:

"edges": {
    "leadingEdge":  {
        "type": "aniso",
        "method": "angle",
        "value": 1
    },
    "trailingEdge":  {
        "type": "aniso",
        "method": "height",
        "value": 1e-3
    },
    "hubCircle": {
        "type": "aniso",
        "method": "height",
        "value": 0.1
    },
    "hubSplitEdge": {
        "type": "projectAnisoSpacing"
    }
}

For more details, please check our documentation page (opens new window)

# faces

The name of faces in the surfaceMesh.json file should match the faceName attribute you assigned to the edges in the CSM file.

# maxEdgeLength

This value will restrict the local maximum edge length on the target faces and it will overwrite the global maxEdgeLength.

In the following example, the background maxEdgeLength is 0.1 and there are extra refinements on wing and flap.

"maxEdgeLength": 0.1,
"faces": {
    "wing": {
        "maxEdgeLength": 0.05
    },
    "flap": {
        "maxEdgeLength": 0.02
    }
}