{
  "openapi" : "3.0.3",
  "info" : {
    "title" : "SimScale API",
    "description" : "# Introduction\nWelcome to the SimScale API documentation. If you have an idea for an integration or app and would like to become a development partner,\nplease contact us at `api@simscale.com`!\n\n**A newer API version is available:** `/v1` is in beta. See the [Migration guide](/apidoc/v1/migration.html) for the HTTP-level changes and the [Changelog](/apidoc/v1/changelog.html) for what's new.\n\n## Sandbox\nAn API sandbox is provided which allows to interact with all endpoints. All sandbox endpoints only return example\ndata and don't create or modify actual data, especially no actual simulations are started. To use the sandbox use\nthe `/sandbox` URL prefix with fixed api-key as `sandbox-example-api-key`.\n\n## Versioning\nThe generic version (currently `/v0`) defines the overall endpoints and data models. The generic version won't\nchange very often.\n\nFor the Simulation Spec and Meshing Spec data model schemas, separate version numbers are defined. These are\nincremented more frequently and independently of the generic version. You can see the supported schema versions in\nthe dropdown list in the top right corner of this page. You can use that dropdown list to generate API documentation\nfor different sets of schema versions.\n\nIt's possible to request the OpenAPI definition for a specific set of Simulation Spec and Meshing Spec schema\nversions by defining the `simulationSpecSchemaVersion` and `meshingSpecSchemaVersion` query parameters. For example:\n```\n/openapi.json?simulationSpecSchemaVersion=8.0&meshingSpecSchemaVersion=0.5\n```\n\n## API Documentation\nThe SimScale API is based on OpenAPI. It is a description format for REST APIs and describes the entire API,\nincluding endpoints, operations, and data models. That description format allows automatic generation of\ninteractive API documentation and client libraries. The interactive API documentation is provided as\n[Swagger UI](/apidoc/swagger/index.html).\n\nMore information about OpenAPI can be found at:\n* Official specification: <http://spec.openapis.org/oas/v3.0.3>\n* Additional documentation from Swagger: <https://swagger.io/docs/specification/about/>\n\n## Client Libraries (SDK)\nSimScale provides official SDKs and code examples in various languages:\n* Python SDK: <https://github.com/SimScaleGmbH/simscale-python-sdk>\n* C# SDK: <https://github.com/SimScaleGmbH/simscale-csharp-sdk>\n\nIt is also possible to generate client libraries that are fully functional, but less convenient to use than the SDK,\nfor other languages. Code generation toolkits can be found at:\n* <https://github.com/OpenAPITools/openapi-generator>\n* <https://github.com/swagger-api/swagger-codegen>\n\n## Compatibility with the Workbench\nCompatibility with the Workbench is not fully supported yet. In particular, there is no guarantee that Simulations\ncreated via the SimScale API can be modified using the Workbench.\n\nThe Simulation Spec schema changes frequently. If your Simulation model corresponds to a schema version other than\nthe latest one, modification using the Workbench will not be possible. You can still run simulations and continue\nediting your setup via the API or the SDK. This is to prevent any unexpected change to your model that would make it\nincompatible with your code.\n\nAs a workaround, you can duplicate the Simulation or Mesh Operation on the Workbench. Modification will be enabled\nfor the copy. The same can be achieved by copying the entire Project.\n\nFollow these instructions to update your models with the latest published schema version:\n* Python SDK: <https://github.com/SimScaleGmbH/simscale-python-sdk/wiki/How-to-enable-edit-capabilities-on-the-Workbench>\n* C# SDK: <https://github.com/SimScaleGmbH/simscale-csharp-sdk/wiki/How-to-enable-edit-capabilities-on-the-Workbench>\n\n**Important:** Edit mode can still be disabled even if you are using the latest published Simulation Spec schema\nversion. This is because the Workbench might use a newer schema version that is not available yet to SimScale API\nclients. You will have to wait until a new Simulation Spec schema version is released.",
    "termsOfService" : "https://www.simscale.com/terms-and-conditions/",
    "version" : "0.0.0"
  },
  "servers" : [ {
    "url" : "/v0"
  } ],
  "security" : [ {
    "apiKey" : [ ]
  } ],
  "tags" : [ {
    "name" : "Projects",
    "description" : "Access to SimScale projects"
  }, {
    "name" : "Project Permissions",
    "description" : "Permissions are used to control access to Projects."
  }, {
    "name" : "Geometry Imports",
    "description" : "Import geometries"
  }, {
    "name" : "Geometries",
    "description" : "Information about geometries"
  }, {
    "name" : "Mesh Operations",
    "description" : "Perform mesh operations"
  }, {
    "name" : "Meshes",
    "description" : "Information about meshes"
  }, {
    "name" : "Simulations",
    "description" : "Setup of simulations"
  }, {
    "name" : "Simulation Runs",
    "description" : "Access to simulation runs"
  }, {
    "name" : "Storage",
    "description" : "Access to storage"
  }, {
    "name" : "Table Imports",
    "description" : "Import tables"
  }, {
    "name" : "Reports",
    "description" : "Access to reports"
  }, {
    "name" : "Postprocessing",
    "description" : "Access to post-processing functionality"
  }, {
    "name" : "Materials",
    "description" : "Access to material groups and materials"
  }, {
    "name" : "Wind",
    "description" : "Access to wind data"
  }, {
    "name" : "Spaces",
    "description" : "Spaces are the largest unit or content organization within SimScale. Each user has a Personal Space and can have access to one or more Team Spaces if they are a member of an Organization. Personal Spaces are automatically created on account creation. Spaces are uniquely identified by a `spaceId` and they have associated metadata and permissions."
  }, {
    "name" : "Space Permissions",
    "description" : "Permissions are used to control access to Spaces. Each Space has a set of permissions that define who can access the Space and what actions they can perform."
  }, {
    "name" : "Folders",
    "description" : "Folders constitute the primary content organization element. They are identified by a `folderId`, which is unique across the platform. Folders cannot be copied or shared. Folders cannot be moved to other Spaces. Folders can be moved to other Folders within the same Space."
  }, {
    "name" : "Users",
    "description" : "Access to SimScale users"
  }, {
    "name" : "AI Models",
    "description" : "Access to AI models and make predictions based on the models."
  }, {
    "name" : "Simulation Result Exports",
    "description" : "Export simulation results to supported format and download them."
  } ],
  "paths" : {
    "/projects" : {
      "get" : {
        "tags" : [ "Projects" ],
        "summary" : "List projects",
        "operationId" : "getProjects",
        "parameters" : [ {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "Projects",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/Project"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Projects" ],
        "summary" : "Create a new project",
        "description" : "The visibility of the project is determined by the plan of the requesting user. Users who can create private projects get a private project, all others get a public one.",
        "operationId" : "createProject",
        "requestBody" : {
          "description" : "Project to be created",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Project"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "201" : {
            "description" : "Successful creation of the project",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Project"
                }
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          }
        }
      }
    },
    "/projects/{projectId}" : {
      "get" : {
        "tags" : [ "Projects" ],
        "summary" : "Get information about an existing project",
        "operationId" : "getProject",
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Project"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "put" : {
        "tags" : [ "Projects" ],
        "summary" : "Update an existing project",
        "operationId" : "updateProject",
        "requestBody" : {
          "description" : "Project to be updated",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Project"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "204" : {
            "description" : "Successful update of the project"
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/projects/{projectId}/copy" : {
      "post" : {
        "tags" : [ "Projects" ],
        "summary" : "Copy an existing project",
        "operationId" : "copyProject",
        "requestBody" : {
          "description" : "Project to be copied",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ProjectCopyRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Successful creation of the project",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Project"
                }
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/permissions/projects/{projectId}/requester" : {
      "get" : {
        "tags" : [ "Project Permissions" ],
        "summary" : "Get User Project Permissions",
        "description" : "Get Info about the Permissions that the current requester user has for this Project.",
        "operationId" : "getRequesterProjectPermissions",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ProjectPermissions"
                },
                "example" : {
                  "canPreviewProject" : true,
                  "canReadProject" : true,
                  "canCopyProject" : true,
                  "canWriteProject" : true,
                  "canExecuteProjectBillableAction" : true,
                  "canManageProject" : false,
                  "canMoveProjectToPersonalSpace" : true,
                  "canListProjectPermissions" : true,
                  "canEditProjectPermissions" : false,
                  "canShareProjectWithSpaceMembers" : true,
                  "canShareProjectWithOrganizationMembers" : true,
                  "canShareProjectWithAnyone" : false,
                  "canMakeProjectPublic" : false,
                  "canDeleteProject" : false
                }
              }
            }
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/projects/{projectId}/geometryimports" : {
      "post" : {
        "tags" : [ "Geometry Imports" ],
        "summary" : "Import a new geometry",
        "description" : "Geometry import requires the following steps:\n1. Request a temporary storage location via `POST /storage`.\n2. Upload your CAD file using the HTTP `PUT` method to the `url` provided in the temporary storage location response object.\n3. Start the import via `POST /projects/{projectId}/geometryimports` and include the `storageId` provided in the temporary storage location response object.\n4. Check for the import status via `GET /projects/{projectId}/geometryimports/{geometryImportId}`.\n",
        "operationId" : "importGeometry",
        "requestBody" : {
          "description" : "Geometry import specification.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/GeometryImportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "202" : {
            "description" : "Successful start of the import.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GeometryImportResponse"
                }
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "403" : {
            "$ref" : "#/components/responses/InsufficientPermissions"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/projects/{projectId}/geometryimports/{geometryImportId}" : {
      "get" : {
        "tags" : [ "Geometry Imports" ],
        "summary" : "Get information about the geometry import",
        "operationId" : "getGeometryImport",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GeometryImportResponse"
                }
              }
            }
          },
          "403" : {
            "$ref" : "#/components/responses/InsufficientPermissions"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/geometryImportId"
      } ]
    },
    "/projects/{projectId}/geometryimports/{geometryImportId}/eventlog" : {
      "get" : {
        "tags" : [ "Geometry Imports" ],
        "summary" : "Get the geometry import event log",
        "operationId" : "getGeometryImportEventLog",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventLogResponse"
                }
              }
            }
          },
          "403" : {
            "$ref" : "#/components/responses/InsufficientPermissions"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/geometryImportId"
      } ]
    },
    "/projects/{projectId}/geometries" : {
      "get" : {
        "tags" : [ "Geometries" ],
        "summary" : "List geometries within a project",
        "description" : "Only valid geometries that can be used for a simulation setup are included.",
        "operationId" : "getGeometries",
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "Geometries",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/Geometry"
                      }
                    }
                  }
                }
              }
            }
          },
          "403" : {
            "$ref" : "#/components/responses/InsufficientPermissions"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/collectionLimit"
      }, {
        "$ref" : "#/components/parameters/collectionPage"
      }, {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/projects/{projectId}/geometries/{geometryId}" : {
      "get" : {
        "tags" : [ "Geometries" ],
        "summary" : "Get information about the geometry",
        "operationId" : "getGeometry",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Geometry"
                }
              }
            }
          },
          "403" : {
            "$ref" : "#/components/responses/InsufficientPermissions"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "put" : {
        "tags" : [ "Geometries" ],
        "summary" : "Update geometry information",
        "operationId" : "updateGeometry",
        "requestBody" : {
          "description" : "Geometry information to be updated",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Geometry"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "204" : {
            "description" : "Successful update of the geometry information"
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "403" : {
            "$ref" : "#/components/responses/InsufficientPermissions"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/geometryId"
      } ]
    },
    "/projects/{projectId}/geometries/{geometryId}/mappings" : {
      "get" : {
        "tags" : [ "Geometries" ],
        "summary" : "Describe id mapping of the geometry",
        "description" : "Assignment of topological entities (faces, bodies) in the simulation setup is a non-trivial task.\nComplex models can consist of several assemblies which may contain multiple occurrences of bodies and their entities.\nIn order to describe an assignment unambiguously the full path from the root part of the model to the actual topological entity is required.\n\nSimScale generates unique internal names for all topological entities of a model during the geometry import which are used for assignments within the simulation spec.\nExamples of internal names are `B1_TE5` or `A1_I26_A5_I27_B102_TE196`.\n\nThis API endpoint allows to retrieve a mapping between the internal names and a detailed description of the entities which includes:\n* The topological entity class (body or face)\n* The original body and entity names\n* Entity attributes like `SDL/TYSA_NAME`, `SDL/TYSA_UNAME`, `ATTRIB_XPARASOLID_NAME` or `SDL/TYSA_COLOUR`\n* The path from the root of the model\n\nPlease note that during geometry import the model's topology can be modified (e.g. facet split and other import options) which means that there is no 1:1 mapping between the internal and original names.\n",
        "operationId" : "getGeometryMappings",
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "GeometryMappings",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/EntityDescription"
                      }
                    }
                  }
                }
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "403" : {
            "$ref" : "#/components/responses/InsufficientPermissions"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/collectionLimit"
      }, {
        "$ref" : "#/components/parameters/collectionPage"
      }, {
        "$ref" : "#/components/parameters/class"
      }, {
        "$ref" : "#/components/parameters/bodies"
      }, {
        "$ref" : "#/components/parameters/entities"
      }, {
        "$ref" : "#/components/parameters/attributes"
      }, {
        "$ref" : "#/components/parameters/values"
      }, {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/geometryId"
      } ]
    },
    "/projects/{projectId}/geometryprimitives" : {
      "post" : {
        "tags" : [ "Simulations" ],
        "summary" : "Create a geometry primitive for reference within a Simulation spec",
        "operationId" : "createGeometryPrimitive",
        "requestBody" : {
          "description" : "Geometry primitive specification.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/GeometryPrimitive"
              },
              "examples" : {
                "LocalCartesianBox" : {
                  "$ref" : "#/components/examples/LocalCartesianBox"
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "201" : {
            "description" : "Successful creation of the geometry primitive.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GeometryPrimitiveResponse"
                }
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/projects/{projectId}/tableimports" : {
      "post" : {
        "tags" : [ "Table Imports" ],
        "summary" : "Import a new table for reference within a Simulation spec",
        "description" : "Table import requires the following steps:\n1. Request a temporary storage location via `POST /storage`.\n2. Upload your table definition using the HTTP `PUT` method to the `url` provided in the temporary storage location response object.\n3. Import via `POST /projects/{projectId}/tableimports` and include the `storageId` provided in the temporary storage location response object.\n",
        "operationId" : "importTable",
        "requestBody" : {
          "description" : "Table import specification.",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/TableImportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Successful import of the table.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/TableImportResponse"
                }
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/projects/{projectId}/meshoperations" : {
      "get" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "List mesh operations for a project",
        "operationId" : "getMeshOperations",
        "parameters" : [ {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "MeshOperations",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/SlimMeshOperation"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "post" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "Create a mesh operation",
        "operationId" : "createMeshOperation",
        "requestBody" : {
          "description" : "Mesh operation to be created",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/MeshOperation"
              },
              "example" : {
                "name" : "My first mesh operation"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "201" : {
            "description" : "Successful creation of the mesh operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MeshOperation"
                }
              }
            },
            "links" : {
              "getSimulationRun" : {
                "operationId" : "getMeshOperation",
                "parameters" : {
                  "projectId" : "$request.path.projectId",
                  "simulationId" : "$request.path.meshOperationId",
                  "runId" : "$response.body#/meshOperationId"
                },
                "description" : "The `meshOperationId` value returned in the response can be used as the `meshOperationId` parameter in `GET /projects/{projectId}/meshoperations/{meshOperationId}`.\n"
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/projects/{projectId}/meshoperations/{meshOperationId}" : {
      "get" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "Get information about the mesh operation",
        "operationId" : "getMeshOperation",
        "parameters" : [ {
          "$ref" : "#/components/parameters/meshingSpecSchemaVersion"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MeshOperation"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "put" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "Update information about the mesh operation",
        "operationId" : "updateMeshOperation",
        "requestBody" : {
          "description" : "Mesh operation to be updated",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/MeshOperation"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "204" : {
            "description" : "Successful update of the mesh operation"
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/meshOperationId"
      } ]
    },
    "/projects/{projectId}/meshoperations/{meshOperationId}/check" : {
      "post" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "Check the mesh operation setup",
        "operationId" : "checkMeshOperationSetup",
        "responses" : {
          "200" : {
            "description" : "Successful mesh operation check",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CheckResponse"
                }
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/meshOperationId"
      }, {
        "$ref" : "#/components/parameters/simulationIdQuery"
      } ]
    },
    "/projects/{projectId}/meshoperations/{meshOperationId}/estimate" : {
      "post" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "Estimate the mesh operation",
        "operationId" : "estimateMeshOperation",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Estimation"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/meshOperationId"
      } ]
    },
    "/projects/{projectId}/meshoperations/{meshOperationId}/start" : {
      "post" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "Start the mesh operation",
        "operationId" : "startMeshOperation",
        "responses" : {
          "202" : {
            "description" : "Successful operation."
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/meshOperationId"
      }, {
        "$ref" : "#/components/parameters/simulationIdQuery"
      } ]
    },
    "/projects/{projectId}/meshoperations/{meshOperationId}/cancel" : {
      "post" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "Cancel the mesh operation",
        "operationId" : "cancelMeshOperation",
        "responses" : {
          "202" : {
            "description" : "Successful operation."
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/meshOperationId"
      } ]
    },
    "/projects/{projectId}/meshoperations/{meshOperationId}/eventlog" : {
      "get" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "Get the mesh operation event log",
        "operationId" : "getMeshOperationEventLog",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventLogResponse"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/meshOperationId"
      } ]
    },
    "/projects/{projectId}/meshoperations/{meshOperationId}/sdkcode" : {
      "get" : {
        "tags" : [ "Mesh Operations" ],
        "summary" : "Get Python SDK code for the mesh operation",
        "description" : "Important: due to incompatibilities between the source Spec version and the target SDK version the generated code may contain incomplete sections or even be invalid. The generated code is provided as a convenience and should be reviewed and adapted before use.",
        "operationId" : "getMeshOperationSdkCode",
        "parameters" : [ {
          "$ref" : "#/components/parameters/sdkVersion"
        }, {
          "$ref" : "#/components/parameters/sdkLanguage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "text/plain;charset=UTF-8" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/meshOperationId"
      } ]
    },
    "/projects/{projectId}/meshes" : {
      "get" : {
        "tags" : [ "Meshes" ],
        "summary" : "List meshes within a project",
        "description" : "Only finished and non-uploaded meshes are included.",
        "operationId" : "getMeshes",
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "Meshes",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/Mesh"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/collectionLimit"
      }, {
        "$ref" : "#/components/parameters/collectionPage"
      }, {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/projects/{projectId}/meshes/{meshId}" : {
      "get" : {
        "tags" : [ "Meshes" ],
        "summary" : "Get information about the mesh",
        "operationId" : "getMesh",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Mesh"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/meshId"
      } ]
    },
    "/projects/{projectId}/simulations" : {
      "get" : {
        "tags" : [ "Simulations" ],
        "summary" : "List simulation setups within a project",
        "operationId" : "getSimulations",
        "parameters" : [ {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "Simulations",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/Simulation"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "post" : {
        "tags" : [ "Simulations" ],
        "summary" : "Create a simulation setup",
        "operationId" : "createSimulation",
        "requestBody" : {
          "description" : "Simulation to be created",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/SimulationSpec"
              },
              "examples" : {
                "windcomfort" : {
                  "$ref" : "#/components/examples/WindComfort"
                },
                "incompressible" : {
                  "$ref" : "#/components/examples/Incompressible"
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "201" : {
            "description" : "Successful creation of the simulation setup",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Simulation"
                }
              }
            },
            "links" : {
              "getSimulation" : {
                "operationId" : "getSimulation",
                "parameters" : {
                  "projectId" : "$request.path.projectId",
                  "simulationId" : "$response.body#/simulationId"
                },
                "description" : "The `simulationId` value returned in the response can be used as the `simulationId` parameter in `GET /projects/{projectId}/simulations/{simulationId}`.\n"
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}" : {
      "get" : {
        "tags" : [ "Simulations" ],
        "summary" : "Get information about the simulation setup",
        "operationId" : "getSimulation",
        "parameters" : [ {
          "$ref" : "#/components/parameters/simulationSpecSchemaVersion"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SimulationSpec"
                },
                "examples" : {
                  "windcomfort" : {
                    "$ref" : "#/components/examples/WindComfort"
                  },
                  "incompressible" : {
                    "$ref" : "#/components/examples/Incompressible"
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "put" : {
        "tags" : [ "Simulations" ],
        "summary" : "Update information about the simulation setup",
        "operationId" : "updateSimulation",
        "requestBody" : {
          "description" : "Simulation to be updated",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/SimulationSpec"
              },
              "examples" : {
                "windcomfort" : {
                  "$ref" : "#/components/examples/WindComfort"
                },
                "incompressible" : {
                  "$ref" : "#/components/examples/Incompressible"
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "204" : {
            "description" : "Successful update of the simulation"
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/check" : {
      "post" : {
        "tags" : [ "Simulations" ],
        "summary" : "Check the simulation setup",
        "operationId" : "checkSimulationSetup",
        "responses" : {
          "200" : {
            "description" : "Successful simulation check",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CheckResponse"
                }
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/estimate" : {
      "post" : {
        "tags" : [ "Simulations" ],
        "summary" : "Estimate the simulation setup",
        "operationId" : "estimateSimulationSetup",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Estimation"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          },
          "422" : {
            "$ref" : "#/components/responses/UnprocessableEntity"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/materials" : {
      "post" : {
        "tags" : [ "Simulations" ],
        "summary" : "Update materials in the simulation setup",
        "operationId" : "updateSimulationMaterials",
        "requestBody" : {
          "description" : "Material update operations",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/MaterialUpdateRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MaterialUpdateResponse"
                }
              }
            }
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/materialUpdatePreview"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs" : {
      "get" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "List simulation runs for a simulation",
        "operationId" : "getSimulationRuns",
        "parameters" : [ {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "SimulationRuns",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/SimulationRun"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "post" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Create a simulation run",
        "description" : "This operation creates a run in status `READY`, however the run is not automatically started. The run must be started explicitly using the `POST /projects/{projectId}/simulations/{simulationId}/runs/{runId}/start` endpoint.\n",
        "operationId" : "createSimulationRun",
        "requestBody" : {
          "description" : "Simulation run to be created",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/SimulationRun"
              },
              "example" : {
                "name" : "My first simulation run"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "201" : {
            "description" : "Successful creation of the simulation run",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SimulationRun"
                }
              }
            },
            "links" : {
              "getSimulationRun" : {
                "operationId" : "getSimulationRun",
                "parameters" : {
                  "projectId" : "$request.path.projectId",
                  "simulationId" : "$request.path.simulationId",
                  "runId" : "$response.body#/runId"
                },
                "description" : "The `runId` value returned in the response can be used as the `runId` parameter in `GET /projects/{projectId}/simulations/{simulationId}/runs/{runId}`.\n"
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}" : {
      "get" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Get basic information about the simulation run",
        "operationId" : "getSimulationRun",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SimulationRun"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "put" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Update an existing simulation run",
        "operationId" : "updateSimulationRun",
        "requestBody" : {
          "description" : "Simulation run to be updated",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/SimulationRun"
              },
              "example" : {
                "name" : "My first awesome simulation run"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "204" : {
            "description" : "Successful update of the simulation run"
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/eventlog" : {
      "get" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Get the simulation run event log",
        "operationId" : "getSimulationRunEventLog",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/EventLogResponse"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/sdkcode" : {
      "get" : {
        "tags" : [ "Simulations" ],
        "summary" : "Get Python SDK code for the simulation",
        "description" : "Important: due to incompatibilities between the source Spec version and the target SDK version the generated code may contain incomplete sections or even be invalid. The generated code is provided as a convenience and should be reviewed and adapted before use.",
        "operationId" : "getSimulationSdkCode",
        "parameters" : [ {
          "$ref" : "#/components/parameters/sdkVersion"
        }, {
          "$ref" : "#/components/parameters/sdkLanguage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "text/plain;charset=UTF-8" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/sdkcode" : {
      "get" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Get Python SDK code for the simulation run",
        "description" : "Important: due to incompatibilities between the source Spec version and the target SDK version the generated code may contain incomplete sections or even be invalid. The generated code is provided as a convenience and should be reviewed and adapted before use.",
        "operationId" : "getSimulationRunSdkCode",
        "parameters" : [ {
          "$ref" : "#/components/parameters/sdkVersion"
        }, {
          "$ref" : "#/components/parameters/sdkLanguage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "text/plain;charset=UTF-8" : {
                "schema" : {
                  "type" : "string"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/spec" : {
      "get" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Get the simulation run spec",
        "operationId" : "getSimulationRunSpec",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SimulationSpec"
                },
                "examples" : {
                  "windcomfort" : {
                    "$ref" : "#/components/examples/WindComfort"
                  },
                  "incompressible" : {
                    "$ref" : "#/components/examples/Incompressible"
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      }, {
        "$ref" : "#/components/parameters/simulationSpecSchemaVersion"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/start" : {
      "post" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Start the simulation run",
        "operationId" : "startSimulationRun",
        "responses" : {
          "202" : {
            "description" : "Successful operation."
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/add-wind-data" : {
      "post" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Add wind data to a simulation run (works only for PWC runs)",
        "description" : "You can use this endpoint to add wind data to an existing PWC run. This means that for the new run, only the statistical surface solution will be regenerated based on the new wind data, while the individual results of each direction will be kept from the original run. This endpoint is only used to trigger the execution of the new simulation run - before calling this endpoint make sure to update the simulation spec with the new wind data.",
        "operationId" : "addWindDataToSimulationRun",
        "requestBody" : {
          "description" : "Metadata of the newly created simulation run",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/WindData"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "202" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SimulationRun"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/cancel" : {
      "post" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Cancel the simulation run",
        "operationId" : "cancelSimulationRun",
        "responses" : {
          "202" : {
            "description" : "Successful operation."
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/results" : {
      "get" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "List available results for a simulation runs",
        "operationId" : "getSimulationRunResults",
        "parameters" : [ {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        }, {
          "$ref" : "#/components/parameters/resultType"
        }, {
          "$ref" : "#/components/parameters/resultCategory"
        }, {
          "$ref" : "#/components/parameters/resultQuantity"
        }, {
          "$ref" : "#/components/parameters/resultName"
        }, {
          "$ref" : "#/components/parameters/resultDirection"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "SimulationRunResults",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "example" : [ {
                        "type" : "SOLUTION_FIELD",
                        "resultId" : "840c840c-840c-840c-840c-840c840c840c",
                        "category" : "STATISTICAL_SURFACE_SOLUTION",
                        "modifiedAt" : "2020-03-04T17:29:42Z",
                        "download" : {
                          "format" : "PVD",
                          "uncompressedSizeInBytes" : 4000,
                          "url" : "https://httpbin.org/bytes/4000",
                          "compression" : "ZIP64"
                        }
                      }, {
                        "type" : "SOLUTION_FIELD",
                        "resultId" : "744e744e-744e-744e-744e-744e744e744e",
                        "category" : "TRANSIENT_SOLUTION",
                        "direction" : 0.0,
                        "modifiedAt" : "2020-03-04T17:29:42Z",
                        "download" : {
                          "format" : "ENSIGHT_GOLD",
                          "uncompressedSizeInBytes" : 8000,
                          "url" : "https://httpbin.org/bytes/8000",
                          "compression" : "ZIP64"
                        }
                      }, {
                        "type" : "PLOT",
                        "resultId" : "148a148a-148a-148a-148a-148a148a148a",
                        "category" : "PROBE_POINT_PLOT",
                        "name" : "Probe point 1",
                        "quantity" : "p",
                        "direction" : 0.0,
                        "modifiedAt" : "2020-03-04T17:29:42Z",
                        "download" : {
                          "format" : "CSV",
                          "uncompressedSizeInBytes" : 2000,
                          "url" : "https://httpbin.org/bytes/2000",
                          "compression" : "NONE"
                        }
                      }, {
                        "type" : "TABLE",
                        "resultId" : "670e670e-670e-670e-670e-670e670e670e",
                        "category" : "PROBE_POINT_PLOT",
                        "name" : "Probe point 1",
                        "direction" : 0.0,
                        "modifiedAt" : "2020-03-04T17:29:42Z",
                        "download" : {
                          "format" : "CSV",
                          "uncompressedSizeInBytes" : 1000,
                          "url" : "https://httpbin.org/bytes/1000",
                          "compression" : "NONE"
                        }
                      } ],
                      "items" : {
                        "$ref" : "#/components/schemas/OneOfSimulationRunResult"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/subruns" : {
      "get" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "List of sub-runs of parametric runs",
        "operationId" : "getSimulationRunSubRuns",
        "parameters" : [ {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "SimulationRuns",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/SimulationRun"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/subruns/{subRunId}/spec" : {
      "get" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Get the simulation sub-run spec",
        "operationId" : "getSimulationRunSubRunSpec",
        "responses" : {
          "200" : {
            "description" : "Successful operation.",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SimulationSpec"
                },
                "examples" : {
                  "simerics" : {
                    "$ref" : "#/components/examples/Simerics"
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      }, {
        "$ref" : "#/components/parameters/subRunId"
      }, {
        "$ref" : "#/components/parameters/simulationSpecSchemaVersion"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/subruns/{subRunId}/cancel" : {
      "post" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Cancel the sub-run of a parametric run",
        "operationId" : "cancelSimulationRunSubRun",
        "responses" : {
          "202" : {
            "description" : "Successful operation."
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      }, {
        "$ref" : "#/components/parameters/subRunId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/subruns/{subRunId}" : {
      "delete" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Delete the sub-run of a parametric run",
        "operationId" : "deleteSimulationRunSubRun",
        "responses" : {
          "204" : {
            "description" : "No Content"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      }, {
        "$ref" : "#/components/parameters/subRunId"
      } ]
    },
    "/projects/{projectId}/simulations/{simulationId}/runs/{runId}/subruns/{subRunId}/results" : {
      "get" : {
        "tags" : [ "Simulation Runs" ],
        "summary" : "Get the simulation sub-run results",
        "operationId" : "getSimulationRunSubRunResults",
        "parameters" : [ {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        }, {
          "$ref" : "#/components/parameters/resultType"
        }, {
          "$ref" : "#/components/parameters/resultCategory"
        }, {
          "$ref" : "#/components/parameters/resultQuantity"
        }, {
          "$ref" : "#/components/parameters/resultName"
        } ],
        "responses" : {
          "200" : {
            "description" : "Successful operation",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "SimulationRunResults",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "example" : [ {
                        "type" : "SOLUTION_FIELD",
                        "resultId" : "840c840c-840c-840c-840c-840c840c840c",
                        "category" : "STATISTICAL_SURFACE_SOLUTION",
                        "modifiedAt" : "2020-03-04T17:29:42Z",
                        "download" : {
                          "format" : "PVD",
                          "uncompressedSizeInBytes" : 4000,
                          "url" : "https://httpbin.org/bytes/4000",
                          "compression" : "ZIP64"
                        }
                      }, {
                        "type" : "SOLUTION_FIELD",
                        "resultId" : "744e744e-744e-744e-744e-744e744e744e",
                        "category" : "TRANSIENT_SOLUTION",
                        "direction" : 0.0,
                        "modifiedAt" : "2020-03-04T17:29:42Z",
                        "download" : {
                          "format" : "ENSIGHT_GOLD",
                          "uncompressedSizeInBytes" : 8000,
                          "url" : "https://httpbin.org/bytes/8000",
                          "compression" : "ZIP64"
                        }
                      }, {
                        "type" : "PLOT",
                        "resultId" : "148a148a-148a-148a-148a-148a148a148a",
                        "category" : "PROBE_POINT_PLOT",
                        "name" : "Probe point 1",
                        "quantity" : "p",
                        "direction" : 0.0,
                        "modifiedAt" : "2020-03-04T17:29:42Z",
                        "download" : {
                          "format" : "CSV",
                          "uncompressedSizeInBytes" : 2000,
                          "url" : "https://httpbin.org/bytes/2000",
                          "compression" : "NONE"
                        }
                      }, {
                        "type" : "TABLE",
                        "resultId" : "670e670e-670e-670e-670e-670e670e670e",
                        "category" : "PROBE_POINT_PLOT",
                        "name" : "Probe point 1",
                        "direction" : 0.0,
                        "modifiedAt" : "2020-03-04T17:29:42Z",
                        "download" : {
                          "format" : "CSV",
                          "uncompressedSizeInBytes" : 1000,
                          "url" : "https://httpbin.org/bytes/1000",
                          "compression" : "NONE"
                        }
                      } ],
                      "items" : {
                        "$ref" : "#/components/schemas/OneOfSimulationRunResult"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/simulationId"
      }, {
        "$ref" : "#/components/parameters/runId"
      }, {
        "$ref" : "#/components/parameters/subRunId"
      } ]
    },
    "/projects/{projectId}/reports" : {
      "get" : {
        "tags" : [ "Reports" ],
        "operationId" : "getReports",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        }, {
          "$ref" : "#/components/parameters/simulationIdOptional"
        }, {
          "$ref" : "#/components/parameters/runIdOptional"
        }, {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "ReportResponses",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/ReportResponse"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Reports" ],
        "operationId" : "createReport",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ReportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "201" : {
            "description" : "Created",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ReportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/projects/{projectId}/reports/from-state" : {
      "post" : {
        "tags" : [ "Reports" ],
        "operationId" : "createReportFromPostprocessingState",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ReportFromStateRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "201" : {
            "description" : "Created",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ReportResponse"
                }
              }
            }
          }
        }
      }
    },
    "/projects/{projectId}/reports/{reportId}" : {
      "get" : {
        "tags" : [ "Reports" ],
        "operationId" : "getReport",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        }, {
          "$ref" : "#/components/parameters/reportId"
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ReportResponse"
                }
              }
            }
          }
        }
      },
      "put" : {
        "tags" : [ "Reports" ],
        "operationId" : "updateReport",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        }, {
          "$ref" : "#/components/parameters/reportId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/ReportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "204" : {
            "description" : "Accepted",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ReportResponse"
                }
              }
            }
          }
        }
      },
      "delete" : {
        "tags" : [ "Reports" ],
        "operationId" : "deleteReport",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        }, {
          "$ref" : "#/components/parameters/reportId"
        } ],
        "responses" : {
          "204" : {
            "description" : "No Content"
          }
        }
      }
    },
    "/projects/{projectId}/reports/{reportId}/start" : {
      "post" : {
        "tags" : [ "Reports" ],
        "operationId" : "startReportJob",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        }, {
          "$ref" : "#/components/parameters/reportId"
        } ],
        "responses" : {
          "202" : {
            "description" : "Accepted"
          }
        }
      }
    },
    "/projects/{projectId}/reports/{reportId}/cancel" : {
      "post" : {
        "tags" : [ "Reports" ],
        "operationId" : "cancelReportJob",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        }, {
          "$ref" : "#/components/parameters/reportId"
        } ],
        "responses" : {
          "202" : {
            "description" : "Accepted"
          }
        }
      }
    },
    "/projects/{projectId}/postprocessing/results/{resultId}/manual-postprocessor-states" : {
      "get" : {
        "tags" : [ "Postprocessing" ],
        "operationId" : "getManualStates",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        }, {
          "name" : "resultId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/StateResponse"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/projects/{projectId}/postprocessing/results/{resultId}/automatic-postprocessor-states" : {
      "get" : {
        "tags" : [ "Postprocessing" ],
        "operationId" : "getAutomaticStates",
        "parameters" : [ {
          "$ref" : "#/components/parameters/projectId"
        }, {
          "name" : "resultId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "type" : "array",
                  "items" : {
                    "$ref" : "#/components/schemas/StateResponse"
                  }
                }
              }
            }
          }
        }
      }
    },
    "/storage" : {
      "post" : {
        "tags" : [ "Storage" ],
        "summary" : "Create a temporary storage location",
        "operationId" : "createStorage",
        "responses" : {
          "201" : {
            "description" : "Successful creation of the temporary storage location",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Storage"
                }
              }
            }
          }
        }
      }
    },
    "/materialgroups" : {
      "get" : {
        "tags" : [ "Materials" ],
        "summary" : "List all the material groups the user has access to",
        "operationId" : "getMaterialGroups",
        "parameters" : [ {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "MaterialGroupListResponse",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/MaterialGroupResponse"
                      }
                    }
                  }
                }
              }
            }
          }
        }
      },
      "post" : {
        "tags" : [ "Materials" ],
        "summary" : "Create new material group",
        "operationId" : "createMaterialGroup",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMaterialGroupRequest"
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Material group created successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MaterialGroupResponse"
                }
              }
            }
          }
        }
      }
    },
    "/materialgroups/{materialGroupId}/materialgroups" : {
      "get" : {
        "tags" : [ "Materials" ],
        "summary" : "List all sub-groups of the specified material group",
        "operationId" : "getNestedMaterialGroups",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        }, {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "MaterialGroupListResponse",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/MaterialGroupResponse"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "post" : {
        "tags" : [ "Materials" ],
        "summary" : "Create a child material group for the specified parent group",
        "operationId" : "createNestedMaterialGroup",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateNestedMaterialGroupRequest"
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Nested material group created successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MaterialGroupResponse"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      }
    },
    "/materialgroups/{materialGroupId}" : {
      "get" : {
        "tags" : [ "Materials" ],
        "summary" : "Fetch material group information",
        "operationId" : "getMaterialGroupMetadata",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MaterialGroupResponse"
                }
              }
            }
          },
          "404" : {
            "description" : "Material group was not found"
          }
        }
      },
      "put" : {
        "tags" : [ "Materials" ],
        "summary" : "Update material group information",
        "operationId" : "updateMaterialGroupMetadata",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UpdateMaterialGroupRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Material group was successfully updated",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MaterialGroupResponse"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "delete" : {
        "tags" : [ "Materials" ],
        "summary" : "Delete material group, sub-groups associated to it, and materials associated to the group and all sub-groups",
        "operationId" : "deleteMaterialGroup",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        } ],
        "responses" : {
          "204" : {
            "description" : "Material group and related entities deleted successfully"
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      }
    },
    "/materialgroups/{materialGroupId}/materials" : {
      "get" : {
        "tags" : [ "Materials" ],
        "summary" : "List materials within the material group",
        "operationId" : "getMaterials",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        }, {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "MaterialListResponse",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/MaterialResponse"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "post" : {
        "tags" : [ "Materials" ],
        "summary" : "Create a new material",
        "operationId" : "createMaterial",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMaterialRequest"
              }
            }
          }
        },
        "responses" : {
          "201" : {
            "description" : "Material created successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MaterialResponse"
                }
              }
            }
          },
          "404" : {
            "description" : "Material group was not found"
          }
        }
      }
    },
    "/materialgroups/{materialGroupId}/materials/{materialId}" : {
      "get" : {
        "tags" : [ "Materials" ],
        "summary" : "Get information about an existing material",
        "operationId" : "getMaterialData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        }, {
          "$ref" : "#/components/parameters/materialId"
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MaterialResponse"
                }
              }
            }
          },
          "404" : {
            "description" : "Material group or material was not found"
          }
        }
      },
      "put" : {
        "tags" : [ "Materials" ],
        "summary" : "Update an existing material",
        "operationId" : "updateMaterialData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        }, {
          "$ref" : "#/components/parameters/materialId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateMaterialRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Material was successfully updated",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/MaterialResponse"
                }
              }
            }
          },
          "404" : {
            "description" : "Material group or material was not found"
          }
        }
      },
      "delete" : {
        "tags" : [ "Materials" ],
        "summary" : "Remove an existing material",
        "operationId" : "deleteMaterialData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/materialGroupId"
        }, {
          "$ref" : "#/components/parameters/materialId"
        } ],
        "responses" : {
          "200" : {
            "description" : "Material was successfully updated"
          },
          "404" : {
            "description" : "Material group or material was not found"
          }
        }
      }
    },
    "/winddata" : {
      "get" : {
        "tags" : [ "Wind" ],
        "summary" : "Get wind condition for given coordinates",
        "operationId" : "getWindData",
        "parameters" : [ {
          "$ref" : "#/components/parameters/latitude"
        }, {
          "$ref" : "#/components/parameters/longitude"
        } ],
        "responses" : {
          "200" : {
            "description" : "Ok",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/WindRoseResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Invalid latitude or longitude"
          },
          "429" : {
            "description" : "Daily or weekly request limit was exceeded (daily limit = 50 requests/day, weekly limit = 100 requests/week)"
          }
        }
      }
    },
    "/spaces/{spaceId}/folders" : {
      "post" : {
        "tags" : [ "Folders" ],
        "summary" : "Create Folder",
        "description" : "Create a new Folder. If `parentFolderId` is missing, the folder will be created at the root level of the Space. Folder name clashes are allowed.",
        "operationId" : "createFolder",
        "parameters" : [ {
          "$ref" : "#/components/parameters/spaceId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Folder"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "201" : {
            "description" : "Folder created successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Folder"
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          }
        }
      }
    },
    "/spaces/{spaceId}/folders/{folderId}" : {
      "get" : {
        "tags" : [ "Folders" ],
        "summary" : "Get Folder Info",
        "description" : "Get Folder metadata and current user permissions.",
        "operationId" : "getFolderInfo",
        "parameters" : [ {
          "name" : "spaceId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "folderId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Folder"
                }
              }
            }
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      },
      "put" : {
        "tags" : [ "Folders" ],
        "summary" : "Update Folder",
        "description" : "Update Folder metadata",
        "operationId" : "updateFolder",
        "parameters" : [ {
          "name" : "spaceId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "folderId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Folder"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "202" : {
            "description" : "Folder updated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Folder"
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          }
        }
      },
      "delete" : {
        "tags" : [ "Folders" ],
        "summary" : "Delete Folder",
        "description" : "Delete a folder and all its content. The deletion is propagated to all child elements. If the total number of elements to delete is too large, this operation will be carried out asynchronously.",
        "operationId" : "deleteFolder",
        "parameters" : [ {
          "name" : "spaceId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "folderId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "202" : {
            "description" : "Operation will be carried out asynchronously"
          },
          "204" : {
            "description" : "Folder deleted successfully"
          },
          "403" : {
            "description" : "Insufficient permissions"
          }
        }
      }
    },
    "/spaces/{spaceId}/content/projects" : {
      "get" : {
        "tags" : [ "Folders" ],
        "summary" : "List Projects in Space root",
        "description" : "List projects located at the root level of a Space. Filtering or search capabilities are not supported. This only returns the projects at the root level of a Space, without a recursive expansion to child folders.",
        "operationId" : "listProjectsInSpaceRoot",
        "parameters" : [ {
          "$ref" : "#/components/parameters/spaceId"
        }, {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        }, {
          "name" : "sort",
          "in" : "query",
          "description" : "A field to sort by. The available fields are: 'name', 'createdAt' and 'lastModifiedAt'. To indicate sorting direction, the field must be prefixed with '+' (ascending) or '-' (descending), e.g. ?sort=+name",
          "required" : false,
          "style" : "form",
          "explode" : true,
          "schema" : {
            "pattern" : "^[-+](name|createdAt|lastModifiedAt)$",
            "type" : "string",
            "default" : "-lastModifiedAt"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "Projects",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/Project"
                      }
                    }
                  }
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/spaces/{spaceId}/content/folders" : {
      "get" : {
        "tags" : [ "Folders" ],
        "summary" : "List Folders in Space root",
        "description" : "List folders located at the root level of a Space. Filtering or search capabilities are not supported. This only returns the folders at the root level of a Space, without a recursive expansion to child folders.",
        "operationId" : "listFoldersInSpaceRoot",
        "parameters" : [ {
          "$ref" : "#/components/parameters/spaceId"
        }, {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        }, {
          "name" : "sort",
          "in" : "query",
          "description" : "A field to sort by. The available fields are: 'name', 'createdAt' and 'lastModifiedAt'. To indicate sorting direction, the field must be prefixed with '+' (ascending) or '-' (descending), e.g. ?sort=+name",
          "required" : false,
          "style" : "form",
          "explode" : true,
          "schema" : {
            "pattern" : "^[-+](name|createdAt|lastModifiedAt)$",
            "type" : "string",
            "default" : "-lastModifiedAt"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "Folders",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/Folder"
                      }
                    }
                  }
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/spaces/{spaceId}/folders/{folderId}/content/projects" : {
      "get" : {
        "tags" : [ "Folders" ],
        "summary" : "List Projects in Folder",
        "description" : "List projects located in a Folder. Filtering or search capabilities are not supported. This only returns the projects of the queried folder, without a recursive expansion to child folders.",
        "operationId" : "listProjectsInFolder",
        "parameters" : [ {
          "$ref" : "#/components/parameters/spaceId"
        }, {
          "$ref" : "#/components/parameters/folderId"
        }, {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        }, {
          "name" : "sort",
          "in" : "query",
          "description" : "A field to sort by. The available fields are: 'name', 'createdAt' and 'lastModifiedAt'. To indicate sorting direction, the field must be prefixed with '+' (ascending) or '-' (descending), e.g. ?sort=+name",
          "required" : false,
          "style" : "form",
          "explode" : true,
          "schema" : {
            "pattern" : "^[-+](name|createdAt|lastModifiedAt)$",
            "type" : "string",
            "default" : "-lastModifiedAt"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "Projects",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/Project"
                      }
                    }
                  }
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/spaces/{spaceId}/folders/{folderId}/content/folders" : {
      "get" : {
        "tags" : [ "Folders" ],
        "summary" : "List Folders in Folder",
        "description" : "List folders located in a Folder. Filtering or search capabilities are not supported. This only returns the folders of the queried folder, without a recursive expansion to child folders",
        "operationId" : "listFoldersInFolder",
        "parameters" : [ {
          "$ref" : "#/components/parameters/spaceId"
        }, {
          "$ref" : "#/components/parameters/folderId"
        }, {
          "$ref" : "#/components/parameters/collectionLimit"
        }, {
          "$ref" : "#/components/parameters/collectionPage"
        }, {
          "name" : "sort",
          "in" : "query",
          "description" : "A field to sort by. The available fields are: 'name', 'createdAt' and 'lastModifiedAt'. To indicate sorting direction, the field must be prefixed with '+' (ascending) or '-' (descending), e.g. ?sort=+name",
          "required" : false,
          "style" : "form",
          "explode" : true,
          "schema" : {
            "pattern" : "^[-+](name|createdAt|lastModifiedAt)$",
            "type" : "string",
            "default" : "-lastModifiedAt"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "title" : "Folders",
                  "type" : "object",
                  "properties" : {
                    "_links" : {
                      "$ref" : "#/components/schemas/CollectionLinks"
                    },
                    "_meta" : {
                      "$ref" : "#/components/schemas/CollectionMeta"
                    },
                    "_embedded" : {
                      "type" : "array",
                      "items" : {
                        "$ref" : "#/components/schemas/Folder"
                      }
                    }
                  }
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/spaces/{spaceId}/move" : {
      "post" : {
        "tags" : [ "Folders" ],
        "summary" : "Move Content from Space root",
        "description" : "Move content located at the root level of a Space. Several resources can be moved with the same request. All resources must be moved to the same target location. Folders cannot be moved to a different Space. Projects can only be moved to a Personal Space if the Space owner and the project owner match.",
        "operationId" : "moveContentFromSpaceRoot",
        "parameters" : [ {
          "$ref" : "#/components/parameters/spaceId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/MoveContentRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "204" : {
            "description" : "Content moved successfully"
          },
          "403" : {
            "description" : "Insufficient permissions"
          }
        }
      }
    },
    "/spaces/{spaceId}/folders/{folderId}/move" : {
      "post" : {
        "tags" : [ "Folders" ],
        "summary" : "Move Content from Folder",
        "description" : "Move content from this folder. Several resources can be moved with the same request. All resources must be moved to the same target location. Folders cannot be moved to a different Space. Projects can only be moved to a Personal Space if the Space owner and the project owner match.",
        "operationId" : "moveContentFromFolder",
        "parameters" : [ {
          "$ref" : "#/components/parameters/spaceId"
        }, {
          "$ref" : "#/components/parameters/folderId"
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/MoveContentRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "204" : {
            "description" : "Content moved successfully"
          },
          "403" : {
            "description" : "Insufficient permissions"
          }
        }
      }
    },
    "/spaces" : {
      "get" : {
        "tags" : [ "Spaces" ],
        "summary" : "Get User Spaces",
        "description" : "Get Info about the User Personal Space and all the Team Spaces the user has access to.",
        "operationId" : "getUserSpaces",
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Spaces"
                },
                "example" : {
                  "personalSpaces" : [ {
                    "spaceId" : "3fa85f64-5717-4562-b3fc-2c963f66afa6",
                    "ownerUsername" : "simon",
                    "spaceType" : "PERSONAL",
                    "createdAt" : "2022-08-03T16:33:00.742Z",
                    "lastModifiedAt" : "2022-08-03T16:33:00.742Z"
                  } ],
                  "teamSpaces" : [ {
                    "spaceId" : "3fa85f64-5717-4562-b3fc-2c963f66afa6",
                    "organizationId" : "3fa85f64-5717-4562-b3fc-2c963f66afa6",
                    "spaceType" : "TEAM",
                    "name" : "Team 1 Space",
                    "createdAt" : "2022-08-03T16:33:00.742Z",
                    "lastModifiedAt" : "2022-08-03T16:33:00.742Z"
                  } ]
                }
              }
            }
          }
        }
      }
    },
    "/spaces/{spaceId}" : {
      "get" : {
        "tags" : [ "Spaces" ],
        "summary" : "Get Space Info",
        "description" : "Get Space metadata, current user permissions, and view Space settings",
        "operationId" : "getSpaceInfo",
        "parameters" : [ {
          "$ref" : "#/components/parameters/spaceId"
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Space"
                },
                "examples" : {
                  "Personal Space" : {
                    "description" : "Personal Space",
                    "value" : {
                      "spaceId" : "3fa85f64-5717-4562-b3fc-2c963f66afa6",
                      "ownerUsername" : "simon",
                      "spaceType" : "PERSONAL",
                      "createdAt" : "2022-08-03T16:33:00.742Z",
                      "lastModifiedAt" : "2022-08-03T16:33:00.742Z",
                      "spaceSettings" : {
                        "sharingControl" : "WITH_ANYONE"
                      }
                    }
                  },
                  "Team Space" : {
                    "description" : "Team Space",
                    "value" : {
                      "spaceId" : "3fa85f64-5717-4562-b3fc-2c963f66afa6",
                      "organizationId" : "3fa85f64-5717-4562-b3fc-2c963f66afa6",
                      "spaceType" : "TEAM",
                      "name" : "Team 1 Space",
                      "createdAt" : "2022-08-03T16:33:00.742Z",
                      "lastModifiedAt" : "2022-08-03T16:33:00.742Z",
                      "spaceSettings" : {
                        "sharingControl" : "WITH_ANYONE"
                      }
                    }
                  }
                }
              }
            }
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      },
      "put" : {
        "tags" : [ "Spaces" ],
        "summary" : "Update Space",
        "description" : "Update Space metadata and settings",
        "operationId" : "updateSpace",
        "parameters" : [ {
          "name" : "spaceId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Space"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "202" : {
            "description" : "Space updated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Space"
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          }
        }
      }
    },
    "/permissions/spaces/{spaceId}" : {
      "get" : {
        "tags" : [ "Space Permissions" ],
        "summary" : "List Space Permissions",
        "description" : "See who has access to a Space",
        "operationId" : "listSpacePermissions",
        "parameters" : [ {
          "name" : "spaceId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Permissions"
                },
                "example" : {
                  "permissions" : [ {
                    "scope" : {
                      "username" : "userThatCanView"
                    },
                    "permission" : "VIEW"
                  }, {
                    "scope" : {
                      "username" : "userThatCanCopy"
                    },
                    "permission" : "COPY"
                  }, {
                    "scope" : {
                      "username" : "userThatCanEdit"
                    },
                    "permission" : "EDIT"
                  }, {
                    "scope" : {
                      "username" : "userThatCanManage"
                    },
                    "permission" : "FULL_ACCESS"
                  } ]
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      },
      "put" : {
        "tags" : [ "Space Permissions" ],
        "summary" : "Update Space Permissions",
        "description" : "Update who has access to a Space.",
        "operationId" : "updateSpacePermissions",
        "parameters" : [ {
          "name" : "spaceId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Permissions"
              },
              "examples" : {
                "Grant permission to users to access a Space" : {
                  "description" : "Grant permission to users to a Space",
                  "value" : {
                    "permissions" : [ {
                      "scope" : {
                        "username" : "userThatCanView"
                      },
                      "permission" : "VIEW"
                    }, {
                      "scope" : {
                        "username" : "userThatCanCopy"
                      },
                      "permission" : "COPY"
                    }, {
                      "scope" : {
                        "username" : "userThatCanEdit"
                      },
                      "permission" : "EDIT"
                    } ]
                  }
                },
                "Revoke permission from users to a Space" : {
                  "description" : "Revoke permission from users to access a Space",
                  "value" : {
                    "permissions" : [ {
                      "scope" : {
                        "username" : "removedUser"
                      },
                      "permission" : "NONE"
                    }, {
                      "scope" : {
                        "username" : "yetAnotherRemovedUser"
                      },
                      "permission" : "NONE"
                    } ]
                  }
                }
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "202" : {
            "description" : "Permissions updated successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/Permissions"
                },
                "example" : {
                  "permissions" : [ {
                    "scope" : {
                      "username" : "userThatCanView"
                    },
                    "permission" : "VIEW"
                  }, {
                    "scope" : {
                      "username" : "userThatCanCopy"
                    },
                    "permission" : "COPY"
                  }, {
                    "scope" : {
                      "username" : "userThatCanEdit"
                    },
                    "permission" : "EDIT"
                  } ]
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/permissions/spaces/{spaceId}/requester" : {
      "get" : {
        "tags" : [ "Space Permissions" ],
        "summary" : "Get User Space Permissions",
        "description" : "Get Info about the Permissions that the current requester user has in this Space.",
        "operationId" : "getRequesterSpacePermissions",
        "parameters" : [ {
          "name" : "spaceId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/SpacePermissions"
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/users" : {
      "post" : {
        "tags" : [ "Users" ],
        "summary" : "Signup a user",
        "description" : "Signup a new user. The current requester user needs to be authenticated.",
        "operationId" : "signupUser",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/UserSignupRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "201" : {
            "description" : "User created successfully",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/UserSignupResponse"
                }
              }
            }
          },
          "400" : {
            "$ref" : "#/components/responses/BadRequest"
          },
          "403" : {
            "$ref" : "#/components/responses/InsufficientPermissions"
          },
          "409" : {
            "$ref" : "#/components/responses/Conflict"
          }
        }
      }
    },
    "/ai/models" : {
      "get" : {
        "tags" : [ "AI Models" ],
        "summary" : "Get all AI models belonging to the user",
        "operationId" : "getAiModels",
        "responses" : {
          "200" : {
            "description" : "All AI models",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GetAiModelsResponse"
                }
              }
            }
          }
        }
      }
    },
    "/ai/models/{aiModelId}" : {
      "get" : {
        "tags" : [ "AI Models" ],
        "summary" : "Get specific AI model belonging to the user",
        "operationId" : "getAiModel",
        "parameters" : [ {
          "name" : "aiModelId",
          "in" : "path",
          "required" : true,
          "style" : "simple",
          "explode" : false,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "AI model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/AiUserModel"
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/ai/available-models" : {
      "get" : {
        "tags" : [ "AI Models" ],
        "summary" : "Get all AI model belonging to the user that can be used to run a specific simulation",
        "operationId" : "getAvailableAiModel",
        "parameters" : [ {
          "name" : "simulationId",
          "in" : "query",
          "required" : true,
          "style" : "form",
          "explode" : true,
          "schema" : {
            "type" : "string",
            "format" : "uuid"
          }
        }, {
          "name" : "projectId",
          "in" : "query",
          "required" : true,
          "style" : "form",
          "explode" : true,
          "schema" : {
            "type" : "string"
          }
        } ],
        "responses" : {
          "200" : {
            "description" : "AI model",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GetAvailableAiModelsResponse"
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/ai/predict" : {
      "post" : {
        "tags" : [ "AI Models" ],
        "summary" : "Generate an AI prediction for a simulation based on an AI model",
        "description" : "Waits for the prediction to finish and returns the results. Predictions that take longer\nthan 50 seconds time out, use POST /v1/ai/predictions for those.\n",
        "operationId" : "createPrediction",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateAiPredictionRequest"
              }
            }
          }
        },
        "responses" : {
          "200" : {
            "description" : "Prediction results",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CreateAiPredictionResponse"
                }
              }
            }
          },
          "403" : {
            "description" : "Insufficient permissions"
          },
          "404" : {
            "description" : "Element was not found"
          }
        }
      }
    },
    "/projects/{projectId}/export" : {
      "post" : {
        "tags" : [ "Simulation Result Exports" ],
        "summary" : "Trigger an export for a simulation result",
        "operationId" : "createExport",
        "requestBody" : {
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/CreateExportRequest"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "202" : {
            "description" : "Export successfully triggered",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/CreateExportResponse"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      } ]
    },
    "/projects/{projectId}/export/{exportId}" : {
      "get" : {
        "tags" : [ "Simulation Result Exports" ],
        "summary" : "Get the status of the export and temporary download link to the exported object if it is done",
        "operationId" : "getExport",
        "responses" : {
          "200" : {
            "description" : "The status of the export and the temporary download link to the exported object if it is done",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/GetExportResponse"
                }
              }
            }
          },
          "404" : {
            "$ref" : "#/components/responses/NotFound"
          }
        }
      },
      "parameters" : [ {
        "$ref" : "#/components/parameters/projectId"
      }, {
        "$ref" : "#/components/parameters/exportId"
      } ]
    }
  },
  "components" : {
    "schemas" : {
      "UserSignupRequest" : {
        "required" : [ "consentTermsConditionsPrivacy", "consentToBeContacted", "email", "firstname", "lastname" ],
        "type" : "object",
        "properties" : {
          "email" : {
            "maxLength" : 255,
            "minLength" : 1,
            "type" : "string"
          },
          "firstname" : {
            "maxLength" : 40,
            "minLength" : 1,
            "type" : "string"
          },
          "lastname" : {
            "maxLength" : 80,
            "minLength" : 1,
            "type" : "string"
          },
          "consentTermsConditionsPrivacy" : {
            "type" : "boolean",
            "description" : "I agree to the End User License Terms and the Privacy Policy"
          },
          "consentToBeContacted" : {
            "type" : "boolean",
            "description" : "SimScale may occasionally contact you via e-mail to present you with similar goods and services of SimScale unless you have objected to such use of your e-mail address."
          }
        },
        "example" : {
          "email" : "j.doe@simscale.com",
          "firstname" : "John",
          "lastname" : "Doe",
          "consentTermsConditionsPrivacy" : true,
          "consentToBeContacted" : true
        }
      },
      "UserSignupResponse" : {
        "required" : [ "email", "userId" ],
        "type" : "object",
        "properties" : {
          "email" : {
            "type" : "string",
            "readOnly" : true
          },
          "userId" : {
            "type" : "string",
            "readOnly" : true
          }
        },
        "example" : {
          "email" : "j.doe@simscale.com",
          "userId" : "1234123412341234"
        }
      },
      "GetAiModelsResponse" : {
        "type" : "array",
        "items" : {
          "$ref" : "#/components/schemas/AiUserModel"
        }
      },
      "AiUserModel" : {
        "type" : "object",
        "properties" : {
          "analysisType" : {
            "type" : "string",
            "description" : "Possible values are STATIC_ANALYSIS, INCOMPRESSIBLE, COUPLED_CONJUGATE_HEAT_TRANSFER and EMBEDDED_BOUNDARY\n",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "readOnly" : true
          },
          "predictorComponent" : {
            "type" : "string",
            "description" : "Possible values are navasto and ai-solver-kickstart\n",
            "readOnly" : true
          },
          "sharedWithOrganization" : {
            "type" : "boolean",
            "readOnly" : true
          },
          "templateName" : {
            "type" : "string",
            "description" : "Possible values are fea_template, cfd_template, chtv2ibm_template, spec_id and spec_and_tesselation\n",
            "readOnly" : true
          },
          "templateParameters" : {
            "type" : "object",
            "readOnly" : true
          },
          "aiModelId" : {
            "type" : "string",
            "format" : "uuid",
            "readOnly" : true
          }
        }
      },
      "GetAvailableAiModelsResponse" : {
        "type" : "array",
        "items" : {
          "$ref" : "#/components/schemas/AvailableAiModel"
        }
      },
      "AvailableAiModel" : {
        "type" : "object",
        "properties" : {
          "aiModelLabel" : {
            "type" : "string",
            "readOnly" : true
          },
          "aiModelId" : {
            "type" : "string",
            "format" : "uuid",
            "readOnly" : true
          }
        }
      },
      "CreateAiPredictionRequest" : {
        "required" : [ "aiModelId", "projectId", "simulationId" ],
        "type" : "object",
        "properties" : {
          "aiModelId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "projectId" : {
            "type" : "string"
          },
          "simulationId" : {
            "type" : "string",
            "format" : "uuid"
          }
        }
      },
      "CreateAiPredictionResponse" : {
        "type" : "object",
        "properties" : {
          "predictionId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "resultId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "availableFields" : {
            "type" : "array",
            "items" : {
              "type" : "object",
              "properties" : {
                "name" : {
                  "type" : "string"
                },
                "components" : {
                  "type" : "array",
                  "items" : {
                    "type" : "string"
                  }
                }
              }
            }
          },
          "confidenceScore" : {
            "type" : "number",
            "format" : "double"
          },
          "globalOutputs" : {
            "type" : "array",
            "items" : {
              "type" : "object",
              "properties" : {
                "name" : {
                  "type" : "string"
                },
                "unit" : {
                  "type" : "string"
                },
                "value" : {
                  "type" : "number",
                  "format" : "double"
                }
              }
            }
          }
        }
      },
      "Space" : {
        "type" : "object",
        "properties" : {
          "spaceId" : {
            "type" : "string",
            "format" : "uuid",
            "readOnly" : true
          },
          "organizationId" : {
            "type" : "string",
            "description" : "Only present for Team Spaces",
            "format" : "uuid",
            "readOnly" : true
          },
          "ownerUsername" : {
            "type" : "string",
            "description" : "Only present for Personal Spaces",
            "readOnly" : true
          },
          "spaceType" : {
            "type" : "string",
            "readOnly" : true,
            "enum" : [ "PERSONAL", "TEAM" ]
          },
          "name" : {
            "type" : "string",
            "example" : "Team 1 Space"
          },
          "createdAt" : {
            "type" : "string",
            "format" : "date-time",
            "readOnly" : true
          },
          "lastModifiedAt" : {
            "type" : "string",
            "format" : "date-time",
            "readOnly" : true
          },
          "spaceSettings" : {
            "$ref" : "#/components/schemas/SpaceSettings"
          }
        }
      },
      "Spaces" : {
        "type" : "object",
        "properties" : {
          "personalSpaces" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Space"
            }
          },
          "teamSpaces" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Space"
            }
          }
        }
      },
      "SpaceSettings" : {
        "required" : [ "sharingControl" ],
        "type" : "object",
        "properties" : {
          "sharingControl" : {
            "$ref" : "#/components/schemas/SharingControl"
          }
        }
      },
      "SharingControl" : {
        "type" : "string",
        "description" : "The Sharing Control level:\n  * `NO_SHARING`: Content within this Space cannot be shared with other users. Only those added to the Space have access to the content.\n  * `WITHIN_SPACE`: Content within this Space can be shared with other users within the same Space. This is useful to grant higher permissions to users within the Space.\n  * `WITHIN_ORGANIZATION`: Content within this Space can be shared with other users within the same Organization. This is useful to grant higher permissions to users within the Organization.\n  * `WITH_ANYONE`: Content within this Space can be shared with anyone. This is the only level that allows public Projects to live within the Space.\n",
        "enum" : [ "NO_SHARING", "WITHIN_SPACE", "WITHIN_ORGANIZATION", "WITH_ANYONE" ]
      },
      "SpacePermissions" : {
        "type" : "object",
        "properties" : {
          "canListContentInRoot" : {
            "type" : "boolean",
            "description" : "Whether the current user can list the contents of the root of this Space.",
            "readOnly" : true
          },
          "canCreateContentInRoot" : {
            "type" : "boolean",
            "description" : "Whether the current user can create new content in the root of this Space.",
            "readOnly" : true
          },
          "canMoveContentToRoot" : {
            "type" : "boolean",
            "description" : "Whether the current user can move content into the root folder of this Space.",
            "readOnly" : true
          },
          "canMoveContentOutOfRoot" : {
            "type" : "boolean",
            "description" : "Whether the current user can move content out of the root folder of this Space.",
            "readOnly" : true
          },
          "canEditSpaceMetadata" : {
            "type" : "boolean",
            "description" : "Whether the current user can edit the metadata of this Space.",
            "readOnly" : true
          },
          "canEditSpaceSettings" : {
            "type" : "boolean",
            "description" : "Whether the current user can edit the settings of this Space.",
            "readOnly" : true
          },
          "canEditSpacePermissions" : {
            "type" : "boolean",
            "description" : "Whether the current user can add or remove users to this Space.",
            "readOnly" : true
          },
          "canDeleteSpace" : {
            "type" : "boolean",
            "description" : "Whether the current user can delete this Space.",
            "readOnly" : true
          }
        },
        "description" : "Permissions that the current user has on this Space. Each flag corresponds to a fine-grained action that a user may take.",
        "readOnly" : true
      },
      "Folder" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "resourceType" : {
            "type" : "string",
            "readOnly" : true,
            "default" : "FOLDER",
            "enum" : [ "PROJECT", "FOLDER" ]
          },
          "folderId" : {
            "type" : "string",
            "format" : "uuid",
            "readOnly" : true
          },
          "parentFolderId" : {
            "type" : "string",
            "description" : "Can be missing if the folder is at the root level of the Space",
            "format" : "uuid"
          },
          "spaceId" : {
            "type" : "string",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "example" : "My folder"
          },
          "numberOfItems" : {
            "type" : "integer",
            "format" : "int32",
            "readOnly" : true
          },
          "createdAt" : {
            "type" : "string",
            "format" : "date-time",
            "readOnly" : true
          },
          "lastModifiedAt" : {
            "type" : "string",
            "format" : "date-time",
            "readOnly" : true
          }
        }
      },
      "MoveContentRequest" : {
        "required" : [ "entries", "to" ],
        "type" : "object",
        "properties" : {
          "entries" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ResourceToMove"
            }
          },
          "to" : {
            "$ref" : "#/components/schemas/ResourceLocation"
          }
        }
      },
      "ResourceToMove" : {
        "type" : "object",
        "properties" : {
          "folderId" : {
            "type" : "string",
            "description" : "Use this field to move an entire folder",
            "format" : "uuid"
          },
          "projectId" : {
            "type" : "string",
            "description" : "Use this field to move a project"
          }
        },
        "description" : "Specify the resource to be moved. One of `folderId` or `projectId` must be defined. An error is returned if both fields are passed."
      },
      "ResourceLocation" : {
        "required" : [ "spaceId" ],
        "type" : "object",
        "properties" : {
          "spaceId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "parentFolderId" : {
            "type" : "string",
            "description" : "If missing, the resource will be moved/copied to the root of the Space",
            "format" : "uuid"
          }
        },
        "description" : "Specify the destination to which the resource will be moved/copied"
      },
      "Project" : {
        "required" : [ "name", "measurementSystem" ],
        "type" : "object",
        "properties" : {
          "projectId" : {
            "type" : "string",
            "readOnly" : true
          },
          "spaceId" : {
            "type" : "string",
            "description" : "Always returned by the backend. Optional at project creation. If missing, the project will be created in the Personal Space of the user.",
            "format" : "uuid"
          },
          "parentFolderId" : {
            "type" : "string",
            "description" : "If missing, the project is located at the root level of the Space.",
            "format" : "uuid"
          },
          "createdAt" : {
            "type" : "string",
            "format" : "date-time",
            "readOnly" : true
          },
          "name" : {
            "maxLength" : 250,
            "type" : "string",
            "description" : "The project title should contain the application you want to analyze as well as the simulation method you want to use, e.g. 'Heat exchanger - CHT simulation'.\n"
          },
          "description" : {
            "maxLength" : 2000,
            "type" : "string",
            "description" : "A meaningful description of the project."
          },
          "measurementSystem" : {
            "type" : "string",
            "description" : "The measurement system of the project. Can't be modified.",
            "default" : "SI",
            "enum" : [ "SI", "US_CUSTOMARY" ]
          },
          "tags" : {
            "maxItems" : 12,
            "type" : "array",
            "items" : {
              "maxLength" : 50,
              "type" : "string"
            }
          }
        },
        "example" : {
          "projectId" : "1234123412341234",
          "spaceId" : "49eb49eb-49eb-49eb-49eb-49eb49eb49eb",
          "parentFolderId" : "4e9c4e9c-4e9c-4e9c-4e9c-4e9c4e9c4e9c",
          "createdAt" : "2020-01-01T01:00:00Z",
          "name" : "My first project",
          "description" : "My first project description",
          "measurementSystem" : "SI",
          "visibility" : "PUBLIC",
          "ownerUserId" : "123456",
          "tags" : [ "FEA", "CFD" ]
        }
      },
      "ProjectCopyRequest" : {
        "required" : [ "description", "name" ],
        "type" : "object",
        "properties" : {
          "spaceId" : {
            "type" : "string",
            "description" : "If missing, the project will be copied in the Personal Space of the user.",
            "format" : "uuid"
          },
          "parentFolderId" : {
            "type" : "string",
            "description" : "If missing, the project is located at the root level of the Space.",
            "format" : "uuid"
          },
          "name" : {
            "maxLength" : 250,
            "type" : "string",
            "description" : "The project title should contain the application you want to analyze as well as the simulation method you want to use, e.g. 'Heat exchanger - CHT simulation'.\n"
          },
          "description" : {
            "maxLength" : 2000,
            "type" : "string",
            "description" : "A meaningful description of the project."
          }
        },
        "example" : {
          "spaceId" : "49eb49eb-49eb-49eb-49eb-49eb49eb49eb",
          "parentFolderId" : "4e9c4e9c-4e9c-4e9c-4e9c-4e9c4e9c4e9c",
          "name" : "My first project",
          "description" : "My first project description"
        }
      },
      "ProjectPermissions" : {
        "type" : "object",
        "properties" : {
          "canPreviewProject" : {
            "type" : "boolean",
            "description" : "Whether the current user can see basic details about this Project.",
            "readOnly" : true
          },
          "canReadProject" : {
            "type" : "boolean",
            "description" : "Whether the current user can open this Project.",
            "readOnly" : true
          },
          "canCopyProject" : {
            "type" : "boolean",
            "description" : "Whether the current user can copy this Project.",
            "readOnly" : true
          },
          "canWriteProject" : {
            "type" : "boolean",
            "description" : "Whether the current user can edit this Project.",
            "readOnly" : true
          },
          "canExecuteProjectBillableAction" : {
            "type" : "boolean",
            "description" : "Whether the current user can execute a billable action on this Project.",
            "readOnly" : true
          },
          "canManageProject" : {
            "type" : "boolean",
            "description" : "Whether the current user can manage this Project.",
            "readOnly" : true
          },
          "canMoveProjectToPersonalSpace" : {
            "type" : "boolean",
            "description" : "Whether the current user can move this Project to their Personal Space.",
            "readOnly" : true
          },
          "canListProjectPermissions" : {
            "type" : "boolean",
            "description" : "Whether the current user can see who has access to this Project.",
            "readOnly" : true
          },
          "canEditProjectPermissions" : {
            "type" : "boolean",
            "description" : "Whether the current user can change who has access to this Project.",
            "readOnly" : true
          },
          "canShareProjectWithSpaceMembers" : {
            "type" : "boolean",
            "description" : "Whether the current user can share this project with users that have access to the Space.",
            "readOnly" : true
          },
          "canShareProjectWithOrganizationMembers" : {
            "type" : "boolean",
            "description" : "Whether the current user can share this project with members of the Organization.",
            "readOnly" : true
          },
          "canShareProjectWithAnyone" : {
            "type" : "boolean",
            "description" : "Whether the current user can share this project with any user of the platform.",
            "readOnly" : true
          },
          "canMakeProjectPublic" : {
            "type" : "boolean",
            "description" : "Whether the current user can make this project public.",
            "readOnly" : true
          },
          "canDeleteProject" : {
            "type" : "boolean",
            "description" : "Whether the current user can delete this Project.",
            "readOnly" : true
          }
        },
        "description" : "Permissions that the current user has on this Project. Each flag corresponds to a fine-grained action that a user may take."
      },
      "Storage" : {
        "type" : "object",
        "properties" : {
          "url" : {
            "type" : "string",
            "description" : "The URL of the temporary storage location.",
            "format" : "uri",
            "readOnly" : true
          },
          "storageId" : {
            "minLength" : 1,
            "type" : "string",
            "description" : "The storage ID."
          },
          "expiresAt" : {
            "type" : "string",
            "description" : "The expiration time.",
            "format" : "date-time"
          }
        },
        "example" : {
          "url" : "https://httpbin.org/anything/asdfghjk?KeyId=ABC123&Signature=aZ09%2B%2F%3D&x-security-token=F%2B5%2FX&Expires=1583334977",
          "storageId" : "qwertyuiop1234567890",
          "expiresAt" : "2020-03-04T15:16:17Z"
        }
      },
      "Permissions" : {
        "required" : [ "permissions" ],
        "type" : "object",
        "properties" : {
          "permissions" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Permission"
            }
          }
        }
      },
      "Permission" : {
        "required" : [ "permission", "scope" ],
        "type" : "object",
        "properties" : {
          "scope" : {
            "$ref" : "#/components/schemas/PermissionScope"
          },
          "permission" : {
            "$ref" : "#/components/schemas/PermissionLevel"
          }
        },
        "description" : "Represents an entry of an access control list"
      },
      "PermissionScope" : {
        "required" : [ "username" ],
        "type" : "object",
        "properties" : {
          "username" : {
            "type" : "string"
          }
        },
        "description" : "Information about the user to which this permission refers"
      },
      "PermissionLevel" : {
        "type" : "string",
        "description" : "The permission level:\n* `NONE`: The subject has no access to the resource.\n* `VIEW`: The subject has read-only access to the resource.\n* `COPY`: The subject has read-only access to the resource and can make copies of it.\n* `EDIT`: The subject can also make changes to the resource.\n* `FULL_ACCESS`: The subject can make changes to the resource and also has management capabilities.\n",
        "enum" : [ "NONE", "PREVIEW", "VIEW", "COPY", "EDIT", "FULL_ACCESS" ]
      },
      "Geometry" : {
        "type" : "object",
        "properties" : {
          "geometryId" : {
            "type" : "string",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the geometry."
          },
          "createdAt" : {
            "type" : "string",
            "description" : "The time when the geometry was imported.",
            "format" : "date-time",
            "readOnly" : true
          },
          "format" : {
            "type" : "string",
            "description" : "The geometry format.",
            "readOnly" : true
          }
        },
        "example" : {
          "geometryId" : "159c159c-159c-159c-159c-159c159c159c",
          "name" : "My first geometry",
          "createdAt" : "2020-03-04T15:16:17Z",
          "format" : "STL"
        }
      },
      "Cad" : {
        "type" : "object",
        "properties" : {
          "cadId" : {
            "type" : "string",
            "description" : "The ID of the CAD.",
            "format" : "uuid",
            "readOnly" : true
          },
          "cadStateId" : {
            "type" : "string",
            "description" : "The ID of the current CAD state.",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the CAD."
          },
          "createdAt" : {
            "type" : "string",
            "description" : "The time when the CAD was imported.",
            "format" : "date-time",
            "readOnly" : true
          },
          "format" : {
            "$ref" : "#/components/schemas/CadInternalFormat"
          }
        },
        "example" : {
          "cadId" : "159c159c-159c-159c-159c-159c159c159c",
          "cadStateId" : "249c249c-249c-249c-249c-249c249c249c",
          "name" : "My first CAD",
          "createdAt" : "2020-03-04T15:16:17Z",
          "format" : "STL"
        }
      },
      "Cads" : {
        "type" : "object",
        "properties" : {
          "_links" : {
            "$ref" : "#/components/schemas/CollectionLinks"
          },
          "_meta" : {
            "$ref" : "#/components/schemas/CollectionMeta"
          },
          "_embedded" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Cad"
            }
          }
        }
      },
      "CadState" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "description" : "Name of the CAD state.",
            "readOnly" : true
          },
          "format" : {
            "$ref" : "#/components/schemas/CadInternalFormat"
          },
          "faults" : {
            "type" : "object",
            "description" : "Faults in the CAD.",
            "readOnly" : true
          },
          "savedSelections" : {
            "type" : "array",
            "description" : "List of saved selections in the CAD state.",
            "items" : {
              "$ref" : "#/components/schemas/SavedSelection"
            }
          },
          "features" : {
            "type" : "array",
            "description" : "List of features in the CAD state.",
            "items" : {
              "$ref" : "#/components/schemas/CadFeature"
            }
          }
        }
      },
      "CreateSavedSelectionResponse" : {
        "type" : "object",
        "properties" : {
          "cadStateId" : {
            "type" : "string",
            "description" : "ID of the newly created CAD state.",
            "format" : "uuid",
            "readOnly" : true
          },
          "savedSelectionId" : {
            "type" : "string",
            "description" : "ID of the newly created saved selection.",
            "format" : "uuid",
            "readOnly" : true
          }
        }
      },
      "RenameCadRequest" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "description" : "New CAD name."
          }
        }
      },
      "RenameCadResponse" : {
        "type" : "object",
        "properties" : {
          "cadStateId" : {
            "type" : "string",
            "description" : "ID of the newly created CAD state.",
            "format" : "uuid",
            "readOnly" : true
          }
        }
      },
      "DownloadOriginalCadResponse" : {
        "type" : "object",
        "properties" : {
          "url" : {
            "type" : "string",
            "description" : "The temporary url for downloading the the originally imported CAD file."
          },
          "urlExpiresAt" : {
            "type" : "string",
            "description" : "Expiration timestamp of the URL. Note that this timestamp is not a guarantee,\nif the url expired prematurely, please retry this request to get a new one.\n"
          }
        }
      },
      "CadTopology" : {
        "type" : "object",
        "properties" : {
          "_links" : {
            "$ref" : "#/components/schemas/CollectionLinks"
          },
          "_meta" : {
            "$ref" : "#/components/schemas/CollectionMeta"
          },
          "_embedded" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/EntityDescription"
            }
          }
        }
      },
      "GeometryImportRequest" : {
        "required" : [ "format", "inputUnit", "location", "name", "options" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "description" : "The name of the imported geometry."
          },
          "location" : {
            "required" : [ "storageId" ],
            "type" : "object",
            "properties" : {
              "storageId" : {
                "maxLength" : 255,
                "minLength" : 1,
                "type" : "string",
                "description" : "The storage ID of the temporary storage location where the CAD file has been uploaded."
              }
            }
          },
          "format" : {
            "type" : "string",
            "description" : "The CAD format.",
            "enum" : [ "ACIS", "CATIA", "CREO", "IGES", "INVENTOR", "NX", "PARASOLID", "REVIT", "RHINOCEROS", "SOLIDEDGE", "SOLIDWORKS", "STEP", "STL", "NTOP" ]
          },
          "inputUnit" : {
            "$ref" : "#/components/schemas/GeometryUnit"
          },
          "options" : {
            "required" : [ "facetSplit", "improve", "optimizeForLBMSolver", "sewing" ],
            "type" : "object",
            "properties" : {
              "facetSplit" : {
                "type" : "boolean",
                "description" : "_Facet Split_ tries to split the faceted parts of a model. This means it can create new faces from original faces.\nIn this case it's not possible to use the original faces to make assignments.\n",
                "default" : false
              },
              "sewing" : {
                "type" : "boolean",
                "description" : "_Automatic Sewing_ is sewing faces or sheet bodies together.\nThis means that it can create one new face from two (or more) original faces, as well as one solid body from two (or more) original sheet bodies.\nIn this case, if the entities have the same ID, it will be inherited by the newly created entity.\nHowever if the original entities do not share the same ID, only one of these will be mapped to the new entity.\nThis might not be desirable if one would like to make assignments on the original entities and not on the new (sewn) entities.\n",
                "default" : false
              },
              "improve" : {
                "type" : "boolean",
                "description" : "This option tries to improve the topology (e.g. edges, vertices) and geometry of the model by adjusting tolerances, simplifying entities, etc.\nAs this option should improve CAD operations and data handling for all downstream applications it is recommended to use it on import.\nFor very complex models it can take a considerable amount of time though, therefore you can also opt-out and reconsider in case you face issues in geometry handling or meshing.\n",
                "default" : true
              },
              "optimizeForLBMSolver" : {
                "type" : "boolean",
                "description" : "This option allows you to import a *.stl file that is optimized for the Incompressible LBM and Wind Comfort analysis types.\nIt leaves out complex import steps like sewing and cleanup that are not required by the LBM solver and therefore also allows to import big and complex models fast.\n",
                "default" : false
              }
            },
            "description" : "CAD import options. Please refer to https://www.simscale.com/docs/cad-preparation/#cad-upload-options for a detailed description of the options."
          }
        },
        "example" : {
          "name" : "My first geometry",
          "location" : {
            "storageId" : "qwertyuiop1234567890"
          },
          "format" : "STL",
          "inputUnit" : "m",
          "options" : {
            "facetSplit" : false,
            "sewing" : false,
            "improve" : true,
            "optimizeForLBMSolver" : true
          }
        }
      },
      "GeometryImportResponse" : {
        "title" : "GeometryImportResponse",
        "required" : [ "geometryImportId", "status" ],
        "type" : "object",
        "properties" : {
          "geometryImportId" : {
            "type" : "string",
            "description" : "The ID of the geometry import operation.",
            "format" : "uuid",
            "readOnly" : true
          },
          "status" : {
            "$ref" : "#/components/schemas/Status"
          },
          "geometryId" : {
            "type" : "string",
            "description" : "The ID of the imported geometry when the import succeeded.",
            "format" : "uuid",
            "readOnly" : true
          },
          "failureReason" : {
            "$ref" : "#/components/schemas/LogEntry"
          }
        },
        "example" : {
          "geometryImportId" : "f48bf48b-f48b-f48b-f48b-f48bf48bf48b",
          "status" : "FINISHED",
          "geometryId" : "159c159c-159c-159c-159c-159c159c159c",
          "failureReason" : null
        }
      },
      "CadImportRequest" : {
        "title" : "CadImportRequest",
        "required" : [ "format", "inputUnit", "location", "name", "options" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "description" : "The name of the imported CAD."
          },
          "location" : {
            "$ref" : "#/components/schemas/CadImportRequestLocation"
          },
          "format" : {
            "type" : "string",
            "description" : "The CAD format.",
            "enum" : [ "ACIS", "CATIA", "CREO", "IGES", "INVENTOR", "NX", "PARASOLID", "REVIT", "RHINOCEROS", "SOLIDEDGE", "SOLIDWORKS", "STEP", "STL", "NTOP" ]
          },
          "inputUnit" : {
            "$ref" : "#/components/schemas/CadUnit"
          },
          "options" : {
            "$ref" : "#/components/schemas/CadImportRequestOptions"
          }
        },
        "example" : {
          "name" : "My first CAD",
          "location" : {
            "storageId" : "qwertyuiop1234567890"
          },
          "format" : "STL",
          "inputUnit" : "m",
          "options" : {
            "facetSplit" : false,
            "sewing" : false,
            "improve" : true,
            "optimizeForLBMSolver" : true
          }
        }
      },
      "CadImportRequestLocation" : {
        "required" : [ "storageId" ],
        "type" : "object",
        "properties" : {
          "storageId" : {
            "maxLength" : 255,
            "minLength" : 1,
            "type" : "string",
            "description" : "The storage ID of the temporary storage location where the CAD file has been uploaded."
          }
        }
      },
      "CadImportRequestOptions" : {
        "required" : [ "facetSplit", "improve", "optimizeForLBMSolver", "sewing" ],
        "type" : "object",
        "properties" : {
          "facetSplit" : {
            "type" : "boolean",
            "description" : "_Facet Split_ tries to split the faceted parts of a CAD model. This means it can create new faces from original faces.\nIn this case it's not possible to use the original faces to make assignments.\n",
            "default" : false
          },
          "sewing" : {
            "type" : "boolean",
            "description" : "_Automatic Sewing_ is sewing faces or sheet bodies together.\nThis means that it can create one new face from two (or more) original faces, as well as one solid body from two (or more) original sheet bodies.\nIn this case, if the entities have the same ID, it will be inherited by the newly created entity.\nHowever if the original entities do not share the same ID, only one of these will be mapped to the new entity.\nThis might not be desirable if one would like to make assignments on the original entities and not on the new (sewn) entities.\n",
            "default" : false
          },
          "improve" : {
            "type" : "boolean",
            "description" : "This option tries to improve the topology (e.g. edges, vertices) and geometry of the model by adjusting tolerances, simplifying entities, etc.\nAs this option should improve CAD operations and data handling for all downstream applications it is recommended to use it on import.\nFor very complex models it can take a considerable amount of time though, therefore you can also opt-out and reconsider in case you face issues in geometry handling or meshing.\n",
            "default" : true
          },
          "optimizeForLBMSolver" : {
            "type" : "boolean",
            "description" : "This option allows you to import a *.stl file that is optimized for the Incompressible LBM and Wind Comfort analysis types.\nIt leaves out complex import steps like sewing and cleanup that are not required by the LBM solver and therefore also allows to import big and complex models fast.\n",
            "default" : false
          }
        },
        "description" : "CAD import options. Please refer to https://www.simscale.com/docs/cad-preparation/#cad-upload-options for a detailed description of the options."
      },
      "CadImportResponse" : {
        "title" : "CadImportResponse",
        "required" : [ "cadId", "cadStateId", "status" ],
        "type" : "object",
        "properties" : {
          "cadId" : {
            "type" : "string",
            "description" : "The ID of the CAD.",
            "format" : "uuid",
            "readOnly" : true
          },
          "status" : {
            "$ref" : "#/components/schemas/Status"
          },
          "cadStateId" : {
            "type" : "string",
            "description" : "The ID of the current CAD state. It can point to an empty CAD state in case the import is running or failed.",
            "format" : "uuid",
            "readOnly" : true
          },
          "failureReason" : {
            "$ref" : "#/components/schemas/LogEntry"
          }
        },
        "example" : {
          "cadId" : "f48bf48b-f48b-f48b-f48b-f48bf48bf48b",
          "status" : "FINISHED",
          "cadStateId" : "159c159c-159c-159c-159c-159c159c159c",
          "failureReason" : null
        }
      },
      "CreateSavedSelectionRequest" : {
        "required" : [ "entities", "name", "type" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "description" : "The name of the saved selection."
          },
          "type" : {
            "$ref" : "#/components/schemas/SavedSelectionType"
          },
          "entities" : {
            "type" : "array",
            "description" : "The entities included in the saved selection.",
            "items" : {
              "type" : "string"
            }
          }
        },
        "example" : {
          "name" : "My saved selection",
          "type" : "FACE",
          "entityIds" : [ "B1_TE36", "B1_TE37", "B1_TE38" ]
        }
      },
      "CadQueryRequest" : {
        "type" : "object",
        "properties" : {
          "query" : {
            "type" : "string"
          },
          "parameters" : {
            "type" : "object"
          }
        },
        "description" : "Note: This object is replaced at runtime with the actual query request schema which is fetched from cad session manager.\n"
      },
      "CadQueryResponse" : {
        "type" : "object",
        "properties" : {
          "status" : {
            "$ref" : "#/components/schemas/Status"
          },
          "result" : {
            "$ref" : "#/components/schemas/CadQueryResult"
          },
          "failureReason" : {
            "$ref" : "#/components/schemas/LogEntry"
          }
        },
        "example" : {
          "status" : "RUNNING",
          "result" : null,
          "failureReason" : null
        }
      },
      "CadQueryResult" : {
        "type" : "object",
        "description" : "Note: This object is replaced at runtime with the actual query response schema which is fetched from cad session manager.\n"
      },
      "CadFeatureRequest" : {
        "type" : "object",
        "properties" : {
          "feature" : {
            "type" : "string"
          },
          "parameters" : {
            "type" : "object"
          }
        },
        "description" : "Note: This object is replaced at runtime with the actual feature request schema which is fetched from cad session manager.\n"
      },
      "CadFeatureResponse" : {
        "title" : "CadFeatureResponse",
        "required" : [ "status" ],
        "type" : "object",
        "properties" : {
          "cadStateId" : {
            "type" : "string",
            "description" : "The ID of the CAD state once completed.",
            "format" : "uuid",
            "readOnly" : true
          },
          "cadFeatureId" : {
            "type" : "string",
            "description" : "The ID of the CAD feature once completed.",
            "format" : "uuid",
            "readOnly" : true
          },
          "status" : {
            "$ref" : "#/components/schemas/Status"
          },
          "failureReason" : {
            "$ref" : "#/components/schemas/LogEntry"
          }
        },
        "example" : {
          "cadStateId" : "159c159c-159c-159c-159c-159c159c159c",
          "cadFeatureId" : "a57ca57c-a57c-a57c-a57c-a57ca57ca57c",
          "status" : "FINISHED",
          "failureReason" : null
        }
      },
      "SwapCadRequest" : {
        "required" : [ "sourceCadId", "sourceCadStateId", "targetCadId", "targetCadStateId" ],
        "type" : "object",
        "properties" : {
          "sourceCadId" : {
            "type" : "string",
            "description" : "The ID of the assigned CAD.",
            "format" : "uuid"
          },
          "sourceCadStateId" : {
            "type" : "string",
            "description" : "The ID of the assigned CAD state.",
            "format" : "uuid"
          },
          "targetCadId" : {
            "type" : "string",
            "description" : "The ID of the CAD to assign.",
            "format" : "uuid"
          },
          "targetCadStateId" : {
            "type" : "string",
            "description" : "The ID of the CAD state to assign.",
            "format" : "uuid"
          }
        },
        "example" : {
          "sourceCadId" : "9e8f7902-38b0-4992-aa82-a97cf51cb542",
          "sourceCadStateId" : "f769b7d4-35dc-4483-b4fc-5f09c84881d1",
          "targetCadId" : "2f2114b1-0949-4d39-bd40-3695fffbd8e3",
          "targetCadStateId" : "1190f708-1180-4403-b6f9-0205ad96ce5d"
        }
      },
      "SwapCadReport" : {
        "type" : "object",
        "properties" : {
          "unmappedPaths" : {
            "type" : "array",
            "description" : "List of unmapped assignments.",
            "items" : {
              "type" : "string"
            }
          },
          "partiallyMappedPaths" : {
            "type" : "array",
            "description" : "List of partially mapped assignments.",
            "items" : {
              "type" : "string"
            }
          }
        },
        "description" : "The report provides details on unsuccessful entity mappings found in the assignments. \nIdeally, this section should be empty, indicating that all entities were mapped correctly.\nPlease review the reported fields to verify and correct any discrepancies.\n",
        "example" : {
          "unmappedPaths" : [ "$.analysis.materials.fluids.0", "$.analysis.boundaryConditions.0" ],
          "partiallyMappedPaths" : [ "$.analysis.boundaryConditions.1" ]
        }
      },
      "Mesh" : {
        "type" : "object",
        "properties" : {
          "meshId" : {
            "type" : "string",
            "description" : "The ID of the mesh.",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the mesh."
          },
          "createdAt" : {
            "type" : "string",
            "description" : "The time when the mesh was imported.",
            "format" : "date-time",
            "readOnly" : true
          },
          "numberOfCells" : {
            "minimum" : 0,
            "type" : "integer",
            "description" : "Number of cells of the mesh.",
            "readOnly" : true
          },
          "numberOfNodes" : {
            "minimum" : 0,
            "type" : "integer",
            "description" : "Number of nodes of the mesh.",
            "readOnly" : true
          }
        },
        "example" : {
          "meshId" : "159c159c-159c-159c-159c-159c159c159c",
          "name" : "My first mesh",
          "createdAt" : "2020-03-04T15:16:17Z",
          "numberOfCells" : 20000,
          "numberOfNodes" : 30000
        }
      },
      "SlimMeshOperation" : {
        "type" : "object",
        "properties" : {
          "meshOperationId" : {
            "type" : "string",
            "description" : "The mesh operation ID.",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the mesh operation.",
            "readOnly" : true
          },
          "startedAt" : {
            "type" : "string",
            "description" : "The time the mesh operation was started.",
            "format" : "date-time",
            "readOnly" : true
          },
          "finishedAt" : {
            "type" : "string",
            "description" : "The time the mesh operation was finished.",
            "format" : "date-time",
            "readOnly" : true
          },
          "computeResource" : {
            "$ref" : "#/components/schemas/MeshOperationComputeResource"
          },
          "status" : {
            "$ref" : "#/components/schemas/Status"
          },
          "progress" : {
            "maximum" : 1,
            "minimum" : 0,
            "type" : "number",
            "description" : "The current progress while the mesh operation is in progress.",
            "readOnly" : true
          },
          "meshId" : {
            "type" : "string",
            "description" : "The ID of the generated mesh.",
            "format" : "uuid",
            "readOnly" : true
          }
        },
        "example" : {
          "meshOperationId" : "159c159c-159c-159c-159c-159c159c159c",
          "name" : "My Mesh Operation",
          "startedAt" : "2020-03-04T15:17:18Z",
          "finishedAt" : "2020-03-04T17:29:42Z",
          "computeResource" : {
            "type" : "GPU_HOURS",
            "value" : 0.27
          },
          "status" : "FINISHED",
          "progress" : 1,
          "meshId" : "159c159c-159c-159c-159c-159c159c159c"
        }
      },
      "MeshOperation" : {
        "required" : [ "model", "name", "version", "geometryId" ],
        "type" : "object",
        "properties" : {
          "meshOperationId" : {
            "type" : "string",
            "description" : "The mesh operation ID.",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the mesh operation."
          },
          "version" : {
            "type" : "string",
            "description" : "The schema version of the mesh operation. This can be either the external version like `8.0`, or the internal version like `internal:53`.",
            "default" : "10.0"
          },
          "geometryId" : {
            "type" : "string",
            "description" : "The geometry ID of the mesh operation.",
            "format" : "uuid"
          },
          "model" : {
            "$ref" : "#/components/schemas/Algorithm"
          },
          "createdAt" : {
            "type" : "string",
            "description" : "The time the mesh operation was created.",
            "format" : "date-time",
            "readOnly" : true
          },
          "modifiedAt" : {
            "type" : "string",
            "description" : "The time the mesh operation was last modified.",
            "format" : "date-time",
            "readOnly" : true
          },
          "startedAt" : {
            "type" : "string",
            "description" : "The time the mesh operation was started.",
            "format" : "date-time",
            "readOnly" : true
          },
          "finishedAt" : {
            "type" : "string",
            "description" : "The time the mesh operation was finished.",
            "format" : "date-time",
            "readOnly" : true
          },
          "computeResource" : {
            "$ref" : "#/components/schemas/MeshOperationComputeResource"
          },
          "status" : {
            "$ref" : "#/components/schemas/Status"
          },
          "progress" : {
            "maximum" : 1,
            "minimum" : 0,
            "type" : "number",
            "description" : "The current progress while the mesh operation is in progress.",
            "readOnly" : true
          },
          "meshId" : {
            "type" : "string",
            "description" : "The ID of the generated mesh.",
            "format" : "uuid",
            "readOnly" : true
          }
        },
        "example" : {
          "meshOperationId" : "159c159c-159c-159c-159c-159c159c159c",
          "name" : "My Mesh Operation",
          "version" : 18,
          "geometryId" : "159c159c-159c-159c-159c-159c159c159c",
          "createdAt" : "2020-03-04T15:16:17Z",
          "startedAt" : "2020-03-04T15:17:18Z",
          "finishedAt" : "2020-03-04T17:29:42Z",
          "computeResource" : {
            "type" : "GPU_HOURS",
            "value" : 0.27
          },
          "model" : {
            "type" : "SIMMETRIX_MESHING_FLUID_V16",
            "sizing" : {
              "type" : "AUTOMATIC_V9",
              "fineness" : 3
            },
            "refinements" : [ ],
            "cellZones" : [ ],
            "automaticLayerSettings" : {
              "type" : "AUTOMATIC_LAYER_OFF"
            },
            "physicsBasedMeshing" : false,
            "hexCore" : true,
            "numOfProcessors" : -1,
            "advancedSimmetrixSettings" : {
              "smallFeatureTolerance" : {
                "value" : 1.0E-5,
                "unit" : "m"
              },
              "gapElements" : 0.05
            }
          },
          "status" : "FINISHED",
          "progress" : 1,
          "meshId" : "159c159c-159c-159c-159c-159c159c159c"
        }
      },
      "SavedSelection" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "description" : "The ID of the saved selection.",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the saved selection.",
            "readOnly" : true
          },
          "type" : {
            "$ref" : "#/components/schemas/SavedSelectionType"
          },
          "entities" : {
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          }
        },
        "example" : {
          "id" : "159c159c-159c-159c-159c-159c159c159c",
          "name" : "My Saved Selection",
          "type" : "FACE",
          "entities" : [ "B1_TE1", "B1_TE2", "B1_TE3" ]
        }
      },
      "CadFeature" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "description" : "The ID of the CAD feature.",
            "format" : "uuid",
            "readOnly" : true
          },
          "type" : {
            "type" : "string",
            "description" : "The type of the CAD feature.",
            "readOnly" : true
          },
          "parameters" : {
            "type" : "object",
            "description" : "The parameters of the CAD feature.",
            "readOnly" : true
          },
          "status" : {
            "$ref" : "#/components/schemas/Status"
          },
          "depth" : {
            "type" : "integer",
            "description" : "The depth of the CAD feature in the feature list.",
            "format" : "int32",
            "readOnly" : true
          },
          "failureReason" : {
            "$ref" : "#/components/schemas/LogEntry"
          }
        },
        "example" : {
          "id" : "159c159c-159c-159c-159c-159c159c159c",
          "type" : "extrude_faces",
          "parameters" : {
            "faces" : [ "B1_TE248" ],
            "extrude_by" : {
              "selected" : "extrude_faces_mode_distance",
              "extrude_distance" : {
                "unit" : "m",
                "value" : 0.1
              }
            },
            "extrude_method" : "add_new"
          },
          "status" : "FINISHED",
          "depth" : 2
        }
      },
      "EntityDescription" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "description" : "The internal name of the entity."
          },
          "class" : {
            "type" : "string",
            "description" : "The topological entity class (body or face)."
          },
          "originateFrom" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OriginalEntityReference"
            }
          }
        },
        "example" : {
          "name" : "B1_TE1",
          "class" : "body",
          "originateFrom" : [ {
            "path" : [ ],
            "body" : "CentralPark",
            "entity" : "Tower",
            "attributeList" : [ ]
          } ]
        }
      },
      "OriginalEntityReference" : {
        "type" : "object",
        "properties" : {
          "path" : {
            "type" : "array",
            "description" : "The path from the root of the model.",
            "items" : {
              "$ref" : "#/components/schemas/BodyPath"
            }
          },
          "body" : {
            "type" : "string",
            "description" : "The original body name."
          },
          "entity" : {
            "type" : "string",
            "description" : "The original entity name."
          },
          "attributeList" : {
            "type" : "array",
            "description" : "The attributes assigned to the entity.",
            "items" : {
              "$ref" : "#/components/schemas/EntityAttribute"
            }
          }
        }
      },
      "BodyPath" : {
        "type" : "object",
        "properties" : {
          "assembly" : {
            "type" : "string"
          },
          "instance" : {
            "type" : "string"
          }
        }
      },
      "EntityAttribute" : {
        "type" : "object",
        "properties" : {
          "attribute" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          }
        }
      },
      "TableImportRequest" : {
        "title" : "TableImportRequest",
        "required" : [ "location" ],
        "type" : "object",
        "properties" : {
          "location" : {
            "$ref" : "#/components/schemas/TableImportRequestLocation"
          }
        },
        "example" : {
          "location" : {
            "storageId" : "qwertyuiop1234567890"
          }
        }
      },
      "TableImportRequestLocation" : {
        "required" : [ "storageId" ],
        "type" : "object",
        "properties" : {
          "storageId" : {
            "maxLength" : 255,
            "minLength" : 1,
            "type" : "string",
            "description" : "The storage ID of the temporary storage location where the table has been uploaded."
          }
        }
      },
      "TableImportResponse" : {
        "title" : "TableImportResponse",
        "required" : [ "tableId" ],
        "type" : "object",
        "properties" : {
          "tableId" : {
            "type" : "string",
            "description" : "The ID of the imported table.",
            "format" : "uuid",
            "readOnly" : true
          }
        },
        "example" : {
          "tableId" : "159c159c-159c-159c-159c-159c159c159c"
        }
      },
      "GeometryPrimitiveResponse" : {
        "title" : "GeometryPrimitiveResponse",
        "required" : [ "geometryPrimitiveId" ],
        "type" : "object",
        "properties" : {
          "geometryPrimitiveId" : {
            "type" : "string",
            "description" : "The ID of the created geometry primitive.",
            "format" : "uuid",
            "readOnly" : true
          }
        },
        "example" : {
          "geometryPrimitiveId" : "159c159c-159c-159c-159c-159c159c159c"
        }
      },
      "SimulationSpec" : {
        "required" : [ "model", "name", "version", "geometryId" ],
        "type" : "object",
        "properties" : {
          "simulationId" : {
            "type" : "string",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string"
          },
          "version" : {
            "type" : "string",
            "description" : "The schema version of the simulation spec. This can be either the external version like `30.0`, or the internal version like `internal:549`.",
            "default" : "34.0"
          },
          "createdAt" : {
            "type" : "string",
            "format" : "date-time",
            "readOnly" : true
          },
          "modifiedAt" : {
            "type" : "string",
            "format" : "date-time",
            "readOnly" : true
          },
          "geometryId" : {
            "type" : "string",
            "description" : "The geometry ID of the simulation.",
            "format" : "uuid"
          },
          "meshId" : {
            "type" : "string",
            "description" : "The generated mesh ID which is to be used in the simulation. This field should be left empty for analysis types that do not require a generated mesh like 'INCOMPRESSIBLE_PACEFISH', 'WIND_COMFORT', and 'SIMERICS_ANALYSIS'.",
            "format" : "uuid"
          },
          "model" : {
            "$ref" : "#/components/schemas/Analysis"
          },
          "parameters" : {
            "$ref" : "#/components/schemas/Parameters"
          }
        }
      },
      "MaterialUpdateResponse" : {
        "required" : [ "spec", "tables" ],
        "type" : "object",
        "properties" : {
          "spec" : {
            "$ref" : "#/components/schemas/SimulationSpec"
          },
          "tables" : {
            "$ref" : "#/components/schemas/Tables"
          }
        },
        "description" : "Material update response schema"
      },
      "MaterialUpdateOperation" : {
        "required" : [ "materialData", "path" ],
        "type" : "object",
        "properties" : {
          "path" : {
            "type" : "string",
            "description" : "JSON pointer (considering the `model` field as root) specifying where to add the material. If it points to a container (e.g. `/materials` or `/materials/solids`), the material will be added to that container.\nIf it points to an existing material instead (e.g. `/materials/0` or `/materials/solids/0`), the new material will replace the one the pointer points to.\n"
          },
          "materialData" : {
            "$ref" : "#/components/schemas/MaterialResponse"
          },
          "materialSpec" : {
            "type" : "object",
            "description" : "Material spec object that will be used as the base to apply the physical properties passed in `materialData`."
          },
          "reference" : {
            "$ref" : "#/components/schemas/MaterialUpdateOperationReference"
          },
          "materialDataSources" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "MATERIAL_LIBRARY_DATA", "SPEC_DATA", "SCHEMA_DEFAULT" ]
            },
            "default" : [ "MATERIAL_LIBRARY_DATA", "SPEC_DATA" ]
          }
        },
        "description" : "Material update operation, which can be either updating an existing material in the spec, or adding a new one. See the `path` property to learn how add/update operations are distinguished.\n"
      },
      "MaterialUpdateOperationReference" : {
        "type" : "object",
        "properties" : {
          "materialGroupId" : {
            "type" : "string",
            "description" : "Identifier of the material group",
            "example" : "internal:ef304761-dbde-495e-9891-9ee85e809cd5"
          },
          "materialId" : {
            "type" : "string",
            "description" : "Identifier of the material",
            "example" : "internal:69bb2bf0-6743-4bf8-b926-c0e447eeeeee"
          },
          "interpolationParameters" : {
            "$ref" : "#/components/schemas/InterpolationParameters"
          }
        },
        "description" : "Reference identifiers of the provided material and its material group"
      },
      "Tables" : {
        "type" : "array",
        "description" : "Tables containing parametric values, created during the material update operation(s). These tables are going to be used by the solvers during the simulation runs.",
        "items" : {
          "$ref" : "#/components/schemas/Table"
        }
      },
      "Table" : {
        "required" : [ "data", "id" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "format" : "uuid"
          },
          "data" : {
            "$ref" : "#/components/schemas/TableData"
          }
        }
      },
      "TableData" : {
        "required" : [ "columnLabels", "rows" ],
        "type" : "object",
        "properties" : {
          "columnLabels" : {
            "type" : "array",
            "description" : "List of the table's columns",
            "items" : {
              "type" : "string"
            }
          },
          "rows" : {
            "type" : "array",
            "description" : "Array of table rows.",
            "items" : {
              "$ref" : "#/components/schemas/TableRow"
            }
          }
        },
        "description" : "Table data"
      },
      "TableRow" : {
        "required" : [ "elements" ],
        "type" : "object",
        "properties" : {
          "elements" : {
            "type" : "array",
            "description" : "Values of the current row. These values are in the order specified by the `columnLabels` field.",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "InterpolationParameters" : {
        "type" : "object",
        "additionalProperties" : {
          "required" : [ "unit", "value" ],
          "type" : "object",
          "properties" : {
            "value" : {
              "type" : "number",
              "description" : "Numerical value of the property."
            },
            "unit" : {
              "type" : "string",
              "description" : "Unit of the property."
            }
          },
          "description" : "Value-unit pairs for the specified property."
        },
        "description" : "Parameters taken into account when some material property values need to be interpolated. When this object is part of a request, the parameters will be taken into account during interpolation,\nwhile when it's part of the response, the parameters show the values which were used (if any) during the interpolation. Note that the values used during interpolation might differ from what is requested.\n",
        "example" : "{'temperature': {'value': 150.0, 'unit': '℃'}}"
      },
      "Simulation" : {
        "type" : "object",
        "properties" : {
          "simulationId" : {
            "type" : "string",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the simulation."
          }
        },
        "example" : {
          "simulationId" : "260d260d-260d-260d-260d-260d260d260d",
          "name" : "My first simulation"
        }
      },
      "WindData" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "description" : "The name of the newly created simulation run."
          }
        },
        "example" : {
          "name" : "PWC with new wind data"
        }
      },
      "SimulationRun" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "runId" : {
            "type" : "string",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the simulation run."
          },
          "createdAt" : {
            "type" : "string",
            "description" : "The time when the simulation run was created.",
            "format" : "date-time",
            "readOnly" : true
          },
          "startedAt" : {
            "type" : "string",
            "description" : "The time when the simulation run was started.",
            "format" : "date-time",
            "readOnly" : true
          },
          "finishedAt" : {
            "type" : "string",
            "description" : "The time when the simulation run was finished.",
            "format" : "date-time",
            "readOnly" : true
          },
          "duration" : {
            "type" : "string",
            "description" : "The actual duration of the simulation run.",
            "format" : "duration",
            "readOnly" : true
          },
          "computeResource" : {
            "$ref" : "#/components/schemas/SimulationRunComputeResource"
          },
          "status" : {
            "$ref" : "#/components/schemas/Status"
          },
          "progress" : {
            "maximum" : 1,
            "minimum" : 0,
            "type" : "number",
            "description" : "The current progress while the simulation run is in progress.",
            "readOnly" : true
          }
        },
        "example" : {
          "runId" : "37ae37ae-37ae-37ae-37ae-37ae37ae37ae",
          "name" : "My first simulation run",
          "createdAt" : "2020-03-04T15:16:17Z",
          "startedAt" : "2020-03-04T15:17:18Z",
          "finishedAt" : "2020-03-04T17:29:42Z",
          "duration" : "PT2H12M14S",
          "computeResource" : {
            "type" : "GPU_HOURS",
            "value" : 0.27
          },
          "status" : "FINISHED",
          "progress" : 1,
          "isContinuable" : false
        }
      },
      "SimulationRunComputeResource" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/ComputeResourceType"
          },
          "value" : {
            "type" : "number",
            "format" : "double",
            "readOnly" : true
          }
        },
        "description" : "The actual compute resources (CPUh or GPUh) consumed by the simulation run.",
        "readOnly" : true
      },
      "MeshOperationComputeResource" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/ComputeResourceType"
          },
          "value" : {
            "type" : "number",
            "format" : "double",
            "readOnly" : true
          }
        },
        "description" : "The actual compute resources (CPUh only) consumed by the mesh operation.",
        "readOnly" : true
      },
      "SimulationRunResultType" : {
        "title" : "Type",
        "type" : "string",
        "description" : "The result type.\nThe possible values are SOLUTION_FIELD, CONVERGENCE_PLOT, PLOT, TABLE.\n",
        "readOnly" : true
      },
      "SimulationRunResultCategory" : {
        "title" : "Category",
        "type" : "string",
        "description" : "The result category.\nFor solution fields values include 'SOLUTION', 'AVERAGED_SOLUTION', 'TRANSIENT_SOLUTION', 'STATISTICAL_SURFACE_SOLUTION', etc.\nFor convergence plots values include 'RESIDUALS_PLOT', 'NUMBER_OF_NEWTON_ITERATIONS', etc.\nFor plots values include 'FORCE_PLOT', 'MOMENT_PLOT', 'FORCE_COEFFICIENTS_PLOT', 'PROBE_POINT_PLOT', 'AREA_AVERAGE', 'FACE_CALC', etc.\n",
        "readOnly" : true
      },
      "SimulationRunResultQuantity" : {
        "title" : "Quantity",
        "type" : "string",
        "description" : "The result quantity, only applies to plot result types.\nValid values include 'Ux', 'Uy', 'Uz', 'p', 'k', 'omega', 'T', 'displacement', 'von Mises stress', etc.\n",
        "readOnly" : true
      },
      "SimulationRunResultName" : {
        "title" : "Name",
        "type" : "string",
        "description" : "The name that was defined for extra simulation result outputs",
        "readOnly" : true
      },
      "SimulationRunResultDirection" : {
        "title" : "Direction",
        "type" : "number",
        "description" : "The result direction, only applies to Pedestrian Wind Comfort analysis",
        "readOnly" : true
      },
      "OneOfSimulationRunResult" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SOLUTION_FIELD" : "#/components/schemas/SimulationRunResultSolution",
            "CONVERGENCE_PLOT" : "#/components/schemas/SimulationRunResultConvergencePlot",
            "PLOT" : "#/components/schemas/SimulationRunResultPlot",
            "TABLE" : "#/components/schemas/SimulationRunResultTable"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SimulationRunResultSolution"
        }, {
          "$ref" : "#/components/schemas/SimulationRunResultConvergencePlot"
        }, {
          "$ref" : "#/components/schemas/SimulationRunResultPlot"
        }, {
          "$ref" : "#/components/schemas/SimulationRunResultTable"
        } ]
      },
      "SimulationRunResultSolution" : {
        "title" : "Solution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string",
            "default" : "SOLUTION_FIELD"
          },
          "resultId" : {
            "type" : "string",
            "description" : "The result ID",
            "format" : "uuid"
          },
          "category" : {
            "$ref" : "#/components/schemas/SimulationRunResultCategory"
          },
          "direction" : {
            "$ref" : "#/components/schemas/SimulationRunResultDirection"
          },
          "modifiedAt" : {
            "type" : "string",
            "description" : "The time when the result was last modified.",
            "format" : "date-time",
            "readOnly" : true
          },
          "download" : {
            "$ref" : "#/components/schemas/SimulationRunResultDownload"
          },
          "workbenchUrl" : {
            "type" : "string",
            "description" : "URL for opening the solution fields in the Workbench.",
            "format" : "uri",
            "readOnly" : true
          },
          "availableExportFormats" : {
            "type" : "array",
            "description" : "Supported export format for this result.",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "SimulationRunResultConvergencePlot" : {
        "title" : "Convergence Plot",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string",
            "default" : "CONVERGENCE_PLOT"
          },
          "resultId" : {
            "type" : "string",
            "description" : "The result ID",
            "format" : "uuid"
          },
          "category" : {
            "$ref" : "#/components/schemas/SimulationRunResultCategory"
          },
          "direction" : {
            "$ref" : "#/components/schemas/SimulationRunResultDirection"
          },
          "modifiedAt" : {
            "type" : "string",
            "description" : "The time when the result was last modified.",
            "format" : "date-time",
            "readOnly" : true
          },
          "download" : {
            "$ref" : "#/components/schemas/SimulationRunResultDownload"
          },
          "workbenchUrl" : {
            "type" : "string",
            "description" : "URL for opening the convergence plot in the Workbench.",
            "format" : "uri",
            "readOnly" : true
          },
          "availableExportFormats" : {
            "type" : "array",
            "description" : "Supported export format for this result.",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "SimulationRunResultPlot" : {
        "title" : "Plot",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string",
            "default" : "PLOT"
          },
          "resultId" : {
            "type" : "string",
            "description" : "The result ID",
            "format" : "uuid"
          },
          "category" : {
            "$ref" : "#/components/schemas/SimulationRunResultCategory"
          },
          "direction" : {
            "$ref" : "#/components/schemas/SimulationRunResultDirection"
          },
          "quantity" : {
            "$ref" : "#/components/schemas/SimulationRunResultQuantity"
          },
          "name" : {
            "$ref" : "#/components/schemas/SimulationRunResultName"
          },
          "modifiedAt" : {
            "type" : "string",
            "description" : "The time when the result was last modified.",
            "format" : "date-time",
            "readOnly" : true
          },
          "download" : {
            "$ref" : "#/components/schemas/SimulationRunResultDownload"
          },
          "workbenchUrl" : {
            "type" : "string",
            "description" : "URL for opening the plot in the Workbench.",
            "format" : "uri",
            "readOnly" : true
          },
          "availableExportFormats" : {
            "type" : "array",
            "description" : "Supported export format for this result.",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "SimulationRunResultTable" : {
        "title" : "Table",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string",
            "default" : "TABLE"
          },
          "resultId" : {
            "type" : "string",
            "description" : "The result ID",
            "format" : "uuid"
          },
          "category" : {
            "$ref" : "#/components/schemas/SimulationRunResultCategory"
          },
          "direction" : {
            "$ref" : "#/components/schemas/SimulationRunResultDirection"
          },
          "name" : {
            "$ref" : "#/components/schemas/SimulationRunResultName"
          },
          "modifiedAt" : {
            "type" : "string",
            "description" : "The time when the result was last modified.",
            "format" : "date-time",
            "readOnly" : true
          },
          "download" : {
            "$ref" : "#/components/schemas/SimulationRunResultDownload"
          },
          "workbenchUrl" : {
            "type" : "string",
            "description" : "URL for opening the table in the Workbench.",
            "format" : "uri",
            "readOnly" : true
          },
          "availableExportFormats" : {
            "type" : "array",
            "description" : "Supported export format for this result.",
            "items" : {
              "type" : "string"
            }
          }
        }
      },
      "SimulationRunResultDownload" : {
        "type" : "object",
        "properties" : {
          "format" : {
            "type" : "string",
            "description" : "The result format.\nValid values include `OPEN_FOAM`, `ENSIGHT_GOLD`, `PVD`, `VTM`, `CSV`.\n",
            "readOnly" : true
          },
          "uncompressedSizeInBytes" : {
            "type" : "integer",
            "description" : "The uncompressed size of the result content.",
            "format" : "int64",
            "readOnly" : true
          },
          "url" : {
            "type" : "string",
            "description" : "URL for downloading the result content.",
            "format" : "uri",
            "readOnly" : true
          },
          "compression" : {
            "type" : "string",
            "description" : "The compression used for the result download archive.",
            "readOnly" : true,
            "enum" : [ "NONE", "ZIP64" ]
          }
        },
        "deprecated" : true
      },
      "Estimation" : {
        "type" : "object",
        "properties" : {
          "duration" : {
            "$ref" : "#/components/schemas/Duration"
          },
          "computeResource" : {
            "$ref" : "#/components/schemas/ComputeResource"
          },
          "cellCount" : {
            "$ref" : "#/components/schemas/CellCount"
          },
          "totalRunCount" : {
            "type" : "integer",
            "description" : "The total number of jobs that will be triggered for this simulation run or mesh operation.",
            "readOnly" : true
          }
        },
        "example" : {
          "duration" : {
            "value" : "PT2H12M14S",
            "intervalMin" : "PT1H12M14S",
            "intervalMax" : "PT3H12M14S"
          },
          "computeResource" : {
            "type" : "GPU_HOURS",
            "value" : 0.27,
            "intervalMin" : 0.22,
            "intervalMax" : 0.32
          },
          "cellCount" : {
            "type" : "CELLS",
            "value" : 5361155,
            "intervalMin" : 4288924,
            "intervalMax" : 6433386
          },
          "totalRunCount" : 1
        }
      },
      "Duration" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "string",
            "format" : "duration",
            "readOnly" : true
          },
          "intervalMin" : {
            "type" : "string",
            "format" : "duration",
            "readOnly" : true
          },
          "intervalMax" : {
            "type" : "string",
            "format" : "duration",
            "readOnly" : true
          }
        },
        "description" : "An interval with the estimated duration for a simulation run or a mesh operation."
      },
      "ComputeResource" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "$ref" : "#/components/schemas/ComputeResourceType"
          },
          "value" : {
            "type" : "number",
            "format" : "double",
            "readOnly" : true
          },
          "intervalMin" : {
            "type" : "number",
            "format" : "double",
            "readOnly" : true
          },
          "intervalMax" : {
            "type" : "number",
            "format" : "double",
            "readOnly" : true
          }
        },
        "description" : "An interval with the estimated compute resources (CPUh or GPUh) required to run the simulation."
      },
      "CellCount" : {
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string",
            "readOnly" : true,
            "enum" : [ "CELLS" ]
          },
          "value" : {
            "type" : "integer",
            "format" : "int64",
            "readOnly" : true
          },
          "intervalMin" : {
            "type" : "integer",
            "format" : "int64",
            "readOnly" : true
          },
          "intervalMax" : {
            "type" : "integer",
            "format" : "int64",
            "readOnly" : true
          }
        },
        "description" : "An interval with the estimated cell count of the generated mesh."
      },
      "CollectionLinks" : {
        "title" : "Collection Links",
        "type" : "object",
        "properties" : {
          "first" : {
            "type" : "object",
            "properties" : {
              "href" : {
                "type" : "string",
                "description" : "First page of the collection.",
                "readOnly" : true,
                "example" : "/projects?page={firstPage}&limit={limit}"
              }
            }
          },
          "prev" : {
            "type" : "object",
            "properties" : {
              "href" : {
                "type" : "string",
                "description" : "Previous page in the collection.",
                "readOnly" : true,
                "example" : "/projects?page={previousPage}&limit={limit}"
              }
            }
          },
          "self" : {
            "type" : "object",
            "properties" : {
              "href" : {
                "type" : "string",
                "description" : "Current page of the collection.",
                "readOnly" : true,
                "example" : "/projects?page={currentPage}&limit={limit}"
              }
            }
          },
          "next" : {
            "type" : "object",
            "properties" : {
              "href" : {
                "type" : "string",
                "description" : "Next page in the collection.",
                "readOnly" : true,
                "example" : "/projects?page={nextPage}&limit={limit}"
              }
            }
          },
          "last" : {
            "type" : "object",
            "properties" : {
              "href" : {
                "type" : "string",
                "description" : "Last page of the collection.",
                "readOnly" : true,
                "example" : "/projects?page={lastPage}&limit={limit}"
              }
            }
          }
        }
      },
      "CollectionMeta" : {
        "title" : "Collection Meta Data",
        "type" : "object",
        "properties" : {
          "total" : {
            "type" : "integer",
            "description" : "Total number of resources in the collection.",
            "readOnly" : true
          }
        }
      },
      "ErrorResponse" : {
        "title" : "Error response",
        "type" : "object",
        "example" : {
          "severity" : "ERROR",
          "code" : "invalid-input",
          "message" : "description: invalid text input",
          "details" : {
            "path" : "$.description"
          },
          "entries" : [ {
            "severity" : "ERROR",
            "code" : "invalid-input",
            "message" : "Invalid text input",
            "details" : {
              "path" : "$.name"
            }
          }, {
            "severity" : "ERROR",
            "code" : "invalid-input",
            "message" : "Size must be between 0 and 250",
            "details" : {
              "path" : "$.description"
            }
          } ],
          "trace" : "abcd1234"
        },
        "allOf" : [ {
          "$ref" : "#/components/schemas/LogEntry"
        }, {
          "type" : "object",
          "properties" : {
            "entries" : {
              "minimum" : 1,
              "type" : "array",
              "readOnly" : true,
              "items" : {
                "$ref" : "#/components/schemas/LogEntry"
              }
            },
            "trace" : {
              "type" : "string",
              "readOnly" : true
            }
          }
        } ]
      },
      "EventLogResponse" : {
        "title" : "Event log response",
        "required" : [ "entries" ],
        "type" : "object",
        "properties" : {
          "entries" : {
            "type" : "array",
            "readOnly" : true,
            "items" : {
              "$ref" : "#/components/schemas/LogEntry"
            }
          }
        },
        "example" : {
          "severity" : "ERROR",
          "entries" : [ {
            "severity" : "INFO",
            "code" : "MSG_NUMBER_OF_SIMULATION_CELLS",
            "message" : "Number of simulation cells: 12345"
          }, {
            "severity" : "SUCCESS",
            "code" : "MSG_OF_RUN_FINISHED",
            "message" : "Run finished."
          }, {
            "severity" : "WARNING",
            "code" : "MSG_WARN_INCORRECT_RESOLUTION_FOR_TURBULENCE_MODEL",
            "message" : "Mesh resolution might not be sufficient for correct turbulence modeling. Please check your results and consider refining the mesh. (Directions: 0.0, 90.0, 180.0, 270.0)"
          }, {
            "severity" : "ERROR",
            "code" : "MSG_SYSTEM_FAILURE"
          } ]
        }
      },
      "CheckResponse" : {
        "title" : "Simulation check response",
        "required" : [ "entries", "severity" ],
        "type" : "object",
        "properties" : {
          "severity" : {
            "$ref" : "#/components/schemas/LogSeverity"
          },
          "entries" : {
            "type" : "array",
            "readOnly" : true,
            "items" : {
              "$ref" : "#/components/schemas/LogEntry"
            }
          }
        },
        "example" : {
          "severity" : "WARNING",
          "entries" : [ {
            "severity" : "WARNING",
            "code" : "increase-simulation-end-time-to-ensure-2-fluid-passes",
            "message" : "End time should be increased by at least 195 s ...",
            "details" : {
              "path" : "$.model.simulationControl.endTime",
              "topoEntities" : [ ]
            }
          } ]
        }
      },
      "LogEntry" : {
        "required" : [ "code", "message", "severity" ],
        "type" : "object",
        "properties" : {
          "severity" : {
            "$ref" : "#/components/schemas/LogSeverity"
          },
          "code" : {
            "type" : "string",
            "description" : "Code for e.g. programmatic handling of error conditions.",
            "readOnly" : true
          },
          "message" : {
            "type" : "string",
            "description" : "Human-readable description of the entry.",
            "readOnly" : true
          },
          "details" : {
            "type" : "object",
            "additionalProperties" : true,
            "description" : "Additional data to interpret and handle the entry.",
            "readOnly" : true
          }
        }
      },
      "LogSeverity" : {
        "type" : "string",
        "readOnly" : true,
        "enum" : [ "INFO", "SUCCESS", "WARNING", "ERROR" ]
      },
      "GeometryUnit" : {
        "title" : "GeometryUnit",
        "type" : "string",
        "default" : "m",
        "enum" : [ "m", "cm", "mm", "ft", "in", "yd" ]
      },
      "CadUnit" : {
        "title" : "CadUnit",
        "type" : "string",
        "default" : "m",
        "enum" : [ "m", "cm", "mm", "ft", "in", "yd" ]
      },
      "CadInternalFormat" : {
        "title" : "CadInternalFormat",
        "type" : "string",
        "description" : "The CAD internal format in SimScale.",
        "enum" : [ "PARASOLID", "STL", "NTOP" ]
      },
      "SavedSelectionType" : {
        "title" : "SavedSelectionType",
        "type" : "string",
        "description" : "The type of the entities contained in the saved selection.",
        "enum" : [ "VOLUME", "FACE", "EDGE", "NODE" ]
      },
      "ComputeResourceType" : {
        "type" : "string",
        "readOnly" : true,
        "enum" : [ "CPU_HOURS", "GPU_HOURS" ]
      },
      "Status" : {
        "type" : "string",
        "description" : "Status of the operation.",
        "readOnly" : true,
        "enum" : [ "READY", "QUEUED", "RUNNING", "FINISHED", "CANCELED", "FAILED" ]
      },
      "ReportDownload" : {
        "type" : "object",
        "properties" : {
          "format" : {
            "type" : "string",
            "description" : "The result format.\nValid values include `OPEN_FOAM`, `ENSIGHT_GOLD`, `PVD`, `VTM`, `CSV`.\n",
            "readOnly" : true
          },
          "uncompressedSizeInBytes" : {
            "type" : "integer",
            "description" : "The uncompressed size of the result content.",
            "format" : "int64",
            "readOnly" : true
          },
          "url" : {
            "type" : "string",
            "description" : "URL for downloading the result content.",
            "format" : "uri",
            "readOnly" : true
          },
          "compression" : {
            "type" : "string",
            "description" : "The compression used for the result download archive.",
            "readOnly" : true,
            "enum" : [ "NONE", "ZIP64" ]
          }
        }
      },
      "CreateUploadSessionRequest" : {
        "type" : "object",
        "description" : "Note: This object is replaced at runtime with the actual data-repository public OpenAPI schema.\n"
      },
      "UploadSession" : {
        "type" : "object",
        "description" : "Note: This object is replaced at runtime with the actual data-repository public OpenAPI schema.\n"
      },
      "StartUploadSessionAppendRequest" : {
        "type" : "object",
        "description" : "Note: This object is replaced at runtime with the actual data-repository public OpenAPI schema.\n"
      },
      "UploadSessionAppend" : {
        "type" : "object",
        "properties" : {
          "appendId" : {
            "type" : "string"
          },
          "preSignedPutRequest" : {
            "$ref" : "#/components/schemas/PresignedRequest"
          }
        },
        "description" : "Note: This object is replaced at runtime with the actual data-repository public OpenAPI schema.\n"
      },
      "PresignedRequest" : {
        "type" : "object",
        "properties" : {
          "url" : {
            "type" : "string",
            "format" : "uri"
          },
          "headers" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/HttpHeader"
            }
          }
        },
        "description" : "Note: This object is replaced at runtime with the actual data-repository public OpenAPI schema.\n"
      },
      "HttpHeader" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          }
        },
        "description" : "Note: This object is replaced at runtime with the actual data-repository public OpenAPI schema.\n"
      },
      "WorkflowOverview" : {
        "type" : "object",
        "description" : "Note: This object is replaced at runtime with the actual workflow-repository public OpenAPI schema.\n"
      },
      "WorkflowVersionOverview" : {
        "type" : "object",
        "description" : "Note: This object is replaced at runtime with the actual workflow-repository public OpenAPI schema.\n"
      },
      "MaterialUpdateRequest" : {
        "required" : [ "operations" ],
        "type" : "object",
        "properties" : {
          "operations" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MaterialUpdateOperation"
            }
          }
        },
        "description" : "Material update request schema"
      },
      "WindRoseResponse" : {
        "required" : [ "windRose" ],
        "type" : "object",
        "properties" : {
          "windRose" : {
            "$ref" : "#/components/schemas/WindRose"
          }
        },
        "description" : "Wrapper containing WindRose schema"
      },
      "CreateExportRequest" : {
        "required" : [ "format", "resultId" ],
        "type" : "object",
        "properties" : {
          "resultId" : {
            "type" : "string",
            "description" : "The result to be exported",
            "format" : "uuid"
          },
          "format" : {
            "type" : "string",
            "description" : "The format to export to"
          }
        }
      },
      "CreateExportResponse" : {
        "type" : "object",
        "properties" : {
          "exportId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "resultId" : {
            "type" : "string",
            "description" : "The result to be exported",
            "format" : "uuid"
          },
          "format" : {
            "type" : "string",
            "description" : "The format to export to"
          },
          "status" : {
            "type" : "string",
            "description" : "RUNNING - Export is still in progress\nDONE - Export is done and ready for download\nFAILED - Export failed, please retry or contact support\nEXPIRED - Export is expired, please trigger a new export for the result\n"
          },
          "errorCode" : {
            "type" : "string"
          }
        }
      },
      "GetExportResponse" : {
        "type" : "object",
        "properties" : {
          "exportId" : {
            "type" : "string",
            "format" : "uuid"
          },
          "status" : {
            "type" : "string",
            "description" : "RUNNING - Export is still in progress\nDONE - Export is done and ready for download\nFAILED - Export failed, please retry or contact support\nEXPIRED - Export is expired, please trigger a new export for the result\n"
          },
          "url" : {
            "type" : "string",
            "description" : "The temporary url for downloading the exported result, only set when status is DONE."
          },
          "urlExpiresAt" : {
            "type" : "string",
            "description" : "Timestamp that the url will be expired, only set when status is DONE.\nNote that this timestamp is not a guarantee, if the url expired prematurely, please retry this request to get a new one.\n"
          },
          "errorCode" : {
            "type" : "string"
          }
        }
      },
      "Parameters" : {
        "type" : "object",
        "additionalProperties" : {
          "$ref" : "#/components/schemas/OneOf_Parameters"
        }
      },
      "ParameterWithValues" : {
        "required" : [ "valueSource" ],
        "type" : "object",
        "properties" : {
          "valueSource" : {
            "type" : "string",
            "description" : "Schema name: ParameterWithValues",
            "default" : "CONFIGURATION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "path" : {
            "type" : "string",
            "format" : "json-pointer"
          },
          "values" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/AnyOf_ParameterWithValuesValues"
            }
          }
        },
        "additionalProperties" : false
      },
      "ParameterWithValueGenerator" : {
        "required" : [ "valueSource" ],
        "type" : "object",
        "properties" : {
          "valueSource" : {
            "type" : "string",
            "description" : "Schema name: ParameterWithValueGenerator",
            "default" : "GENERATOR"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "path" : {
            "type" : "string",
            "format" : "json-pointer"
          },
          "valueGenerator" : {
            "$ref" : "#/components/schemas/NumericalSequenceParameterValueGenerator"
          }
        },
        "additionalProperties" : false
      },
      "NumericalSequenceParameterValueGenerator" : {
        "required" : [ "inclusive", "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NumericalSequenceParameterValueGenerator",
            "default" : "NUMERICAL_SEQUENCE"
          },
          "start" : {
            "type" : "number"
          },
          "end" : {
            "type" : "number"
          },
          "step" : {
            "type" : "number"
          },
          "inclusive" : {
            "type" : "boolean"
          }
        },
        "additionalProperties" : false
      },
      "OneOf_Parameters" : {
        "discriminator" : {
          "propertyName" : "valueSource",
          "mapping" : {
            "CONFIGURATION" : "#/components/schemas/ParameterWithValues",
            "GENERATOR" : "#/components/schemas/ParameterWithValueGenerator"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ParameterWithValues"
        }, {
          "$ref" : "#/components/schemas/ParameterWithValueGenerator"
        } ]
      },
      "AnyOf_ParameterWithValuesValues" : {
        "anyOf" : [ {
          "type" : "string"
        }, {
          "type" : "number"
        }, {
          "type" : "integer"
        }, {
          "type" : "object"
        }, {
          "type" : "array",
          "items" : { }
        }, {
          "type" : "boolean"
        } ]
      },
      "GeometryPrimitive" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CARTESIAN_BOX" : "#/components/schemas/CartesianBox",
            "ROTATABLE_CARTESIAN_BOX" : "#/components/schemas/RotatableCartesianBox",
            "LOCAL_CARTESIAN_BOX" : "#/components/schemas/LocalCartesianBox",
            "SPHERE" : "#/components/schemas/Sphere",
            "LOCAL_SPHERE" : "#/components/schemas/LocalSphere",
            "CYLINDER" : "#/components/schemas/Cylinder",
            "POINT" : "#/components/schemas/Point",
            "BOX" : "#/components/schemas/Box",
            "HALF_SPACE" : "#/components/schemas/HalfSpace",
            "LOCAL_HALF_SPACE" : "#/components/schemas/LocalHalfSpace"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CartesianBox"
        }, {
          "$ref" : "#/components/schemas/RotatableCartesianBox"
        }, {
          "$ref" : "#/components/schemas/LocalCartesianBox"
        }, {
          "$ref" : "#/components/schemas/Sphere"
        }, {
          "$ref" : "#/components/schemas/LocalSphere"
        }, {
          "$ref" : "#/components/schemas/Cylinder"
        }, {
          "$ref" : "#/components/schemas/Point"
        }, {
          "$ref" : "#/components/schemas/Box"
        }, {
          "$ref" : "#/components/schemas/HalfSpace"
        }, {
          "$ref" : "#/components/schemas/LocalHalfSpace"
        } ]
      },
      "CartesianBox" : {
        "title" : "Cartesian box",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CartesianBox",
            "default" : "CARTESIAN_BOX"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "min" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "max" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_Length" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m", "in", "mm", "cm", "ft", "yd" ]
          }
        },
        "additionalProperties" : false
      },
      "DecimalVector" : {
        "type" : "object",
        "properties" : {
          "x" : {
            "title" : "X",
            "type" : "number"
          },
          "y" : {
            "title" : "Y",
            "type" : "number"
          },
          "z" : {
            "title" : "Z",
            "type" : "number"
          }
        },
        "additionalProperties" : false
      },
      "RotatableCartesianBox" : {
        "title" : "Rotatable cartesian box",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RotatableCartesianBox",
            "default" : "ROTATABLE_CARTESIAN_BOX"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "min" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "max" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "rotationPoint" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "rotationAngles" : {
            "$ref" : "#/components/schemas/DimensionalVector_Angle"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_Angle" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "rad", "°" ]
          }
        },
        "additionalProperties" : false
      },
      "LocalCartesianBox" : {
        "title" : "Local cartesian box",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LocalCartesianBox",
            "default" : "LOCAL_CARTESIAN_BOX"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "orientationReference" : {
            "title" : "Orientation reference",
            "type" : "string",
            "default" : "GEOMETRY",
            "enum" : [ "GEOMETRY", "FLOW_DOMAIN" ]
          },
          "min" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "max" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "Sphere" : {
        "title" : "Sphere",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Sphere",
            "default" : "SPHERE"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "center" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "radius" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Length" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m", "in", "mm", "cm", "ft", "yd" ]
          }
        },
        "additionalProperties" : false
      },
      "LocalSphere" : {
        "title" : "Local sphere",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LocalSphere",
            "default" : "LOCAL_SPHERE"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "orientationReference" : {
            "title" : "Orientation reference",
            "type" : "string",
            "default" : "GEOMETRY",
            "enum" : [ "GEOMETRY", "FLOW_DOMAIN" ]
          },
          "center" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "radius" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "Cylinder" : {
        "title" : "Cylinder",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Cylinder",
            "default" : "CYLINDER"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "reference" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "axis" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "radius" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "Point" : {
        "title" : "Point",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Point",
            "default" : "POINT"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "center" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "Box" : {
        "title" : "Box",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Box",
            "default" : "BOX"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "scale" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "translation" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "rotationAxis" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "rotationAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Angle" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "rad", "°" ]
          }
        },
        "additionalProperties" : false
      },
      "HalfSpace" : {
        "title" : "Slice",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HalfSpace",
            "default" : "HALF_SPACE"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "referencePoint" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "normal" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "LocalHalfSpace" : {
        "title" : "Local slice",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LocalHalfSpace",
            "default" : "LOCAL_HALF_SPACE"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "orientationReference" : {
            "title" : "Orientation reference",
            "type" : "string",
            "default" : "GEOMETRY",
            "enum" : [ "GEOMETRY", "FLOW_DOMAIN" ]
          },
          "referencePoint" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "normal" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "Algorithm" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SIMMETRIX_MESHING_FLUID_V16" : "#/components/schemas/SimmetrixMeshingFluid",
            "SIMMETRIX_MESHING_SOLID" : "#/components/schemas/SimmetrixMeshingSolid",
            "SIMMETRIX_MESHING_ELECTROMAGNETICS" : "#/components/schemas/SimmetrixMeshingElectromagnetics",
            "HEX_DOMINANT_SNAPPY_V5" : "#/components/schemas/HexDominantSnappy",
            "POLYGRID_MESHING" : "#/components/schemas/PolygridMeshing"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SimmetrixMeshingFluid"
        }, {
          "$ref" : "#/components/schemas/SimmetrixMeshingSolid"
        }, {
          "$ref" : "#/components/schemas/SimmetrixMeshingElectromagnetics"
        }, {
          "$ref" : "#/components/schemas/HexDominantSnappy"
        }, {
          "$ref" : "#/components/schemas/PolygridMeshing"
        } ]
      },
      "SimmetrixMeshingFluid" : {
        "title" : "Standard",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SimmetrixMeshingFluid",
            "default" : "SIMMETRIX_MESHING_FLUID_V16"
          },
          "sizing" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixMeshingFluidSizing"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SimmetrixMeshingFluidRefinements"
            }
          },
          "cellZones" : {
            "title" : "Cell zones",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SimmetrixCellZones"
            },
            "x-showWhen" : [ "physicsBasedMeshing == false" ]
          },
          "automaticLayerSettings" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixMeshingFluidAutomaticLayerSettings"
          },
          "physicsBasedMeshing" : {
            "title" : "Physics-based meshing",
            "type" : "boolean",
            "description" : "Physics-based meshing takes setup information like materials, boundary conditions, and source terms into account to size the mesh accordingly. When enabled, the following adaptations will be made:</p><ul><li>Refinements on inlets and outlets</li><li>Different sizing for solid and fluid regions in CHT simulations</li></ul> <br>When toggled on users don’t have to worry about creating a <a href='https://www.simscale.com/docs/simulation-setup/simulation-control/' target='_blank'>separate cell zone</a>.",
            "default" : true
          },
          "hexCore" : {
            "title" : "Hex element core",
            "type" : "boolean",
            "description" : "<p>If <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#hexcore' target='_blank'><b>Hex element core</b></a> is activated, the interior of the mesh gets covered by <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#hexcore' target='_blank'><b>hexahedral elements</b></a>. The transition to the triangulated surface mesh is covered by tetrahedral and pyramid elements.<img src=\"/spec/resources/help/imgs/simmetrix-hexcore.png\" class=\"helpPopupImage\"/>Meshclip through a hex-core mesh.</p>",
            "default" : true
          },
          "automaticSweepParameters" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixMeshingFluidAutomaticSweepParameters"
          },
          "numOfProcessors" : {
            "title" : "Number of processors",
            "type" : "integer",
            "description" : "<p>Selecting more processor cores might speed up the meshing process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/meshing/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "format" : "int64",
            "default" : -1,
            "enum" : [ -1, 4, 8, 16, 32, 48, 64, 96 ]
          },
          "maxMeshingRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "advancedSimmetrixSettings" : {
            "$ref" : "#/components/schemas/AdvancedSimmetrixFluidSettings"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticMeshSizingSimmetrix" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticMeshSizingSimmetrix",
            "default" : "AUTOMATIC_V9"
          },
          "fineness" : {
            "title" : "Fineness",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Adjust the overall mesh sizing from coarse (value: 0) to fine (10).</p>",
            "default" : 5.0,
            "x-divisibleBy" : 0.1
          },
          "curvature" : {
            "$ref" : "#/components/schemas/OneOf_AutomaticMeshSizingSimmetrixCurvature"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticCurvature" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticCurvature",
            "default" : "AUTOMATIC_CURVATURE"
          }
        },
        "additionalProperties" : false
      },
      "RelativeCurvature" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeCurvature",
            "default" : "RELATIVE_CURVATURE"
          },
          "relativeCurvature" : {
            "title" : "Num. of nodes in a circle",
            "maximum" : 360.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The <b>Number of nodes in a circle</b> defines the relative chordal error on curved features in terms of number of mesh nodes in a full circle. The relative chordal error is the distance between the mesh element edge and the CAD model feature it represents divided by the mesh edge length.",
            "x-conditionalDefaults" : [ {
              "when" : [ "type == SIMMETRIX_MESHING_FLUID_V16" ],
              "default" : 16.0
            }, {
              "when" : [ "type in [SIMMETRIX_MESHING_SOLID,SIMMETRIX_MESHING_ELECTROMAGNETICS]" ],
              "default" : 10.0
            } ],
            "x-divisibleBy" : 1.0
          }
        },
        "additionalProperties" : false
      },
      "ManualMeshSizingSimmetrix" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualMeshSizingSimmetrix",
            "default" : "MANUAL"
          },
          "maximumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "minimumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "curvature" : {
            "$ref" : "#/components/schemas/OneOf_ManualMeshSizingSimmetrixCurvature"
          }
        },
        "additionalProperties" : false
      },
      "RegionRefinementWithLength" : {
        "title" : "Region refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "A <b>region refinement</b> can be used to refine the mesh in a given area. The refinement area needs to be defined either via an existing solid or a geometry primitive.\n\nSchema name: RegionRefinementWithLength",
            "default" : "REGION_LENGTH"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Region refinement"
          },
          "refinement" : {
            "$ref" : "#/components/schemas/OneOf_RegionRefinementWithLengthRefinement"
          },
          "curvature" : {
            "$ref" : "#/components/schemas/OneOf_RegionRefinementWithLengthCurvature"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "A <b>region refinement</b> can be used to refine the mesh in a given area. The refinement area needs to be defined either via an existing solid or a geometry primitive."
      },
      "InsideRegionRefinementWithLength" : {
        "title" : "Inside",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InsideRegionRefinementWithLength",
            "default" : "INSIDE"
          },
          "length" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "DistanceRegionRefinementWithLength" : {
        "title" : "Distance",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DistanceRegionRefinementWithLength",
            "default" : "DISTANCE"
          },
          "distanceRefinementLengths" : {
            "title" : "Distance refinement lengths",
            "type" : "array",
            "description" : "Define mesh element sizes inside and around the selected volumes. Each row specifies how the mesh size changes with the distance from the volume boundary: <b>Distance [m]</b> is the distance from the closest point on the boundary, <b>Default size [m]</b> is the target element size at that distance, and <b>Min. size [m]</b> is the smallest allowed element size. Distances must be specified in <u>increasing order</u> (e.g. d1 = 0 m, default = 1e-3 m, min = 5e-4 m; d2 = 0.5 m, default = 3e-3 m, min = 1e-3 m). When <b>Distance = 0</b>, the sizes apply <b>inside</b> the selected volume, and larger distances control how the mesh transitions <b>outside</b> it in all directions.",
            "items" : {
              "$ref" : "#/components/schemas/RefinementLength"
            },
            "default" : [ {
              "distance" : {
                "value" : 0,
                "unit" : "m"
              },
              "length" : {
                "value" : 1,
                "unit" : "m"
              }
            } ]
          }
        },
        "additionalProperties" : false
      },
      "RefinementLength" : {
        "type" : "object",
        "properties" : {
          "distance" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "length" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "OutsideRegionRefinementWithLength" : {
        "title" : "Outside",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OutsideRegionRefinementWithLength",
            "default" : "OUTSIDE"
          },
          "length" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "TopologicalReference" : {
        "type" : "object",
        "properties" : {
          "entities" : {
            "title" : "Entities",
            "type" : "array",
            "items" : {
              "type" : "string"
            }
          },
          "sets" : {
            "title" : "Sets",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          }
        },
        "additionalProperties" : false
      },
      "SurfaceCustomSizing" : {
        "title" : "Surface custom sizing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SurfaceCustomSizing",
            "default" : "SURFACE_CUSTOM_SIZING"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Surface sizing"
          },
          "sizing" : {
            "$ref" : "#/components/schemas/OneOf_SurfaceCustomSizingSizing"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "CustomMeshSizingSimmetrix" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomMeshSizingSimmetrix",
            "default" : "CUSTOM"
          },
          "defaultSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "minSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "curvature" : {
            "$ref" : "#/components/schemas/OneOf_CustomMeshSizingSimmetrixCurvature"
          }
        },
        "additionalProperties" : false
      },
      "VolumeCustomSizing" : {
        "title" : "Volume custom sizing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: VolumeCustomSizing",
            "default" : "VOLUME_CUSTOM_SIZING"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Volume sizing"
          },
          "customSizingModes" : {
            "$ref" : "#/components/schemas/OneOf_VolumeCustomSizingCustomSizingModes"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DistanceVolumeCustomSizing" : {
        "title" : "Distance",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DistanceVolumeCustomSizing",
            "default" : "DISTANCE_CUSTOM_SIZING"
          },
          "distanceSizingValues" : {
            "title" : "Distance - sizing values",
            "type" : "array",
            "description" : "Define mesh element sizes inside and around the selected volumes. Each row specifies how the mesh size changes with the distance from the volume boundary: <b>Distance [m]</b> is the distance from the closest point on the boundary, <b>Default size [m]</b> is the target element size at that distance, and <b>Min. size [m]</b> is the smallest allowed element size. Distances must be specified in <u>increasing order</u> (e.g. d1 = 0 m, default = 1e-3 m, min = 5e-4 m; d2 = 0.5 m, default = 3e-3 m, min = 1e-3 m). When <b>Distance = 0</b>, the sizes apply <b>inside</b> the selected volume, and larger distances control how the mesh transitions <b>outside</b> it in all directions.",
            "items" : {
              "$ref" : "#/components/schemas/DistanceSizing"
            },
            "default" : [ {
              "distance" : {
                "value" : 0,
                "unit" : "m"
              },
              "length" : {
                "value" : 1,
                "unit" : "m"
              }
            } ]
          },
          "curvature" : {
            "$ref" : "#/components/schemas/OneOf_DistanceVolumeCustomSizingCurvature"
          }
        },
        "additionalProperties" : false
      },
      "DistanceSizing" : {
        "type" : "object",
        "properties" : {
          "distance" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "defaultSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "minSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "InsideVolumeCustomSizing" : {
        "title" : "Inside",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InsideVolumeCustomSizing",
            "default" : "INSIDE_CUSTOM_SIZING"
          },
          "sizing" : {
            "$ref" : "#/components/schemas/OneOf_InsideVolumeCustomSizingSizing"
          }
        },
        "additionalProperties" : false
      },
      "SimmetrixLocalSizingRefinement" : {
        "title" : "Local element size",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Refine specific faces of interest or complex geometrical shapes by defining a local element size. This will ensure a relatively uniform mesh.\n\nSchema name: SimmetrixLocalSizingRefinement",
            "default" : "SIMMETRIX_LOCAL_SIZING_V10"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Local element size"
          },
          "maxElementSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "curvature" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixLocalSizingRefinementCurvature"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Refine specific faces of interest or complex geometrical shapes by defining a local element size. This will ensure a relatively uniform mesh."
      },
      "SimmetrixBoundaryLayerRefinement" : {
        "title" : "Inflate boundary layer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p><a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#layer-inflation' target='_blank'><b>Layer inflation</b></a> allows the creation of prismatic boundary layers for certain mesh regions.</p><p>Prismatic layers are mostly used in CFD simulations on no-slip walls in order to efficiently capture the boundary layer velocity profile, but they may be also used in certain structural simulations like stamping or deep-drawing processes.</p><p><img src=\"/spec/resources/help/imgs/simmetrix-layers.png\" class=\"helpPopupImage\"/> The figure shows a sample mesh with boundary layers added.</p>\n\nSchema name: SimmetrixBoundaryLayerRefinement",
            "default" : "SIMMETRIX_BOUNDARY_LAYER_V13"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Inflate boundary layer"
          },
          "layerType" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixBoundaryLayerRefinementLayerType"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p><a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#layer-inflation' target='_blank'><b>Layer inflation</b></a> allows the creation of prismatic boundary layers for certain mesh regions.</p><p>Prismatic layers are mostly used in CFD simulations on no-slip walls in order to efficiently capture the boundary layer velocity profile, but they may be also used in certain structural simulations like stamping or deep-drawing processes.</p><p><img src=\"/spec/resources/help/imgs/simmetrix-layers.png\" class=\"helpPopupImage\"/> The figure shows a sample mesh with boundary layers added.</p>"
      },
      "FractionalHeight1" : {
        "title" : "Specify first layer thickness",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FractionalHeight1",
            "default" : "FRACTIONAL_HEIGHT_1"
          },
          "numberOfLayers" : {
            "title" : "Number of layers",
            "maximum" : 40,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "The <i>Number of layers</i> defines how many prismatic boundary layers should be created. 3 is default.",
            "default" : 3
          },
          "totalRelativeThickness" : {
            "title" : "Overall relative thickness",
            "type" : "number",
            "description" : "It defines the thickness of all prismatic boundary layers combined in relation to the local element size.<img src=\"/spec/resources/help/imgs/simmetrix-overall-layer-thickness.png\" class=\"helpPopupImage\"/>Example 3-layer thickness of 40% (0.4) of the local mesh size.",
            "default" : 0.4
          },
          "firstLayerSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "FractionalHeight2" : {
        "title" : "Specify growth rate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FractionalHeight2",
            "default" : "FRACTIONAL_HEIGHT_2"
          },
          "numberOfLayers" : {
            "title" : "Number of layers",
            "maximum" : 40,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "The <i>Number of layers</i> defines how many prismatic boundary layers should be created. 3 is default.",
            "default" : 3
          },
          "totalRelativeThickness" : {
            "title" : "Overall relative thickness",
            "type" : "number",
            "description" : "It defines the thickness of all prismatic boundary layers combined in relation to the local element size.<img src=\"/spec/resources/help/imgs/simmetrix-overall-layer-thickness.png\" class=\"helpPopupImage\"/>Example 3-layer thickness of 40% (0.4) of the local mesh size.",
            "default" : 0.4
          },
          "growthRate" : {
            "title" : "Growth rate",
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The <i>Growth rate</i> defines the thickness ratio between adjacent boundary layer cells. It needs to be always greater than 1 such that the layer thickness increases towards the interior of the mesh. For the same number of layers and overall thickness the larger the growth rate is inversely proportional to the first cell thickness. <img src=\"/spec/resources/help/imgs/simmetrix-layer-growth-rate.png\" class=\"helpPopupImage\"/>Example of each cell being 1.5 times thicker than its adjacent.",
            "default" : 1.5
          }
        },
        "additionalProperties" : false
      },
      "GeometricGrowth" : {
        "title" : "Specify first layer and total abs. thickness",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GeometricGrowth",
            "default" : "GEOMETRIC_GROWTH"
          },
          "numberOfLayers" : {
            "title" : "Number of layers",
            "maximum" : 40,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "The <i>Number of layers</i> defines how many prismatic boundary layers should be created. 3 is default.",
            "default" : 3
          },
          "totalAbsoluteThickness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "firstLayerSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "FirstLayerGrowth" : {
        "title" : "First layer growth",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FirstLayerGrowth",
            "default" : "FIRST_LAYER_GROWTH"
          },
          "numberOfLayers" : {
            "title" : "Number of layers",
            "maximum" : 40,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "The <i>Number of layers</i> defines how many prismatic boundary layers should be created. 3 is default.",
            "default" : 3
          },
          "growthRate" : {
            "title" : "Growth rate",
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The <i>Growth rate</i> defines the thickness ratio between adjacent boundary layer cells. It needs to be always greater than 1 such that the layer thickness increases towards the interior of the mesh. For the same number of layers and overall thickness the larger the growth rate is inversely proportional to the first cell thickness. <img src=\"/spec/resources/help/imgs/simmetrix-layer-growth-rate.png\" class=\"helpPopupImage\"/>Example of each cell being 1.5 times thicker than its adjacent.",
            "default" : 1.3
          },
          "firstLayerSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "SimmetrixSweptMeshRefinement" : {
        "title" : "Sweep meshing refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SimmetrixSweptMeshRefinement",
            "default" : "SIMMETRIX_SWEPT_MESH_REFINEMENT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Sweep meshing refinement"
          },
          "sizingType" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixSweptMeshRefinementSizingType"
          },
          "surfaceElementType" : {
            "title" : "Surface element type",
            "type" : "string",
            "default" : "TRIANGULAR",
            "enum" : [ "TRIANGULAR", "QUADDOMINANT" ]
          },
          "specifyLocalSize" : {
            "title" : "Specify start/end mesh size",
            "type" : "boolean",
            "default" : false
          },
          "maxElementSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "sourceTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "destinationTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "SweepMeshingAbsoluteSize" : {
        "title" : "Element thickness along sweep",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SweepMeshingAbsoluteSize",
            "default" : "SWEEP_MESHING_ABSOLUTE_SIZE"
          },
          "thickness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "SweepMeshingNumberOfElements" : {
        "title" : "Number of elements along sweep",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SweepMeshingNumberOfElements",
            "default" : "SWEEP_MESHING_NUMBER_OF_ELEMENTS"
          },
          "numberOfElements" : {
            "title" : "Number of elements",
            "maximum" : 100000.0,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 10
          }
        },
        "additionalProperties" : false
      },
      "SimmetrixThinSectionMeshRefinement" : {
        "title" : "Thin section mesh refinement (beta)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SimmetrixThinSectionMeshRefinement",
            "default" : "SIMMETRIX_THIN_SECTION_MESH_REFINEMENT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Thin section mesh refinement"
          },
          "distanceType" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixThinSectionMeshRefinementDistanceType"
          },
          "sizingType" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixThinSectionMeshRefinementSizingType"
          },
          "surfaceElementType" : {
            "title" : "Surface element type",
            "type" : "string",
            "default" : "TRIANGULAR",
            "enum" : [ "TRIANGULAR", "QUADDOMINANT" ]
          },
          "specifyLocalSize" : {
            "title" : "Specify start/end mesh size",
            "type" : "boolean",
            "default" : false
          },
          "maxElementSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "sourceTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "destinationTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteDistance" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteDistance",
            "default" : "ABSOLUTE"
          },
          "absoluteDistance" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "RelativeDistance" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeDistance",
            "default" : "RELATIVE"
          },
          "relativeDistance" : {
            "title" : "Relative distance",
            "maximum" : 100.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.1
          }
        },
        "additionalProperties" : false
      },
      "SimmetrixExtrusionMeshRefinement" : {
        "title" : "Extrusion mesh refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SimmetrixExtrusionMeshRefinement",
            "default" : "SIMMETRIX_EXTRUSION_MESH_REFINEMENT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Extrusion meshing refinement"
          },
          "sizingType" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixExtrusionMeshRefinementSizingType"
          },
          "surfaceElementType" : {
            "title" : "Surface element type",
            "type" : "string",
            "default" : "TRIANGULAR",
            "enum" : [ "TRIANGULAR", "QUADDOMINANT" ]
          },
          "specifyLocalSize" : {
            "title" : "Specify start/end mesh size",
            "type" : "boolean",
            "default" : false
          },
          "maxElementSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "sourceTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "destinationTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "SimmetrixCellZones" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SimmetrixCellZones",
            "default" : "SIMMETRIX_CELL_ZONES"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Zone"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticLayerOn" : {
        "title" : "On",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticLayerOn",
            "default" : "AUTOMATIC_LAYER_ON"
          },
          "layerType" : {
            "$ref" : "#/components/schemas/OneOf_AutomaticLayerOnLayerType"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticLayerOff" : {
        "title" : "Off",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticLayerOff",
            "default" : "AUTOMATIC_LAYER_OFF"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticSweepOn" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticSweepOn",
            "default" : "AUTOMATIC_SWEEP_MESHING_ON"
          },
          "maximumNumberOfLayers" : {
            "title" : "Maximum number of layers",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 500
          },
          "minimumNumberOfLayers" : {
            "title" : "Minimum number of layers",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 2
          },
          "surfaceElementType" : {
            "title" : "Surface element type",
            "type" : "string",
            "default" : "QUADDOMINANT",
            "enum" : [ "TRIANGULAR", "QUADDOMINANT" ]
          },
          "extrusionDirection" : {
            "title" : "Extrusion direction",
            "type" : "string",
            "description" : "If a part can be extruded along multiple directions, choose whether to extrude along the shortest or the longest direction (e.g. a simple plate can be extruded along its thickness or the other two dimensions. Choose Shortest to extrude across the thickness).",
            "default" : "SHORTEST",
            "enum" : [ "SHORTEST", "LONGEST" ]
          }
        },
        "additionalProperties" : false
      },
      "AutomaticSweepOff" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticSweepOff",
            "default" : "AUTOMATIC_SWEEP_MESHING_OFF"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Time" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "s" ]
          }
        },
        "additionalProperties" : false
      },
      "AdvancedSimmetrixFluidSettings" : {
        "type" : "object",
        "properties" : {
          "smallFeatureTolerance" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "gapElements" : {
            "title" : "Gap refinement factor",
            "maximum" : 4.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define a target number of elements across thin gaps. The <i>Gap refinement factor</i> is the ratio between gap thickness and the cell longest edge in that gap. <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#gap-refinement-factor' target='_blank'>Learn more</a>.<img src=\"/spec/resources/help/imgs/simmetrix-gap-elements.png\" class=\"helpPopupImage\"/>Example of gap refinements applied with a target of 4 elements across the thickness</p>",
            "default" : 0.05
          },
          "globalGradationRate" : {
            "title" : "Global gradation rate",
            "maximum" : 3.0,
            "exclusiveMaximum" : false,
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Adjust the transition from small to large cells. This value is the ratio between the size of two adjacent cells. The allowed range is 1.0 - 3.0. 1.0 would produce a uniform mesh with the smallest size everywhere. This is generally not recommended, as it may produce very large meshes.</p>",
            "default" : 1.22
          }
        },
        "additionalProperties" : false
      },
      "SimmetrixMeshingSolid" : {
        "title" : "Standard",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SimmetrixMeshingSolid",
            "default" : "SIMMETRIX_MESHING_SOLID"
          },
          "sizing" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixMeshingSolidSizing"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SimmetrixMeshingSolidRefinements"
            }
          },
          "automaticSweepParameters" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixMeshingSolidAutomaticSweepParameters"
          },
          "numOfProcessors" : {
            "title" : "Number of processors",
            "type" : "integer",
            "description" : "<p>Selecting more processor cores might speed up the meshing process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/meshing/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "format" : "int64",
            "default" : -1,
            "enum" : [ -1, 4, 8, 16, 32, 48, 64, 96 ]
          },
          "maxMeshingRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "advancedSimmetrixSettings" : {
            "$ref" : "#/components/schemas/AdvancedSimmetrixSolidSettings"
          }
        },
        "additionalProperties" : false
      },
      "AdvancedSimmetrixSolidSettings" : {
        "type" : "object",
        "properties" : {
          "smallFeatureTolerance" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "gapElements" : {
            "title" : "Gap refinement factor",
            "maximum" : 4.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define a target number of elements across thin gaps. The <i>Gap refinement factor</i> is the ratio between gap thickness and the cell longest edge in that gap. <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#gap-refinement-factor' target='_blank'>Learn more</a>.<img src=\"/spec/resources/help/imgs/simmetrix-gap-elements.png\" class=\"helpPopupImage\"/>Example of gap refinements applied with a target of 4 elements across the thickness</p>",
            "default" : 0.0
          },
          "globalGradationRate" : {
            "title" : "Global gradation rate",
            "maximum" : 3.0,
            "exclusiveMaximum" : false,
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Adjust the transition from small to large cells. This value is the ratio between the size of two adjacent cells. The allowed range is 1.0 - 3.0. 1.0 would produce a uniform mesh with the smallest size everywhere. This is generally not recommended, as it may produce very large meshes.</p>",
            "default" : 1.22
          }
        },
        "additionalProperties" : false
      },
      "SimmetrixMeshingElectromagnetics" : {
        "title" : "Standard",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SimmetrixMeshingElectromagnetics",
            "default" : "SIMMETRIX_MESHING_ELECTROMAGNETICS"
          },
          "sizing" : {
            "$ref" : "#/components/schemas/OneOf_SimmetrixMeshingElectromagneticsSizing"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SimmetrixMeshingElectromagneticsRefinements"
            }
          },
          "numOfProcessors" : {
            "title" : "Number of processors",
            "type" : "integer",
            "description" : "<p>Selecting more processor cores might speed up the meshing process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/meshing/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "format" : "int64",
            "default" : -1,
            "enum" : [ -1, 4, 8, 16, 32, 48, 64, 96 ]
          },
          "maxMeshingRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "advancedSimmetrixSettings" : {
            "$ref" : "#/components/schemas/AdvancedSimmetrixEmSettings"
          }
        },
        "additionalProperties" : false
      },
      "AdvancedSimmetrixEmSettings" : {
        "type" : "object",
        "properties" : {
          "smallFeatureTolerance" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "gapElements" : {
            "title" : "Gap refinement factor",
            "maximum" : 4.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define a target number of elements across thin gaps. The <i>Gap refinement factor</i> is the ratio between gap thickness and the cell longest edge in that gap. <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#gap-refinement-factor' target='_blank'>Learn more</a>.<img src=\"/spec/resources/help/imgs/simmetrix-gap-elements.png\" class=\"helpPopupImage\"/>Example of gap refinements applied with a target of 4 elements across the thickness</p>",
            "default" : 0.0
          },
          "globalGradationRate" : {
            "title" : "Global gradation rate",
            "maximum" : 3.0,
            "exclusiveMaximum" : false,
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Adjust the transition from small to large cells. This value is the ratio between the size of two adjacent cells. The allowed range is 1.0 - 3.0. 1.0 would produce a uniform mesh with the smallest size everywhere. This is generally not recommended, as it may produce very large meshes.</p>",
            "default" : 1.22
          }
        },
        "additionalProperties" : false
      },
      "AutomaticMeshSizing" : {
        "title" : "Automatic mesh sizing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticMeshSizing",
            "default" : "AUTOMATIC"
          },
          "fineness" : {
            "title" : "Fineness",
            "type" : "string",
            "description" : "<p>Choose between <i>Automatic</i> and <i>Manual</i> mesh settings. <a href='https://www.simscale.com/docs/analysis-types/incompressible-lbm/#mesh' target='_blank'>Learn more.</a></p><p><b>Note:</b> Mesh fineness impacts the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>",
            "default" : "COARSE",
            "enum" : [ "VERY_COARSE", "COARSE", "MODERATE", "FINE", "VERY_FINE" ]
          }
        },
        "additionalProperties" : false
      },
      "ManualMeshSizing" : {
        "title" : "Manual mesh sizing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualMeshSizing",
            "default" : "MANUAL"
          },
          "minimumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "maximumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "grading" : {
            "$ref" : "#/components/schemas/OneOf_ManualMeshSizingGrading"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticMeshGrading" : {
        "title" : "Automatic mesh grading",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticMeshGrading",
            "default" : "AUTOMATIC"
          },
          "fineness" : {
            "title" : "Fineness",
            "type" : "string",
            "description" : "<p>The <b><a href='https://www.simscale.com/docs/simulation-setup/meshing/tet-dominant/#grading' target='_blank'>mesh grading</a></b> specifies how fine details of the geometry are resolved and also influences the quality of the resulting elements.</p><ul><li><p>If you select the <b>automatic</b> grading, you can specify how fine your mesh should be (ranging from <i>1 - very coarse</i> to <i>5 - very fine</i>) and all additional parameters will be set automatically.</li><li><p>For full control over the underlying parameters <i>number of segements per edge</i>, <i>number of segements per radius</i> and <i>growth rate</i> you can choose the <b>manual</b> mesh grading option.</p></li></ul><p><img src=\"/spec/resources/help/imgs/mesh_grading_comparison.png\" class=\"helpPopupImage\"/> The figure shows meshes for grading <i>1 - very coarse</i> (left) and <i>5 - very fine</i> (right).</p>",
            "default" : "COARSE",
            "enum" : [ "VERY_COARSE", "COARSE", "MODERATE", "FINE", "VERY_FINE" ]
          }
        },
        "additionalProperties" : false
      },
      "ManualMeshGrading" : {
        "title" : "Manual mesh grading",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualMeshGrading",
            "default" : "MANUAL"
          },
          "numberOfSegmentsPerEdge" : {
            "title" : "Number of segments per edge",
            "maximum" : 1000000.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.2,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This value defines the minimum number of elements along a <b>geometry edge</b>.</p>",
            "default" : 0.5
          },
          "numberOfSegmentsPerRadius" : {
            "title" : "Number of segments per radius",
            "maximum" : 1000000.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.2,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This value defines the minimum number of elements along a <b>geometry radius</b>.</p>",
            "default" : 1.5
          },
          "growthRate" : {
            "title" : "Growth rate",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The <b>growth rate</b> determines how large the allowed difference in element size between neighbouring elements is. For example a value of 0.2 allows the edges of neighbouring elements to differ by 20%.</p><p>If a large value is chosen, features requiring a finer mesh, like holes or fillets, will have a very local influence on the element size whereas for a small mesh grading those features will influence the element sizes in a wider area around them.</p><p>Choosing a smaller value will thus lead to a higher number of elements but also result in a better overall mesh quality.</p><p><img src=\"/spec/resources/help/imgs/growth_rate_comparison.png\" class=\"helpPopupImage\"/> The figure shows meshes for growth rate <i>2</i> (left) and <i>0.2</i> (right).</p>",
            "default" : 0.5
          }
        },
        "additionalProperties" : false
      },
      "LayerRefinement" : {
        "title" : "Layer inflation",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p><a href='https://www.simscale.com/docs/simulation-setup/meshing/tet-dominant/#layer-inflation' target='_blank'><b>Layer inflation</b></a> allows the creation of prismatic boundary layers for certain mesh regions.</p><p>Prismatic layers are mostly used in CFD simulations on no-slip walls in order to efficiently capture the boundary layer velocity profile, but they may be also used in certain structural simulations like stamping or deep-drawing processes.</p><p><img src=\"/spec/resources/help/imgs/boundary-layer.png\" class=\"helpPopupImage\"/> The figure shows a sample mesh with boundary layers added.</p>\n\nSchema name: LayerRefinement",
            "default" : "LAYER_INFLATION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Layer inflation"
          },
          "totalThickness" : {
            "title" : "Total thickness",
            "maximum" : 1000000.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "This parameter controls the <b>overall thickness</b> of all the generated boundary layers together. This value must be smaller than the minimal geometry thickness at the specified locations, otherwise the meshing will fail.",
            "default" : 0.01
          },
          "layers" : {
            "title" : "Layers",
            "maximum" : 1000000,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "The number of <b>layers</b> defines how many prismatic boundary layers should be created.",
            "default" : 5
          },
          "stretchFactor" : {
            "title" : "Stretch factor",
            "maximum" : 1000000,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The <b>stretch factor</b> determines how the boundary layers grow in thickness from the wall to the internal mesh. The larger the ratio, the larger each element layer will be in comparison to the neighbouring layer closer to the wall.</p><p><img src=\"/spec/resources/help/imgs/shm_bl_expansion-ratio.png\" class=\"helpPopupImage\"/> The figure shows a ratio of 1.3.</p>",
            "default" : 1.3
          },
          "allowQuadrangles" : {
            "title" : "Allow quadrangles",
            "type" : "boolean",
            "description" : "<p>This parameter determines if <a href='https://www.simscale.com/docs/simulation-setup/meshing/tet-dominant/#quadrangles' target='_blank'><b>quadrangular surface elements</b></a> shall be allowed. When disabled, only triangles will be used. Meshing with triangles only is usually more robust while quadrangular elements may lead to better results.</p><p><img src=\"/spec/resources/help/imgs/allow_quads_comparison.png\" class=\"helpPopupImage\"/> The figure shows sample meshes with quadrangular surface elements disallowed (left) and allowed (right).</p>",
            "default" : false
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p><a href='https://www.simscale.com/docs/simulation-setup/meshing/tet-dominant/#layer-inflation' target='_blank'><b>Layer inflation</b></a> allows the creation of prismatic boundary layers for certain mesh regions.</p><p>Prismatic layers are mostly used in CFD simulations on no-slip walls in order to efficiently capture the boundary layer velocity profile, but they may be also used in certain structural simulations like stamping or deep-drawing processes.</p><p><img src=\"/spec/resources/help/imgs/boundary-layer.png\" class=\"helpPopupImage\"/> The figure shows a sample mesh with boundary layers added.</p>"
      },
      "SubmeshRefinement" : {
        "title" : "Local element size",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>The refinement type <a href='https://www.simscale.com/docs/simulation-setup/meshing/tet-dominant/#local-element-size' target='_blank'><b>local element size</b></a> allows the definition of local mesh sizings on particular faces or solids. This can be used to increase the mesh efficiency by using smaller elements only where needed, for example on contact surfaces, fillets or other regions with potentially large stress gradients.</p><p><img src=\"/spec/resources/help/imgs/local_element_size.png\" class=\"helpPopupImage\"/> The figure shows a mesh of a bolted connection with local refinements on the contact surfaces.</p>\n\nSchema name: SubmeshRefinement",
            "default" : "SUBMESH"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Local element size"
          },
          "sizing" : {
            "$ref" : "#/components/schemas/OneOf_SubmeshRefinementSizing"
          },
          "allowQuadrangles" : {
            "title" : "Allow quadrangles",
            "type" : "boolean",
            "description" : "<p>This parameter determines if <a href='https://www.simscale.com/docs/simulation-setup/meshing/tet-dominant/#quadrangles' target='_blank'><b>quadrangular surface elements</b></a> shall be allowed. When disabled, only triangles will be used. Meshing with triangles only is usually more robust while quadrangular elements may lead to better results.</p><p><img src=\"/spec/resources/help/imgs/allow_quads_comparison.png\" class=\"helpPopupImage\"/> The figure shows sample meshes with quadrangular surface elements disallowed (left) and allowed (right).</p>",
            "default" : false
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>The refinement type <a href='https://www.simscale.com/docs/simulation-setup/meshing/tet-dominant/#local-element-size' target='_blank'><b>local element size</b></a> allows the definition of local mesh sizings on particular faces or solids. This can be used to increase the mesh efficiency by using smaller elements only where needed, for example on contact surfaces, fillets or other regions with potentially large stress gradients.</p><p><img src=\"/spec/resources/help/imgs/local_element_size.png\" class=\"helpPopupImage\"/> The figure shows a mesh of a bolted connection with local refinements on the contact surfaces.</p>"
      },
      "HexDominantSnappy" : {
        "title" : "Hex-dominant",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HexDominantSnappy",
            "default" : "HEX_DOMINANT_SNAPPY_V5"
          },
          "meshingMode" : {
            "title" : "Meshing mode",
            "type" : "string",
            "description" : "<p>The <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#meshing-mode' target='_blank'>meshing mode</a> defines how the mesher should generate the mesh.</p><ul><li>The <b>Internal</b> mode will create the mesh <u>inside</u> of the geometry body. If the CAD consists of multiple solids, the mesher will attempt to create a multiregion mesh which is suitable for conjugate heat transfer analyses. Use this mode if the CAD model already represents the final fluid domain.</li><li><b>External</b> meshing will create the mesh <u>outside</u> of the bodies. The absolute dimensions of the mesh are determined by the <i>Background Mesh Box</i>. Use this mode in case you want to extract the fluid domain around your model.</li><li>The option <b>Material point</b> allows you to define a point inside the domain where the mesh will be placed. It can be used to select which part (or enclosed volume) of the model or should be meshed. The mesh will surround the material point and extend until the boundaries of the body. The location of the material point is defined by the <i>Material Point</i> geometry primitive.</li></ul>",
            "default" : "INTERNAL",
            "enum" : [ "INTERNAL" ]
          },
          "sizing" : {
            "$ref" : "#/components/schemas/OneOf_HexDominantSnappySizing"
          },
          "physicsBasedMeshing" : {
            "title" : "Automatic boundary layers",
            "type" : "boolean",
            "description" : "This toggle enables the automatic creation of boundary layers at no-slip walls. When toggled on, the meshing is started together with the simulation run.",
            "default" : true,
            "x-showWhen" : [ "meshingMode == INTERNAL" ]
          },
          "numOfProcessors" : {
            "title" : "Number of processors",
            "type" : "integer",
            "description" : "<p>Selecting more processor cores might speed up the meshing process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/meshing/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "format" : "int64",
            "default" : -1,
            "enum" : [ -1, 4, 8, 16, 32, 48, 64, 96 ]
          },
          "maxMeshingRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_HexDominantSnappyRefinements"
            }
          }
        },
        "additionalProperties" : false
      },
      "AutomaticMeshSizingHexDominantSnappy" : {
        "title" : "Automatic mesh sizing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticMeshSizingHexDominantSnappy",
            "default" : "AUTOMATIC"
          },
          "fineness" : {
            "title" : "Fineness",
            "type" : "string",
            "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>",
            "default" : "COARSE",
            "enum" : [ "VERY_COARSE", "COARSE", "MODERATE", "FINE", "VERY_FINE" ]
          }
        },
        "additionalProperties" : false
      },
      "ManualMeshSizingHexDominantSnappy" : {
        "title" : "Manual mesh sizing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualMeshSizingHexDominantSnappy",
            "default" : "MANUAL"
          },
          "minimumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "maximumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "SurfaceRefinementHexDominantSnappy" : {
        "title" : "Surface refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#surface-refinement' target='_blank'><b>surface refinement</b></a> can be used to refine the mesh near the surfaces of assigned faces and/or solids. A surface refinement can also be used to create a <u>cell zone</u>.\n\nSchema name: SurfaceRefinementHexDominantSnappy",
            "default" : "SURFACE_HEX_DOMINANT_SNAPPY_V3"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Surface refinement"
          },
          "minLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "maxLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "cellZone" : {
            "$ref" : "#/components/schemas/OneOf_SurfaceRefinementHexDominantSnappyCellZone"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#surface-refinement' target='_blank'><b>surface refinement</b></a> can be used to refine the mesh near the surfaces of assigned faces and/or solids. A surface refinement can also be used to create a <u>cell zone</u>."
      },
      "WithoutCellZone" : {
        "title" : "Without cell zone",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WithoutCellZone",
            "default" : "WITHOUT_CELL_ZONE"
          }
        },
        "additionalProperties" : false
      },
      "WithCellZone" : {
        "title" : "With cell zone",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WithCellZone",
            "default" : "WITH_CELL_ZONE_V11"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Zone"
          }
        },
        "additionalProperties" : false
      },
      "FeatureRefinementHexDominantSnappy" : {
        "title" : "Feature refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#feature-refinement' target='_blank'><b>feature refinement</b></a> can be used to refine the geometry’s feature edges. All edges whose adjacent surface normals form an angle of less than 150° will be refined.\n\nSchema name: FeatureRefinementHexDominantSnappy",
            "default" : "FEATURE_HEX_DOMINANT_SNAPPY"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Feature refinement"
          },
          "distanceRefinementLengths" : {
            "title" : "Distance refinement lengths",
            "type" : "array",
            "description" : "Specify the desired <b>target cell edge length</b> based on the <b>distance</b> to the feature edges. The edge and surface mesh will then be refined up until the specified distance in all directions from the edges.",
            "items" : {
              "$ref" : "#/components/schemas/RefinementLength"
            },
            "default" : [ {
              "distance" : {
                "value" : 1,
                "unit" : "m"
              },
              "length" : {
                "value" : 1,
                "unit" : "m"
              }
            } ]
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#feature-refinement' target='_blank'><b>feature refinement</b></a> can be used to refine the geometry’s feature edges. All edges whose adjacent surface normals form an angle of less than 150° will be refined."
      },
      "LayerAdditionHexDominantSnappy" : {
        "title" : "Inflate boundary layer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#layers-refinement' target='_blank'><b>Inflated boundary layers</b></a> are used to resolve the boundary layer near walls (no-slip) which are in contact with the fluid. Using boundary layers is generally recommended for turbulent simulations.\n\nSchema name: LayerAdditionHexDominantSnappy",
            "default" : "LAYER_ADDITION_HEX_DOMINANT_SNAPPY"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Inflate boundary layer"
          },
          "layers" : {
            "title" : "Layers",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "The number of <b>layers</b> defines how many boundary layers should be created.",
            "default" : 5
          },
          "expansionRatio" : {
            "title" : "Expansion ratio",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The <b>Expansion ratio</b> determines how the boundary layers grow in thickness from the wall to the internal mesh. The larger the ratio, the larger each cell layer will be in comparison to the neighbouring layer closer to the wall.</p><p><img src=\"/spec/resources/help/imgs/shm_bl_expansion-ratio.png\" class=\"helpPopupImage\"/> The figure shows a ratio of 1.3.</p>",
            "default" : 1.3
          },
          "minThickness" : {
            "title" : "Min thickness",
            "maximum" : 2.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Specifies the <b>overall minimum thickness of all layers combined</b>. In case the overall thickness falls below this minimum thickness, no layers will be added for the affected areas.",
            "default" : 0.0
          },
          "firstLayerThickness" : {
            "title" : "Surface layer relative thickness",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Specifies the height (thickness) of the <b>first layer</b> that is closest to the surface. The first layer thickness is specified <b>relative</b> to the neighboring volume cell size after refinements.",
            "default" : 0.055
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#layers-refinement' target='_blank'><b>Inflated boundary layers</b></a> are used to resolve the boundary layer near walls (no-slip) which are in contact with the fluid. Using boundary layers is generally recommended for turbulent simulations."
      },
      "Resolution" : {
        "required" : [ "x", "y", "z" ],
        "type" : "object",
        "properties" : {
          "x" : {
            "title" : "X",
            "maximum" : 600,
            "exclusiveMaximum" : false,
            "type" : "integer",
            "description" : "<p>Specify the number of cells in x direction for the <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/main-settings-for-hex-dominant-parametric/#main-properties' target='_blank'>base mesh</a>.</p>"
          },
          "y" : {
            "title" : "Y",
            "maximum" : 600,
            "exclusiveMaximum" : false,
            "type" : "integer",
            "description" : "<p>Specify the number of cells in y direction for the <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/main-settings-for-hex-dominant-parametric/#main-properties' target='_blank'>base mesh</a>.</p>"
          },
          "z" : {
            "title" : "Z",
            "maximum" : 600,
            "exclusiveMaximum" : false,
            "type" : "integer",
            "description" : "<p><p>Specify the number of cells in z direction for the <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/main-settings-for-hex-dominant-parametric/#main-properties' target='_blank'>base mesh</a>.</p>"
          }
        },
        "additionalProperties" : false
      },
      "CastellatedMeshControls" : {
        "type" : "object",
        "properties" : {
          "maxLocalCells" : {
            "title" : "Max local cells",
            "maximum" : 2000000000,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the maximal number of cells per processor during refinement</p>",
            "default" : 40000000
          },
          "maxGlobalCells" : {
            "title" : "Max global cells",
            "maximum" : 2000000000,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the maximum possible number of cells summed upon all processors. Note that this is before the castellation step (see documentation, so the actual number of cells after castellation might be considerably less.</p>",
            "default" : 100000000
          },
          "minRefinementCells" : {
            "title" : "Min refinement cells",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>If in a refinement iteration the number of cells selected for refinement is under this value, the refinement stops. Provide a small value to ensure that all surfaces are refined to the proper level.</p>",
            "default" : 1
          },
          "maxLoadUnbalance" : {
            "title" : "Max load unbalance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define a fraction indicating the maximum allowable load imbalance between processors working on this job. A value of 0 will force rebalancing for even a slight imbalance.</p>",
            "default" : 0.2
          },
          "cellsBetweenLevels" : {
            "title" : "Cells between levels",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>This parameter specifies the number of layers of cells between different levels of refinement (see documentation).</p>",
            "default" : 3
          },
          "resolveFeatureAngle" : {
            "title" : "Resolve feature angle",
            "maximum" : 180,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Cells that face multiple intersections with an intersection angle greater than this angle will be refined to the max level. Use this parameter to resolve sharp features to the maximum level of surface refinement specified (see documentation).</p>",
            "default" : 30
          },
          "allowFreeStandingZoneFaces" : {
            "title" : "Allow free standing zone faces",
            "type" : "boolean",
            "description" : "<p>Decide whether you want to allow zone faces that share the same owner and neighbour cell zone. Allowing this can lead to problem when zone faces are snapped to features. This parameter is ignored when no faceZones are present.</p>",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "SnapControls" : {
        "type" : "object",
        "properties" : {
          "meshToGeometryConformationIterations" : {
            "title" : "Mesh to geometry conformation iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the max number of iterations to ensure that the mesh conforms to the geometry. Higher values lead to a better conforming mesh.</p>",
            "default" : 5
          },
          "tolerance" : {
            "title" : "Tolerance",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This parameter describes a distance (relative to the local maximum mesh edge length) within which the algorithm looks for a geometry point to snap the mesh to. Higher values lead to better snapping but are costlier.</p>",
            "default" : 2
          },
          "solverIterations" : {
            "title" : "Solver iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>This parameter defines the number of displacement relaxation iterations during the meshing process. Higher values lead to enhanced mesh quality but increase the computing time.</p>",
            "default" : 150
          },
          "relaxIterations" : {
            "title" : "Relax iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>This parameter defines the max number of iterations to remove bad mesh points (see documentation).</p>",
            "default" : 8
          },
          "maxMexConformationIterations" : {
            "title" : "Max mesh conformation iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>This parameter defines the max number of iterations done to ensure that the mesh conforms to the geometry.</p>",
            "default" : 10
          },
          "implicitFeatureSnap" : {
            "title" : "Implicit feature snap",
            "type" : "boolean",
            "description" : "<p>Activating this makes the snapping algorithm detecting geometrical features by sampling the surface. This might be time-consuming. The other option is to create a feature refinement which also enables feature snapping.</p>",
            "default" : true
          },
          "explicitFeatureSnap" : {
            "title" : "Explicit feature snap",
            "type" : "boolean",
            "description" : "<p>Use the explicitly given feature refinements for feature snapping. An explicit feature refinement can be added under 'Mesh refinement'. Specifying a feature refinement results in sharp mesh edges even with a refinement level of zero.</p>",
            "default" : false
          },
          "detectFeaturesBetweenMultipleSurfaces" : {
            "title" : "Detect features between multiple surfaces",
            "type" : "boolean",
            "description" : "<p>Also detect features between multiple surfaces. This is relevant when you want to create a mesh with multiple regions - used for example in the conjugate heat transfer solver. Needs 'Use feature refinement for snapping' turned on!</p>",
            "default" : true
          }
        },
        "additionalProperties" : false
      },
      "LayerAddingControls" : {
        "type" : "object",
        "properties" : {
          "relativeSize" : {
            "title" : "Layer size",
            "type" : "boolean",
            "description" : "<p>If turned on, the length parameters for layer refinements (e.g. 'Thickness of the final layer', 'Minimum overall layer thickness') are multiplied by the local cell size outside that layer. Else, they are used as absolute lengths.</p>",
            "default" : true
          },
          "maxCancelledLayersNearSharpFeatures" : {
            "title" : "Max cancelled layers near sharp features",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>If the algorithm faces difficulty generating layers, this is the maximum number of layers that are NOT generated in that region. Such cases might occur near sharp features. Set to 0 to force layer generation for all cases.</p>",
            "default" : 0
          },
          "featureAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "slipFeatureAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "relaxIterations" : {
            "title" : "Relax iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Specify the maximum number of relaxation iterations for the snapping process for layers.</p>",
            "default" : 8
          },
          "surfaceNormalsMaxSmoothingIterations" : {
            "title" : "Surface normals max smoothing iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Specify the maximum number of smoothing iterations for the surface normals.</p>",
            "default" : 2
          },
          "internalMeshMaxSmoothingIterations" : {
            "title" : "Internal mesh max smoothing iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Specify the number of smoothing iterations for the interior mesh movement. This movement occurs in order to make space for layers.</p>",
            "default" : 5
          },
          "layerThicknessMaxSmoothingIterations" : {
            "title" : "Layer thickness max smoothing iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>This specifies the number of iterations for smoothing of the overall layer thickness over different surface patches.</p>",
            "default" : 10
          },
          "maxFaceThicknessRatio" : {
            "title" : "Max face thickness ratio",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Specify the maximum allowable face aspect ratio beyond which layers will not be added.</p>",
            "default" : 0.5
          },
          "maxThicknessToMedialRatio" : {
            "title" : "Max thickness to medial ratio",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The medial length is a measure of the aspect ratio for a non-quadrilateral face. This parameter prevents layer addition for non-quad faces that are highly anisotropic.</p>",
            "default" : 0.3
          },
          "minMedianAxisAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "bufferCellsNoExtrude" : {
            "title" : "Buffer cells between refinement levels",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>This parameter specifies the number of buffer cells to be extruded at cell-faces where layers terminate. Set to < 0 to disable.</p>",
            "default" : 0
          },
          "layerAdditionMaxIterations" : {
            "title" : "Layer addition max iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Specify the overall layer addition iteration number. The algorithm will abort definitely as soon as this number is reached. In this case, the mesh might be illegal.</p>",
            "default" : 50
          },
          "maxIterationsWithStrictQualityControls" : {
            "title" : "Max iterations with strict quality controls",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>This parameter specifies the maximum number of layer iterations that are done with the mesh quality controls. On exceeding these, the algorithm switches to less strict controls specified in the 'relaxed' category.</p>",
            "default" : 20
          }
        },
        "additionalProperties" : false
      },
      "MeshQualityControls" : {
        "type" : "object",
        "properties" : {
          "maxNonOrthogonality" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "maxBoundarySkewness" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "maxInternalSkewness" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "maxConcaveness" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "minVolume" : {
            "$ref" : "#/components/schemas/Dimensional_Volume"
          },
          "minTetQuality" : {
            "title" : "Min tet quality",
            "type" : "number",
            "description" : "<p>Define a minimum tetrahedron quality for cells (see documentation). Choose a low negative number to disable this check, e.g. -1e30.</p>",
            "default" : -1000000000000000000000000000000
          },
          "minFaceArea" : {
            "$ref" : "#/components/schemas/Dimensional_Area"
          },
          "minFaceTwist" : {
            "title" : "Min face twist",
            "type" : "number",
            "description" : "<p>Define the minimum cosine of face twist allowed (see documentation). Set to a value smaller than -1 to disable. The value results from the dot product of the face normal and the face centre triangles normal.</p>",
            "default" : 0.01
          },
          "minDeterminant" : {
            "title" : "Min determinant",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the minimum normalised cell determinant. Choose a value between 0 and 1. Hex corresponds to 1.</p>",
            "default" : 0.001
          },
          "minFaceWeight" : {
            "title" : "Min face weight",
            "maximum" : 0.5,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The face weight specifies the distribution of a face's contribution to its two neighbouring cells. A very small face weight would mean that the neighbouring cells are disproportionately different in size. Choose a value between 0 and 0.5. 0.5 refers to a face with neighbouring cells of the same size.</p>",
            "default" : 0.02
          },
          "minVolumeRatio" : {
            "title" : "Min volume ratio",
            "type" : "number",
            "description" : "<p>This parameter specifies the minimum allowed volume ratio between two adjacent cells. Choose a value between 0 and 1. 1 means that the neighbouring cells have the same volume.</p>",
            "default" : 0.01
          },
          "minTriangleTwist" : {
            "title" : "Min triangle twist",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "type" : "number",
            "description" : "<p>Same as Min Face Twist, but for adjacent triangular faces (see documentation). Choose a value below -1 to disable this feature.</p>",
            "default" : -1
          },
          "errorDistributionIterations" : {
            "title" : "Error distribution iterations",
            "type" : "integer",
            "description" : "<p>Define the number of error distribution iterations.</p>",
            "default" : 4
          },
          "errorReduction" : {
            "title" : "Error reduction",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This parameter specifies how much the displacement is scaled at error locations.</p>",
            "default" : 0.75
          },
          "relaxedMaxNonOrthogonality" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "mergeTolerance" : {
            "title" : "Merge tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This parameters specifies the accuracy of face merging as a fraction of the initial bounding box.</p>",
            "default" : 1.0E-6
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Volume" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m³", "in³" ]
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Area" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m²", "in²" ]
          }
        },
        "additionalProperties" : false
      },
      "BoundingBoxLayerAddition" : {
        "title" : "Bounding box layer addition",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option enables layer refinement on the faces of the bounding box. This refinement is useful if the bounding box itself provides walls of the flow domain. It is often used for external aerodynamic cases where the floor is considered as a wall and hence the mesh should be refined with layers in the vicinity.\n\nSchema name: BoundingBoxLayerAddition",
            "default" : "BOUNDING_BOX_LAYER_ADDITION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Bounding box layer addition"
          },
          "face" : {
            "title" : "Face",
            "type" : "string",
            "description" : "This option selects the face of the bounding box on which layers will be added. A face is selected by its normal (denoted by the respective coordinate system axis) and its position (denoted by min or max).",
            "default" : "XMIN",
            "enum" : [ "XMIN", "XMAX", "YMIN", "YMAX", "ZMIN", "ZMAX" ]
          },
          "layers" : {
            "title" : "Layers",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "The number of <b>layers</b> defines how many boundary layers should be created.",
            "default" : 5
          },
          "expansionRatio" : {
            "title" : "Expansion ratio",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The <b>Expansion ratio</b> determines how the boundary layers grow in thickness from the wall to the internal mesh. The larger the ratio, the larger each cell layer will be in comparison to the neighbouring layer closer to the wall.</p><p><img src=\"/spec/resources/help/imgs/shm_bl_expansion-ratio.png\" class=\"helpPopupImage\"/> The figure shows a ratio of 1.3.</p>",
            "default" : 1.3
          },
          "minThickness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "finalThickness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false,
        "description" : "This option enables layer refinement on the faces of the bounding box. This refinement is useful if the bounding box itself provides walls of the flow domain. It is often used for external aerodynamic cases where the floor is considered as a wall and hence the mesh should be refined with layers in the vicinity."
      },
      "FeatureRefinement" : {
        "title" : "Feature refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#feature-refinement' target='_blank'><b>feature refinement</b></a> can be used to refine the geometry’s feature edges. All edges whose adjacent surface normals form an angle of less than 150° will be refined.\n\nSchema name: FeatureRefinement",
            "default" : "FEATURE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Feature refinement"
          },
          "includedAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "distanceRefinementLevels" : {
            "title" : "Distance refinement levels",
            "type" : "array",
            "description" : "<p>This dynamic table allows you to add refinements to the mesh associated with the features (e.g. edges) in a specific distance to the features. Therefore specify the distance in the left box and the associated refinement level on the right (the higher, the finer). The pair (0,0) would mean that a refinement with level 0 would be introduced directly at the features of the mesh.</p>",
            "items" : {
              "$ref" : "#/components/schemas/RefinementLevel"
            },
            "default" : [ {
              "distance" : {
                "value" : 1,
                "unit" : "m"
              },
              "level" : 1
            } ]
          }
        },
        "additionalProperties" : false,
        "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#feature-refinement' target='_blank'><b>feature refinement</b></a> can be used to refine the geometry’s feature edges. All edges whose adjacent surface normals form an angle of less than 150° will be refined."
      },
      "RefinementLevel" : {
        "type" : "object",
        "properties" : {
          "distance" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "level" : {
            "title" : "Level",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "LayerAddition" : {
        "title" : "Inflate boundary layer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#layers-refinement' target='_blank'><b>Inflated boundary layers</b></a> are used to resolve the boundary layer near walls (no-slip) which are in contact with the fluid. Using boundary layers is generally recommended for turbulent simulations.\n\nSchema name: LayerAddition",
            "default" : "LAYER_ADDITION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Inflate boundary layer"
          },
          "layers" : {
            "title" : "Layers",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "The number of <b>layers</b> defines how many boundary layers should be created.",
            "default" : 5
          },
          "expansionRatio" : {
            "title" : "Expansion ratio",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The <b>Expansion ratio</b> determines how the boundary layers grow in thickness from the wall to the internal mesh. The larger the ratio, the larger each cell layer will be in comparison to the neighbouring layer closer to the wall.</p><p><img src=\"/spec/resources/help/imgs/shm_bl_expansion-ratio.png\" class=\"helpPopupImage\"/> The figure shows a ratio of 1.3.</p>",
            "default" : 1.3
          },
          "minThickness" : {
            "title" : "Min thickness",
            "maximum" : 2.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This is the overall minimum thickness of all added layers. If for any case the overall layer thickness is smaller than this value, the layer addition process is stopped and no layers are added. In case the 'Use relative size for layers?' option in the global settings is set to 'true', this thickness is relative to the undistorted size of the cells in the internal mesh directly next to the boundary layer.</p>",
            "default" : 0.01
          },
          "finalLayerThickness" : {
            "title" : "Final layer thickness",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Specify the desired final layer thickness farthest away from the wall on which the boundary layer is grown. If the 'Layer Size' toggle in the hex-parametric global settings is turned on, this thickness is relative to the undistorted size of the cells in the internal mesh directly next to the boundary layer.</p>",
            "default" : 0.3
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#layers-refinement' target='_blank'><b>Inflated boundary layers</b></a> are used to resolve the boundary layer near walls (no-slip) which are in contact with the fluid. Using boundary layers is generally recommended for turbulent simulations."
      },
      "RegionRefinementWithLevels" : {
        "title" : "Region refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#region-refinement' target='_blank'><b>region refinement</b></a> can be used to refine the mesh in a given area. The refinement area needs to be defined either via a geometry primitive or an existing solid (Hex-dominant only).\n\nSchema name: RegionRefinementWithLevels",
            "default" : "REGION_LEVELS"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Region refinement"
          },
          "refinement" : {
            "$ref" : "#/components/schemas/OneOf_RegionRefinementWithLevelsRefinement"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#region-refinement' target='_blank'><b>region refinement</b></a> can be used to refine the mesh in a given area. The refinement area needs to be defined either via a geometry primitive or an existing solid (Hex-dominant only)."
      },
      "InsideRegionRefinementWithLevels" : {
        "title" : "Inside",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InsideRegionRefinementWithLevels",
            "default" : "INSIDE"
          },
          "level" : {
            "title" : "Level",
            "type" : "integer",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "DistanceRegionRefinementWithLevels" : {
        "title" : "Distance",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DistanceRegionRefinementWithLevels",
            "default" : "DISTANCE"
          },
          "distanceRefinementLevels" : {
            "title" : "Distance refinement levels",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RefinementLevel"
            },
            "default" : [ {
              "distance" : {
                "value" : 1,
                "unit" : "m"
              },
              "level" : 1
            } ]
          }
        },
        "additionalProperties" : false
      },
      "OutsideRegionRefinementWithLevels" : {
        "title" : "Outside",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OutsideRegionRefinementWithLevels",
            "default" : "OUTSIDE"
          },
          "level" : {
            "title" : "Level",
            "type" : "integer",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "SurfaceRefinement" : {
        "title" : "Surface refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#surface-refinement' target='_blank'><b>surface refinement</b></a> can be used to refine the mesh near the surfaces of assigned faces and/or solids. A surface refinement can also be used to create a <u>cell zone</u>.\n\nSchema name: SurfaceRefinement",
            "default" : "SURFACE_V3"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Surface refinement"
          },
          "minLevel" : {
            "title" : "Min level",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Specify surface-wise the minimum refinement level for this surface.</p>",
            "default" : 1
          },
          "maxLevel" : {
            "title" : "Max level",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Specify surface-wise the maximum refinement level for this surface.</p>",
            "default" : 2
          },
          "cellZone" : {
            "$ref" : "#/components/schemas/OneOf_SurfaceRefinementCellZone"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "A <a href='https://www.simscale.com/docs/simulation-setup/meshing/hex-dominant/#surface-refinement' target='_blank'><b>surface refinement</b></a> can be used to refine the mesh near the surfaces of assigned faces and/or solids. A surface refinement can also be used to create a <u>cell zone</u>."
      },
      "DebugMeshSizingSimmetrix" : {
        "title" : "Debug",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DebugMeshSizingSimmetrix",
            "default" : "DEBUG"
          },
          "maximumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "minimumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "chordalError" : {
            "title" : "Chordal error",
            "maximum" : 0.5,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.4
          },
          "minCurvRef" : {
            "title" : "Min curv ref",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "gradationRate" : {
            "title" : "Gradation rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.66
          },
          "proxRefFactor" : {
            "title" : "Prox ref factor",
            "maximum" : 4.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "minProxSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "smallFeatureTol" : {
            "title" : "Small feature tol",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "layerAdjustmentBehaviour" : {
            "title" : "Layer adjustment behaviour",
            "type" : "string",
            "default" : "SHRINKING",
            "enum" : [ "SHRINKING", "TRIMMING" ]
          },
          "layerHeightGradationRate" : {
            "title" : "Layer height gradation rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.66
          },
          "surfSkewness" : {
            "title" : "Surf skewness",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.7
          },
          "volLenRatio" : {
            "title" : "Vol len ratio",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.15
          }
        },
        "additionalProperties" : false
      },
      "PolygridMeshing" : {
        "title" : "Cartesian",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PolygridMeshing",
            "default" : "POLYGRID_MESHING"
          },
          "sizing" : {
            "$ref" : "#/components/schemas/OneOf_PolygridMeshingSizing"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_PolygridMeshingRefinements"
            }
          },
          "numberOfBufferCells" : {
            "title" : "Number of buffer cells",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Target number of cells for every cell size level. Higher number of buffer cells ensure smoother cell size transitions, which results in better accuracy but bigger computation costs. On the other hand, lower number of buffer cells will result in smaller computation costs but worse accuracy. <img src=\"/spec/resources/help/imgs/buffer_cells.png\" class=\"helpPopupImage\"/>",
            "default" : 4.0
          },
          "numOfProcessors" : {
            "title" : "Number of processors",
            "type" : "integer",
            "description" : "<p>Selecting more processor cores might speed up the meshing process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/meshing/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "format" : "int64",
            "default" : -1,
            "enum" : [ -1, 4, 8, 16, 32, 64, 96 ]
          },
          "maxMeshingRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticPolygridMeshSizing" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticPolygridMeshSizing",
            "default" : "AUTOMATIC_POLYGRID_MESH_SIZING"
          },
          "fineness" : {
            "title" : "Fineness",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells.</p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results.</p>",
            "default" : 5.0
          },
          "physicsBasedMeshingIBM" : {
            "title" : "Physics-based meshing",
            "type" : "boolean",
            "description" : "<b>Physics-based meshing</b> takes setup information into account to size the immersed mesh accordingly. Users can expect automatic refinements applied to the following: </p><ul><li><p><b>Boundary faces</b>: All of those which belong to a boundary condition.</p></li> <li><p><b>Advanced concepts</b>: Power and momentum sources, porous regions and thermal resistance networks.</p></li></ul>",
            "default" : true
          }
        },
        "additionalProperties" : false
      },
      "ManualPolygridMeshSizing" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualPolygridMeshSizing",
            "default" : "MANUAL_POLYGRID_MESH_SIZING"
          },
          "maximumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "minimumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "physicsBasedMeshingIBM" : {
            "title" : "Physics-based meshing",
            "type" : "boolean",
            "description" : "<b>Physics-based meshing</b> takes setup information into account to size the immersed mesh accordingly. Users can expect automatic refinements applied to the following: </p><ul><li><p><b>Boundary faces</b>: All of those which belong to a boundary condition.</p></li> <li><p><b>Advanced concepts</b>: Power and momentum sources, porous regions and thermal resistance networks.</p></li></ul>",
            "default" : true
          }
        },
        "additionalProperties" : false
      },
      "CustomPolygridMeshSizing" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomPolygridMeshSizing",
            "default" : "CUSTOM_POLYGRID_MESH_SIZING"
          },
          "numCellsPerDirection" : {
            "$ref" : "#/components/schemas/NumberOfCellsPerDirection"
          },
          "numRefinementLevels" : {
            "title" : "Number of refinement levels",
            "maximum" : 7,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Number of refinement levels to refine in the vicinity of all CAD surfaces.",
            "default" : 3,
            "x-divisibleBy" : 1
          },
          "physicsBasedMeshingIBM" : {
            "title" : "Physics-based meshing",
            "type" : "boolean",
            "description" : "<b>Physics-based meshing</b> takes setup information into account to size the immersed mesh accordingly. Users can expect automatic refinements applied to the following: </p><ul><li><p><b>Boundary faces</b>: All of those which belong to a boundary condition.</p></li> <li><p><b>Advanced concepts</b>: Power and momentum sources, porous regions and thermal resistance networks.</p></li></ul>",
            "default" : true
          }
        },
        "additionalProperties" : false
      },
      "NumberOfCellsPerDirection" : {
        "title" : "Number of cells",
        "type" : "object",
        "properties" : {
          "x" : {
            "title" : "X",
            "maximum" : 600,
            "exclusiveMaximum" : false,
            "minimum" : 10,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 40
          },
          "y" : {
            "title" : "Y",
            "maximum" : 600,
            "exclusiveMaximum" : false,
            "minimum" : 10,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 40
          },
          "z" : {
            "title" : "Z",
            "maximum" : 600,
            "exclusiveMaximum" : false,
            "minimum" : 10,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 40
          }
        },
        "additionalProperties" : false
      },
      "RegionRefinementEBM" : {
        "title" : "Region refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RegionRefinementEBM",
            "default" : "REGION_REFINEMENT_EBM"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "refinement" : {
            "$ref" : "#/components/schemas/OneOf_RegionRefinementEBMRefinement"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "LocalElementSizeEBM" : {
        "title" : "Local element size",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LocalElementSizeEBM",
            "default" : "LOCAL_SIZING_EBM"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Local element size"
          },
          "maxElementSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "ManualCfMeshSizing" : {
        "title" : "Manual mesh sizing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualCfMeshSizing",
            "default" : "MANUAL_CF_MESH_SIZING"
          },
          "maximumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "minimumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "RegionRefinementCfMesh" : {
        "title" : "Volume custom sizing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<b>Volume custom sizing</b> refines all cells inside the assigned geometry primitives (cartesian box, cylinder or sphere) or solid CAD bodies to the given maximum edge length. Use it to refine regions of interest away from surfaces, for example wakes or jets. The refinement always applies to the inside of the assigned primitives and bodies. An assigned body must also be the meshed region itself (with physics-based meshing, the volume with the material assignment), a cell zone or, with physics-based meshing, a volume assigned to an advanced concept such as a rotating zone or porous medium.\n\nSchema name: RegionRefinementCfMesh",
            "default" : "REGION_REFINEMENT_CF_MESH"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "refinement" : {
            "$ref" : "#/components/schemas/InsideRegionRefinementWithLength"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<b>Volume custom sizing</b> refines all cells inside the assigned geometry primitives (cartesian box, cylinder or sphere) or solid CAD bodies to the given maximum edge length. Use it to refine regions of interest away from surfaces, for example wakes or jets. The refinement always applies to the inside of the assigned primitives and bodies. An assigned body must also be the meshed region itself (with physics-based meshing, the volume with the material assignment), a cell zone or, with physics-based meshing, a volume assigned to an advanced concept such as a rotating zone or porous medium."
      },
      "LocalElementSizeCfMesh" : {
        "title" : "Surface custom sizing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<b>Surface custom sizing</b> refines the mesh on the selected faces. The <i>maximum edge length</i> is the target cell size on the faces, the <i>minimum element size</i> is the lower bound for the automatic refinement of curvature and small features on them. Use it for faces of interest, for example inlets, outlets or walls with small details.\n\nSchema name: LocalElementSizeCfMesh",
            "default" : "LOCAL_SIZING_CF_MESH"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Local element size"
          },
          "maxElementSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<b>Surface custom sizing</b> refines the mesh on the selected faces. The <i>maximum edge length</i> is the target cell size on the faces, the <i>minimum element size</i> is the lower bound for the automatic refinement of curvature and small features on them. Use it for faces of interest, for example inlets, outlets or walls with small details."
      },
      "OneOf_AutomaticLayerOnLayerType" : {
        "title" : "Layer gradation control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FRACTIONAL_HEIGHT_1" : "#/components/schemas/FractionalHeight1",
            "FRACTIONAL_HEIGHT_2" : "#/components/schemas/FractionalHeight2",
            "GEOMETRIC_GROWTH" : "#/components/schemas/GeometricGrowth",
            "FIRST_LAYER_GROWTH" : "#/components/schemas/FirstLayerGrowth"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FractionalHeight1"
        }, {
          "$ref" : "#/components/schemas/FractionalHeight2"
        }, {
          "$ref" : "#/components/schemas/GeometricGrowth"
        }, {
          "$ref" : "#/components/schemas/FirstLayerGrowth"
        } ],
        "x-conditionalHelp" : [ {
          "when" : [ "type == CF_MESH_MESHING" ]
        }, {
          "when" : [ "type != CF_MESH_MESHING" ]
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == CF_MESH_MESHING" ],
          "default" : {
            "type" : "FIRST_LAYER_GROWTH"
          }
        }, {
          "when" : [ "type != CF_MESH_MESHING" ],
          "default" : {
            "type" : "FRACTIONAL_HEIGHT_2"
          }
        } ]
      },
      "OneOf_RegionRefinementWithLengthRefinement" : {
        "title" : "Refinement mode",
        "description" : "<p>Choose between the following refinement modes:</p><ul><li><b>Inside:</b> Refines all volume mesh cells inside the selected volumes up to the specified cell edge length.</li><li><b>Outside:</b> Refines the mesh cells outside of the specified area up to the specified cell edge length.</li><li><b>Distance:</b> Refines mesh cells according to the distance to the surface of the assigned volume(s). The <i>Distance</i> mode can accommodate different refinement levels at multiple distances.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "INSIDE" : "#/components/schemas/InsideRegionRefinementWithLength",
            "DISTANCE" : "#/components/schemas/DistanceRegionRefinementWithLength",
            "OUTSIDE" : "#/components/schemas/OutsideRegionRefinementWithLength"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/InsideRegionRefinementWithLength"
        }, {
          "$ref" : "#/components/schemas/DistanceRegionRefinementWithLength"
        }, {
          "$ref" : "#/components/schemas/OutsideRegionRefinementWithLength"
        } ],
        "default" : {
          "type" : "INSIDE"
        }
      },
      "OneOf_RegionRefinementWithLengthCurvature" : {
        "title" : "Curvature",
        "description" : "The <b>Curvature</b> setting allows the user to specify the mesh refinement on curved features. By default, this is <b>Automatic</b>. Alternatively, the user can specify the curvature in terms of number of mesh nodes in a circle using <b>Relative</b>. Curvature refinement is <b>not</b> supported for Geometry primitive region refinement.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_CURVATURE" : "#/components/schemas/AutomaticCurvature",
            "RELATIVE_CURVATURE" : "#/components/schemas/RelativeCurvature"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticCurvature"
        }, {
          "$ref" : "#/components/schemas/RelativeCurvature"
        } ],
        "default" : {
          "type" : "AUTOMATIC_CURVATURE"
        },
        "x-showWhen" : [ "type in [SIMMETRIX_MESHING_FLUID_V16,SIMMETRIX_MESHING_SOLID,SIMMETRIX_MESHING_ELECTROMAGNETICS]" ]
      },
      "OneOf_SurfaceCustomSizingSizing" : {
        "title" : "Sizing",
        "description" : "<p>Define how to control the overall <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#sizing-and-fineness' target='_blank'><b>mesh sizing</b></a>:</p><ul> <li><p><b>Automatic:</b> Element sizing is controlled by <b>automatic fineness levels</b> that take the geometrical properties into account.</p></li> <li><p><b>Manual:</b> Element sizing is controlled by <b>default and minimum size</b>.</p></li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_V9" : "#/components/schemas/AutomaticMeshSizingSimmetrix",
            "CUSTOM" : "#/components/schemas/CustomMeshSizingSimmetrix"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshSizingSimmetrix"
        }, {
          "$ref" : "#/components/schemas/CustomMeshSizingSimmetrix"
        } ],
        "default" : {
          "type" : "AUTOMATIC_V9"
        }
      },
      "OneOf_SurfaceRefinementCellZone" : {
        "title" : "Cell zone",
        "description" : "<p>You can create cell zones in your mesh by assigning this option to one or more of your CAD bodies. They can be later defined as Rotating Zones or Porosity Volumes, among others. Check these options under “Advanced Concepts” in the simulation tree.<p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "WITHOUT_CELL_ZONE" : "#/components/schemas/WithoutCellZone",
            "WITH_CELL_ZONE_V11" : "#/components/schemas/WithCellZone"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/WithoutCellZone"
        }, {
          "$ref" : "#/components/schemas/WithCellZone"
        } ]
      },
      "OneOf_AutomaticMeshSizingSimmetrixCurvature" : {
        "title" : "Curvature",
        "description" : "The <b>Curvature</b> setting allows the user to specify the mesh refinement on curved features. By default, this is <b>Automatic</b>. Alternatively, the user can specify the curvature in terms of number of mesh nodes in a circle using <b>Relative</b>. Curvature refinement is <b>not</b> supported for Geometry primitive region refinement.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_CURVATURE" : "#/components/schemas/AutomaticCurvature",
            "RELATIVE_CURVATURE" : "#/components/schemas/RelativeCurvature"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticCurvature"
        }, {
          "$ref" : "#/components/schemas/RelativeCurvature"
        } ],
        "default" : {
          "type" : "AUTOMATIC_CURVATURE"
        }
      },
      "OneOf_SimmetrixMeshingSolidSizing" : {
        "title" : "Sizing",
        "description" : "<p>Define how to control the overall <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#sizing-and-fineness' target='_blank'><b>mesh sizing</b></a>:</p><ul> <li><p><b>Automatic:</b> Element sizing is controlled by <b>automatic fineness levels</b> that take the geometrical properties into account.</p></li> <li><p><b>Manual:</b> Element sizing is controlled by <b>default and minimum size</b>.</p></li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_V9" : "#/components/schemas/AutomaticMeshSizingSimmetrix",
            "MANUAL" : "#/components/schemas/ManualMeshSizingSimmetrix"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshSizingSimmetrix"
        }, {
          "$ref" : "#/components/schemas/ManualMeshSizingSimmetrix"
        } ],
        "default" : {
          "type" : "AUTOMATIC_V9"
        }
      },
      "OneOf_SimmetrixMeshingSolidRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_LENGTH" : "#/components/schemas/RegionRefinementWithLength",
            "SURFACE_CUSTOM_SIZING" : "#/components/schemas/SurfaceCustomSizing",
            "VOLUME_CUSTOM_SIZING" : "#/components/schemas/VolumeCustomSizing",
            "SIMMETRIX_LOCAL_SIZING_V10" : "#/components/schemas/SimmetrixLocalSizingRefinement",
            "SIMMETRIX_BOUNDARY_LAYER_V13" : "#/components/schemas/SimmetrixBoundaryLayerRefinement",
            "SIMMETRIX_SWEPT_MESH_REFINEMENT" : "#/components/schemas/SimmetrixSweptMeshRefinement",
            "SIMMETRIX_THIN_SECTION_MESH_REFINEMENT" : "#/components/schemas/SimmetrixThinSectionMeshRefinement",
            "SIMMETRIX_EXTRUSION_MESH_REFINEMENT" : "#/components/schemas/SimmetrixExtrusionMeshRefinement"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RegionRefinementWithLength"
        }, {
          "$ref" : "#/components/schemas/SurfaceCustomSizing"
        }, {
          "$ref" : "#/components/schemas/VolumeCustomSizing"
        }, {
          "$ref" : "#/components/schemas/SimmetrixLocalSizingRefinement"
        }, {
          "$ref" : "#/components/schemas/SimmetrixBoundaryLayerRefinement"
        }, {
          "$ref" : "#/components/schemas/SimmetrixSweptMeshRefinement"
        }, {
          "$ref" : "#/components/schemas/SimmetrixThinSectionMeshRefinement"
        }, {
          "$ref" : "#/components/schemas/SimmetrixExtrusionMeshRefinement"
        } ]
      },
      "OneOf_SimmetrixMeshingSolidAutomaticSweepParameters" : {
        "title" : "Automatic extrusion meshing",
        "description" : "This toggle enables the automatic detection and meshing of sweepable bodies.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_SWEEP_MESHING_ON" : "#/components/schemas/AutomaticSweepOn",
            "AUTOMATIC_SWEEP_MESHING_OFF" : "#/components/schemas/AutomaticSweepOff"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticSweepOn"
        }, {
          "$ref" : "#/components/schemas/AutomaticSweepOff"
        } ],
        "default" : {
          "type" : "AUTOMATIC_SWEEP_MESHING_OFF"
        },
        "x-subtypeBooleanChooser" : {
          "trueOption" : "AUTOMATIC_SWEEP_MESHING_ON",
          "falseOption" : "AUTOMATIC_SWEEP_MESHING_OFF"
        }
      },
      "OneOf_VolumeCustomSizingCustomSizingModes" : {
        "title" : "Sizing mode",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DISTANCE_CUSTOM_SIZING" : "#/components/schemas/DistanceVolumeCustomSizing",
            "INSIDE_CUSTOM_SIZING" : "#/components/schemas/InsideVolumeCustomSizing"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DistanceVolumeCustomSizing"
        }, {
          "$ref" : "#/components/schemas/InsideVolumeCustomSizing"
        } ],
        "default" : {
          "type" : "INSIDE_CUSTOM_SIZING"
        }
      },
      "OneOf_SimmetrixMeshingFluidSizing" : {
        "title" : "Sizing",
        "description" : "<p>Define how to control the overall <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#sizing-and-fineness' target='_blank'><b>mesh sizing</b></a>:</p><ul> <li><p><b>Automatic:</b> Element sizing is controlled by <b>automatic fineness levels</b> that take the geometrical properties into account.</p></li> <li><p><b>Manual:</b> Element sizing is controlled by <b>default and minimum size</b>.</p></li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_V9" : "#/components/schemas/AutomaticMeshSizingSimmetrix",
            "MANUAL" : "#/components/schemas/ManualMeshSizingSimmetrix"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshSizingSimmetrix"
        }, {
          "$ref" : "#/components/schemas/ManualMeshSizingSimmetrix"
        } ],
        "default" : {
          "type" : "AUTOMATIC_V9"
        }
      },
      "OneOf_SimmetrixMeshingFluidRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_LENGTH" : "#/components/schemas/RegionRefinementWithLength",
            "SURFACE_CUSTOM_SIZING" : "#/components/schemas/SurfaceCustomSizing",
            "VOLUME_CUSTOM_SIZING" : "#/components/schemas/VolumeCustomSizing",
            "SIMMETRIX_LOCAL_SIZING_V10" : "#/components/schemas/SimmetrixLocalSizingRefinement",
            "SIMMETRIX_BOUNDARY_LAYER_V13" : "#/components/schemas/SimmetrixBoundaryLayerRefinement",
            "SIMMETRIX_SWEPT_MESH_REFINEMENT" : "#/components/schemas/SimmetrixSweptMeshRefinement",
            "SIMMETRIX_THIN_SECTION_MESH_REFINEMENT" : "#/components/schemas/SimmetrixThinSectionMeshRefinement",
            "SIMMETRIX_EXTRUSION_MESH_REFINEMENT" : "#/components/schemas/SimmetrixExtrusionMeshRefinement"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RegionRefinementWithLength"
        }, {
          "$ref" : "#/components/schemas/SurfaceCustomSizing"
        }, {
          "$ref" : "#/components/schemas/VolumeCustomSizing"
        }, {
          "$ref" : "#/components/schemas/SimmetrixLocalSizingRefinement"
        }, {
          "$ref" : "#/components/schemas/SimmetrixBoundaryLayerRefinement"
        }, {
          "$ref" : "#/components/schemas/SimmetrixSweptMeshRefinement"
        }, {
          "$ref" : "#/components/schemas/SimmetrixThinSectionMeshRefinement"
        }, {
          "$ref" : "#/components/schemas/SimmetrixExtrusionMeshRefinement"
        } ]
      },
      "OneOf_SimmetrixMeshingFluidAutomaticLayerSettings" : {
        "title" : "Automatic boundary layers",
        "description" : "This toggle enables the automatic creation of boundary layers at no-slip walls. When toggled on, the meshing is started together with the simulation run.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_LAYER_ON" : "#/components/schemas/AutomaticLayerOn",
            "AUTOMATIC_LAYER_OFF" : "#/components/schemas/AutomaticLayerOff"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticLayerOn"
        }, {
          "$ref" : "#/components/schemas/AutomaticLayerOff"
        } ],
        "default" : {
          "type" : "AUTOMATIC_LAYER_ON"
        },
        "x-subtypeBooleanChooser" : {
          "trueOption" : "AUTOMATIC_LAYER_ON",
          "falseOption" : "AUTOMATIC_LAYER_OFF"
        }
      },
      "OneOf_SimmetrixMeshingFluidAutomaticSweepParameters" : {
        "title" : "Automatic extrusion meshing",
        "description" : "This toggle enables the automatic detection and meshing of sweepable bodies.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_SWEEP_MESHING_ON" : "#/components/schemas/AutomaticSweepOn",
            "AUTOMATIC_SWEEP_MESHING_OFF" : "#/components/schemas/AutomaticSweepOff"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticSweepOn"
        }, {
          "$ref" : "#/components/schemas/AutomaticSweepOff"
        } ],
        "default" : {
          "type" : "AUTOMATIC_SWEEP_MESHING_OFF"
        },
        "x-subtypeBooleanChooser" : {
          "trueOption" : "AUTOMATIC_SWEEP_MESHING_ON",
          "falseOption" : "AUTOMATIC_SWEEP_MESHING_OFF"
        }
      },
      "OneOf_PolygridMeshingSizing" : {
        "title" : "Sizing",
        "description" : "<p>Define how to control the global mesh sizing:</p><ul> <li><p><b>Automatic:</b> Element sizing is controlled by <b>automatic fineness levels</b> that take the geometrical properties into account.</p></li> <li><p><b>Manual:</b> Element sizing is controlled by <b>maximum and minimum edge length</b>.</p></li>  <li><p><b>Custom:</b> Element sizing is controlled by the specified <b>number of cells in the three spatial directions</b> and the <b>number refinement levels</b> applied on the surfaces.</p></li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_POLYGRID_MESH_SIZING" : "#/components/schemas/AutomaticPolygridMeshSizing",
            "MANUAL_POLYGRID_MESH_SIZING" : "#/components/schemas/ManualPolygridMeshSizing",
            "CUSTOM_POLYGRID_MESH_SIZING" : "#/components/schemas/CustomPolygridMeshSizing"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticPolygridMeshSizing"
        }, {
          "$ref" : "#/components/schemas/ManualPolygridMeshSizing"
        }, {
          "$ref" : "#/components/schemas/CustomPolygridMeshSizing"
        } ],
        "default" : {
          "type" : "AUTOMATIC_POLYGRID_MESH_SIZING"
        }
      },
      "OneOf_PolygridMeshingRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_REFINEMENT_EBM" : "#/components/schemas/RegionRefinementEBM",
            "LOCAL_SIZING_EBM" : "#/components/schemas/LocalElementSizeEBM"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RegionRefinementEBM"
        }, {
          "$ref" : "#/components/schemas/LocalElementSizeEBM"
        } ]
      },
      "OneOf_SimmetrixMeshingElectromagneticsSizing" : {
        "title" : "Sizing",
        "description" : "<p>Define how to control the overall <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#sizing-and-fineness' target='_blank'><b>mesh sizing</b></a>:</p><ul> <li><p><b>Automatic:</b> Element sizing is controlled by <b>automatic fineness levels</b> that take the geometrical properties into account.</p></li> <li><p><b>Manual:</b> Element sizing is controlled by <b>default and minimum size</b>.</p></li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_V9" : "#/components/schemas/AutomaticMeshSizingSimmetrix",
            "MANUAL" : "#/components/schemas/ManualMeshSizingSimmetrix"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshSizingSimmetrix"
        }, {
          "$ref" : "#/components/schemas/ManualMeshSizingSimmetrix"
        } ],
        "default" : {
          "type" : "AUTOMATIC_V9"
        }
      },
      "OneOf_SimmetrixMeshingElectromagneticsRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_LENGTH" : "#/components/schemas/RegionRefinementWithLength",
            "SURFACE_CUSTOM_SIZING" : "#/components/schemas/SurfaceCustomSizing",
            "VOLUME_CUSTOM_SIZING" : "#/components/schemas/VolumeCustomSizing",
            "SIMMETRIX_LOCAL_SIZING_V10" : "#/components/schemas/SimmetrixLocalSizingRefinement"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RegionRefinementWithLength"
        }, {
          "$ref" : "#/components/schemas/SurfaceCustomSizing"
        }, {
          "$ref" : "#/components/schemas/VolumeCustomSizing"
        }, {
          "$ref" : "#/components/schemas/SimmetrixLocalSizingRefinement"
        } ]
      },
      "OneOf_SimmetrixExtrusionMeshRefinementSizingType" : {
        "title" : "Sweep sizing type",
        "description" : "<b>Sweep sizing type</b> allows you to specify either the number of elements or the element thickness along the direction of the sweep. The actual absolute thickness will match the desired value as close as possible, given the length of the sweep region as a constraint.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SWEEP_MESHING_ABSOLUTE_SIZE" : "#/components/schemas/SweepMeshingAbsoluteSize",
            "SWEEP_MESHING_NUMBER_OF_ELEMENTS" : "#/components/schemas/SweepMeshingNumberOfElements"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SweepMeshingAbsoluteSize"
        }, {
          "$ref" : "#/components/schemas/SweepMeshingNumberOfElements"
        } ],
        "default" : {
          "type" : "SWEEP_MESHING_ABSOLUTE_SIZE"
        }
      },
      "OneOf_SimmetrixBoundaryLayerRefinementLayerType" : {
        "title" : "Layer gradation control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FRACTIONAL_HEIGHT_1" : "#/components/schemas/FractionalHeight1",
            "FRACTIONAL_HEIGHT_2" : "#/components/schemas/FractionalHeight2",
            "GEOMETRIC_GROWTH" : "#/components/schemas/GeometricGrowth",
            "FIRST_LAYER_GROWTH" : "#/components/schemas/FirstLayerGrowth"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FractionalHeight1"
        }, {
          "$ref" : "#/components/schemas/FractionalHeight2"
        }, {
          "$ref" : "#/components/schemas/GeometricGrowth"
        }, {
          "$ref" : "#/components/schemas/FirstLayerGrowth"
        } ],
        "default" : {
          "type" : "FRACTIONAL_HEIGHT_2"
        },
        "x-conditionalHelp" : [ {
          "when" : [ "type == CF_MESH_MESHING" ]
        }, {
          "when" : [ "type != CF_MESH_MESHING" ]
        } ]
      },
      "OneOf_SimmetrixSweptMeshRefinementSizingType" : {
        "title" : "Sweep sizing type",
        "description" : "<b>Sweep sizing type</b> allows you to specify either the number of elements or the element thickness along the direction of the sweep. The actual absolute thickness will match the desired value as close as possible, given the length of the sweep region as a constraint.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SWEEP_MESHING_ABSOLUTE_SIZE" : "#/components/schemas/SweepMeshingAbsoluteSize",
            "SWEEP_MESHING_NUMBER_OF_ELEMENTS" : "#/components/schemas/SweepMeshingNumberOfElements"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SweepMeshingAbsoluteSize"
        }, {
          "$ref" : "#/components/schemas/SweepMeshingNumberOfElements"
        } ],
        "default" : {
          "type" : "SWEEP_MESHING_ABSOLUTE_SIZE"
        }
      },
      "OneOf_InsideVolumeCustomSizingSizing" : {
        "title" : "Sizing",
        "description" : "<p>Define how to control the overall <a href='https://www.simscale.com/docs/simulation-setup/meshing/standard/#sizing-and-fineness' target='_blank'><b>mesh sizing</b></a>:</p><ul> <li><p><b>Automatic:</b> Element sizing is controlled by <b>automatic fineness levels</b> that take the geometrical properties into account.</p></li> <li><p><b>Manual:</b> Element sizing is controlled by <b>default and minimum size</b>.</p></li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_V9" : "#/components/schemas/AutomaticMeshSizingSimmetrix",
            "CUSTOM" : "#/components/schemas/CustomMeshSizingSimmetrix"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshSizingSimmetrix"
        }, {
          "$ref" : "#/components/schemas/CustomMeshSizingSimmetrix"
        } ],
        "default" : {
          "type" : "AUTOMATIC_V9"
        }
      },
      "OneOf_CustomMeshSizingSimmetrixCurvature" : {
        "title" : "Curvature",
        "description" : "The <b>Curvature</b> setting allows the user to specify the mesh refinement on curved features. By default, this is <b>Automatic</b>. Alternatively, the user can specify the curvature in terms of number of mesh nodes in a circle using <b>Relative</b>. Curvature refinement is <b>not</b> supported for Geometry primitive region refinement.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_CURVATURE" : "#/components/schemas/AutomaticCurvature",
            "RELATIVE_CURVATURE" : "#/components/schemas/RelativeCurvature"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticCurvature"
        }, {
          "$ref" : "#/components/schemas/RelativeCurvature"
        } ],
        "default" : {
          "type" : "AUTOMATIC_CURVATURE"
        }
      },
      "OneOf_RegionRefinementEBMRefinement" : {
        "title" : "Refinement mode",
        "description" : "<p>Choose between the following refinement modes:</p><ul><li><b>Inside:</b> Refines all the mesh cells inside the selected volumes up to the specified cell edge length.</li><li><b>Distance:</b>Refines the mesh cells according to the distance to the surface of the assigned volume(s). The <i>Distance</i> mode can accommodate different refinement levels at multiple distances.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "INSIDE" : "#/components/schemas/InsideRegionRefinementWithLength",
            "DISTANCE" : "#/components/schemas/DistanceRegionRefinementWithLength"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/InsideRegionRefinementWithLength"
        }, {
          "$ref" : "#/components/schemas/DistanceRegionRefinementWithLength"
        } ],
        "default" : {
          "type" : "INSIDE"
        }
      },
      "OneOf_ManualMeshSizingGrading" : {
        "title" : "Grading",
        "description" : "<p>The <b><a href='https://www.simscale.com/docs/simulation-setup/meshing/tet-dominant/#grading' target='_blank'>mesh grading</a></b> specifies how fine details of the geometry are resolved and also influences the quality of the resulting elements.</p><ul><li><p>If you select the <b>automatic</b> grading, you can specify how fine your mesh should be (ranging from <i>1 - very coarse</i> to <i>5 - very fine</i>) and all additional parameters will be set automatically.</li><li><p>For full control over the underlying parameters <i>number of segements per edge</i>, <i>number of segements per radius</i> and <i>growth rate</i> you can choose the <b>manual</b> mesh grading option.</p></li></ul><p><img src=\"/spec/resources/help/imgs/mesh_grading_comparison.png\" class=\"helpPopupImage\"/> The figure shows meshes for grading <i>1 - very coarse</i> (left) and <i>5 - very fine</i> (right).</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticMeshGrading",
            "MANUAL" : "#/components/schemas/ManualMeshGrading"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshGrading"
        }, {
          "$ref" : "#/components/schemas/ManualMeshGrading"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_HexDominantSnappySizing" : {
        "title" : "Sizing",
        "description" : "<p>Choose how your mesh element sizes should be defined:</p><ul><li><p>If you select the <b>Automatic</b> sizing, you can specify how fine your mesh should be (ranging from <i>Very coarse</i> to <i>Very fine</i>) and all additional parameters will be set automatically according to the chosen fineness and the geometry features.</ul></p><ul><li><p>For full control over the mesh sizing, select the <b>Manual</b> option. Here you can define the <i>Minimum edge length</i> and <i>Maximum edge length</i>.</ul></p><p><img src=\"/spec/resources/help/imgs/mesh_fineness_comparison.png\" class=\"helpPopupImage\"/> The figure shows meshes with fineness <i>Very coarse</i> (left) and <i>Very fine</i> (right).</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticMeshSizingHexDominantSnappy",
            "MANUAL" : "#/components/schemas/ManualMeshSizingHexDominantSnappy"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshSizingHexDominantSnappy"
        }, {
          "$ref" : "#/components/schemas/ManualMeshSizingHexDominantSnappy"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_HexDominantSnappyRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_LENGTH" : "#/components/schemas/RegionRefinementWithLength",
            "SURFACE_HEX_DOMINANT_SNAPPY_V3" : "#/components/schemas/SurfaceRefinementHexDominantSnappy",
            "FEATURE_HEX_DOMINANT_SNAPPY" : "#/components/schemas/FeatureRefinementHexDominantSnappy",
            "LAYER_ADDITION_HEX_DOMINANT_SNAPPY" : "#/components/schemas/LayerAdditionHexDominantSnappy"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RegionRefinementWithLength"
        }, {
          "$ref" : "#/components/schemas/SurfaceRefinementHexDominantSnappy"
        }, {
          "$ref" : "#/components/schemas/FeatureRefinementHexDominantSnappy"
        }, {
          "$ref" : "#/components/schemas/LayerAdditionHexDominantSnappy"
        } ]
      },
      "OneOf_SubmeshRefinementSizing" : {
        "title" : "Sizing",
        "description" : "<p>Choose how your mesh element sizes should be defined:</p><ul><li><p>If you select the <b>Automatic</b> sizing, you can specify how fine your mesh should be (ranging from <i>Very coarse</i> to <i>Very fine</i>) and all additional parameters will be set automatically according to the chosen fineness and the geometry features.</ul></p><ul><li><p>For full control over the mesh sizing, select the <b>Manual</b> option. Here you can define the <i>Minimum edge length</i> and <i>Maximum edge length</i>.</ul></p><p><img src=\"/spec/resources/help/imgs/mesh_fineness_comparison.png\" class=\"helpPopupImage\"/> The figure shows meshes with fineness <i>Very coarse</i> (left) and <i>Very fine</i> (right).</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticMeshSizing",
            "MANUAL" : "#/components/schemas/ManualMeshSizing"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshSizing"
        }, {
          "$ref" : "#/components/schemas/ManualMeshSizing"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_SimmetrixLocalSizingRefinementCurvature" : {
        "title" : "Curvature",
        "description" : "The <b>Curvature</b> setting allows the user to specify the mesh refinement on curved features. By default, this is <b>Automatic</b>. Alternatively, the user can specify the curvature in terms of number of mesh nodes in a circle using <b>Relative</b>. Curvature refinement is <b>not</b> supported for Geometry primitive region refinement.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_CURVATURE" : "#/components/schemas/AutomaticCurvature",
            "RELATIVE_CURVATURE" : "#/components/schemas/RelativeCurvature"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticCurvature"
        }, {
          "$ref" : "#/components/schemas/RelativeCurvature"
        } ],
        "default" : {
          "type" : "AUTOMATIC_CURVATURE"
        }
      },
      "OneOf_DistanceVolumeCustomSizingCurvature" : {
        "title" : "Curvature",
        "description" : "The <b>Curvature</b> setting allows the user to specify the mesh refinement on curved features. By default, this is <b>Automatic</b>. Alternatively, the user can specify the curvature in terms of number of mesh nodes in a circle using <b>Relative</b>. Curvature refinement is <b>not</b> supported for Geometry primitive region refinement.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_CURVATURE" : "#/components/schemas/AutomaticCurvature",
            "RELATIVE_CURVATURE" : "#/components/schemas/RelativeCurvature"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticCurvature"
        }, {
          "$ref" : "#/components/schemas/RelativeCurvature"
        } ],
        "default" : {
          "type" : "AUTOMATIC_CURVATURE"
        }
      },
      "OneOf_RegionRefinementWithLevelsRefinement" : {
        "title" : "Refinement mode",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "INSIDE" : "#/components/schemas/InsideRegionRefinementWithLevels",
            "DISTANCE" : "#/components/schemas/DistanceRegionRefinementWithLevels",
            "OUTSIDE" : "#/components/schemas/OutsideRegionRefinementWithLevels"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/InsideRegionRefinementWithLevels"
        }, {
          "$ref" : "#/components/schemas/DistanceRegionRefinementWithLevels"
        }, {
          "$ref" : "#/components/schemas/OutsideRegionRefinementWithLevels"
        } ],
        "default" : {
          "type" : "INSIDE"
        }
      },
      "OneOf_ManualMeshSizingSimmetrixCurvature" : {
        "title" : "Curvature",
        "description" : "The <b>Curvature</b> setting allows the user to specify the mesh refinement on curved features. By default, this is <b>Automatic</b>. Alternatively, the user can specify the curvature in terms of number of mesh nodes in a circle using <b>Relative</b>. Curvature refinement is <b>not</b> supported for Geometry primitive region refinement.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_CURVATURE" : "#/components/schemas/AutomaticCurvature",
            "RELATIVE_CURVATURE" : "#/components/schemas/RelativeCurvature"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticCurvature"
        }, {
          "$ref" : "#/components/schemas/RelativeCurvature"
        } ],
        "default" : {
          "type" : "AUTOMATIC_CURVATURE"
        }
      },
      "OneOf_SimmetrixThinSectionMeshRefinementDistanceType" : {
        "title" : "Distance type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE" : "#/components/schemas/AbsoluteDistance",
            "RELATIVE" : "#/components/schemas/RelativeDistance"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsoluteDistance"
        }, {
          "$ref" : "#/components/schemas/RelativeDistance"
        } ],
        "default" : {
          "type" : "ABSOLUTE"
        }
      },
      "OneOf_SimmetrixThinSectionMeshRefinementSizingType" : {
        "title" : "Sweep sizing type",
        "description" : "<b>Sweep sizing type</b> allows you to specify either the number of elements or the element thickness along the direction of the sweep. The actual absolute thickness will match the desired value as close as possible, given the length of the sweep region as a constraint.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SWEEP_MESHING_ABSOLUTE_SIZE" : "#/components/schemas/SweepMeshingAbsoluteSize",
            "SWEEP_MESHING_NUMBER_OF_ELEMENTS" : "#/components/schemas/SweepMeshingNumberOfElements"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SweepMeshingAbsoluteSize"
        }, {
          "$ref" : "#/components/schemas/SweepMeshingNumberOfElements"
        } ],
        "default" : {
          "type" : "SWEEP_MESHING_ABSOLUTE_SIZE"
        }
      },
      "OneOf_SurfaceRefinementHexDominantSnappyCellZone" : {
        "title" : "Cell zone",
        "description" : "<p>You can create cell zones in your mesh by assigning this option to one or more of your CAD bodies. They can be later defined as Rotating Zones or Porosity Volumes, among others. Check these options under “Advanced Concepts” in the simulation tree.<p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "WITHOUT_CELL_ZONE" : "#/components/schemas/WithoutCellZone",
            "WITH_CELL_ZONE_V11" : "#/components/schemas/WithCellZone"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/WithoutCellZone"
        }, {
          "$ref" : "#/components/schemas/WithCellZone"
        } ]
      },
      "Analysis" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "STATIC_ANALYSIS" : "#/components/schemas/StaticAnalysis",
            "DYNAMIC_ANALYSIS" : "#/components/schemas/DynamicAnalysis",
            "HEAT_TRANSFER" : "#/components/schemas/HeatTransfer",
            "THERMAL_MECHANICAL" : "#/components/schemas/ThermalMechanical",
            "INCOMPRESSIBLE" : "#/components/schemas/Incompressible",
            "INCOMPRESSIBLE_PACEFISH" : "#/components/schemas/IncompressiblePacefish",
            "SIMERICS_ANALYSIS" : "#/components/schemas/SimericsAnalysis",
            "WIND_COMFORT" : "#/components/schemas/WindComfort",
            "COMPRESSIBLE" : "#/components/schemas/Compressible",
            "CONVECTIVE_HEAT_TRANSFER" : "#/components/schemas/ConvectiveHeatTransfer",
            "COUPLED_CONJUGATE_HEAT_TRANSFER" : "#/components/schemas/CoupledConjugateHeatTransfer",
            "EMBEDDED_BOUNDARY" : "#/components/schemas/EmbeddedBoundary",
            "MULTIPHASE" : "#/components/schemas/Multiphase",
            "CONJUGATE_HEAT_TRANSFER" : "#/components/schemas/ConjugateHeatTransfer",
            "HARMONIC_ANALYSIS" : "#/components/schemas/HarmonicAnalysis",
            "FREQUENCY_ANALYSIS" : "#/components/schemas/FrequencyAnalysis",
            "ELECTROMAGNETIC_ANALYSIS" : "#/components/schemas/ElectromagneticAnalysis",
            "MARC_ANALYSIS" : "#/components/schemas/MarcAnalysis"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/StaticAnalysis"
        }, {
          "$ref" : "#/components/schemas/DynamicAnalysis"
        }, {
          "$ref" : "#/components/schemas/HeatTransfer"
        }, {
          "$ref" : "#/components/schemas/ThermalMechanical"
        }, {
          "$ref" : "#/components/schemas/Incompressible"
        }, {
          "$ref" : "#/components/schemas/IncompressiblePacefish"
        }, {
          "$ref" : "#/components/schemas/SimericsAnalysis"
        }, {
          "$ref" : "#/components/schemas/WindComfort"
        }, {
          "$ref" : "#/components/schemas/Compressible"
        }, {
          "$ref" : "#/components/schemas/ConvectiveHeatTransfer"
        }, {
          "$ref" : "#/components/schemas/CoupledConjugateHeatTransfer"
        }, {
          "$ref" : "#/components/schemas/EmbeddedBoundary"
        }, {
          "$ref" : "#/components/schemas/Multiphase"
        }, {
          "$ref" : "#/components/schemas/ConjugateHeatTransfer"
        }, {
          "$ref" : "#/components/schemas/HarmonicAnalysis"
        }, {
          "$ref" : "#/components/schemas/FrequencyAnalysis"
        }, {
          "$ref" : "#/components/schemas/ElectromagneticAnalysis"
        }, {
          "$ref" : "#/components/schemas/MarcAnalysis"
        } ]
      },
      "StaticAnalysis" : {
        "title" : "Static",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StaticAnalysis",
            "default" : "STATIC_ANALYSIS"
          },
          "nonLinearAnalysis" : {
            "title" : "Nonlinear analysis",
            "type" : "boolean",
            "description" : "<p>Choose if your analysis should feature any kind of <b>nonlinearity</b> like <b>physical contacts, nonlinear materials</b> as hyperelasticity or plasticity or <b>large rotations</b> and <b>large deformations, temperature dependant material properties</b> or <b>temperature dependant boundary conditions</b>. For a <b>linear analysis</b> none of those nonlinearities are available.</p>",
            "default" : false
          },
          "connectionGroups" : {
            "title" : "Connection groups",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_StaticAnalysisConnectionGroups"
            }
          },
          "connectors" : {
            "title" : "Connectors",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_StaticAnalysisConnectors"
            }
          },
          "elementTechnology" : {
            "$ref" : "#/components/schemas/SolidElementTechnology"
          },
          "model" : {
            "$ref" : "#/components/schemas/SolidModel"
          },
          "materials" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SolidMaterial"
            }
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/SolidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_StaticAnalysisBoundaryConditions"
            }
          },
          "numerics" : {
            "$ref" : "#/components/schemas/SolidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/SolidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/SolidResultControl"
          },
          "meshOrder" : {
            "title" : "Mesh order",
            "type" : "string",
            "default" : "NONE",
            "enum" : [ "FIRST", "SECOND", "NONE" ]
          }
        },
        "additionalProperties" : false
      },
      "Contact" : {
        "title" : "Contact",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Contact",
            "default" : "CONTACT"
          },
          "nodeMergingBonded" : {
            "title" : "Allow node merging",
            "type" : "boolean",
            "description" : "<p>Allow node merging for bonded contacts where possible to increase contact accuracy and solution efficiency. For contact pairs where nodes cannot be merged, linear relations will be used with the defined position tolerance.</p>",
            "default" : false,
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,FREQUENCY_ANALYSIS,THERMAL_MECHANICAL,HARMONIC_ANALYSIS]" ]
          },
          "connections" : {
            "title" : "Contacts",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_ContactConnections"
            }
          }
        },
        "additionalProperties" : false
      },
      "BondedContact" : {
        "title" : "Bonded",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: BondedContact",
            "default" : "BONDED_CONTACT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "enableHeatTransfer" : {
            "title" : "Enable heat transfer",
            "type" : "string",
            "default" : "YES",
            "enum" : [ "YES", "NO", "HEAT_TRANSFER_ONLY" ],
            "x-showWhen" : [ "type == THERMAL_MECHANICAL" ]
          },
          "positionTolerance" : {
            "$ref" : "#/components/schemas/OneOf_BondedContactPositionTolerance"
          },
          "masterTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "slaveTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "SetValuePositionTolerance" : {
        "title" : "Set value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SetValuePositionTolerance",
            "default" : "SET_VALUE"
          },
          "tolerance" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "OffPositionTolerance" : {
        "title" : "Off",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OffPositionTolerance",
            "default" : "OFF"
          }
        },
        "additionalProperties" : false
      },
      "SlidingContact" : {
        "title" : "Sliding",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SlidingContact",
            "default" : "SLIDING_CONTACT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "enableHeatTransfer" : {
            "title" : "Enable heat transfer",
            "type" : "string",
            "default" : "YES",
            "enum" : [ "YES", "NO", "HEAT_TRANSFER_ONLY" ],
            "x-showWhen" : [ "type == THERMAL_MECHANICAL" ]
          },
          "positionTolerance" : {
            "$ref" : "#/components/schemas/OneOf_SlidingContactPositionTolerance"
          },
          "masterTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "slaveTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "PhysicalContact" : {
        "title" : "Physical contacts",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PhysicalContact",
            "default" : "PHYSICAL_CONTACT_V36"
          },
          "settings" : {
            "$ref" : "#/components/schemas/ConnectionSettingsV36"
          },
          "connections" : {
            "title" : "Physical contacts",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_PhysicalContactConnections"
            }
          }
        },
        "additionalProperties" : false
      },
      "ConnectionSettingsV36" : {
        "type" : "object",
        "properties" : {
          "nonlinearityResolution" : {
            "$ref" : "#/components/schemas/OneOf_ConnectionSettingsV36NonlinearityResolution"
          },
          "friction" : {
            "$ref" : "#/components/schemas/OneOf_ConnectionSettingsV36Friction"
          },
          "contactNonLinearityResolution" : {
            "$ref" : "#/components/schemas/OneOf_ConnectionSettingsV36ContactNonLinearityResolution"
          },
          "convergenceStabilization" : {
            "title" : "Convergence stabilization",
            "type" : "boolean",
            "default" : true
          },
          "contactSmoothing" : {
            "title" : "Contact smoothing",
            "type" : "boolean",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "NewtonNonLinearityResolution" : {
        "title" : "Newton",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NewtonNonLinearityResolution",
            "default" : "NEWTON"
          },
          "iterationCriterion" : {
            "title" : "Iteration criterion",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1.0E-5
          }
        },
        "additionalProperties" : false
      },
      "FixedPointNonLinearityResolution" : {
        "title" : "Fixed point",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedPointNonLinearityResolution",
            "default" : "FIXED_POINT"
          },
          "geometryReactualization" : {
            "$ref" : "#/components/schemas/OneOf_FixedPointNonLinearityResolutionGeometryReactualization"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticReactualization" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticReactualization",
            "default" : "AUTOMATIC"
          },
          "maxNumIterations" : {
            "title" : "Max num iterations",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 10
          },
          "iterationCriterion" : {
            "title" : "Iteration criterion",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.05
          }
        },
        "additionalProperties" : false
      },
      "ManualReactualization" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualReactualization",
            "default" : "MANUAL"
          },
          "numIterations" : {
            "title" : "Number of iterations",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 2
          }
        },
        "additionalProperties" : false
      },
      "NoneReactualization" : {
        "title" : "No update",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoneReactualization",
            "default" : "NONE"
          }
        },
        "additionalProperties" : false
      },
      "NoFriction" : {
        "title" : "No friction",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoFriction",
            "default" : "NO_FRICTION"
          }
        },
        "additionalProperties" : false
      },
      "CoulombFriction" : {
        "title" : "Coulomb",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CoulombFriction",
            "default" : "COULOMB_FRICTION"
          },
          "nonlinearityResolution" : {
            "$ref" : "#/components/schemas/OneOf_CoulombFrictionNonlinearityResolution"
          }
        },
        "additionalProperties" : false
      },
      "NewtonFrictionNonLinearityResolution" : {
        "title" : "Newton",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NewtonFrictionNonLinearityResolution",
            "default" : "NEWTON_V29"
          },
          "iterationCriterion" : {
            "title" : "Iteration criterion",
            "type" : "number",
            "default" : 1.0E-4
          }
        },
        "additionalProperties" : false
      },
      "FixedPointFrictionNonLinearityResolution" : {
        "title" : "Fixed point",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedPointFrictionNonLinearityResolution",
            "default" : "FIXED_POINT"
          },
          "maxNumIteration" : {
            "title" : "Max num iteration",
            "type" : "integer",
            "default" : 10
          },
          "iterationCriterion" : {
            "title" : "Iteration criterion",
            "type" : "number",
            "default" : 1.0E-4
          }
        },
        "additionalProperties" : false
      },
      "NewtonContactNonLinearityResolution" : {
        "title" : "Newton",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NewtonContactNonLinearityResolution",
            "default" : "NEWTON"
          }
        },
        "additionalProperties" : false
      },
      "FixedPointContactNonLinearityResolution" : {
        "title" : "Fixed point",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedPointContactNonLinearityResolution",
            "default" : "FIXED_POINT"
          },
          "iterationControl" : {
            "$ref" : "#/components/schemas/OneOf_FixedPointContactNonLinearityResolutionIterationControl"
          }
        },
        "additionalProperties" : false
      },
      "MaximumNumberIterationControl" : {
        "title" : "Maximum number",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MaximumNumberIterationControl",
            "default" : "MAXIMUM_NUMBER"
          },
          "maxNumIteration" : {
            "title" : "Max num iteration",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 30
          }
        },
        "additionalProperties" : false
      },
      "MultipliedSlaveNodesIterationControl" : {
        "title" : "Multiple of slave nodes",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MultipliedSlaveNodesIterationControl",
            "default" : "MULTIPLIED_SLAVE_NODE"
          },
          "multipleValue" : {
            "title" : "Multiple value",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 4
          }
        },
        "additionalProperties" : false
      },
      "FrictionlessContact" : {
        "title" : "Physical contact",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FrictionlessContact",
            "default" : "FRICTIONLESS_CONTACT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "contactSolutionMethod" : {
            "$ref" : "#/components/schemas/OneOf_FrictionlessContactContactSolutionMethod"
          },
          "fictitiousClearance" : {
            "$ref" : "#/components/schemas/OneOf_FrictionlessContactFictitiousClearance"
          },
          "masterTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "slaveTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "AugmentedLagrangeMethod" : {
        "title" : "Augmented Lagrange method",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AugmentedLagrangeMethod",
            "default" : "AUGMENTED_LAGRANGE"
          },
          "augmentedLagrangeCoefficient" : {
            "title" : "Augmented lagrange coefficient",
            "maximum" : 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 100
          }
        },
        "additionalProperties" : false
      },
      "PenaltyMethod" : {
        "title" : "Penalty method",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PenaltyMethod",
            "default" : "PENALTY_METHOD"
          },
          "contactStiffness" : {
            "$ref" : "#/components/schemas/OneOf_PenaltyMethodContactStiffness"
          }
        },
        "additionalProperties" : false
      },
      "LowContactStiffness" : {
        "title" : "Low",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LowContactStiffness",
            "default" : "LOW_CONTACT_STIFFNESS"
          }
        },
        "additionalProperties" : false
      },
      "ModerateContactStiffness" : {
        "title" : "Moderate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ModerateContactStiffness",
            "default" : "MODERATE_CONTACT_STIFFNESS"
          }
        },
        "additionalProperties" : false
      },
      "HighContactStiffness" : {
        "title" : "High",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HighContactStiffness",
            "default" : "HIGH_CONTACT_STIFFNESS"
          }
        },
        "additionalProperties" : false
      },
      "CustomContactStiffness" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomContactStiffness",
            "default" : "CUSTOM_CONTACT_STIFFNESS"
          },
          "penaltyCoefficient" : {
            "title" : "Penalty coefficient",
            "maximum" : 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the penalty coefficient for the contact pair. As a good starting point this value should be about 5-50 times as high as the softest of the materials in this contact definition and below 1e16. A higher value reduces interpenetration but may also lead to numerical instabilities and divergence. The independence of the results from this parameter should be checked.</p>",
            "default" : 100000000000
          }
        },
        "additionalProperties" : false
      },
      "NoFictitiousClearance" : {
        "title" : "No",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoFictitiousClearance",
            "default" : "NO_FICTITIOUS_CLEARANCE"
          }
        },
        "additionalProperties" : false
      },
      "WithFictitiousClearance" : {
        "title" : "Yes",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WithFictitiousClearance",
            "default" : "WITH_FICTITIOUS_CLEARANCE"
          },
          "masterClearance" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Length"
          },
          "slaveClearance" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Length"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_Length" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_LengthValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m", "in", "mm", "cm", "ft", "yd" ]
          }
        },
        "additionalProperties" : false
      },
      "ConstantFunction" : {
        "title" : "Constant function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ConstantFunction",
            "default" : "CONSTANT"
          },
          "value" : {
            "title" : "Value",
            "type" : "number"
          }
        },
        "additionalProperties" : false
      },
      "ExpressionFunction" : {
        "title" : "Expression function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ExpressionFunction",
            "default" : "EXPRESSION"
          },
          "expression" : {
            "title" : "Expression",
            "type" : "string"
          },
          "availableVariables" : {
            "title" : "Available variables",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FunctionParameter"
            }
          }
        },
        "additionalProperties" : false
      },
      "FunctionParameter" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "parameter" : {
            "title" : "Parameter",
            "type" : "string"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string"
          }
        },
        "additionalProperties" : false
      },
      "PolynomialFunction" : {
        "title" : "Polynomial function",
        "required" : [ "parameterBaseUnit", "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PolynomialFunction",
            "default" : "POLYNOMIAL"
          },
          "coefficients" : {
            "title" : "Coefficients",
            "type" : "array",
            "items" : {
              "type" : "number"
            }
          },
          "parameterBaseUnit" : {
            "title" : "Parameter base unit",
            "type" : "string"
          }
        },
        "additionalProperties" : false
      },
      "TableDefinedFunction" : {
        "title" : "Table defined function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TableDefinedFunction",
            "default" : "TABLE_DEFINED"
          },
          "label" : {
            "title" : "Label",
            "type" : "string",
            "default" : "Table"
          },
          "tableId" : {
            "type" : "string",
            "description" : "The ID of the imported table.",
            "format" : "uuid"
          },
          "resultIndex" : {
            "title" : "Result index",
            "type" : "array",
            "description" : "Indicates which column(s) of the table contains the result values. One-based indexing must be used. For example, set this field to '[2]' if the second column of the table contains the dependent variable values.",
            "items" : {
              "type" : "integer"
            }
          },
          "independentVariables" : {
            "title" : "Independent variables",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TableFunctionParameter"
            }
          },
          "separator" : {
            "title" : "Separator",
            "type" : "string",
            "description" : "Values in each row are separated by this character. Also known as a delimiter.",
            "default" : ","
          },
          "outOfBounds" : {
            "title" : "Out of bounds",
            "type" : "string",
            "default" : "CLAMP",
            "enum" : [ "CLAMP" ],
            "x-showWhen" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,MULTIPHASE,INCOMPRESSIBLE_PACEFISH]" ]
          },
          "interpolation" : {
            "title" : "Interpolation",
            "type" : "string",
            "default" : "LINEAR",
            "enum" : [ "LINEAR", "LOGARITHMIC" ],
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS]" ]
          },
          "leftExtrapolation" : {
            "title" : "Left extrapolation",
            "type" : "string",
            "default" : "LINEAR",
            "enum" : [ "CONSTANT", "LINEAR", "NONE" ],
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS]" ]
          },
          "rightExtrapolation" : {
            "title" : "Right extrapolation",
            "type" : "string",
            "default" : "LINEAR",
            "enum" : [ "CONSTANT", "LINEAR", "NONE" ],
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS]" ]
          }
        },
        "additionalProperties" : false
      },
      "TableFunctionParameter" : {
        "required" : [ "reference", "unit" ],
        "type" : "object",
        "properties" : {
          "reference" : {
            "title" : "Reference",
            "type" : "integer",
            "description" : "Indicates which column of the table contains the values of this independent variable. One-based indexing must be used. For example, set this property to '1' if the first column of the table contains the values of this independent variable."
          },
          "parameter" : {
            "title" : "Parameter",
            "type" : "string",
            "description" : "The name of the independent variable. Possible values: 'X', 'Y', 'Z', 'HEIGHT', 'Temperature', 'T' (time), 'Q' (mass flow rate), 'V_DOT' (volumetric flow rate), 'F' (frequency), 'E' (strain)"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string"
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_X_Y_Z_TIME" : {
        "type" : "object",
        "properties" : {
          "T" : {
            "$ref" : "#/components/schemas/Unit_Time"
          },
          "X" : {
            "$ref" : "#/components/schemas/Unit_Length"
          },
          "Y" : {
            "$ref" : "#/components/schemas/Unit_Length"
          },
          "Z" : {
            "$ref" : "#/components/schemas/Unit_Length"
          }
        }
      },
      "Unit_Time" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "s" ]
          }
        }
      },
      "Unit_Length" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m", "in", "mm", "cm", "ft", "yd" ]
          }
        }
      },
      "FrictionContact" : {
        "title" : "Physical contact",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FrictionContact",
            "default" : "FRICTION_CONTACT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "contactSolutionMethod" : {
            "$ref" : "#/components/schemas/OneOf_FrictionContactContactSolutionMethod"
          },
          "frictionCoefficient" : {
            "$ref" : "#/components/schemas/OneOf_FrictionContactFrictionCoefficient"
          },
          "fictitiousClearance" : {
            "$ref" : "#/components/schemas/OneOf_FrictionContactFictitiousClearance"
          },
          "masterTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "slaveTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "FrictionAugmentedLagrangeCoef" : {
        "title" : "Friction augmentation lagrange coefficient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FrictionAugmentedLagrangeCoef",
            "default" : "FRICTION_AUGMENTATION_COEF"
          },
          "frictionAugmentationCoefficient" : {
            "$ref" : "#/components/schemas/Dimensional_FrictionAugmentation"
          },
          "coulombCoefficient" : {
            "title" : "Coulomb coefficient",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.1
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_FrictionAugmentation" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/m", "1/in" ]
          }
        },
        "additionalProperties" : false
      },
      "FrictionPenaltyCoef" : {
        "title" : "Friction penalty coefficient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FrictionPenaltyCoef",
            "default" : "FRICTION_PENALTY_COEF"
          },
          "frictionPenaltyCoefficient" : {
            "title" : "Friction penalty coefficient",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 100000
          },
          "coulombCoefficient" : {
            "title" : "Coulomb coefficient",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.1
          }
        },
        "additionalProperties" : false
      },
      "PinConnector" : {
        "title" : "Pin connector",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Connects parts through a <b>virtual pin</b>, so the pin itself is not modelled. Define one pin connector per pin.</p><img src=\"/spec/resources/help/imgs/pin_connector_help.png\" class=\"helpPopupImage\"/><b>Assign</b> the cylindrical hole faces of all parts the pin goes through:<ul><li>all faces on one common axis: no flat faces, no holes of another pin</li><li>each face in one connector only</li></ul><p><b>Behavior</b>: the parts turn about the pin axis but cannot tilt against each other. The virtual pin is rigid in bending and has no material or diameter. Set rotation and sliding under <b>Kinematic behavior</b>. <a href='https://www.simscale.com/docs/simulation-setup/connectors/#pin-connectors' target='_blank'>Learn more</a></p>\n\nSchema name: PinConnector",
            "default" : "PIN_CONNECTOR"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "interaction" : {
            "title" : "Interaction",
            "type" : "string",
            "description" : "<p>Choose what the pin connects:</p><img src=\"/spec/resources/help/imgs/pin_connector_interaction_help.png\" class=\"helpPopupImage\"/><ul><li><b>Body to body</b>: two or more parts are connected to each other. The pin moves with the parts.</li><li><b>Body to ground</b>: one or more parts are connected to a pin that is fixed in space, like a hinge support.</li></ul>",
            "default" : "BODY_TO_BODY",
            "enum" : [ "BODY_TO_BODY", "BODY_TO_GROUND" ]
          },
          "kinematicBehavior" : {
            "$ref" : "#/components/schemas/PinKinematicBehavior"
          },
          "advancedPinSettings" : {
            "$ref" : "#/components/schemas/AdvancedConnectorSettings"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Connects parts through a <b>virtual pin</b>, so the pin itself is not modelled. Define one pin connector per pin.</p><img src=\"/spec/resources/help/imgs/pin_connector_help.png\" class=\"helpPopupImage\"/><b>Assign</b> the cylindrical hole faces of all parts the pin goes through:<ul><li>all faces on one common axis: no flat faces, no holes of another pin</li><li>each face in one connector only</li></ul><p><b>Behavior</b>: the parts turn about the pin axis but cannot tilt against each other. The virtual pin is rigid in bending and has no material or diameter. Set rotation and sliding under <b>Kinematic behavior</b>. <a href='https://www.simscale.com/docs/simulation-setup/connectors/#pin-connectors' target='_blank'>Learn more</a></p>"
      },
      "PinKinematicBehavior" : {
        "type" : "object",
        "properties" : {
          "rotation" : {
            "$ref" : "#/components/schemas/OneOf_PinKinematicBehaviorRotation"
          },
          "axialTranslation" : {
            "$ref" : "#/components/schemas/OneOf_PinKinematicBehaviorAxialTranslation"
          }
        },
        "additionalProperties" : false
      },
      "FreeAxialRotation" : {
        "title" : "Free rotation",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FreeAxialRotation",
            "default" : "FREE"
          }
        },
        "additionalProperties" : false
      },
      "RigidAxialRotation" : {
        "title" : "Rigid",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RigidAxialRotation",
            "default" : "RIGID"
          }
        },
        "additionalProperties" : false
      },
      "TorsionalAxialRotation" : {
        "title" : "With torsion spring",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TorsionalAxialRotation",
            "default" : "TORSIONAL"
          },
          "torsionalStiffness" : {
            "$ref" : "#/components/schemas/Dimensional_RotationalStiffness"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_RotationalStiffness" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N·m/rad", "lbf·in/rad" ]
          }
        },
        "additionalProperties" : false
      },
      "FreeAxialTranslation" : {
        "title" : "Free sliding",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FreeAxialTranslation",
            "default" : "FREE"
          }
        },
        "additionalProperties" : false
      },
      "RigidAxialTranslation" : {
        "title" : "Rigid",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RigidAxialTranslation",
            "default" : "RIGID"
          }
        },
        "additionalProperties" : false
      },
      "FlexibleAxialTranslation" : {
        "title" : "With axial spring",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FlexibleAxialTranslation",
            "default" : "FLEXIBLE"
          },
          "axialStiffness" : {
            "$ref" : "#/components/schemas/Dimensional_Stiffness"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Stiffness" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N/m", "lbf/in" ]
          }
        },
        "additionalProperties" : false
      },
      "AdvancedConnectorSettings" : {
        "type" : "object",
        "properties" : {
          "assignedFaceBehavior" : {
            "title" : "Assigned face behaviour",
            "type" : "string",
            "description" : "<p>How the assigned faces are tied to the connector:</p><img src=\"/spec/resources/help/imgs/connector_assigned_face_behavior_help.png\" class=\"helpPopupImage\"/><ul><li><b>Deformable (RBE3)</b>: the faces can deform, e.g. a hole can ovalize. The connection adds no stiffness.</li><li><b>Rigid (RBE2)</b>: the faces move as one rigid body and keep their shape. The joint is stiffer, and stresses can peak at the face edges.</li></ul><p><b>Note:</b> a face can be in only one <b>Rigid (RBE2)</b> connection. Do not also assign it to another rigid connector, remote force, remote displacement or point mass. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/remote-displacement/#deformation-behavior' target='_blank'>Learn more</a></p>",
            "default" : "DEFORMABLE",
            "enum" : [ "DEFORMABLE", "UNDEFORMABLE" ]
          }
        },
        "additionalProperties" : false
      },
      "BoltConnector" : {
        "title" : "Bolt connector",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Connects parts through a <b>virtual bolt</b>, so the bolt and nut are not part of the CAD model. Define one bolt connector per bolt.</p><img src=\"/spec/resources/help/imgs/bolt_connector_help.png\" class=\"helpPopupImage\"/><b>Assign</b>, all centred on one axis:<ul><li><b>Bolt head assignment</b>: the faces or edges where the head sits, all on one part</li><li><b>Nut assignment</b>: the faces or edges where the nut sits, all on one part (for a <b>Screw</b>, the threaded hole instead, see <b>Bolt type</b>)</li></ul><p>The virtual bolt is a beam between the centres of the two assignments, with the <b>Shank diameter</b> and <b>Mechanical properties</b> you enter. It can carry a preload. <a href='https://www.simscale.com/docs/simulation-setup/connectors/#bolt-connectors' target='_blank'>Learn more</a></p>\n\nSchema name: BoltConnector",
            "default" : "BOLT_CONNECTOR"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "boltType" : {
            "title" : "Bolt type",
            "type" : "string",
            "description" : "<p>Select the type of fastener:</p><img src=\"/spec/resources/help/imgs/bolt_connector_type_help.png\" class=\"helpPopupImage\"/><ul><li><b>Bolt and nut</b>: the bolt goes through all parts. Assign where the head sits and where the nut sits.</li><li><b>Screw</b>: the screw ends in a threaded hole. Assign where the head sits and, as <b>Threaded section assignment</b>, the cylindrical face of the threaded hole.</li></ul>",
            "default" : "BOLT_AND_NUT",
            "enum" : [ "BOLT_AND_NUT", "SCREW" ]
          },
          "shankDiameter" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "mechanicalProperties" : {
            "$ref" : "#/components/schemas/BoltMechanicalProperties"
          },
          "enableBoltPreload" : {
            "title" : "Enable bolt preload",
            "type" : "boolean",
            "description" : "<p>Tightens the virtual bolt with a <b>Pretension</b> force before the loads are applied.</p><img src=\"/spec/resources/help/imgs/bolt_connector_preload_help.png\" class=\"helpPopupImage\"/>",
            "default" : false
          },
          "preload" : {
            "$ref" : "#/components/schemas/ForcePreload"
          },
          "advancedBoltSettings" : {
            "$ref" : "#/components/schemas/AdvancedConnectorSettings"
          },
          "masterTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "slaveTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Connects parts through a <b>virtual bolt</b>, so the bolt and nut are not part of the CAD model. Define one bolt connector per bolt.</p><img src=\"/spec/resources/help/imgs/bolt_connector_help.png\" class=\"helpPopupImage\"/><b>Assign</b>, all centred on one axis:<ul><li><b>Bolt head assignment</b>: the faces or edges where the head sits, all on one part</li><li><b>Nut assignment</b>: the faces or edges where the nut sits, all on one part (for a <b>Screw</b>, the threaded hole instead, see <b>Bolt type</b>)</li></ul><p>The virtual bolt is a beam between the centres of the two assignments, with the <b>Shank diameter</b> and <b>Mechanical properties</b> you enter. It can carry a preload. <a href='https://www.simscale.com/docs/simulation-setup/connectors/#bolt-connectors' target='_blank'>Learn more</a></p>"
      },
      "BoltMechanicalProperties" : {
        "type" : "object",
        "properties" : {
          "youngsModulus" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "poissonsRatio" : {
            "title" : "(ν) Poisson's ratio",
            "maximum" : 0.5,
            "exclusiveMaximum" : true,
            "minimum" : -1.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "<p>Poisson's ratio of the bolt material. It must be greater than -1 and less than 0.5.</p>",
            "default" : 0.28
          },
          "density" : {
            "$ref" : "#/components/schemas/Dimensional_Density"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Pressure" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Pa", "lbf/in²", "hPa", "kPa", "MPa", "atm", "mbar", "bar", "mH2O", "mmH2O", "mmHg", "dyne/cm²", "inH2O", "ftH2O", "inHg", "psf" ]
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Density" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/m³", "lb/in³", "g/mm³", "g/cm³", "t/mm³", "lb/ft³" ]
          }
        },
        "additionalProperties" : false
      },
      "ForcePreload" : {
        "title" : "Force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ForcePreload",
            "default" : "FORCE"
          },
          "force" : {
            "$ref" : "#/components/schemas/Dimensional_Force"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Force" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N", "lbf", "dyne", "µN" ]
          }
        },
        "additionalProperties" : false
      },
      "SolidElementTechnology" : {
        "type" : "object",
        "properties" : {
          "elementTechnology3D" : {
            "$ref" : "#/components/schemas/ElementTechnology"
          }
        },
        "additionalProperties" : false
      },
      "ElementTechnology" : {
        "type" : "object",
        "properties" : {
          "definitionMethod" : {
            "$ref" : "#/components/schemas/OneOf_ElementTechnologyDefinitionMethod"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticElementDefinitionMethod" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticElementDefinitionMethod",
            "default" : "AUTOMATIC"
          }
        },
        "additionalProperties" : false
      },
      "CustomElementDefinitionMethod" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomElementDefinitionMethod",
            "default" : "CUSTOM"
          },
          "mechanicalMeshElementOrder" : {
            "title" : "Mechanical mesh order",
            "type" : "string",
            "enum" : [ "FIRST", "SECOND" ],
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,FREQUENCY_ANALYSIS,HARMONIC_ANALYSIS,THERMAL_MECHANICAL]" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type in [DYNAMIC_ANALYSIS,HEAT_TRANSFER]" ],
              "default" : "FIRST"
            }, {
              "when" : [ "type in [HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS]", "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ],
              "default" : "SECOND"
            } ]
          },
          "thermalMeshElementOrder" : {
            "title" : "Thermal mesh order",
            "type" : "string",
            "default" : "FIRST",
            "enum" : [ "FIRST", "SECOND" ],
            "x-showWhen" : [ "type == THERMAL_MECHANICAL && elementTechnology.elementTechnology3D.definitionMethod.mechanicalMeshElementOrder == SECOND", "type == HEAT_TRANSFER" ]
          },
          "reducedIntegration" : {
            "title" : "Reduced integration",
            "type" : "boolean",
            "default" : false,
            "x-showWhen" : [ "type != HEAT_TRANSFER" ]
          },
          "lumpedMass" : {
            "title" : "Lumped mass",
            "type" : "boolean",
            "default" : false,
            "x-showWhen" : [ "type == HEAT_TRANSFER && elementTechnology.elementTechnology3D.definitionMethod.thermalMeshElementOrder == FIRST", "type == THERMAL_MECHANICAL && elementTechnology.elementTechnology3D.definitionMethod.thermalMeshElementOrder == FIRST", "type == THERMAL_MECHANICAL && elementTechnology.elementTechnology3D.definitionMethod.mechanicalMeshElementOrder == FIRST" ]
          },
          "definitions" : {
            "title" : "Element definitions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ElementTechnologyDefinition"
            },
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,FREQUENCY_ANALYSIS,HARMONIC_ANALYSIS,THERMAL_MECHANICAL]", "type == HEAT_TRANSFER && elementTechnology.elementTechnology3D.definitionMethod.thermalMeshElementOrder == FIRST" ]
          }
        },
        "additionalProperties" : false
      },
      "ElementTechnologyDefinition" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "reducedIntegration" : {
            "title" : "Reduced integration",
            "type" : "boolean",
            "default" : false,
            "x-showWhen" : [ "type in [FREQUENCY_ANALYSIS,HARMONIC_ANALYSIS,STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL] && elementTechnology.elementTechnology3D.definitionMethod.type == CUSTOM", "type != HEAT_TRANSFER" ]
          },
          "lumpedMass" : {
            "title" : "Lumped mass",
            "type" : "boolean",
            "default" : false,
            "x-showWhen" : [ "type == HEAT_TRANSFER && elementTechnology.elementTechnology3D.definitionMethod.type == CUSTOM && elementTechnology.elementTechnology3D.definitionMethod.thermalMeshElementOrder == FIRST", "type == THERMAL_MECHANICAL && elementTechnology.elementTechnology3D.definitionMethod.type == CUSTOM && elementTechnology.elementTechnology3D.definitionMethod.thermalMeshElementOrder == FIRST", "type == THERMAL_MECHANICAL && elementTechnology.elementTechnology3D.definitionMethod.type == CUSTOM && elementTechnology.elementTechnology3D.definitionMethod.mechanicalMeshElementOrder == FIRST" ]
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "SolidModel" : {
        "type" : "object",
        "properties" : {
          "geometricBehavior" : {
            "title" : "Geometric behavior",
            "type" : "string",
            "default" : "NONLINEAR",
            "enum" : [ "LINEAR", "NONLINEAR" ],
            "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
          },
          "magnitude" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Acceleration"
          },
          "e" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_Acceleration" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_AccelerationValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s²", "in/s²", "G" ]
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_TIME" : {
        "type" : "object",
        "properties" : {
          "T" : {
            "$ref" : "#/components/schemas/Unit_Time"
          }
        }
      },
      "SolidMaterial" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "materialBehavior" : {
            "$ref" : "#/components/schemas/OneOf_SolidMaterialMaterialBehavior"
          },
          "density" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Density"
          },
          "expansion" : {
            "$ref" : "#/components/schemas/IsotropicExpansion"
          },
          "conductivity" : {
            "$ref" : "#/components/schemas/OneOf_SolidMaterialConductivity"
          },
          "specificHeat" : {
            "$ref" : "#/components/schemas/DimensionalFunction_SpecificHeat"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "builtInMaterial" : {
            "type" : "string"
          },
          "materialLibraryReference" : {
            "$ref" : "#/components/schemas/MaterialLibraryReference"
          }
        },
        "additionalProperties" : false
      },
      "LinearElasticMaterialBehavior" : {
        "title" : "Linear elastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the material behavior for your problem. </p> <br /><br />Important remarks:<br /> <ul><li>Choose <b>Linear elastic</b> if the stress-strain relationship of your material is linear.</li><li>Choose <b>Elasto-plastic</b> if the stress-strain relationship of your material is non-linear after some point e.g. yielding point.</li><li>Choose <b>Hyperelastic</b> if your material responds elastically even at higher deformations.</li></ul> \n\nSchema name: LinearElasticMaterialBehavior",
            "default" : "LINEAR_ELASTIC"
          },
          "directionalDependency" : {
            "$ref" : "#/components/schemas/OneOf_LinearElasticMaterialBehaviorDirectionalDependency"
          },
          "damping" : {
            "$ref" : "#/components/schemas/OneOf_LinearElasticMaterialBehaviorDamping"
          },
          "creepFormulation" : {
            "$ref" : "#/components/schemas/OneOf_LinearElasticMaterialBehaviorCreepFormulation"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the material behavior for your problem. </p> <br /><br />Important remarks:<br /> <ul><li>Choose <b>Linear elastic</b> if the stress-strain relationship of your material is linear.</li><li>Choose <b>Elasto-plastic</b> if the stress-strain relationship of your material is non-linear after some point e.g. yielding point.</li><li>Choose <b>Hyperelastic</b> if your material responds elastically even at higher deformations.</li></ul> "
      },
      "IsotropicDirectionalDependency" : {
        "title" : "Isotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicDirectionalDependency",
            "default" : "ISOTROPIC"
          },
          "youngsModulus" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "poissonsRatio" : {
            "$ref" : "#/components/schemas/OneOf_IsotropicDirectionalDependencyPoissonsRatio"
          },
          "expansionCoefficient" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalExpansionRate"
          },
          "referenceTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_Pressure" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_PressureValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Pa", "lbf/in²", "hPa", "kPa", "MPa", "atm", "mbar", "bar", "mH2O", "mmH2O", "mmHg", "dyne/cm²", "inH2O", "ftH2O", "inHg", "psf" ]
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_TEMP" : {
        "type" : "object",
        "properties" : {
          "Temperature" : {
            "$ref" : "#/components/schemas/Unit_Temperature"
          }
        }
      },
      "Unit_Temperature" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "°C", "°F", "K" ]
          }
        }
      },
      "VariableGroup_EMPTY" : {
        "type" : "object",
        "properties" : { }
      },
      "DimensionalFunction_ThermalExpansionRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_ThermalExpansionRateValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/K", "1/°F" ],
            "x-MissingConversions" : true
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Temperature" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "°C", "°F", "K" ],
            "x-MissingConversions" : true
          }
        },
        "additionalProperties" : false
      },
      "OrthotropicDirectionalDependency" : {
        "title" : "Orthotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OrthotropicDirectionalDependency",
            "default" : "ORTHOTROPIC"
          },
          "youngsModulusX" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "youngsModulusY" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "youngsModulusZ" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "poissonsRatioXY" : {
            "$ref" : "#/components/schemas/OneOf_OrthotropicDirectionalDependencyPoissonsRatioXY"
          },
          "poissonsRatioYZ" : {
            "$ref" : "#/components/schemas/OneOf_OrthotropicDirectionalDependencyPoissonsRatioYZ"
          },
          "poissonsRatioXZ" : {
            "$ref" : "#/components/schemas/OneOf_OrthotropicDirectionalDependencyPoissonsRatioXZ"
          },
          "shearModulusXY" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "shearModulusYZ" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "shearModulusXZ" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "expansionCoefficientX" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalExpansionRate"
          },
          "expansionCoefficientY" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalExpansionRate"
          },
          "expansionCoefficientZ" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalExpansionRate"
          },
          "referenceTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "NoneDamping" : {
        "title" : "None",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoneDamping",
            "default" : "NONE"
          }
        },
        "additionalProperties" : false
      },
      "RayleighDamping" : {
        "title" : "Rayleigh damping",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RayleighDamping",
            "default" : "RAYLEIGH"
          },
          "stiffnessProportionalCoefficient" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "massProportionalCoefficient" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Frequency" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/s", "RPM", "Hz" ]
          }
        },
        "additionalProperties" : false
      },
      "HystereticDamping" : {
        "title" : "Structural damping",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HystereticDamping",
            "default" : "HYSTERETIC"
          },
          "dampingLevel" : {
            "title" : "Damping level (%)",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Specify the level of damping to be applied as a percentage of critical damping.",
            "default" : 1.0
          }
        },
        "additionalProperties" : false
      },
      "GlobalDampingValue" : {
        "title" : "Use global value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalDampingValue",
            "default" : "GLOBAL_DAMPING_VALUE"
          }
        },
        "additionalProperties" : false
      },
      "NortonCreepFormulation" : {
        "title" : "Norton",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NortonCreepFormulation",
            "default" : "NORTON"
          },
          "a" : {
            "$ref" : "#/components/schemas/Dimensional_StrainRate"
          },
          "n" : {
            "title" : "N",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the parameter <b>n</b> of the Norton creep formulation: <ul><b>&epsilon;&#775; = A*&sigma;<sup>n</sup></b></ul></p>",
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_StrainRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/s" ]
          }
        },
        "additionalProperties" : false
      },
      "NoCreepFormulation" : {
        "title" : "No creep",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoCreepFormulation",
            "default" : "NO_CREEP"
          }
        },
        "additionalProperties" : false
      },
      "StrainHardeningCreepFormulation" : {
        "title" : "Strain hardening",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StrainHardeningCreepFormulation",
            "default" : "STRAIN_HARDENING"
          },
          "a" : {
            "$ref" : "#/components/schemas/Dimensional_StrainRate"
          },
          "n" : {
            "title" : "N",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the parameter <b>n</b> of the Strain Hardening creep formulation: <ul><b>&epsilon;&#775; = A*&sigma;<sup>n</sup>*&epsilon;<sup>m</sup></b></ul></p>",
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
          },
          "m" : {
            "title" : "M",
            "maximum" : 0.0,
            "exclusiveMaximum" : false,
            "minimum" : -1.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "<p>Define the parameter <b>m</b> of the Strain Hardening creep formulation: <ul><b>&epsilon;&#775; = A*&sigma;<sup>n</sup>*&epsilon;<sup>m</sup></b></ul></p>",
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "TimeHardeningCreepFormulation" : {
        "title" : "Time hardening",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TimeHardeningCreepFormulation",
            "default" : "TIME_HARDENING"
          },
          "a" : {
            "$ref" : "#/components/schemas/Dimensional_StrainRate"
          },
          "n" : {
            "title" : "N",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the parameter <b>n</b> of the Time Hardening creep formulation: <ul><b>&epsilon;&#775; = A*&sigma;<sup>n</sup>*t<sup>m</sup></b></ul></p>",
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
          },
          "m" : {
            "title" : "M",
            "maximum" : 0.0,
            "exclusiveMaximum" : false,
            "minimum" : -1.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "<p>Define the parameter <b>m</b> of the Time Hardening creep formulation: <ul><b>&epsilon;&#775; = A*&sigma;<sup>n</sup>*t<sup>m</sup></b></ul></p>",
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "HyperElasticMaterialBehavior" : {
        "title" : "Hyper elastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the material behavior for your problem. </p> <br /><br />Important remarks:<br /> <ul><li>Choose <b>Linear elastic</b> if the stress-strain relationship of your material is linear.</li><li>Choose <b>Elasto-plastic</b> if the stress-strain relationship of your material is non-linear after some point e.g. yielding point.</li><li>Choose <b>Hyperelastic</b> if your material responds elastically even at higher deformations.</li></ul> \n\nSchema name: HyperElasticMaterialBehavior",
            "default" : "HYPER_ELASTIC"
          },
          "hyperElasticModel" : {
            "$ref" : "#/components/schemas/OneOf_HyperElasticMaterialBehaviorHyperElasticModel"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the material behavior for your problem. </p> <br /><br />Important remarks:<br /> <ul><li>Choose <b>Linear elastic</b> if the stress-strain relationship of your material is linear.</li><li>Choose <b>Elasto-plastic</b> if the stress-strain relationship of your material is non-linear after some point e.g. yielding point.</li><li>Choose <b>Hyperelastic</b> if your material responds elastically even at higher deformations.</li></ul> "
      },
      "MooneyRivlinHyperElasticModel" : {
        "title" : "Mooney Rivlin",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MooneyRivlinHyperElasticModel",
            "default" : "MOONEY_RIVLIN"
          },
          "c10" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c01" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "d1" : {
            "$ref" : "#/components/schemas/Dimensional_InvPressure"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_InvPressure" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/Pa", "in²/lbf" ]
          }
        },
        "additionalProperties" : false
      },
      "NeoHookeHyperElasticModel" : {
        "title" : "Neo Hooke",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NeoHookeHyperElasticModel",
            "default" : "NEO_HOOKE"
          },
          "c10" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "d1" : {
            "$ref" : "#/components/schemas/Dimensional_InvPressure"
          }
        },
        "additionalProperties" : false
      },
      "SignoriniHyperElasticModel" : {
        "title" : "Signorini",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SignoriniHyperElasticModel",
            "default" : "SIGNORINI"
          },
          "c10" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c01" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c20" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "d1" : {
            "$ref" : "#/components/schemas/Dimensional_InvPressure"
          }
        },
        "additionalProperties" : false
      },
      "YeohHyperElasticModel" : {
        "title" : "Yeoh",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: YeohHyperElasticModel",
            "default" : "YEOH"
          },
          "c10" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c20" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c30" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "d1" : {
            "$ref" : "#/components/schemas/Dimensional_InvPressure"
          }
        },
        "additionalProperties" : false
      },
      "OgdenHyperElasticModel" : {
        "title" : "Ogden",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the hyperelastic material model that should be used. All models derive the stress-strain relation from a strain energy function defined by the material model parameters.</p>\n\nSchema name: OgdenHyperElasticModel",
            "default" : "OGDEN"
          },
          "order" : {
            "$ref" : "#/components/schemas/OneOf_OgdenHyperElasticModelOrder"
          },
          "d1" : {
            "$ref" : "#/components/schemas/Dimensional_InvPressure"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the hyperelastic material model that should be used. All models derive the stress-strain relation from a strain energy function defined by the material model parameters.</p>"
      },
      "FirstOrderOgden" : {
        "title" : "First order",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FirstOrderOgden",
            "default" : "FIRST_ORDER_OGDEN"
          },
          "mu1" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "alpha1" : {
            "title" : "α<1>",
            "type" : "number",
            "description" : "<p>Provide a parameter value for the Ogden coefficient <b>&alpha;<sub>1</sub></b>. </p>"
          }
        },
        "additionalProperties" : false
      },
      "SecondOrderOgden" : {
        "title" : "Second order",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SecondOrderOgden",
            "default" : "SECOND_ORDER_OGDEN"
          },
          "mu1" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "alpha1" : {
            "title" : "α<1>",
            "type" : "number",
            "description" : "<p>Provide a parameter value for the Ogden coefficient <b>&alpha;<sub>1</sub></b>. </p>"
          },
          "mu2" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "alpha2" : {
            "title" : "α<2>",
            "type" : "number",
            "description" : "<p>Provide a parameter value for the Ogden coefficient <b>&alpha;<sub>2</sub></b>. </p>"
          }
        },
        "additionalProperties" : false
      },
      "ThirdOrderOgden" : {
        "title" : "Third order",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ThirdOrderOgden",
            "default" : "THIRD_ORDER_OGDEN"
          },
          "mu1" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "alpha1" : {
            "title" : "α<1>",
            "type" : "number",
            "description" : "<p>Provide a parameter value for the Ogden coefficient <b>&alpha;<sub>1</sub></b>. </p>"
          },
          "mu2" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "alpha2" : {
            "title" : "α<2>",
            "type" : "number",
            "description" : "<p>Provide a parameter value for the Ogden coefficient <b>&alpha;<sub>2</sub></b>. </p>"
          },
          "mu3" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "alpha3" : {
            "title" : "α<3>",
            "type" : "number",
            "description" : "<p>Provide a parameter value for the Ogden coefficient <b>&alpha;<sub>3</sub></b>. </p>"
          }
        },
        "additionalProperties" : false
      },
      "PlasticMaterialBehavior" : {
        "title" : "Elasto-plastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the material behavior for your problem. </p> <br /><br />Important remarks:<br /> <ul><li>Choose <b>Linear elastic</b> if the stress-strain relationship of your material is linear.</li><li>Choose <b>Elasto-plastic</b> if the stress-strain relationship of your material is non-linear after some point e.g. yielding point.</li><li>Choose <b>Hyperelastic</b> if your material responds elastically even at higher deformations.</li></ul> \n\nSchema name: PlasticMaterialBehavior",
            "default" : "PLASTIC"
          },
          "elastoPlasticModel" : {
            "$ref" : "#/components/schemas/OneOf_PlasticMaterialBehaviorElastoPlasticModel"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the material behavior for your problem. </p> <br /><br />Important remarks:<br /> <ul><li>Choose <b>Linear elastic</b> if the stress-strain relationship of your material is linear.</li><li>Choose <b>Elasto-plastic</b> if the stress-strain relationship of your material is non-linear after some point e.g. yielding point.</li><li>Choose <b>Hyperelastic</b> if your material responds elastically even at higher deformations.</li></ul> "
      },
      "BilinearElastoPlasticModel" : {
        "title" : "Bilinear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: BilinearElastoPlasticModel",
            "default" : "BILINEAR"
          },
          "youngsModulus" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "poissonsRatio" : {
            "$ref" : "#/components/schemas/OneOf_BilinearElastoPlasticModelPoissonsRatio"
          },
          "hardeningModel" : {
            "$ref" : "#/components/schemas/OneOf_BilinearElastoPlasticModelHardeningModel"
          }
        },
        "additionalProperties" : false
      },
      "StrainHardeningModel" : {
        "title" : "Strain hardening",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StrainHardeningModel",
            "default" : "STRAIN_HARDENING"
          },
          "yieldStress" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "ultimateStress" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "ultimateStrain" : {
            "$ref" : "#/components/schemas/ConstantFunction"
          }
        },
        "additionalProperties" : false
      },
      "PerfectPlasticityModel" : {
        "title" : "Perfect plasticity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PerfectPlasticityModel",
            "default" : "PERFECT_PLASTICITY"
          },
          "yieldStress" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "MultilinearElastoPlasticModel" : {
        "title" : "Multilinear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MultilinearElastoPlasticModel",
            "default" : "MULTILINEAR"
          },
          "plasticHardening" : {
            "$ref" : "#/components/schemas/IsotropicPlasticHardening"
          }
        },
        "additionalProperties" : false
      },
      "IsotropicPlasticHardening" : {
        "title" : "Isotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define the plastic hardening type of the material.</p>\n\nSchema name: IsotropicPlasticHardening",
            "default" : "ISOTROPIC"
          },
          "youngsModulus" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "poissonsRatio" : {
            "$ref" : "#/components/schemas/OneOf_IsotropicPlasticHardeningPoissonsRatio"
          },
          "vonMisesStress" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define the plastic hardening type of the material.</p>"
      },
      "VariableGroup_STRAIN" : {
        "type" : "object",
        "properties" : {
          "E" : {
            "$ref" : "#/components/schemas/Unit_Dimensionless"
          }
        }
      },
      "Unit_Dimensionless" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "", "%" ]
          }
        }
      },
      "VariableGroup_TEMP_STRAIN" : {
        "type" : "object",
        "properties" : {
          "E" : {
            "$ref" : "#/components/schemas/Unit_Dimensionless"
          },
          "Temperature" : {
            "$ref" : "#/components/schemas/Unit_Temperature"
          }
        }
      },
      "JohnsonCookElastoPlasticModel" : {
        "title" : "Johnson-Cook",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: JohnsonCookElastoPlasticModel",
            "default" : "JOHNSON_COOK"
          },
          "youngsModulus" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "poissonsRatio" : {
            "$ref" : "#/components/schemas/OneOf_JohnsonCookElastoPlasticModelPoissonsRatio"
          },
          "initialYieldStress" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "hardeningCoefficient" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "hardeningExponent" : {
            "title" : "(n) Hardening exponent",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The strain hardening exponent describes the rate at which the material hardens with respect to plastic strain."
          },
          "strainRateEffect" : {
            "title" : "Enable strain rate hardening",
            "type" : "boolean",
            "description" : "This term indicates how the flow stress increases with increasing strain rate.",
            "default" : false,
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
          },
          "strainRateHardeningCoefficient" : {
            "title" : "(C) Strain rate hardening coefficient",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The strain rate hardening coefficient describes the sensitivity of the material's flow stress to changes in the strain rate.",
            "default" : 0.0,
            "x-showWhen" : [ "1/strainRateEffect == true" ]
          },
          "referenceStrainRate" : {
            "$ref" : "#/components/schemas/Dimensional_StrainRate"
          },
          "thermalSofteningEffect" : {
            "title" : "Enable thermal softening",
            "type" : "boolean",
            "description" : "This term indicates how the material softens with increasing temperature.",
            "default" : false,
            "x-showWhen" : [ "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
          },
          "thermalSofteningExponent" : {
            "title" : "(m) Thermal softening exponent",
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "The thermal softening exponent describes the rate at which the material's strength decreases with increasing temperature.",
            "x-showWhen" : [ "1/thermalSofteningEffect == true" ]
          },
          "referenceTemperatureJC" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "meltingTemperatureJC" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_Density" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_DensityValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/m³", "lb/in³", "g/mm³", "g/cm³", "t/mm³", "lb/ft³" ]
          }
        },
        "additionalProperties" : false
      },
      "IsotropicExpansion" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent.</p>\n\nSchema name: IsotropicExpansion",
            "default" : "ISOTROPIC"
          },
          "expansionCoefficient" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalExpansionRate"
          },
          "referenceTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent.</p>"
      },
      "IsotropicConductivity" : {
        "title" : "Isotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent. Orthotropic means directionally dependent.</p>\n\nSchema name: IsotropicConductivity",
            "default" : "ISOTROPIC"
          },
          "thermalConductivity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalConductivity"
          },
          "thermalConductivityFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalConductivity"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent. Orthotropic means directionally dependent.</p>"
      },
      "DimensionalFunction_ThermalConductivity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_ThermalConductivityValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W/(m·K)", "Btu/(s·in·°F)", "W/(mm·K)", "W/(cm·K)", "Btu/(min·in·°F)", "Btu/(h·in·°F)", "Btu/(s·ft·°F)", "Btu/(min·ft·°F)", "Btu/(h·ft·°F)" ]
          }
        },
        "additionalProperties" : false
      },
      "OrthotropicConductivity" : {
        "title" : "Orthotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent. Orthotropic means directionally dependent.</p>\n\nSchema name: OrthotropicConductivity",
            "default" : "ORTHOTROPIC"
          },
          "thermalConductivityX" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalConductivity"
          },
          "thermalConductivityY" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalConductivity"
          },
          "thermalConductivityZ" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalConductivity"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent. Orthotropic means directionally dependent.</p>"
      },
      "DimensionalFunction_SpecificHeat" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_SpecificHeatValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "J/(kg·K)", "Btu/(lb·°F)" ]
          }
        },
        "additionalProperties" : false
      },
      "MaterialLibraryReference" : {
        "type" : "object",
        "properties" : {
          "materialGroupId" : {
            "type" : "string"
          },
          "materialId" : {
            "type" : "string"
          },
          "interpolationParameters" : {
            "type" : "object",
            "additionalProperties" : {
              "$ref" : "#/components/schemas/InterpolationParameter"
            }
          }
        },
        "additionalProperties" : false
      },
      "InterpolationParameter" : {
        "required" : [ "unit", "value" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string"
          }
        },
        "additionalProperties" : false
      },
      "SolidInitialConditions" : {
        "type" : "object",
        "properties" : {
          "displacement" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunctionInitialConditionWithDomains_Length"
          },
          "velocity" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunctionInitialConditionWithDomains_Speed"
          },
          "acceleration" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunctionInitialConditionWithDomains_Acceleration"
          },
          "stress" : {
            "$ref" : "#/components/schemas/StressInitialConditionDomains"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/DimensionalFunctionInitialConditionDomains_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVectorFunctionInitialConditionWithDomains_Length" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Length"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainBasedDimensionalVectorFunctionInitialCondition_Length"
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVectorFunction_Length" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalVectorFunction_LengthValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m", "in", "mm", "cm", "ft", "yd" ]
          }
        },
        "additionalProperties" : false
      },
      "ComponentVectorFunction" : {
        "title" : "Component vector function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ComponentVectorFunction",
            "default" : "COMPONENT"
          },
          "x" : {
            "$ref" : "#/components/schemas/OneOf_ComponentVectorFunctionX"
          },
          "y" : {
            "$ref" : "#/components/schemas/OneOf_ComponentVectorFunctionY"
          },
          "z" : {
            "$ref" : "#/components/schemas/OneOf_ComponentVectorFunctionZ"
          }
        },
        "additionalProperties" : false
      },
      "TableDefinedVectorFunction" : {
        "title" : "Table defined vector function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TableDefinedVectorFunction",
            "default" : "TABLE_DEFINED"
          },
          "label" : {
            "title" : "Label",
            "type" : "string",
            "default" : "Table"
          },
          "tableId" : {
            "type" : "string",
            "description" : "The ID of the imported table.",
            "format" : "uuid"
          },
          "resultIndex" : {
            "title" : "Result index",
            "type" : "array",
            "description" : "Indicates which column(s) of the table contains the result values. One-based indexing must be used. For example, set this field to '[2]' if the second column of the table contains the dependent variable values.",
            "items" : {
              "type" : "integer"
            }
          },
          "independentVariables" : {
            "title" : "Independent variables",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TableFunctionParameter"
            }
          },
          "separator" : {
            "title" : "Separator",
            "type" : "string",
            "description" : "Values in each row are separated by this character. Also known as a delimiter.",
            "default" : ","
          },
          "outOfBounds" : {
            "title" : "Out of bounds",
            "type" : "string",
            "default" : "CLAMP",
            "enum" : [ "CLAMP" ]
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_X_Y_Z" : {
        "type" : "object",
        "properties" : {
          "X" : {
            "$ref" : "#/components/schemas/Unit_Length"
          },
          "Y" : {
            "$ref" : "#/components/schemas/Unit_Length"
          },
          "Z" : {
            "$ref" : "#/components/schemas/Unit_Length"
          }
        }
      },
      "SubdomainBasedDimensionalVectorFunctionInitialCondition_Length" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Length"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVectorFunctionInitialConditionWithDomains_Speed" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Speed"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainBasedDimensionalVectorFunctionInitialCondition_Speed"
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVectorFunction_Speed" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalVectorFunction_SpeedValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s", "in/s", "m/min", "m/h", "mm/s", "mm/min", "mm/h", "cm/s", "cm/min", "cm/h", "km/h", "ft/s", "ft/min", "ft/h", "in/min", "in/h", "mph", "kn" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainBasedDimensionalVectorFunctionInitialCondition_Speed" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Speed"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVectorFunctionInitialConditionWithDomains_Acceleration" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Acceleration"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainBasedDimensionalVectorFunctionInitialCondition_Acceleration"
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVectorFunction_Acceleration" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalVectorFunction_AccelerationValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s²", "in/s²", "G" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainBasedDimensionalVectorFunctionInitialCondition_Acceleration" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Acceleration"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "StressInitialConditionDomains" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/StressTensor_Pressure"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainStressInitialCondition"
            }
          }
        },
        "additionalProperties" : false
      },
      "StressTensor_Pressure" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "sigmaXX" : {
            "$ref" : "#/components/schemas/OneOf_StressTensor_PressureSigmaXX"
          },
          "sigmaYY" : {
            "$ref" : "#/components/schemas/OneOf_StressTensor_PressureSigmaYY"
          },
          "sigmaZZ" : {
            "$ref" : "#/components/schemas/OneOf_StressTensor_PressureSigmaZZ"
          },
          "sigmaYZ" : {
            "$ref" : "#/components/schemas/OneOf_StressTensor_PressureSigmaYZ"
          },
          "sigmaXZ" : {
            "$ref" : "#/components/schemas/OneOf_StressTensor_PressureSigmaXZ"
          },
          "sigmaXY" : {
            "$ref" : "#/components/schemas/OneOf_StressTensor_PressureSigmaXY"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Pa", "lbf/in²", "hPa", "kPa", "MPa", "atm", "mbar", "bar", "mH2O", "mmH2O", "mmHg", "dyne/cm²", "inH2O", "ftH2O", "inHg", "psf" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainStressInitialCondition" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/StressTensor_Pressure"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunctionInitialConditionDomains_Temperature" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionalFunctionInitialCondition_Temperature"
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_Temperature" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_TemperatureValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "°C", "°F", "K" ],
            "x-MissingConversions" : true
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionalFunctionInitialCondition_Temperature" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "BoltPreloadBC" : {
        "title" : "Bolt preload",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<b>Bolt preload</b> boundary condition helps to model pre-stressed bolts in a CAD geometry for structural analysis. Enter a preload <i>force</i> to be assigned to cylindrical faces representing the shank of the bolt. <br><b>Note:</b><ul><li>These faces should be continuous and not be assigned to contact definitions.</li><li>Each bolt gets only one load, if multiple faces for the same bolt are assigned, they get ignored.</li><li>The applied load <b>does not get</b> distributed if multiple bolts are assigned.</li></ul> <img src=\"/spec/resources/help/imgs/bolt_preload_help_text.png\" class=\"helpPopupImage\"/> <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/bolt-preload/' target='_blank'>Learn more</a>.\n\nSchema name: BoltPreloadBC",
            "default" : "BOLT_PRELOAD"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "preload" : {
            "$ref" : "#/components/schemas/ForcePreload"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<b>Bolt preload</b> boundary condition helps to model pre-stressed bolts in a CAD geometry for structural analysis. Enter a preload <i>force</i> to be assigned to cylindrical faces representing the shank of the bolt. <br><b>Note:</b><ul><li>These faces should be continuous and not be assigned to contact definitions.</li><li>Each bolt gets only one load, if multiple faces for the same bolt are assigned, they get ignored.</li><li>The applied load <b>does not get</b> distributed if multiple bolts are assigned.</li></ul> <img src=\"/spec/resources/help/imgs/bolt_preload_help_text.png\" class=\"helpPopupImage\"/> <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/bolt-preload/' target='_blank'>Learn more</a>."
      },
      "ElasticSupportBC" : {
        "title" : "Elastic support",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>The <b>elastic support</b> constraint can be used to model an <b>elastic foundation</b> between the assigned surfaces and the rigid ground. Additionally it can be used to <b>prevent rigid body motions</b> in a nonlinear analysis. The constraint acts on tension and compression forces and all stiffness values are expressed in the global coordinate system.<br><a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/elastic-support/' target='_blank'>Learn more</a>.</p>\n\nSchema name: ElasticSupportBC",
            "default" : "ELASTIC_SUPPORT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "springStiffness" : {
            "$ref" : "#/components/schemas/OneOf_ElasticSupportBCSpringStiffness"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>The <b>elastic support</b> constraint can be used to model an <b>elastic foundation</b> between the assigned surfaces and the rigid ground. Additionally it can be used to <b>prevent rigid body motions</b> in a nonlinear analysis. The constraint acts on tension and compression forces and all stiffness values are expressed in the global coordinate system.<br><a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/elastic-support/' target='_blank'>Learn more</a>.</p>"
      },
      "IsotropicSpringStiffness" : {
        "title" : "Isotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicSpringStiffness",
            "default" : "ISOTROPIC"
          },
          "stiffnessDefinition" : {
            "$ref" : "#/components/schemas/OneOf_IsotropicSpringStiffnessStiffnessDefinition"
          }
        },
        "additionalProperties" : false
      },
      "TotalIsotropicStiffnessDefinition" : {
        "title" : "Total",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalIsotropicStiffnessDefinition",
            "default" : "TOTAL_ISOTROPIC"
          },
          "total" : {
            "$ref" : "#/components/schemas/Dimensional_SurfaceTension"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_SurfaceTension" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N/m", "lbf/in" ]
          }
        },
        "additionalProperties" : false
      },
      "DistributedIsotropicStiffnessDefinition" : {
        "title" : "Distributed",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DistributedIsotropicStiffnessDefinition",
            "default" : "DISTRIBUTED_ISOTROPIC"
          },
          "distributed" : {
            "$ref" : "#/components/schemas/Dimensional_VolumeForce"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_VolumeForce" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N/m³", "lbf/in³" ]
          }
        },
        "additionalProperties" : false
      },
      "OrthotropicSpringStiffness" : {
        "title" : "Orthotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OrthotropicSpringStiffness",
            "default" : "ORTHOTROPIC"
          },
          "stiffnessDefinition" : {
            "$ref" : "#/components/schemas/OneOf_OrthotropicSpringStiffnessStiffnessDefinition"
          }
        },
        "additionalProperties" : false
      },
      "TotalOrthotropicStiffnessDefinition" : {
        "title" : "Total",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalOrthotropicStiffnessDefinition",
            "default" : "TOTAL_ORTHOTROPIC"
          },
          "total" : {
            "$ref" : "#/components/schemas/DimensionalVector_SurfaceTension"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_SurfaceTension" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N/m", "lbf/in" ]
          }
        },
        "additionalProperties" : false
      },
      "DistributedOrthotropicStiffnessDefinition" : {
        "title" : "Distributed",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DistributedOrthotropicStiffnessDefinition",
            "default" : "DISTRIBUTED_ORTHOTROPIC"
          },
          "distributed" : {
            "$ref" : "#/components/schemas/DimensionalVector_VolumeForce"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_VolumeForce" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N/m³", "lbf/in³" ]
          }
        },
        "additionalProperties" : false
      },
      "FixedSupportBC" : {
        "title" : "Fixed support",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>If a <b>fixed support</b> boundary condition is used, all degrees of freedom of the selected entities are fixed at zero. This constraint is often used to model a fixation to the ground or an undeformable part.<br><a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/fixed-support-constraint-type/' target='_blank'>Learn more</a>.</p>\n\nSchema name: FixedSupportBC",
            "default" : "FIXED_SUPPORT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>If a <b>fixed support</b> boundary condition is used, all degrees of freedom of the selected entities are fixed at zero. This constraint is often used to model a fixation to the ground or an undeformable part.<br><a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/fixed-support-constraint-type/' target='_blank'>Learn more</a>.</p>"
      },
      "FixedValueBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a boundary condition for the <b>displacement vector</b> variable. You can define prescribed values for the displacement of the assigned groups in every coordinate direction (x,y,z) or leave it unconstrained in order to let the entity move freely. <br /><br />Important remarks: <br /><ul><li>Choose 0 as value in order to fix your selection.</li><li>Do not constrain entities in directions where a load boundary condition is applied.</li><li>Do not constrain entities with multiple Dirichlet boundary conditions in one direction (overconstrained).</li><li>Do not constrain slave entities of <b>Contact Constraints</b> as they are constrained by the master in that direction (overconstrained).</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/fixed-value-boundary-condition-type/' target='_blank'>Learn more</a>.\n\nSchema name: FixedValueBC",
            "default" : "FIXED_VALUE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "displacement" : {
            "$ref" : "#/components/schemas/DimensionalPartialVectorFunction_Length"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a boundary condition for the <b>displacement vector</b> variable. You can define prescribed values for the displacement of the assigned groups in every coordinate direction (x,y,z) or leave it unconstrained in order to let the entity move freely. <br /><br />Important remarks: <br /><ul><li>Choose 0 as value in order to fix your selection.</li><li>Do not constrain entities in directions where a load boundary condition is applied.</li><li>Do not constrain entities with multiple Dirichlet boundary conditions in one direction (overconstrained).</li><li>Do not constrain slave entities of <b>Contact Constraints</b> as they are constrained by the master in that direction (overconstrained).</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/fixed-value-boundary-condition-type/' target='_blank'>Learn more</a>."
      },
      "DimensionalPartialVectorFunction_Length" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/PartialVectorFunction"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m", "in", "mm", "cm", "ft", "yd" ]
          }
        },
        "additionalProperties" : false
      },
      "PartialVectorFunction" : {
        "type" : "object",
        "properties" : {
          "x" : {
            "$ref" : "#/components/schemas/OneOf_PartialVectorFunctionX"
          },
          "y" : {
            "$ref" : "#/components/schemas/OneOf_PartialVectorFunctionY"
          },
          "z" : {
            "$ref" : "#/components/schemas/OneOf_PartialVectorFunctionZ"
          }
        },
        "additionalProperties" : false
      },
      "PrescribedOptionalFunction" : {
        "title" : "Prescribed optional function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PrescribedOptionalFunction",
            "default" : "PRESCRIBED"
          },
          "value" : {
            "$ref" : "#/components/schemas/OneOf_PrescribedOptionalFunctionValue"
          }
        },
        "additionalProperties" : false
      },
      "UnconstrainedOptionalFunction" : {
        "title" : "Unconstrained optional function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: UnconstrainedOptionalFunction",
            "default" : "UNCONSTRAINED"
          }
        },
        "additionalProperties" : false
      },
      "PointMassBC" : {
        "title" : "Point mass",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define a <b>Point mass</b> boundary condition in order to insert an additional mass on a specific location of the active model.</p>\n\nSchema name: PointMassBC",
            "default" : "POINT_MASS"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "mass" : {
            "$ref" : "#/components/schemas/Dimensional_Mass"
          },
          "massMomentOfInertia" : {
            "$ref" : "#/components/schemas/DimensionalVector_MomentOfInertia"
          },
          "externalPoint" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "deformationBehavior" : {
            "title" : "Deformation behavior",
            "type" : "string",
            "description" : "<p>Choose the deformation behavior of the entity which the point mass is connected to. If <b>deformable</b> is selected, the entity is allowed to deform, selecting <b>undeformable</b> leads to a rigid entity.</p>",
            "default" : "DEFORMABLE",
            "enum" : [ "DEFORMABLE", "UNDEFORMABLE" ]
          },
          "enableSearchRadius" : {
            "title" : "Enable search radius",
            "type" : "boolean",
            "default" : false
          },
          "searchRadius" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define a <b>Point mass</b> boundary condition in order to insert an additional mass on a specific location of the active model.</p>"
      },
      "Dimensional_Mass" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg", "lb", "t" ]
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_MomentOfInertia" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg·m²", "lb·in²" ]
          }
        },
        "additionalProperties" : false
      },
      "DistributedMassBC" : {
        "title" : "Distributed mass",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define a <b>Distributed mass</b> boundary condition in order to insert an additional mass on a specific face of the active model.</p>\n\nSchema name: DistributedMassBC",
            "default" : "DISTRIBUTED_MASS"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "massDefinition" : {
            "$ref" : "#/components/schemas/OneOf_DistributedMassBCMassDefinition"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define a <b>Distributed mass</b> boundary condition in order to insert an additional mass on a specific face of the active model.</p>"
      },
      "TotalMass" : {
        "title" : "Total",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalMass",
            "default" : "TOTAL_MASS"
          },
          "mass" : {
            "$ref" : "#/components/schemas/Dimensional_Mass"
          }
        },
        "additionalProperties" : false
      },
      "AreaDensityMass" : {
        "title" : "Area density",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AreaDensityMass",
            "default" : "AREA_DENSITY_MASS"
          },
          "mass" : {
            "$ref" : "#/components/schemas/Dimensional_MassAreaDensity"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_MassAreaDensity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/m²", "lb/in²", "g/m²", "gr/ft²" ]
          }
        },
        "additionalProperties" : false
      },
      "RemoteDisplacementLoadBC" : {
        "title" : "Remote displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition restrains the displacement of a face or edge relative to a specified remote point. Therefore the assignment is connected to the remote point with RBE3 (deformable) or MPC (undeformable) conditions and the defined constraints are applied to the remote point.<br /><br />Important remarks: <br /><ul><li>As the assignments are connected to the remote point, additional constraints on these nodes may lead to overconstrained systems.</li><li>If the number of nodes of the assigment is large (>1000), it is recommended to use the <b>MUMPS</b> or <b>PETSC</b> solver.</li><li>This boundary condition is only valid for small rotations. For large rotations, please use <b>Rotating motion</b> boundary conditions.</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/remote-displacement/' target='_blank'>Learn more</a>. \n\nSchema name: RemoteDisplacementLoadBC",
            "default" : "REMOTE_DISPLACEMENT_LOAD"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "displacement" : {
            "$ref" : "#/components/schemas/DimensionalPartialVectorFunction_Length"
          },
          "rotation" : {
            "$ref" : "#/components/schemas/DimensionalPartialVectorFunction_Angle"
          },
          "externalPoint" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "deformationBehavior" : {
            "title" : "Deformation behavior",
            "type" : "string",
            "description" : "<p>Choose the deformation behavior of the assigned entity. If <b>deformable</b> is selected, the entity is allowed to deform, selecting <b>undeformable</b> leads to a rigid entity.</p>",
            "default" : "DEFORMABLE",
            "enum" : [ "DEFORMABLE", "UNDEFORMABLE" ]
          },
          "enableSearchRadius" : {
            "title" : "Enable search radius",
            "type" : "boolean",
            "default" : false
          },
          "searchRadius" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition restrains the displacement of a face or edge relative to a specified remote point. Therefore the assignment is connected to the remote point with RBE3 (deformable) or MPC (undeformable) conditions and the defined constraints are applied to the remote point.<br /><br />Important remarks: <br /><ul><li>As the assignments are connected to the remote point, additional constraints on these nodes may lead to overconstrained systems.</li><li>If the number of nodes of the assigment is large (>1000), it is recommended to use the <b>MUMPS</b> or <b>PETSC</b> solver.</li><li>This boundary condition is only valid for small rotations. For large rotations, please use <b>Rotating motion</b> boundary conditions.</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/remote-displacement/' target='_blank'>Learn more</a>. "
      },
      "DimensionalPartialVectorFunction_Angle" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/PartialVectorFunction"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "rad", "°" ]
          }
        },
        "additionalProperties" : false
      },
      "RotatingMotionBC" : {
        "title" : "Rotating motion",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>The <b>rotating motion</b> constraint applies a predefined rigid body rotation to the assigned entities. The rotation axis, the base point, and the rotation angle needs to be specified. Each component can be defined with a formula or table input.<br /><br />Important remarks: <br /><ul><li>If a component of the rotation axis is input via formula or table, then ensure that the length of the axis vector is always positive.</li><li>If a continuous, transient rotation is required, then the rotation angle has to be given either as a formula or table value.</li></ul></p><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/rotating-motion/' target='_blank'>Learn more</a>.\n\nSchema name: RotatingMotionBC",
            "default" : "ROTATING_MOTION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "rotationOrigin" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Length"
          },
          "rotationAxis" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Length"
          },
          "omega" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Angle"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>The <b>rotating motion</b> constraint applies a predefined rigid body rotation to the assigned entities. The rotation axis, the base point, and the rotation angle needs to be specified. Each component can be defined with a formula or table input.<br /><br />Important remarks: <br /><ul><li>If a component of the rotation axis is input via formula or table, then ensure that the length of the axis vector is always positive.</li><li>If a continuous, transient rotation is required, then the rotation angle has to be given either as a formula or table value.</li></ul></p><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/rotating-motion/' target='_blank'>Learn more</a>."
      },
      "DimensionalFunction_Angle" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_AngleValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "rad", "°" ]
          }
        },
        "additionalProperties" : false
      },
      "SymmetryPlaneBC" : {
        "title" : "Symmetry plane",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition restrains the displacement of a face in its normal direction in order to represent a symmetry plane of the structure. Use this boundary condition to reduce the model size significantly if the geometry and the loading conditions are symmetric.<br /><br />Important remarks: <br /><ul><li>The solver uses linear relations between all three DOFs to constrian the normal movement, thus overcontraint conditions may appear if the edges of the selected faces are constrained by other displacement boundary conditions.</li><li>If the assigned faces are orthogonal to a global coordinate axes, it is recommended to directly specifiy the symmetry conditions with a <b>Fixed value</b> boundary condition.</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/symmetry/#symmetry-plane-boundary-condition-fea' target='_blank'>Learn more</a>.\n\nSchema name: SymmetryPlaneBC",
            "default" : "SYMMETRY_PLANE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition restrains the displacement of a face in its normal direction in order to represent a symmetry plane of the structure. Use this boundary condition to reduce the model size significantly if the geometry and the loading conditions are symmetric.<br /><br />Important remarks: <br /><ul><li>The solver uses linear relations between all three DOFs to constrian the normal movement, thus overcontraint conditions may appear if the edges of the selected faces are constrained by other displacement boundary conditions.</li><li>If the assigned faces are orthogonal to a global coordinate axes, it is recommended to directly specifiy the symmetry conditions with a <b>Fixed value</b> boundary condition.</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/symmetry/#symmetry-plane-boundary-condition-fea' target='_blank'>Learn more</a>."
      },
      "CyclicSymmetryBC" : {
        "title" : "Cyclic symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>The <b>cyclic symmetry</b> constraint enables to model only a sector of a 360° cyclic periodic structure and reduces the computation time and memory consumption considerably. The user defines the center and axis of the cyclic symmetry as well as the sector angle. The <b>master</b> and <b>slave</b> surfaces define the cyclic periodicity boundaries. <br /><br />Important remarks: <br /><ul><li>All DOFs of the slave nodes will be constrained, adding an additional constraint on those nodes may lead to an overconstrained system.</li><li>This is a <b>linear</b> constraint, so no large rotations or large deformations are allowed in the proximity of cyclic symmetry boundaries.</li></ul></li></ul> <img src=\"/spec/resources/help/imgs/cyclic_symmetry.png\" class=\"helpPopupImage\"/> <a href='https://www.simscale.com/knowledge-base/how-to-apply-cyclic-symmetry-fea' target='_blank'>Learn more</a>.</p>\n\nSchema name: CyclicSymmetryBC",
            "default" : "CYCLIC_SYMMETRY"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "enableHeatTransfer" : {
            "title" : "Enable heat transfer",
            "type" : "string",
            "description" : "<p>Define if heat transfer should be allowed across the contact. If <b>yes</b> is chosen a perfectly bonded heat contact is assumed whereas if <b>no</b> is selected no heat transfer across the contact is allowed. Mechanical contact stays with both options active. With the selection of <b>heat transfer only</b> no mechanical contact is activated but only a bonded heat contact.</p>",
            "default" : "YES",
            "enum" : [ "YES", "NO", "HEAT_TRANSFER_ONLY" ],
            "x-showWhen" : [ "type == THERMAL_MECHANICAL" ]
          },
          "axisOrigin" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "axisDirection" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "sectorAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "masterTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "slaveTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>The <b>cyclic symmetry</b> constraint enables to model only a sector of a 360° cyclic periodic structure and reduces the computation time and memory consumption considerably. The user defines the center and axis of the cyclic symmetry as well as the sector angle. The <b>master</b> and <b>slave</b> surfaces define the cyclic periodicity boundaries. <br /><br />Important remarks: <br /><ul><li>All DOFs of the slave nodes will be constrained, adding an additional constraint on those nodes may lead to an overconstrained system.</li><li>This is a <b>linear</b> constraint, so no large rotations or large deformations are allowed in the proximity of cyclic symmetry boundaries.</li></ul></li></ul> <img src=\"/spec/resources/help/imgs/cyclic_symmetry.png\" class=\"helpPopupImage\"/> <a href='https://www.simscale.com/knowledge-base/how-to-apply-cyclic-symmetry-fea' target='_blank'>Learn more</a>.</p>"
      },
      "CentrifugalForceBC" : {
        "title" : "Centrifugal force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This is a <b>centrifugal force</b> boundary condition. Each volume element of the selection is loaded with a centrifugal force which is calculated depending on its volume, the density of the assigned material, its distance from the axis of rotation and the defined rotational velocity.<br /><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/centrifugal-force/' target='_blank'>Learn more</a>.</p>\n\nSchema name: CentrifugalForceBC",
            "default" : "CENTRIFUGAL_FORCE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "rotation" : {
            "$ref" : "#/components/schemas/AngularRotation"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This is a <b>centrifugal force</b> boundary condition. Each volume element of the selection is loaded with a centrifugal force which is calculated depending on its volume, the density of the assigned material, its distance from the axis of rotation and the defined rotational velocity.<br /><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/centrifugal-force/' target='_blank'>Learn more</a>.</p>"
      },
      "AngularRotation" : {
        "title" : "Angular rotation",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AngularRotation",
            "default" : "ANGULAR_ROTATION"
          },
          "rotationCenter" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "rotationAxis" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "angularVelocity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_RotationSpeed"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_RotationSpeed" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_RotationSpeedValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "rad/s", "°/s", "RPM" ]
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_F" : {
        "type" : "object",
        "properties" : {
          "F" : {
            "$ref" : "#/components/schemas/Unit_Frequency"
          }
        }
      },
      "Unit_Frequency" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/s", "RPM", "Hz" ]
          }
        }
      },
      "FollowerPressureBC" : {
        "title" : "Follower pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "In contrast to ordinary pressure, the <b>follower pressure</b> boundary condition is applied normal to the surface of all face elements in the <b>deformed state</b>. This is a nonlinear boundary condition as the update of the geometry is required. In a linear analysis it becomes a simple <b>pressure</b> boundary condition.<br /><br />The following conditions are taken into account: <br /><ul><li>The current deformed state of the surface.</li><li>Any changes in the direction of the normals of assigned entities.</li><li>Changes in the surface area of the assigned faces.</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/follower-pressure/' target='_blank'>Learn more</a>.\n\nSchema name: FollowerPressureBC",
            "default" : "FOLLOWER_PRESSURE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "pressure" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "In contrast to ordinary pressure, the <b>follower pressure</b> boundary condition is applied normal to the surface of all face elements in the <b>deformed state</b>. This is a nonlinear boundary condition as the update of the geometry is required. In a linear analysis it becomes a simple <b>pressure</b> boundary condition.<br /><br />The following conditions are taken into account: <br /><ul><li>The current deformed state of the surface.</li><li>Any changes in the direction of the normals of assigned entities.</li><li>Changes in the surface area of the assigned faces.</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/follower-pressure/' target='_blank'>Learn more</a>."
      },
      "ForceLoadBC" : {
        "title" : "Force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This is a <b>force</b> boundary condition representing a <b>distributed force on the selection</b>. The total force is defined in the global coordinate system and each element of the assignment is loaded with a surface traction depending on the area of the element.<br /><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/force/' target='_blank'>Learn more</a>.</p>\n\nSchema name: ForceLoadBC",
            "default" : "FORCE_LOAD"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "force" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Force"
          },
          "scaling" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          },
          "phaseAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This is a <b>force</b> boundary condition representing a <b>distributed force on the selection</b>. The total force is defined in the global coordinate system and each element of the assignment is loaded with a surface traction depending on the area of the element.<br /><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/force/' target='_blank'>Learn more</a>.</p>"
      },
      "DimensionalVectorFunction_Force" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalVectorFunction_ForceValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N", "lbf", "dyne", "µN" ]
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_Dimensionless" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_DimensionlessValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "", "%" ]
          }
        },
        "additionalProperties" : false
      },
      "NodalLoadBC" : {
        "title" : "Nodal load",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a <b>force</b> boundary condition representing an equal point force on <b>each node of the assignment</b>. The total force applied on the assignment is calculated as the user defined forces times the number of nodes in the assignment.<br /><br />Important remarks: <br /><ul><li>Currently, it only works on <a href= https://www.simscale.com/docs/simulation-setup/meshing/mesh-upload/' target='_blank'>uploaded meshes</a></li><li>As the total load is depending on the number of nodes, and thus the mesh fineness, it is recommended only for loads on single nodes.</li><li>In most cases point loads are unphysical and distributed loads should be used instead.</li></ul>\n\nSchema name: NodalLoadBC",
            "default" : "NODAL_LOAD"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "force" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Force"
          },
          "scaling" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          },
          "phaseAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a <b>force</b> boundary condition representing an equal point force on <b>each node of the assignment</b>. The total force applied on the assignment is calculated as the user defined forces times the number of nodes in the assignment.<br /><br />Important remarks: <br /><ul><li>Currently, it only works on <a href= https://www.simscale.com/docs/simulation-setup/meshing/mesh-upload/' target='_blank'>uploaded meshes</a></li><li>As the total load is depending on the number of nodes, and thus the mesh fineness, it is recommended only for loads on single nodes.</li><li>In most cases point loads are unphysical and distributed loads should be used instead.</li></ul>"
      },
      "PressureBC" : {
        "title" : "Pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a <b>pressure</b> boundary condition representing a distributed load on the selection. It is applied normal to the surface of all face elements.<br /><br />Important remarks: <br /><ul><li>The applied total force depends on the surface area of the selection.</li><li>The normal direction of the faces is computed only in the undeformed state and not updated for large deformations.</li><li>For transient analyses you may define a <b>time dependent</b> value by uploading a table (csv-file).</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure/' target='_blank'>Learn more</a>.\n\nSchema name: PressureBC",
            "default" : "PRESSURE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "pressure" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "phaseAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a <b>pressure</b> boundary condition representing a distributed load on the selection. It is applied normal to the surface of all face elements.<br /><br />Important remarks: <br /><ul><li>The applied total force depends on the surface area of the selection.</li><li>The normal direction of the faces is computed only in the undeformed state and not updated for large deformations.</li><li>For transient analyses you may define a <b>time dependent</b> value by uploading a table (csv-file).</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure/' target='_blank'>Learn more</a>."
      },
      "RemoteForceLoadBC" : {
        "title" : "Remote force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a <b>remote force</b> boundary condition where the load is applied on the assignment via a remote point. Therefore the assignment is connected to the remote point with RBE3 (deformable) or MPC (undeformable) conditions and the defined force is applied to the remote point.<br /><br />Important remarks: <br /><ul><li>The total force will be <b>distributed on the selection</b>.</li><li>As the assignments are connected to the remote point, additional constraints on these nodes may lead to overconstrained systems.</li><li>If the number of nodes of the assignment is large (>1000), it is recommended to use the <b>MUMPS</b> or <b>PETSC</b> solver.</li><li>This boundary condition is only valid for small rotations. </li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/remote-force/' target='_blank'>Learn more</a>.\n\nSchema name: RemoteForceLoadBC",
            "default" : "REMOTE_FORCE_LOAD"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "force" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Force"
          },
          "moment" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Torque"
          },
          "scaling" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          },
          "phaseAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "remotePoint" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "deformationBehavior" : {
            "title" : "Deformation behavior",
            "type" : "string",
            "description" : "<p>Choose the deformation behavior of the assigned entity. If <b>deformable</b> is selected, the entitiy is allowed to deform without applying additional stiffness, selecting <b>undeformable</b> leads to a rigid entity.</p>",
            "default" : "DEFORMABLE",
            "enum" : [ "DEFORMABLE", "UNDEFORMABLE" ]
          },
          "enableSearchRadius" : {
            "title" : "Enable search radius",
            "type" : "boolean",
            "default" : false
          },
          "searchRadius" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a <b>remote force</b> boundary condition where the load is applied on the assignment via a remote point. Therefore the assignment is connected to the remote point with RBE3 (deformable) or MPC (undeformable) conditions and the defined force is applied to the remote point.<br /><br />Important remarks: <br /><ul><li>The total force will be <b>distributed on the selection</b>.</li><li>As the assignments are connected to the remote point, additional constraints on these nodes may lead to overconstrained systems.</li><li>If the number of nodes of the assignment is large (>1000), it is recommended to use the <b>MUMPS</b> or <b>PETSC</b> solver.</li><li>This boundary condition is only valid for small rotations. </li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/remote-force/' target='_blank'>Learn more</a>."
      },
      "DimensionalVectorFunction_Torque" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalVectorFunction_TorqueValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N·m", "lbf·in", "lbf·ft" ]
          }
        },
        "additionalProperties" : false
      },
      "SurfaceLoadBC" : {
        "title" : "Surface load",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a <b>surface load</b> boundary condition representing a distributed load on the selection. It is applied as surface traction in the global coordinate system.<br /><br />Important remarks: <br /><ul><li>The applied total force depends on the surface area of the selection</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/surface-load/' target='_blank'>Learn more</a>.\n\nSchema name: SurfaceLoadBC",
            "default" : "SURFACE_LOAD"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "load" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Pressure"
          },
          "scaling" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          },
          "phaseAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a <b>surface load</b> boundary condition representing a distributed load on the selection. It is applied as surface traction in the global coordinate system.<br /><br />Important remarks: <br /><ul><li>The applied total force depends on the surface area of the selection</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/surface-load/' target='_blank'>Learn more</a>."
      },
      "DimensionalVectorFunction_Pressure" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalVectorFunction_PressureValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Pa", "lbf/in²", "hPa", "kPa", "MPa", "atm", "mbar", "bar", "mH2O", "mmH2O", "mmHg", "dyne/cm²", "inH2O", "ftH2O", "inHg", "psf" ]
          }
        },
        "additionalProperties" : false
      },
      "VolumeLoadBC" : {
        "title" : "Volume load",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a <b>volume load</b> boundary condition representing a distributed load on the selected volumes applied in the global coordinate system and each element of the assignment is loaded with a volume force depending on the volume of the element.<br /><br />Important remarks: <br /><ul><li>The applied total force depends on the volume of the selection.</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/volume-load/' target='_blank'>Learn more</a>.\n\nSchema name: VolumeLoadBC",
            "default" : "VOLUME_LOAD"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "load" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_VolumeForce"
          },
          "scaling" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          },
          "phaseAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a <b>volume load</b> boundary condition representing a distributed load on the selected volumes applied in the global coordinate system and each element of the assignment is loaded with a volume force depending on the volume of the element.<br /><br />Important remarks: <br /><ul><li>The applied total force depends on the volume of the selection.</li></ul><a href= https://www.simscale.com/docs/simulation-setup/boundary-conditions/volume-load/' target='_blank'>Learn more</a>."
      },
      "DimensionalVectorFunction_VolumeForce" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalVectorFunction_VolumeForceValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N/m³", "lbf/in³" ]
          }
        },
        "additionalProperties" : false
      },
      "HingeConstraintBC" : {
        "title" : "Hinge constraint",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Replicate the behaviour of a freely rotating hinge fixed to the ground. Note that only a single face assignment is allowed. The assigned surface is constrained such that only rotational motion around the hinge axis is free. SimScale can automatically detect the axis of the hinge based on an assigned cylindrical surface, but the boundary condition also allows for a user-defined input.\n\nSchema name: HingeConstraintBC",
            "default" : "HINGE_CONSTRAINT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "axisDefinition" : {
            "$ref" : "#/components/schemas/OneOf_HingeConstraintBCAxisDefinition"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Replicate the behaviour of a freely rotating hinge fixed to the ground. Note that only a single face assignment is allowed. The assigned surface is constrained such that only rotational motion around the hinge axis is free. SimScale can automatically detect the axis of the hinge based on an assigned cylindrical surface, but the boundary condition also allows for a user-defined input."
      },
      "CustomAxisDefinition" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomAxisDefinition",
            "default" : "CUSTOM"
          },
          "axisOrigin" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "axisDirection" : {
            "$ref" : "#/components/schemas/DimensionalVector_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_Dimensionless" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "", "%" ]
          }
        },
        "additionalProperties" : false
      },
      "AutomaticAxisDefinition" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticAxisDefinition",
            "default" : "AUTOMATIC"
          }
        },
        "additionalProperties" : false
      },
      "SolidNumerics" : {
        "type" : "object",
        "properties" : {
          "harmonicSolutionMethod" : {
            "title" : "Solution method",
            "type" : "string",
            "description" : "Select the basis for the computation of the harmonic analysis.",
            "default" : "DIRECT",
            "enum" : [ "MODAL_BASED", "DIRECT" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          },
          "solver" : {
            "$ref" : "#/components/schemas/OneOf_SolidNumericsSolver"
          },
          "solveModel" : {
            "$ref" : "#/components/schemas/SolverModel"
          },
          "eigenSolver" : {
            "$ref" : "#/components/schemas/OneOf_SolidNumericsEigenSolver"
          },
          "calculateFrequency" : {
            "$ref" : "#/components/schemas/CalculateFrequency"
          },
          "eigenMode" : {
            "$ref" : "#/components/schemas/EigenModeVerification"
          },
          "enhancedAccuracy" : {
            "title" : "Enhanced accuracy",
            "type" : "boolean",
            "description" : "Further increase the accuracy of the results by running two simulations. The results of the first one will be used as input for the second one to fine-tune the setup.",
            "default" : false,
            "x-showWhen" : [ "type == FREQUENCY_ANALYSIS" ]
          },
          "modalBase" : {
            "$ref" : "#/components/schemas/ModalSolver"
          },
          "harmonicResponse" : {
            "$ref" : "#/components/schemas/HarmonicResponse"
          },
          "mechanicalTimeIntegrationType" : {
            "$ref" : "#/components/schemas/OneOf_SolidNumericsMechanicalTimeIntegrationType"
          },
          "mechanicalResolutionType" : {
            "$ref" : "#/components/schemas/OneOf_SolidNumericsMechanicalResolutionType"
          },
          "mechanicalLineSearch" : {
            "$ref" : "#/components/schemas/OneOf_SolidNumericsMechanicalLineSearch"
          },
          "thermalTimeIntegrationType" : {
            "$ref" : "#/components/schemas/ThetaMethodTimeIntegrationType"
          },
          "thermalResolutionType" : {
            "$ref" : "#/components/schemas/OneOf_SolidNumericsThermalResolutionType"
          },
          "thermalLineSearch" : {
            "$ref" : "#/components/schemas/OneOf_SolidNumericsThermalLineSearch"
          },
          "remotePointStiffnessMultiplier" : {
            "title" : "Remote point stiffness multiplier",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0
          }
        },
        "additionalProperties" : false
      },
      "MUMPSSolver" : {
        "title" : "Direct (MUMPS)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MUMPSSolver",
            "default" : "MUMPS"
          },
          "advancedMumpsSettings" : {
            "$ref" : "#/components/schemas/AdvancedMUMPSSettings"
          }
        },
        "additionalProperties" : false
      },
      "AdvancedMUMPSSettings" : {
        "type" : "object",
        "properties" : {
          "forceSymmetric" : {
            "title" : "Force symmetric",
            "type" : "boolean",
            "description" : "Choose if you want to enforce a symmetric matrix.",
            "default" : false,
            "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == HEAT_TRANSFER && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
          },
          "enableSingularityDetection" : {
            "title" : "Enable singularity detection",
            "type" : "boolean",
            "description" : "Enable the check for singularities in the model. This is helpful for debugging, to spot problems with the setup.",
            "default" : true,
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL]", "type == HARMONIC_ANALYSIS && numerics.harmonicSolutionMethod == DIRECT" ]
          },
          "precisionSingularityDetection" : {
            "title" : "Precision singularity detection",
            "maximum" : 13,
            "exclusiveMaximum" : false,
            "minimum" : 6,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Define the precision value for the detection of a singular matrix. Positive values enable the check, with 9 being a good starting point. Smaller values make the check more strict. This is an advanced option that should only be used to debug a model.",
            "default" : 9,
            "x-showWhen" : [ "type == FREQUENCY_ANALYSIS", "type == HARMONIC_ANALYSIS && numerics.harmonicSolutionMethod == MODAL_BASED", "1/enableSingularityDetection == true" ]
          },
          "stopIfSingular" : {
            "title" : "Stop if singular",
            "type" : "boolean",
            "description" : "Choose if the calculation should be stopped if the problem turns out to be singular.",
            "default" : false,
            "x-showWhen" : [ "type == FREQUENCY_ANALYSIS", "type == HARMONIC_ANALYSIS && numerics.harmonicSolutionMethod == MODAL_BASED", "1/enableSingularityDetection == true" ]
          },
          "matrixType" : {
            "title" : "Matrix type",
            "type" : "string",
            "description" : "<p>Choose the type of your system matrix by directly selecting the appropriate type or using the <b>automatic detection</b>. With the selection <b>automatic detection</b> the matrix type <b>symmetric positive indefinite</b> is selected if a symmetric system matrix is detected, and <b>asymmetric</b> otherwise.",
            "default" : "AUTOMATIC_DETECTION",
            "enum" : [ "ASYMMETRIC", "AUTOMATIC_DETECTION", "SYMMETRIC_POSITIVE_INDEFINITE" ]
          },
          "memoryPercentageForPivoting" : {
            "title" : "Memory for pivoting (%)",
            "type" : "number",
            "description" : "Define how much additional memory should be reserved for the pivoting operations. If MUMPS estimates that the necessary space for factorising the matrix would be 100, choosing a value of 20 would mean that MUMPS allocates a memory space of 120.",
            "default" : 20
          },
          "linearSystemRelativeResidual" : {
            "title" : "Linear system relative residual",
            "type" : "number",
            "description" : "Set the maximum allowable numerical error in solving the linear equation system. Use -1 if you do not wish to carry out a check on the solution error (not recommended).",
            "default" : 1.0E-5,
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == HEAT_TRANSFER && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ]
          },
          "matrixFilteringThreshold" : {
            "title" : "Matrix filtering threshold",
            "type" : "number",
            "description" : "This parameter allows a filtration of the matrix entries that are saved and possibly passed to the nonlinear algorithm (Newton) and is similar to a relaxation mechanism. If the given threshold value is strictly positive, MUMPS only saves the matrix entries that satisfy the following condition: |K<sub>ij</sub>| value*(|K<sub>ii</sub>|+|K<sub>jj</sub>|). Thus using this functionality might save computation time as well as memory consumption, but the effects strongly depend on the given value and is only advised for the experienced user.",
            "default" : -1,
            "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == HEAT_TRANSFER && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
          },
          "singlePrecision" : {
            "title" : "Single precision",
            "type" : "boolean",
            "description" : "If this option is activated the matrix factorisation is done with single precision and thus a reduction in memory consumption (often about 50%) and computation time is gained if the problem is well conditioned. If the problem is ill-conditioned one risks that in a nonlinear computation the newton algorithm fails to converge.",
            "default" : false,
            "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == HEAT_TRANSFER && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
          },
          "preprocessing" : {
            "title" : "Preprocessing",
            "type" : "boolean",
            "description" : "If this option is activated MUMPS performs a pre-processing on order to identify the best parameter setting for some internal parameters adapted to the current problem.",
            "default" : true
          },
          "renumberingMethod" : {
            "title" : "Renumbering method",
            "type" : "string",
            "description" : "Choose the renumbering method for the system matrix entries. The choice of the renumbering method has a big impact on the memory consumption and the solution time. Currently supported are:<ul><li><p><b>SCOTCH</b> is a powerful renumbering tool, suited for most scenarios and the standard choice for MUMPS.</p></ul><ul><li><p><b>PORD</b> is a renumbering tool that comes with MUMPS.</p></ul><ul><li><p><b>AMD</b> uses the <i>Approximate Minimum Degree</i> method.</p></ul><ul><li><p><b>AMF</b> uses the <i>Approximate Minimum Fill</i> method.</p></ul><ul><li><p><b>QAMD</b> is a variant of AMD with automatic detection of quasi-dense matrix lines.</p></ul>If <b>automatic</b> is selected the user let MUMPS choose the renumbering tool. The methods AMD, AMF and QAMD are generally inferior to the more sophisticated methods SCOTCH and PORD but may be a better choice in some cases.",
            "default" : "AUTOMATIC",
            "enum" : [ "AMD", "SCOTCH", "AMF", "PORD", "QAMD", "AUTOMATIC" ]
          },
          "postprocessing" : {
            "title" : "Postprocessing",
            "type" : "string",
            "description" : "With this option the user can control the iterative refinement of the linear system solution. This option only has an effect if the value of the <b> linear system relative residual</b> given by the user is greater than zero, otherwise it is ignored. If it is <b>activate</b> MUMPS carries out at least one additional iteration of the linear system resolution and at most 10 iterations. The process is stopped if the residual isn't reduced by at least a factor of 5. If this option is set to be <b>inactive</b> no additional iteration is done and if <b>automatic</b> is chosen MUMPS automatically decides if additional iterations should be done and the maximum number of iterations is set to 4.",
            "default" : "AUTOMATIC",
            "x-conditionalEnum" : [ {
              "value" : "INACTIVE"
            }, {
              "value" : "ACTIVE",
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == HEAT_TRANSFER && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ]
            }, {
              "value" : "AUTOMATIC"
            }, {
              "value" : "MINI"
            } ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == HEAT_TRANSFER && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ],
              "default" : "ACTIVE"
            } ]
          },
          "mumpsAcceleration" : {
            "$ref" : "#/components/schemas/OneOf_AdvancedMUMPSSettingsMumpsAcceleration"
          },
          "distributedMatrixStorage" : {
            "title" : "Distributed matrix storage",
            "type" : "boolean",
            "description" : "Choose this parameter as <b>true</b> to ensure that the system matrix saving is distributed among the processors of the computation. If multiple cores are used only the relevant part for each core is saved. If it is set to false the whole matrix is saved for each processor. Enabling this can significantly reductions in memory consumption, but introduces numerical instability in rare occasions.",
            "default" : true,
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL]" ]
          }
        },
        "additionalProperties" : false
      },
      "AutomaticAcceleration" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticAcceleration",
            "default" : "AUTOMATIC"
          }
        },
        "additionalProperties" : false
      },
      "FullRankAcceleration" : {
        "title" : "Full rank",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullRankAcceleration",
            "default" : "FULL_RANK"
          }
        },
        "additionalProperties" : false
      },
      "LowRankAcceleration" : {
        "title" : "Low rank",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LowRankAcceleration",
            "default" : "LOW_RANK"
          },
          "lowRankThreshold" : {
            "title" : "Low rank threshold",
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "MultifrontalSolver" : {
        "title" : "Direct (Multifrontal)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MultifrontalSolver",
            "default" : "MULTIFRONT"
          },
          "renumberingMethod" : {
            "title" : "Renumbering method",
            "type" : "string",
            "description" : "Choose a renumbering method for the solution process.<br/>For large models around and above 50000 degrees of freedom you should consider using MDA.",
            "default" : "MDA",
            "enum" : [ "MDA", "MD" ]
          },
          "forceSymmetric" : {
            "title" : "Force symmetric",
            "type" : "boolean",
            "description" : "Choose if you want to enforce a symmetric matrix.",
            "default" : false,
            "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == HEAT_TRANSFER && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
          },
          "precisionSingularityDetection" : {
            "title" : "Precision singularity detection",
            "type" : "integer",
            "description" : "Define the precision value for the detection of a singular matrix. Positive values enable the check, with 9 being a good starting point. Smaller values make the check more strict. This is an advanced option that should only be used to debug a model.",
            "default" : 8
          },
          "stopIfSingular" : {
            "title" : "Stop if singular",
            "type" : "boolean",
            "description" : "Choose if the calculation should be stopped if the problem turns out to be singular.",
            "default" : true
          },
          "eliminateLagrangeMultipliers" : {
            "title" : "Eliminate lagrange multipliers",
            "type" : "boolean",
            "description" : "This option makes it possible to eliminate the Lagrange Multipliers which are introduced by generalized boundary conditions like bonded contact, remote boundary conditions and symmetry conditions. If activated, this option removes the Lagrange Multipliers which leads to a reduction of the total number of unknowns and can increase the robustness of iterative solvers.",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "PETSCSolver" : {
        "title" : "Iterative (PETSC)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PETSCSolver",
            "default" : "PETSC"
          },
          "convergenceThreshold" : {
            "title" : "Convergence threshold",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Set the threshold value for convergence detection for the relative convergence criteria.",
            "default" : 1.0E-5
          },
          "maxIterations" : {
            "title" : "Max iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Set the maximum number of iterations for the iterative solver. If set to 0 PETSC sets an estimate of the maximum number of iterations.",
            "default" : 0
          },
          "advancedPetscSettings" : {
            "$ref" : "#/components/schemas/AdvancedPETSCSettings"
          }
        },
        "additionalProperties" : false
      },
      "AdvancedPETSCSettings" : {
        "type" : "object",
        "properties" : {
          "forceSymmetric" : {
            "title" : "Force symmetric",
            "type" : "boolean",
            "description" : "Choose if you want to enforce a symmetric matrix.",
            "default" : false,
            "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == HEAT_TRANSFER && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
          },
          "algorithm" : {
            "title" : "Algorithm",
            "type" : "string",
            "description" : "Choose the iterative solver method: <ul><li><p><b>FGMRES</b>: <i>Flexible Minimal Generalised RESidual</i>, best compromise between robustness and computational speed.</p></ul><ul><li><p><b>CG</b>: <i>Conjugate Gradient</i>, only useful for symmetric matrices</p></ul><ul><li><p><b>CR</b>: <i>Conjugate Residual</i>, only useful for symmetric matrices</p></ul><ul><li><p><b>GCR</b>: <i>Generalised Conjugate Residual</i>, treats general matrices</p></ul>All available methods are of <i>Krylov</i> type.",
            "default" : "GMRES",
            "enum" : [ "CG", "CR", "GCR", "GMRES" ]
          },
          "preconditioner" : {
            "$ref" : "#/components/schemas/OneOf_AdvancedPETSCSettingsPreconditioner"
          },
          "distributedMatrixStorage" : {
            "title" : "Distributed matrix storage",
            "type" : "boolean",
            "description" : "Choose this parameter as <b>true</b> to ensure that the system matrix saving is distributed among the processors of the computation. If multiple cores are used only the relevant part for each core is saved. If it is set to false the whole matrix is saved for each processor. Enabling this can significantly reductions in memory consumption, but introduces numerical instability in rare occasions.",
            "default" : true,
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL]" ]
          }
        },
        "additionalProperties" : false
      },
      "MUMPSPreconditoner" : {
        "title" : "MUMPS LDLT",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MUMPSPreconditoner",
            "default" : "MUMPS_LDLT"
          },
          "actualisationRate" : {
            "title" : "Update rate",
            "type" : "integer",
            "description" : "Set the reactualisation intervall for the preconditioner matrix P. If this value is set to 30 the preconditioner is recomputed just every 30th iteration. This preconditioner is computionally more expensive than the incomplete LDLT factorization but nearer to the exact solution. This setting makes it possible to save computation time by taking advantage of this fact.",
            "default" : 30
          },
          "memoryPercentageForPivoting" : {
            "title" : "Memory for pivoting (%)",
            "type" : "number",
            "description" : "Define how much additional memory should be reserved for the pivoting operations. If MUMPS estimates that the necessary space for factorising the matrix would be 100, choosing a value of 20 would mean that MUMPS allocates a memory space of 120.",
            "default" : 20
          }
        },
        "additionalProperties" : false
      },
      "IncompletePreconditionerV33" : {
        "title" : "Incomplete LDLT",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IncompletePreconditionerV33",
            "default" : "INCOMPLETE_LDLT_V33"
          },
          "matrixCompleteness" : {
            "title" : "Matrix completeness",
            "type" : "integer",
            "description" : "Set the level of completeness for the incomplete Cholesky decomposition. The larger this value is, the better the preconditioning Matrix P approximates K<sup>-1</sup>, but also the memory usage and computation time increase. If the solution does not converge or uses a lot of iterations it could help to increase this parameter.",
            "default" : 0
          },
          "preconditionerMatrixGrowth" : {
            "title" : "Preconditioner matrix growth",
            "type" : "number",
            "description" : "Set the growth rate of the filling for the incomplete decomposition matrix. If this parameter is set to 1.0 PETSc estimates the matrix storage size from the first level of completeness. If this estimate is too low, PETSC increases the allocated memory on the fly, but this is more expensive.",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "JacobiPreconditioner" : {
        "title" : "Jacobi",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: JacobiPreconditioner",
            "default" : "JACOBI"
          },
          "renumberingMethod" : {
            "title" : "Renumbering method",
            "type" : "string",
            "description" : "Choose the renumbering method for the system matrix entries:<ul><li><p><b>RCMK</b> uses the algorithm of <i>Reverse Cuthill-MacKee</i> for the renumbering. It often effectively reduces the matrig storage space and the matrix factorization time.</p></ul><ul><li><p>When <b>inactive</b> is selected no renumbering is done. This option should only be chosen for testing purposes.</p></ul>",
            "default" : "INACTIVE",
            "enum" : [ "RCMK", "INACTIVE" ]
          }
        },
        "additionalProperties" : false
      },
      "SorPreconditioner" : {
        "title" : "SOR",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SorPreconditioner",
            "default" : "SOR"
          },
          "renumberingMethod" : {
            "title" : "Renumbering method",
            "type" : "string",
            "description" : "Choose the renumbering method for the system matrix entries:<ul><li><p><b>RCMK</b> uses the algorithm of <i>Reverse Cuthill-MacKee</i> for the renumbering. It often effectively reduces the matrig storage space and the matrix factorization time.</p></ul><ul><li><p>When <b>inactive</b> is selected no renumbering is done. This option should only be chosen for testing purposes.</p></ul>",
            "default" : "INACTIVE",
            "enum" : [ "RCMK", "INACTIVE" ]
          }
        },
        "additionalProperties" : false
      },
      "InactivePreconditioner" : {
        "title" : "Inactive",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InactivePreconditioner",
            "default" : "INACTIVE"
          },
          "renumberingMethod" : {
            "title" : "Renumbering method",
            "type" : "string",
            "description" : "Choose the renumbering method for the system matrix entries:<ul><li><p><b>RCMK</b> uses the algorithm of <i>Reverse Cuthill-MacKee</i> for the renumbering. It often effectively reduces the matrig storage space and the matrix factorization time.</p></ul><ul><li><p>When <b>inactive</b> is selected no renumbering is done. This option should only be chosen for testing purposes.</p></ul>",
            "default" : "INACTIVE",
            "enum" : [ "RCMK", "INACTIVE" ]
          }
        },
        "additionalProperties" : false
      },
      "ChronosSolver" : {
        "title" : "Iterative (Chronos)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ChronosSolver",
            "default" : "CHRONOS"
          },
          "convergenceThreshold" : {
            "title" : "Convergence threshold",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Select the convergence tolerance. Can be smaller than with PETSc, and has a big impact on the newton convergence. It is recommended to start with a smaller value in case of convergence problems e.g. 1e-8 - 1e-10.",
            "default" : 1.0E-6
          },
          "maxIterations" : {
            "title" : "Max iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Maximum number of iterations for Chronos. Should be 1000 for AMG (max 3000), and 5000 with FSAI (max 10000).",
            "default" : 1000
          },
          "nonConvergenceAction" : {
            "title" : "When not converged",
            "type" : "string",
            "description" : "Choose what happens if the linear solution with Chronos fails. Either stop the simulation, or rerun it with a direct solver (MUMPS)",
            "default" : "SWITCH_TO_DIRECT_SOLVER",
            "enum" : [ "STOP", "SWITCH_TO_DIRECT_SOLVER" ],
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false" ]
          },
          "advancedSettings" : {
            "$ref" : "#/components/schemas/AdvancedChronosSettings"
          }
        },
        "additionalProperties" : false
      },
      "AdvancedChronosSettings" : {
        "type" : "object",
        "properties" : {
          "forceFsai" : {
            "title" : "Force FSAI preconditioner",
            "type" : "boolean",
            "description" : "Force the usage of <b>FSAI</b> preconditioning. This can make sense for small and simple problems, because setting up the problem might be faster with FSAI than with AMG.<br>Otherwise, Chronos selects itself the most suitable preconditioner, depending on the characteristics of the problem. In this case, <b>AMG</b> is preferred over <b>FSAI</b>.",
            "default" : false
          },
          "algorithm" : {
            "title" : "Algorithm",
            "type" : "string",
            "description" : "The algorithm for the prolongation becomes more elaborate from Jacobi over light, medium to heavy FSAI. The stability increases as well as the computational cost. It is recommended to increase it when the problem has distored elements, is ill-conditioned  or has incompressible materials.",
            "default" : "FSAI_LIGHT",
            "enum" : [ "FSAI_LIGHT", "FSAI_MEDIUM", "FSAI_HEAVY" ],
            "x-showWhen" : [ "1/forceFsai == true" ]
          },
          "smoother" : {
            "title" : "Smoother",
            "type" : "string",
            "description" : "The algorithm for the prolongation becomes more elaborate from Jacobi over light, medium to heavy FSAI. The stability increases as well as the computational cost. It is recommended to increase it when the problem has distored elements, is ill-conditioned  or has incompressible materials.",
            "enum" : [ "JACOBI", "FSAI_LIGHT", "FSAI_MEDIUM", "FSAI_HEAVY" ],
            "x-showWhen" : [ "1/forceFsai == false" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ],
              "default" : "FSAI_LIGHT"
            }, {
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ],
              "default" : "FSAI_HEAVY"
            } ]
          },
          "prolongation" : {
            "title" : "Prolongation",
            "type" : "string",
            "description" : "The algorithm for the prolongation becomes more elaborate from unsmoothed, smoothed to energy-minimization. The stability increases as well as the computational cost. It is recommended to increase it when the problem has small number of BCs and large number of elements",
            "default" : "ENERGY_MINIMIZATION",
            "enum" : [ "UNSMOOTHED", "SMOOTHED", "ENERGY_MINIMIZATION" ],
            "x-showWhen" : [ "1/forceFsai == false" ]
          },
          "improveTestSpace" : {
            "title" : "Improve test space",
            "type" : "boolean",
            "description" : "This should be enabled only for very complex/ill-conditioned problems, e.g. highly constrained with many BCs, incompressible/hyperelastic materials.",
            "x-showWhen" : [ "1/forceFsai == false" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ],
              "default" : false
            }, {
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ],
              "default" : true
            } ]
          },
          "testSpaceIterations" : {
            "title" : "Test space iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Defaults to 20, can be increased to 50 for complicated cases.",
            "default" : 100,
            "x-showWhen" : [ "1/improveTestSpace == true" ]
          },
          "preconditionerRecycling" : {
            "title" : "Preconditioner recycling",
            "maximum" : 2.0,
            "exclusiveMaximum" : false,
            "minimum" : -1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Specify the recycling of the preconditioner. This can have a significant impact on the performance. The input is as follows: <ul><li><p><b> < 0.0</b> Never recycle the preconditioner.</p></ul><ul><li><p><b>0.0</b> Recycle the preconditioner every second iteration.</p></ul><ul><li><p><b>< 1.0</b> Recycle the preconditioner more often than the optimal way.</p></ul><ul><li><p><b>== 1.0</b> recycle the preconditioner in the optimal way.</p></ul><ul><li><p><b>> 1.0</b> recycle the preconditioner less often than the optimal way.</p></ul>",
            "default" : 1.0
          },
          "restartGmres" : {
            "title" : "Restart iterations GMRES",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Choose after how many iterations the GMRES solver should be restarted.<br>By default, Chronos uses a <b>PCG</b> iterative solution method. Depending on the characteristics of the problem, it might internally switch to <b>GMRES</b>. With GMRES, the iterations become more expensive the more they grow. Therefore, it is restarted if a certain threshold is reached. Default is 50, can be increased to 100 for complicated cases.",
            "default" : 50
          },
          "distributedMatrixStorage" : {
            "title" : "Distributed matrix storage",
            "type" : "boolean",
            "description" : "Choose this parameter as <b>true</b> to ensure that the system matrix saving is distributed among the processors of the computation. If multiple cores are used only the relevant part for each core is saved. If it is set to false the whole matrix is saved for each processor. Enabling this can significantly reductions in memory consumption, but introduces numerical instability in rare occasions.",
            "default" : true
          },
          "numOfThreads" : {
            "title" : "Number of threads",
            "maximum" : 192,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Sets the number of threads for Chronos to be used for shared memory parallelization.<br>The shared memory parallelization of Chronos is independent of the shared memory parallelization of Code_Aster.<br>Ideally, the number of threads multiplied with the number of (MPI) processes (Number of parallel processes under Simulation control) should be set to the number of cores available on the machine.<br>Set it to 0 to automatically choose the best setting.<br>Note that reducing the number of MPI-processes and increasing the number of threads can significantly reduce memory and disk space consumption.",
            "default" : 0
          },
          "verbosity" : {
            "title" : "Verbosity",
            "maximum" : 3,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "This is a DEVELOPER option to specify the amount of output from Chronos. Its only purpose is debugging. Don't use it for regular runs, as it will slow down the simulation a lot! 0 means no output, 1-3 means more and more output.",
            "default" : 0
          },
          "writeCoordsAndMatrix" : {
            "title" : "Write coordinates and matrix",
            "maximum" : 5,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "This is a DEVELOPER option to output the coordinates and the matrix to a file. Its only purpose is debugging. Don't use it for regular runs, as it will slow down the simulation a lot! 0 means no output, 1 means to output the latest coords/matrix, and 2 means to output the coords/matrix for every solve (aka every iteration).",
            "default" : 0
          }
        },
        "additionalProperties" : false
      },
      "SolverModel" : {
        "type" : "object",
        "properties" : { },
        "additionalProperties" : false
      },
      "IRAMSorensen" : {
        "title" : "IRAM - Sorensen",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IRAMSorensen",
            "default" : "SORENSEN"
          },
          "precSoren" : {
            "title" : "Sorensen precision",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "nmaxIterSoren" : {
            "title" : "Max number of iterations",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 20
          },
          "subspaceSettings" : {
            "$ref" : "#/components/schemas/OneOf_IRAMSorensenSubspaceSettings"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticSubspaceSettings" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticSubspaceSettings",
            "default" : "AUTOMATIC"
          }
        },
        "additionalProperties" : false
      },
      "SubspaceDimension" : {
        "title" : "Dimension",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SubspaceDimension",
            "default" : "SUBSPACE_DIMENSION"
          },
          "subspaceDimension" : {
            "title" : "Subspace dimension",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Specify the subspace dimension. It is recommended to check the error log to get a hint for how to select it. It must be larger than the number of computed frequencies, it is ignored otherwise.",
            "default" : 0
          }
        },
        "additionalProperties" : false
      },
      "SubspaceCoefficient" : {
        "title" : "Coefficient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SubspaceCoefficient",
            "default" : "SUBSPACE_COEFFICIENT"
          },
          "subspaceCoefficient" : {
            "title" : "Subspace coefficient",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Choose a coefficient (<i>c<sub>ss</sub></i>) with which the subspace dimension (<i>d<sub>ss</sub></i>) is calculated, depending on the number of computed frequencies (<i>n<sub>f</sub></i>):<br> <li><b>IRAM Sorensen</b>: <i>d<sub>ss</sub> = <i>max(2 + n<sub>f</sub> , c<sub>ss</sub> * n<sub>f</sub></i>).</li><li><b>Lanczos & Bathe - Wilson</b>: <i>d<sub>ss</sub> = <i>max(7 + n<sub>f</sub> , c<sub>ss</sub> * n<sub>f</sub></i>).</li></p>",
            "x-conditionalDefaults" : [ {
              "when" : [ "2/type != TRI_DIAG" ],
              "default" : 2
            }, {
              "when" : [ "2/type == TRI_DIAG" ],
              "default" : 4
            } ]
          }
        },
        "additionalProperties" : false
      },
      "Lanczos" : {
        "title" : "Lanczos",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Lanczos",
            "default" : "TRI_DIAG"
          },
          "precOrtho" : {
            "title" : "Orthogonality precision",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1.0E-12
          },
          "nmaxIterOrtho" : {
            "title" : "Max Orthogonality iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 5
          },
          "precLanczos" : {
            "title" : "Lanczos precision",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1.0E-8
          },
          "maxIterQR" : {
            "title" : "Max QR iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 30
          },
          "modeRigid" : {
            "title" : "Rigid Body Modes Detection",
            "type" : "boolean",
            "default" : true
          },
          "subspaceSettings" : {
            "$ref" : "#/components/schemas/OneOf_LanczosSubspaceSettings"
          }
        },
        "additionalProperties" : false
      },
      "BatheWilson" : {
        "title" : "Bathe - Wilson",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: BatheWilson",
            "default" : "JACOBI"
          },
          "precBathe" : {
            "title" : "Bathe precision",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1.0E-10
          },
          "nmaxIterBathe" : {
            "title" : "Max Bathe iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 40
          },
          "precJacobi" : {
            "title" : "Jacobi precision",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.01
          },
          "maxIterJacobi" : {
            "title" : "Max Jacobi iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 12
          },
          "subspaceSettings" : {
            "$ref" : "#/components/schemas/OneOf_BatheWilsonSubspaceSettings"
          }
        },
        "additionalProperties" : false
      },
      "QZ" : {
        "title" : "QZ",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: QZ",
            "default" : "QZ"
          },
          "typeQZ" : {
            "title" : "Type",
            "type" : "string",
            "default" : "QZ_SIMPLE",
            "enum" : [ "QZ_SIMPLE", "QZ_EQUI", "QZ_QR" ]
          }
        },
        "additionalProperties" : false
      },
      "CalculateFrequency" : {
        "type" : "object",
        "properties" : {
          "precShift" : {
            "title" : "Shift precision",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.05
          },
          "maxIterShift" : {
            "title" : "Max shift iterations",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 3
          },
          "thresholdFrequency" : {
            "title" : "Uniqueness threshold",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.01
          }
        },
        "additionalProperties" : false
      },
      "EigenModeVerification" : {
        "type" : "object",
        "properties" : {
          "threshold" : {
            "title" : "Verification threshold",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1.0E-6
          },
          "precisionShift" : {
            "title" : "Shift precision",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.05
          }
        },
        "additionalProperties" : false
      },
      "ModalSolver" : {
        "type" : "object",
        "properties" : {
          "solver" : {
            "$ref" : "#/components/schemas/OneOf_ModalSolverSolver"
          },
          "solverModel" : {
            "$ref" : "#/components/schemas/SolverModel"
          },
          "eigenSolver" : {
            "$ref" : "#/components/schemas/OneOf_ModalSolverEigenSolver"
          },
          "calculateFrequency" : {
            "$ref" : "#/components/schemas/CalculateFrequency"
          },
          "eigenMode" : {
            "$ref" : "#/components/schemas/EigenModeVerification"
          },
          "enhancedAccuracy" : {
            "title" : "Enhanced accuracy",
            "type" : "boolean",
            "description" : "Further increase the accuracy of the results by running two simulations. The results of the first one will be used as input for the second one to fine-tune the setup.",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "HarmonicResponse" : {
        "type" : "object",
        "properties" : {
          "solver" : {
            "$ref" : "#/components/schemas/MUMPSSolver"
          }
        },
        "additionalProperties" : false
      },
      "ImplicitTimeIntegrationType" : {
        "title" : "Implicit",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the time integration scheme type</p><br /><br />Important remarks:<br /><ul><li>Choose <b>implicit</b> if the problem is static or dynamic but not so complex. Implicit analysis takes more solution time but can solve the problem easily with larger timesteps. Therefore, it is always recommended to use implicit time integration scheme. </li><i>Choose <b>explicit</b> if the problem is only dynamic and highly complex. Explicit analysis takes less solution time but also needs more refined (small) timesteps to solve the problem. Therefore, in most of the cases it's not recommended due to convergence problems. </i></ul> \n\nSchema name: ImplicitTimeIntegrationType",
            "default" : "IMPLICIT"
          },
          "scheme" : {
            "$ref" : "#/components/schemas/OneOf_ImplicitTimeIntegrationTypeScheme"
          },
          "schemeFormulation" : {
            "title" : "Scheme formulation",
            "type" : "string",
            "description" : "<p>Choose the primary variable for the time integration scheme.</p>",
            "default" : "DISPLACEMENT",
            "enum" : [ "DISPLACEMENT" ]
          },
          "massMatrixShift" : {
            "title" : "Mass matrix shift",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This parameter c<sub>K</sub> allows the shifting of the mass matrix with the stiffness matrix multiplied by c<sub>K</sub>: <b>M</b><sup>'</sup>=<b>M</b> + c<sub>K</sub>*<b>K</b>. This makes it possible to strongly improve convergence in dynamics with implicit time scheme by imposing a cut-off frequency inversely proportional to the value of c<sub>K</sub> (at the cost of a light distortion of all the eigen frequencies of the system).</p>",
            "default" : 0
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the time integration scheme type</p><br /><br />Important remarks:<br /><ul><li>Choose <b>implicit</b> if the problem is static or dynamic but not so complex. Implicit analysis takes more solution time but can solve the problem easily with larger timesteps. Therefore, it is always recommended to use implicit time integration scheme. </li><i>Choose <b>explicit</b> if the problem is only dynamic and highly complex. Explicit analysis takes less solution time but also needs more refined (small) timesteps to solve the problem. Therefore, in most of the cases it's not recommended due to convergence problems. </i></ul> "
      },
      "HhtTimeIntegrationScheme" : {
        "title" : "Hilber-Hughes-Taylor (HHT)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HhtTimeIntegrationScheme",
            "default" : "HHT"
          },
          "alpha" : {
            "title" : "(α) Alpha",
            "maximum" : 0.0,
            "exclusiveMaximum" : false,
            "minimum" : -0.33333,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The parameter <b>&alpha;</b> is given by a negative value. The larger |<b>&alpha;</b>| is, the more numerical damping is induced.",
            "default" : -0.1
          },
          "method" : {
            "title" : "Method",
            "type" : "string",
            "description" : "Choose the mode of the HHT method. Compared to the <b>average acceleration</b> scheme the induced numerical damping of the <b>alpha method</b> is more selective: it is weaker for low frequencies and it will increase with the frequencies.",
            "default" : "ALPHA_METHOD",
            "enum" : [ "AVERAGE_ACCELERATION", "ALPHA_METHOD" ]
          }
        },
        "additionalProperties" : false
      },
      "NewmarkTimeIntegrationScheme" : {
        "title" : "Newmark",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NewmarkTimeIntegrationScheme",
            "default" : "NEWMARK"
          },
          "beta" : {
            "title" : "(β) Beta",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The choice of the values for the parameters <b>&alpha;</b> and <b>&beta;</b> influences the stability, accuracy and numerical damping of the <i>Newmark Sheme</i>.</v>",
            "default" : 0.25
          },
          "gamma" : {
            "title" : "(γ) Gamma",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The choice of the values for the parameters <b>&alpha;</b> and <b>&beta;</b> influences the stability, accuracy and numerical damping of the <i>Newmark Sheme</i>.</v>",
            "default" : 0.5
          }
        },
        "additionalProperties" : false
      },
      "ExplicitTimeIntegrationType" : {
        "title" : "Explicit",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the time integration scheme type</p><br /><br />Important remarks:<br /><ul><li>Choose <b>implicit</b> if the problem is static or dynamic but not so complex. Implicit analysis takes more solution time but can solve the problem easily with larger timesteps. Therefore, it is always recommended to use implicit time integration scheme. </li><i>Choose <b>explicit</b> if the problem is only dynamic and highly complex. Explicit analysis takes less solution time but also needs more refined (small) timesteps to solve the problem. Therefore, in most of the cases it's not recommended due to convergence problems. </i></ul> \n\nSchema name: ExplicitTimeIntegrationType",
            "default" : "EXPLICIT"
          },
          "scheme" : {
            "$ref" : "#/components/schemas/OneOf_ExplicitTimeIntegrationTypeScheme"
          },
          "schemeFormulation" : {
            "title" : "Scheme formulation",
            "type" : "string",
            "description" : "<p>Choose the primary variable for the time integration scheme.</p>",
            "default" : "ACCELERATION",
            "enum" : [ "ACCELERATION" ]
          },
          "stopOnCFLCriterion" : {
            "title" : "Stop on CFL criterion",
            "type" : "boolean",
            "description" : "<p>If activated the simulation run is stopped when at some point the Courant-Friedrichs-Lewy (CFL) condition is violated.</p>",
            "default" : true
          },
          "massMatrixShift" : {
            "title" : "Mass matrix shift",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This parameter c<sub>K</sub> allows the shifting of the mass matrix with the stiffness matrix multiplied by c<sub>K</sub>: <b>M</b><sup>'</sup>=<b>M</b> + c<sub>K</sub>*<b>K</b>. This makes it possible to strongly improve convergence in dynamics with implicit time scheme by imposing a cut-off frequency inversely proportional to the value of c<sub>K</sub> (at the cost of a light distortion of all the eigen frequencies of the system).</p>",
            "default" : 0
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the time integration scheme type</p><br /><br />Important remarks:<br /><ul><li>Choose <b>implicit</b> if the problem is static or dynamic but not so complex. Implicit analysis takes more solution time but can solve the problem easily with larger timesteps. Therefore, it is always recommended to use implicit time integration scheme. </li><i>Choose <b>explicit</b> if the problem is only dynamic and highly complex. Explicit analysis takes less solution time but also needs more refined (small) timesteps to solve the problem. Therefore, in most of the cases it's not recommended due to convergence problems. </i></ul> "
      },
      "CentralDiffTimeIntegrationScheme" : {
        "title" : "Central differences",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CentralDiffTimeIntegrationScheme",
            "default" : "CENTRAL_DIFF"
          }
        },
        "additionalProperties" : false
      },
      "TchamwaTimeIntegrationScheme" : {
        "title" : "Tchamwa time integration scheme",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TchamwaTimeIntegrationScheme",
            "default" : "TCHAMWA"
          },
          "phi" : {
            "title" : "(φ) Phi",
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The parameter <b>&phi;</b> allows inducing numerical damping. For <b>&phi;</b> = 1.0 there is no numerical damping whereas for <b>&phi;</b> > 1.0</p> the damping grows with the parameter value. It is thus not recommended to use a value for <b>&phi;</b> greater than 1.1.</p>",
            "default" : 1.05
          }
        },
        "additionalProperties" : false
      },
      "NewtonResolutionType" : {
        "title" : "Newton",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose how the nonlinearities are solved. Currently for direct solvers only the Newton-Raphson method is available via the selection <b>Newton</b>. For iterative solvers also an inexact version of the Newton-Raphson method is available via the selection <b>Newton-Krylov</b>.</p>\n\nSchema name: NewtonResolutionType",
            "default" : "NEWTON"
          },
          "convergenceCriteria" : {
            "$ref" : "#/components/schemas/OneOf_NewtonResolutionTypeConvergenceCriteria"
          },
          "predictionMatrix" : {
            "title" : "Prediction matrix",
            "type" : "string",
            "description" : "<p>Select which stiffnes matrix should be used in the prediction phase of the Newton method. A good choice leads to a good starting point for the first Newton iteration and thus a faster convergence.</p>",
            "default" : "TANGENT",
            "enum" : [ "TANGENT", "ELASTIC" ],
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS]", "type == THERMAL_MECHANICAL && 1# == mechanicalResolutionType" ]
          },
          "jacobianMatrix" : {
            "$ref" : "#/components/schemas/OneOf_NewtonResolutionTypeJacobianMatrix"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose how the nonlinearities are solved. Currently for direct solvers only the Newton-Raphson method is available via the selection <b>Newton</b>. For iterative solvers also an inexact version of the Newton-Raphson method is available via the selection <b>Newton-Krylov</b>.</p>"
      },
      "AdaptiveConvergenceCriteria" : {
        "title" : "Adaptive",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AdaptiveConvergenceCriteria",
            "default" : "ADAPTIVE"
          },
          "relativeTolerance" : {
            "title" : "Relative tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Set the threshold value for the relative convergence criterion. With this criterion, the solver considers a time step as converged if the maximum relative residual -- the maximum absolute residual divided by external loads and support reactions -- in a Newton iteration falls below the given value.</p>Important remarks: This value is a compromise between solution time and accuracy. A larger value leads to a faster solution time at the cost of losing accuracy in each Newton iteration and possibly causing convergence problems in the following steps. We recommend an upper limit of 1<sup>-3</sup>.",
            "default" : 5.0E-5
          },
          "absoluteTolerance" : {
            "title" : "Absolute tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Set the threshold value for the absolute convergence criterion (measured in Newtons). With this criterion, the solver considers a time step as converged if the maximum absolute residual in a Newton iteration falls below the given value.</p>Important remarks: This value is a compromise between solution time and accuracy. A larger value leads to a faster solution time at the cost of losing accuracy in each Newton iteration and possibly causing convergence problems in the following steps.",
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS]" ],
              "default" : 1.0E-4
            }, {
              "when" : [ "type in [HEAT_TRANSFER,THERMAL_MECHANICAL]" ],
              "default" : 0.001
            } ]
          }
        },
        "additionalProperties" : false
      },
      "RelativeConvergenceCriteria" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeConvergenceCriteria",
            "default" : "RELATIVE"
          },
          "tolerance" : {
            "title" : "Tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Set the threshold value for the relative convergence criterion. With this criterion, the solver considers a time step as converged if the maximum relative residual -- the maximum absolute residual divided by external loads and support reactions -- in a Newton iteration falls below the given value.</p>Important remarks: This value is a compromise between solution time and accuracy. A larger value leads to a faster solution time at the cost of losing accuracy in each Newton iteration and possibly causing convergence problems in the following steps. We recommend an upper limit of 1<sup>-3</sup>.",
            "default" : 5.0E-5
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteConvergenceCriteria" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteConvergenceCriteria",
            "default" : "ABSOLUTE"
          },
          "tolerance" : {
            "title" : "Tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Set the threshold value for the absolute convergence criterion (measured in Newtons). With this criterion, the solver considers a time step as converged if the maximum absolute residual in a Newton iteration falls below the given value.</p>Important remarks: This value is a compromise between solution time and accuracy. A larger value leads to a faster solution time at the cost of losing accuracy in each Newton iteration and possibly causing convergence problems in the following steps.",
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS]" ],
              "default" : 1.0E-4
            }, {
              "when" : [ "type in [HEAT_TRANSFER,THERMAL_MECHANICAL]" ],
              "default" : 0.001
            } ]
          }
        },
        "additionalProperties" : false
      },
      "TangentJacobianMatrix" : {
        "title" : "Tangent",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select which stiffnes matrix should be used for computing the Jacobian of the Newton method. Choosing the tangent stiffnes matrix via <b>tangent matrix</b> allows a full Newton approach whereas the selection of the <b>elastic matrix</b> results in a quasi-Newton approach.</p>\n\nSchema name: TangentJacobianMatrix",
            "default" : "TANGENT"
          },
          "maxNewtonIteration" : {
            "title" : "Max Newton iterations",
            "type" : "integer",
            "description" : "<p>Maximum number of allowed Newton iterations per time increment. If this value is reached the simulation is considered non-converging. If an automatic time stepping is activated the time increment is reduced in order to reach convergence.</p>",
            "default" : 35
          },
          "reactualizationIteration" : {
            "title" : "Update every nth iteration",
            "type" : "integer",
            "description" : "<p>Select how often the Jacobian matrix should be recomputed. If this parameter is set to 10, the Jacobian matrix is recomputed every 10th iteration within a given time step. If it is set to 0, the Jacobian matrix is not updated within any time step.</p>",
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL,HEAT_TRANSFER]" ],
              "default" : 1
            } ]
          },
          "reactualizationIncrement" : {
            "title" : "Update every nth increment",
            "type" : "integer",
            "description" : "<p>Select how often the Jacobian matrix should be recomputed. If this parameter is set to 10, the Jacobian matrix is recomputed every 10th time step. If it is set to 0, the Jacobian matrix is never updated.</p>",
            "default" : 1,
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS]", "type == THERMAL_MECHANICAL && 2# == mechanicalResolutionType" ]
          },
          "changeJacobianMatrix" : {
            "$ref" : "#/components/schemas/OneOf_TangentJacobianMatrixChangeJacobianMatrix"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select which stiffnes matrix should be used for computing the Jacobian of the Newton method. Choosing the tangent stiffnes matrix via <b>tangent matrix</b> allows a full Newton approach whereas the selection of the <b>elastic matrix</b> results in a quasi-Newton approach.</p>"
      },
      "TrueChangeJacobianMatrix" : {
        "title" : "True",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose if the Jacobian matrix should automatically change from tangent stiffnes matrix to elastic matrix if the time increment is falling below a given threshold. On the assumption that below a given time increment value the nonlinearities are not evolving within the time step one can strongly save computation time by switching to the elastic matrix.</p>\n\nSchema name: TrueChangeJacobianMatrix",
            "default" : "TRUE"
          },
          "thresholdTimeStepValue" : {
            "title" : "Threshold time increment",
            "type" : "number",
            "description" : "<p>Set the threshold value of the Jacobian matrix changing. If the time increment is lower than this value the elastic matrix is used.</p>",
            "default" : 1.0E-6
          },
          "matrixReactualizationIteration" : {
            "title" : "Elastic matrix update every nth iteration",
            "type" : "integer",
            "description" : "<p>Set how often the elastic stiffness matrix should be recomputed. If this parameter is set to 10, the elastic matrix is recomputed every 10th iteration within a given time step. If it is set to 0, the elastic stiffness matrix is not updated within any time step.</p>",
            "default" : 0
          },
          "maxNewtonIterations" : {
            "title" : "Max Newton iterations (Elastic Jacobian)",
            "type" : "integer",
            "description" : "<p>Maximum number of allowed Newton iterations per time increment. If this value is reached the simulation is considered non-converging. If an automatic time stepping is activated the time increment is reduced in order to reach convergence.</p>",
            "default" : 35
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose if the Jacobian matrix should automatically change from tangent stiffnes matrix to elastic matrix if the time increment is falling below a given threshold. On the assumption that below a given time increment value the nonlinearities are not evolving within the time step one can strongly save computation time by switching to the elastic matrix.</p>"
      },
      "FalseChangeJacobianMatrix" : {
        "title" : "False",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose if the Jacobian matrix should automatically change from tangent stiffnes matrix to elastic matrix if the time increment is falling below a given threshold. On the assumption that below a given time increment value the nonlinearities are not evolving within the time step one can strongly save computation time by switching to the elastic matrix.</p>\n\nSchema name: FalseChangeJacobianMatrix",
            "default" : "FALSE"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose if the Jacobian matrix should automatically change from tangent stiffnes matrix to elastic matrix if the time increment is falling below a given threshold. On the assumption that below a given time increment value the nonlinearities are not evolving within the time step one can strongly save computation time by switching to the elastic matrix.</p>"
      },
      "ElasticJacobianMatrix" : {
        "title" : "Elastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select which stiffnes matrix should be used for computing the Jacobian of the Newton method. Choosing the tangent stiffnes matrix via <b>tangent matrix</b> allows a full Newton approach whereas the selection of the <b>elastic matrix</b> results in a quasi-Newton approach.</p>\n\nSchema name: ElasticJacobianMatrix",
            "default" : "ELASTIC"
          },
          "maxNewtonIteration" : {
            "title" : "Max Newton iterations",
            "type" : "integer",
            "description" : "<p>Maximum number of allowed Newton iterations per time increment. If this value is reached the simulation is considered non-converging. If an automatic time stepping is activated the time increment is reduced in order to reach convergence.</p>",
            "default" : 35
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select which stiffnes matrix should be used for computing the Jacobian of the Newton method. Choosing the tangent stiffnes matrix via <b>tangent matrix</b> allows a full Newton approach whereas the selection of the <b>elastic matrix</b> results in a quasi-Newton approach.</p>"
      },
      "NewtonKrylovResolutionType" : {
        "title" : "Newton-Krylov",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose how the nonlinearities are solved. Currently for direct solvers only the Newton-Raphson method is available via the selection <b>Newton</b>. For iterative solvers also an inexact version of the Newton-Raphson method is available via the selection <b>Newton-Krylov</b>.</p>\n\nSchema name: NewtonKrylovResolutionType",
            "default" : "NEWTON_KRYLOV"
          },
          "convergenceCriteria" : {
            "$ref" : "#/components/schemas/OneOf_NewtonKrylovResolutionTypeConvergenceCriteria"
          },
          "predictionMatrix" : {
            "title" : "Prediction matrix",
            "type" : "string",
            "description" : "<p>Select which stiffnes matrix should be used in the prediction phase of the Newton method. A good choice leads to a good starting point for the first Newton iteration and thus a faster convergence.</p>",
            "default" : "TANGENT",
            "enum" : [ "TANGENT", "ELASTIC" ]
          },
          "jacobianMatrix" : {
            "$ref" : "#/components/schemas/OneOf_NewtonKrylovResolutionTypeJacobianMatrix"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose how the nonlinearities are solved. Currently for direct solvers only the Newton-Raphson method is available via the selection <b>Newton</b>. For iterative solvers also an inexact version of the Newton-Raphson method is available via the selection <b>Newton-Krylov</b>.</p>"
      },
      "FalseLineSearch" : {
        "title" : "False",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Line search can be used to improve convergence for nonlinear calculations with the Newton method.</p>\n\nSchema name: FalseLineSearch",
            "default" : "FALSE"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Line search can be used to improve convergence for nonlinear calculations with the Newton method.</p>"
      },
      "TrueLineSearch" : {
        "title" : "True",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Line search can be used to improve convergence for nonlinear calculations with the Newton method.</p>\n\nSchema name: TrueLineSearch",
            "default" : "TRUE"
          },
          "method" : {
            "title" : "Method",
            "type" : "string",
            "description" : "<p>Choose the method of the line search algorithm. The <b>Secant method</b> is a simple one dimensional search algorithm. The <b>mixed method</b> is a more elaborate algorithm that uses variable bounds.</p>",
            "default" : "SECANT",
            "enum" : [ "SECANT", "MIXED" ],
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL] && 1# == mechanicalLineSearch" ]
          },
          "residual" : {
            "title" : "Residual",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Set the residual for the line search convergence</p>",
            "default" : 0.001
          },
          "maxIterations" : {
            "title" : "Max iterations",
            "maximum" : 999,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Set the maximum number for line search iterations. Typically a sinlge-digit number should be sufficient.</p>",
            "default" : 3
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Line search can be used to improve convergence for nonlinear calculations with the Newton method.</p>"
      },
      "ThetaMethodTimeIntegrationType" : {
        "title" : "Theta method",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the time integration scheme type</p>\n\nSchema name: ThetaMethodTimeIntegrationType",
            "default" : "THETA_METHOD"
          },
          "theta" : {
            "title" : "(θ) Theta",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The parameter <b>&theta;</b> must be ranging between 0.0 (explicit method) and 1.0 (completely implicit method). The standard value of <b>&theta;</b> = 0.57 is chosen a little higher than <b>&theta;</b> = 0.5 which would lead to the <i>Crank-Nicolson</i> scheme of order 2.",
            "default" : 0.57
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the time integration scheme type</p>"
      },
      "SolidSimulationControl" : {
        "type" : "object",
        "properties" : {
          "timestepDefinition" : {
            "$ref" : "#/components/schemas/OneOf_SolidSimulationControlTimestepDefinition"
          },
          "pseudoTimeStepping" : {
            "$ref" : "#/components/schemas/OneOf_SolidSimulationControlPseudoTimeStepping"
          },
          "autoLoadRamping" : {
            "title" : "Automatic boundary condition ramping",
            "type" : "boolean",
            "description" : "Loads and enforced motions will be ramped linearly over the simulation interval to aid solution convergence. Automatic ramping will only be applied if all boundary conditions (including gravity) are applied with constant values and if no creep formulation has been defined for the materials.",
            "default" : true,
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true" ]
          },
          "writeControlDefinition" : {
            "$ref" : "#/components/schemas/OneOf_SolidSimulationControlWriteControlDefinition"
          },
          "excitationFrequencies" : {
            "$ref" : "#/components/schemas/OneOf_SolidSimulationControlExcitationFrequencies"
          },
          "eigenfrequencyScope" : {
            "$ref" : "#/components/schemas/OneOf_SolidSimulationControlEigenfrequencyScope"
          },
          "modalBase" : {
            "$ref" : "#/components/schemas/ModalBaseControl"
          },
          "harmonicResponse" : {
            "$ref" : "#/components/schemas/HarmonicResponseControl"
          },
          "processors" : {
            "$ref" : "#/components/schemas/ComputingCore"
          },
          "maxRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false
      },
      "AutoTimestepDefinition" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutoTimestepDefinition",
            "default" : "AUTOMATIC_V27"
          },
          "simulationInterval" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "maximumTimestepLength" : {
            "$ref" : "#/components/schemas/RestrictedDimensionalFunction_Time"
          },
          "minimumTimestepLength" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "maximumResidual" : {
            "title" : "Maximum residual",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 10000000000
          },
          "retimingEvent" : {
            "$ref" : "#/components/schemas/OneOf_AutoTimestepDefinitionRetimingEvent"
          }
        },
        "additionalProperties" : false
      },
      "RestrictedDimensionalFunction_Time" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_RestrictedDimensionalFunction_TimeValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "s" ]
          }
        },
        "additionalProperties" : false
      },
      "RestrictedTableDefinedFunction" : {
        "title" : "Restricted table defined function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RestrictedTableDefinedFunction",
            "default" : "RESTRICTED_TABLE_DEFINED"
          },
          "label" : {
            "title" : "Label",
            "type" : "string",
            "default" : "Table"
          },
          "tableId" : {
            "type" : "string",
            "description" : "The ID of the imported table.",
            "format" : "uuid"
          },
          "resultIndex" : {
            "title" : "Result index",
            "type" : "array",
            "description" : "Indicates which column(s) of the table contains the result values. One-based indexing must be used. For example, set this field to '[2]' if the second column of the table contains the dependent variable values.",
            "items" : {
              "type" : "integer"
            }
          },
          "independentVariables" : {
            "title" : "Independent variables",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/TableFunctionParameter"
            }
          },
          "separator" : {
            "title" : "Separator",
            "type" : "string",
            "description" : "Values in each row are separated by this character. Also known as a delimiter.",
            "default" : ","
          }
        },
        "additionalProperties" : false
      },
      "ErrorRetimingEvent" : {
        "title" : "Error",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select the event for the time step adaptation. Currently there are four different events possible that trigger a time step adaptation:</p><ul><li><p><b>Error</b>: This is the case of a general error like for example non-convergence or singular matrix errors.</p></ul><ul><li><p><b>Collision</b>: This event is triggered if in a computation with physical contact a contact state change from open to closed is noticed. This time step adaptation is especially useful in dynamics to reduce the effect of artificial oscillations due to inexact collision detection.</p></ul><ul><li><p><b>Field Change</b>: The user can define the maximum delta that a field is allowed to change within one time step, if the defined threshold is exceeded the time step is adapted. This time stepping criteria is especially useful to capture material nonlinearitier more exact.</p></ul><ul><li><p><b>Non-monotonous residual</b>: This event is triggered if the residual has not been reduced within three iterations . This criteria is mostly used to reduce runtime by detecting diverging time steps before reaching the maximum number of allowed newton iterations.</p></ul>\n\nSchema name: ErrorRetimingEvent",
            "default" : "ERROR"
          },
          "timestepCalculationType" : {
            "$ref" : "#/components/schemas/OneOf_ErrorRetimingEventTimestepCalculationType"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select the event for the time step adaptation. Currently there are four different events possible that trigger a time step adaptation:</p><ul><li><p><b>Error</b>: This is the case of a general error like for example non-convergence or singular matrix errors.</p></ul><ul><li><p><b>Collision</b>: This event is triggered if in a computation with physical contact a contact state change from open to closed is noticed. This time step adaptation is especially useful in dynamics to reduce the effect of artificial oscillations due to inexact collision detection.</p></ul><ul><li><p><b>Field Change</b>: The user can define the maximum delta that a field is allowed to change within one time step, if the defined threshold is exceeded the time step is adapted. This time stepping criteria is especially useful to capture material nonlinearitier more exact.</p></ul><ul><li><p><b>Non-monotonous residual</b>: This event is triggered if the residual has not been reduced within three iterations . This criteria is mostly used to reduce runtime by detecting diverging time steps before reaching the maximum number of allowed newton iterations.</p></ul>"
      },
      "NewtonIterationTimestepCalculationType" : {
        "title" : "Newton iterations target",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select how the time increments should be computed in case of an adaptation event. Currently four types are available (which may not all be available for every event):</p><ul><li><p><b>Manual</b>: Here the user defines fixed time step subdivision and augmentation settings.</p></ul><ul><li><p><b>Newton Iterations Target</b>: With this setting the user defines a target value for the Newton Iterations and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Field Change Target</b>: With this setting the user defines a target value for change of a specific field component within a time increment and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Mixed</b>: The mixed type uses a fixed subdivision and an automatic adaptation of the time step with a target value for the change of the selected field component.</p></ul>\n\nSchema name: NewtonIterationTimestepCalculationType",
            "default" : "NEWTON_ITERATION"
          },
          "value" : {
            "title" : "Value",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the target value for the number of Newton Iterations within a time step.</p>",
            "default" : 8
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select how the time increments should be computed in case of an adaptation event. Currently four types are available (which may not all be available for every event):</p><ul><li><p><b>Manual</b>: Here the user defines fixed time step subdivision and augmentation settings.</p></ul><ul><li><p><b>Newton Iterations Target</b>: With this setting the user defines a target value for the Newton Iterations and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Field Change Target</b>: With this setting the user defines a target value for change of a specific field component within a time increment and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Mixed</b>: The mixed type uses a fixed subdivision and an automatic adaptation of the time step with a target value for the change of the selected field component.</p></ul>"
      },
      "ManualTimestepCalculationType" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select how the time increments should be computed in case of an adaptation event. Currently four types are available (which may not all be available for every event):</p><ul><li><p><b>Manual</b>: Here the user defines fixed time step subdivision and augmentation settings.</p></ul><ul><li><p><b>Newton Iterations Target</b>: With this setting the user defines a target value for the Newton Iterations and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Field Change Target</b>: With this setting the user defines a target value for change of a specific field component within a time increment and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Mixed</b>: The mixed type uses a fixed subdivision and an automatic adaptation of the time step with a target value for the change of the selected field component.</p></ul>\n\nSchema name: ManualTimestepCalculationType",
            "default" : "MANUAL"
          },
          "additionalNewtonIterations" : {
            "title" : "Additional Newton Iterations (%)",
            "minimum" : 20,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the percentage of additional Newton Iterations that should be allowed to be used if convergence is not reached after the maximum number of Newton Iterations is reached.</p>",
            "default" : 50,
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL] && 2/type == ERROR" ]
          },
          "fixedSubdivision" : {
            "$ref" : "#/components/schemas/FixedSubdivision"
          },
          "fixedAugmentation" : {
            "$ref" : "#/components/schemas/FixedAugmentation"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select how the time increments should be computed in case of an adaptation event. Currently four types are available (which may not all be available for every event):</p><ul><li><p><b>Manual</b>: Here the user defines fixed time step subdivision and augmentation settings.</p></ul><ul><li><p><b>Newton Iterations Target</b>: With this setting the user defines a target value for the Newton Iterations and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Field Change Target</b>: With this setting the user defines a target value for change of a specific field component within a time increment and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Mixed</b>: The mixed type uses a fixed subdivision and an automatic adaptation of the time step with a target value for the change of the selected field component.</p></ul>"
      },
      "FixedSubdivision" : {
        "type" : "object",
        "properties" : {
          "numSubdivisions" : {
            "title" : "Number of subdivisions",
            "minimum" : 2,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the number of equal subdivisions of a time step in case of an adaptation event.</p>",
            "default" : 4
          },
          "maxSubdivisionDepth" : {
            "title" : "Max subdivision depth",
            "minimum" : 2,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define maximum depth of the timestep subdivisions. If this value is exceeded the computation will stop. Example: If this value is set to 3, the number of subdivisions to 2 and the initial time step length is set to 1 sec, than the maximum depth is reached after 3 consecutive subdivisions (e.g. a time step of 1/8 sec based on <i>1.(1/2)<sup>3</sup></i>).</p>",
            "default" : 3
          }
        },
        "additionalProperties" : false
      },
      "FixedAugmentation" : {
        "type" : "object",
        "properties" : {
          "newtonIterationThreshold" : {
            "title" : "Newton iteration threshold",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p><b>Newton Iteration threshold</b> defines the threshold below which the actual number of Newton Iterations has to fall in order to increase the time step by the percentage given by <b>Timestep Augmentation</b>.</p>",
            "default" : 5
          },
          "timestepAugmentation" : {
            "title" : "Time step augmentation",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p><b>Newton Iteration threshold</b> defines the threshold below which the actual number of Newton Iterations has to fall in order to increase the time step by the percentage given by <b>Timestep Augmentation</b>.</p>",
            "default" : 100
          }
        },
        "additionalProperties" : false
      },
      "CollisionRetimingEvent" : {
        "title" : "Collision",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select the event for the time step adaptation. Currently there are four different events possible that trigger a time step adaptation:</p><ul><li><p><b>Error</b>: This is the case of a general error like for example non-convergence or singular matrix errors.</p></ul><ul><li><p><b>Collision</b>: This event is triggered if in a computation with physical contact a contact state change from open to closed is noticed. This time step adaptation is especially useful in dynamics to reduce the effect of artificial oscillations due to inexact collision detection.</p></ul><ul><li><p><b>Field Change</b>: The user can define the maximum delta that a field is allowed to change within one time step, if the defined threshold is exceeded the time step is adapted. This time stepping criteria is especially useful to capture material nonlinearitier more exact.</p></ul><ul><li><p><b>Non-monotonous residual</b>: This event is triggered if the residual has not been reduced within three iterations . This criteria is mostly used to reduce runtime by detecting diverging time steps before reaching the maximum number of allowed newton iterations.</p></ul>\n\nSchema name: CollisionRetimingEvent",
            "default" : "COLLISION"
          },
          "timestepCalculationType" : {
            "$ref" : "#/components/schemas/ManualTimestepCalculationType"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select the event for the time step adaptation. Currently there are four different events possible that trigger a time step adaptation:</p><ul><li><p><b>Error</b>: This is the case of a general error like for example non-convergence or singular matrix errors.</p></ul><ul><li><p><b>Collision</b>: This event is triggered if in a computation with physical contact a contact state change from open to closed is noticed. This time step adaptation is especially useful in dynamics to reduce the effect of artificial oscillations due to inexact collision detection.</p></ul><ul><li><p><b>Field Change</b>: The user can define the maximum delta that a field is allowed to change within one time step, if the defined threshold is exceeded the time step is adapted. This time stepping criteria is especially useful to capture material nonlinearitier more exact.</p></ul><ul><li><p><b>Non-monotonous residual</b>: This event is triggered if the residual has not been reduced within three iterations . This criteria is mostly used to reduce runtime by detecting diverging time steps before reaching the maximum number of allowed newton iterations.</p></ul>"
      },
      "FieldChangeRetimingEvent" : {
        "title" : "Field change",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select the event for the time step adaptation. Currently there are four different events possible that trigger a time step adaptation:</p><ul><li><p><b>Error</b>: This is the case of a general error like for example non-convergence or singular matrix errors.</p></ul><ul><li><p><b>Collision</b>: This event is triggered if in a computation with physical contact a contact state change from open to closed is noticed. This time step adaptation is especially useful in dynamics to reduce the effect of artificial oscillations due to inexact collision detection.</p></ul><ul><li><p><b>Field Change</b>: The user can define the maximum delta that a field is allowed to change within one time step, if the defined threshold is exceeded the time step is adapted. This time stepping criteria is especially useful to capture material nonlinearitier more exact.</p></ul><ul><li><p><b>Non-monotonous residual</b>: This event is triggered if the residual has not been reduced within three iterations . This criteria is mostly used to reduce runtime by detecting diverging time steps before reaching the maximum number of allowed newton iterations.</p></ul>\n\nSchema name: FieldChangeRetimingEvent",
            "default" : "FIELD_CHANGE"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_FieldChangeRetimingEventFieldSelection"
          },
          "thresholdValue" : {
            "title" : "Threshold value",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This value defines the maximum allowed change of the defined target field component within each time increment. If this threshold is exceeded the time step is adapted according to the selected settings in the *Timestep Calculation Type*.</p>",
            "default" : 0.1
          },
          "timestepCalculationType" : {
            "$ref" : "#/components/schemas/OneOf_FieldChangeRetimingEventTimestepCalculationType"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select the event for the time step adaptation. Currently there are four different events possible that trigger a time step adaptation:</p><ul><li><p><b>Error</b>: This is the case of a general error like for example non-convergence or singular matrix errors.</p></ul><ul><li><p><b>Collision</b>: This event is triggered if in a computation with physical contact a contact state change from open to closed is noticed. This time step adaptation is especially useful in dynamics to reduce the effect of artificial oscillations due to inexact collision detection.</p></ul><ul><li><p><b>Field Change</b>: The user can define the maximum delta that a field is allowed to change within one time step, if the defined threshold is exceeded the time step is adapted. This time stepping criteria is especially useful to capture material nonlinearitier more exact.</p></ul><ul><li><p><b>Non-monotonous residual</b>: This event is triggered if the residual has not been reduced within three iterations . This criteria is mostly used to reduce runtime by detecting diverging time steps before reaching the maximum number of allowed newton iterations.</p></ul>"
      },
      "DisplacementField" : {
        "title" : "Displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select the field which should have a limited de-/increase within one increment.</p>\n\nSchema name: DisplacementField",
            "default" : "DISPLACEMENT"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "description" : "Choose a field component for which the data schould be extracted.",
            "default" : "X",
            "enum" : [ "X", "Y", "Z" ]
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select the field which should have a limited de-/increase within one increment.</p>"
      },
      "CauchyStressTensorField" : {
        "title" : "Cauchy stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select the field which should have a limited de-/increase within one increment.</p>\n\nSchema name: CauchyStressTensorField",
            "default" : "CAUCHY_STRESS_TENSOR"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "description" : "Choose a field component for which the data schould be extracted.",
            "default" : "XX",
            "enum" : [ "XX", "YY", "ZZ", "XY", "XZ", "YZ" ]
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select the field which should have a limited de-/increase within one increment.</p>"
      },
      "InternVariablesField" : {
        "title" : "Intern variables",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select the field which should have a limited de-/increase within one increment.</p>\n\nSchema name: InternVariablesField",
            "default" : "INTERN_VARIABLES"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "description" : "<p>Choose a field component for which the data schould be extracted.</p>",
            "default" : "V1",
            "enum" : [ "V1", "V2", "V3" ]
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select the field which should have a limited de-/increase within one increment.</p>"
      },
      "MixedTimestepCalculationType" : {
        "title" : "Mixed",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select how the time increments should be computed in case of an adaptation event. Currently four types are available (which may not all be available for every event):</p><ul><li><p><b>Manual</b>: Here the user defines fixed time step subdivision and augmentation settings.</p></ul><ul><li><p><b>Newton Iterations Target</b>: With this setting the user defines a target value for the Newton Iterations and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Field Change Target</b>: With this setting the user defines a target value for change of a specific field component within a time increment and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Mixed</b>: The mixed type uses a fixed subdivision and an automatic adaptation of the time step with a target value for the change of the selected field component.</p></ul>\n\nSchema name: MixedTimestepCalculationType",
            "default" : "MIXED"
          },
          "fixedSubdivision" : {
            "$ref" : "#/components/schemas/FixedSubdivision"
          },
          "adaptiveAugmentation" : {
            "$ref" : "#/components/schemas/AdaptiveAugmentation"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select how the time increments should be computed in case of an adaptation event. Currently four types are available (which may not all be available for every event):</p><ul><li><p><b>Manual</b>: Here the user defines fixed time step subdivision and augmentation settings.</p></ul><ul><li><p><b>Newton Iterations Target</b>: With this setting the user defines a target value for the Newton Iterations and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Field Change Target</b>: With this setting the user defines a target value for change of a specific field component within a time increment and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Mixed</b>: The mixed type uses a fixed subdivision and an automatic adaptation of the time step with a target value for the change of the selected field component.</p></ul>"
      },
      "AdaptiveAugmentation" : {
        "type" : "object",
        "properties" : {
          "fieldChangeTargetValue" : {
            "title" : "Field change target",
            "type" : "number",
            "description" : "<p>Define the percentage of additional Newton Iterations that should be allowed to be used if convergence is not reached after the maximum number of Newton Iterations is reached.</p>",
            "default" : 0.01
          }
        },
        "additionalProperties" : false
      },
      "FieldChangeTargetCalculationType" : {
        "title" : "Field change target",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select how the time increments should be computed in case of an adaptation event. Currently four types are available (which may not all be available for every event):</p><ul><li><p><b>Manual</b>: Here the user defines fixed time step subdivision and augmentation settings.</p></ul><ul><li><p><b>Newton Iterations Target</b>: With this setting the user defines a target value for the Newton Iterations and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Field Change Target</b>: With this setting the user defines a target value for change of a specific field component within a time increment and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Mixed</b>: The mixed type uses a fixed subdivision and an automatic adaptation of the time step with a target value for the change of the selected field component.</p></ul>\n\nSchema name: FieldChangeTargetCalculationType",
            "default" : "FIELD_CHANGE_TARGET"
          },
          "value" : {
            "title" : "Value",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.01
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select how the time increments should be computed in case of an adaptation event. Currently four types are available (which may not all be available for every event):</p><ul><li><p><b>Manual</b>: Here the user defines fixed time step subdivision and augmentation settings.</p></ul><ul><li><p><b>Newton Iterations Target</b>: With this setting the user defines a target value for the Newton Iterations and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Field Change Target</b>: With this setting the user defines a target value for change of a specific field component within a time increment and the time increments are calculated automatically to having this value as objective.</p></ul><ul><li><p><b>Mixed</b>: The mixed type uses a fixed subdivision and an automatic adaptation of the time step with a target value for the change of the selected field component.</p></ul>"
      },
      "NonMonotomousResidualRetimingEvent" : {
        "title" : "Non-monotonous residual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Select the event for the time step adaptation. Currently there are four different events possible that trigger a time step adaptation:</p><ul><li><p><b>Error</b>: This is the case of a general error like for example non-convergence or singular matrix errors.</p></ul><ul><li><p><b>Collision</b>: This event is triggered if in a computation with physical contact a contact state change from open to closed is noticed. This time step adaptation is especially useful in dynamics to reduce the effect of artificial oscillations due to inexact collision detection.</p></ul><ul><li><p><b>Field Change</b>: The user can define the maximum delta that a field is allowed to change within one time step, if the defined threshold is exceeded the time step is adapted. This time stepping criteria is especially useful to capture material nonlinearitier more exact.</p></ul><ul><li><p><b>Non-monotonous residual</b>: This event is triggered if the residual has not been reduced within three iterations . This criteria is mostly used to reduce runtime by detecting diverging time steps before reaching the maximum number of allowed newton iterations.</p></ul>\n\nSchema name: NonMonotomousResidualRetimingEvent",
            "default" : "NON_MONOTOMOUS_RESIDUAL"
          },
          "timestepCalculationType" : {
            "$ref" : "#/components/schemas/OneOf_NonMonotomousResidualRetimingEventTimestepCalculationType"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Select the event for the time step adaptation. Currently there are four different events possible that trigger a time step adaptation:</p><ul><li><p><b>Error</b>: This is the case of a general error like for example non-convergence or singular matrix errors.</p></ul><ul><li><p><b>Collision</b>: This event is triggered if in a computation with physical contact a contact state change from open to closed is noticed. This time step adaptation is especially useful in dynamics to reduce the effect of artificial oscillations due to inexact collision detection.</p></ul><ul><li><p><b>Field Change</b>: The user can define the maximum delta that a field is allowed to change within one time step, if the defined threshold is exceeded the time step is adapted. This time stepping criteria is especially useful to capture material nonlinearitier more exact.</p></ul><ul><li><p><b>Non-monotonous residual</b>: This event is triggered if the residual has not been reduced within three iterations . This criteria is mostly used to reduce runtime by detecting diverging time steps before reaching the maximum number of allowed newton iterations.</p></ul>"
      },
      "ManualTimestepDefinition" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualTimestepDefinition",
            "default" : "MANUAL_V19"
          },
          "simulationInterval" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "timestepLength" : {
            "$ref" : "#/components/schemas/RestrictedDimensionalFunction_Time"
          }
        },
        "additionalProperties" : false
      },
      "SingleStepPseudoTimeStepping" : {
        "title" : "Single step",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SingleStepPseudoTimeStepping",
            "default" : "SINGLE_STEP"
          },
          "staticTimesteps" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false
      },
      "SteppingListPseudoTimeStepping" : {
        "title" : "Stepping list",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SteppingListPseudoTimeStepping",
            "default" : "STEPPING_LIST_V18"
          },
          "simulationIntervals" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "timestepLength" : {
            "$ref" : "#/components/schemas/RestrictedDimensionalFunction_Time"
          }
        },
        "additionalProperties" : false
      },
      "WriteIntervalWriteControl" : {
        "title" : "Write interval",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define how frequently intermediate results should be saved. With the selection of <b>initial time steps</b> only the user defined time steps are stored in the result and by selecting <b>all computed time steps</b> also intermediate results that were created by the automatic time stepping are saved. With the selection of <b>write interval</b> a specific write frequency can be chosen which reduces the result size. Finally using <b>user defined time steps</b> there can either be a constant time increment for result storage given or a table with varying time intervals analogous to the <b>time step length</b> definition.</p>\n\nSchema name: WriteIntervalWriteControl",
            "default" : "WRITE_INTERVAL"
          },
          "writeInterval" : {
            "title" : "Write interval",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the write frequency of the intermediate results to the result file. Selecting a write interval of 2 means that every second computed time step is saved in the final result database, independently if it is a pre-defined user time step or an intermediate one that was added during automatic time stepping. </p>",
            "default" : 5
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define how frequently intermediate results should be saved. With the selection of <b>initial time steps</b> only the user defined time steps are stored in the result and by selecting <b>all computed time steps</b> also intermediate results that were created by the automatic time stepping are saved. With the selection of <b>write interval</b> a specific write frequency can be chosen which reduces the result size. Finally using <b>user defined time steps</b> there can either be a constant time increment for result storage given or a table with varying time intervals analogous to the <b>time step length</b> definition.</p>"
      },
      "AllComputedWriteControl" : {
        "title" : "All computed",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define how frequently intermediate results should be saved. With the selection of <b>initial time steps</b> only the user defined time steps are stored in the result and by selecting <b>all computed time steps</b> also intermediate results that were created by the automatic time stepping are saved. With the selection of <b>write interval</b> a specific write frequency can be chosen which reduces the result size. Finally using <b>user defined time steps</b> there can either be a constant time increment for result storage given or a table with varying time intervals analogous to the <b>time step length</b> definition.</p>\n\nSchema name: AllComputedWriteControl",
            "default" : "ALL_COMPUTED"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define how frequently intermediate results should be saved. With the selection of <b>initial time steps</b> only the user defined time steps are stored in the result and by selecting <b>all computed time steps</b> also intermediate results that were created by the automatic time stepping are saved. With the selection of <b>write interval</b> a specific write frequency can be chosen which reduces the result size. Finally using <b>user defined time steps</b> there can either be a constant time increment for result storage given or a table with varying time intervals analogous to the <b>time step length</b> definition.</p>"
      },
      "InitialTimestepsWriteControl" : {
        "title" : "Initial time steps",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define how frequently intermediate results should be saved. With the selection of <b>initial time steps</b> only the user defined time steps are stored in the result and by selecting <b>all computed time steps</b> also intermediate results that were created by the automatic time stepping are saved. With the selection of <b>write interval</b> a specific write frequency can be chosen which reduces the result size. Finally using <b>user defined time steps</b> there can either be a constant time increment for result storage given or a table with varying time intervals analogous to the <b>time step length</b> definition.</p>\n\nSchema name: InitialTimestepsWriteControl",
            "default" : "INITIAL"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define how frequently intermediate results should be saved. With the selection of <b>initial time steps</b> only the user defined time steps are stored in the result and by selecting <b>all computed time steps</b> also intermediate results that were created by the automatic time stepping are saved. With the selection of <b>write interval</b> a specific write frequency can be chosen which reduces the result size. Finally using <b>user defined time steps</b> there can either be a constant time increment for result storage given or a table with varying time intervals analogous to the <b>time step length</b> definition.</p>"
      },
      "UserDefinedWriteControl" : {
        "title" : "User defined",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define how frequently intermediate results should be saved. With the selection of <b>initial time steps</b> only the user defined time steps are stored in the result and by selecting <b>all computed time steps</b> also intermediate results that were created by the automatic time stepping are saved. With the selection of <b>write interval</b> a specific write frequency can be chosen which reduces the result size. Finally using <b>user defined time steps</b> there can either be a constant time increment for result storage given or a table with varying time intervals analogous to the <b>time step length</b> definition.</p>\n\nSchema name: UserDefinedWriteControl",
            "default" : "USER_DEFINED_V21"
          },
          "writeIncrement" : {
            "$ref" : "#/components/schemas/RestrictedDimensionalFunction_Time"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define how frequently intermediate results should be saved. With the selection of <b>initial time steps</b> only the user defined time steps are stored in the result and by selecting <b>all computed time steps</b> also intermediate results that were created by the automatic time stepping are saved. With the selection of <b>write interval</b> a specific write frequency can be chosen which reduces the result size. Finally using <b>user defined time steps</b> there can either be a constant time increment for result storage given or a table with varying time intervals analogous to the <b>time step length</b> definition.</p>"
      },
      "SingleFrequency" : {
        "title" : "Single frequency",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SingleFrequency",
            "default" : "SINGLE"
          },
          "frequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          }
        },
        "additionalProperties" : false
      },
      "FrequencyList" : {
        "title" : "Frequency list",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FrequencyList",
            "default" : "LIST_V20"
          },
          "startFrequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "endFrequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "frequencyStepping" : {
            "$ref" : "#/components/schemas/RestrictedDimensionalFunction_Frequency"
          }
        },
        "additionalProperties" : false
      },
      "RestrictedDimensionalFunction_Frequency" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_RestrictedDimensionalFunction_FrequencyValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/s", "RPM", "Hz" ]
          }
        },
        "additionalProperties" : false
      },
      "FirstMode" : {
        "title" : "First modes",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FirstMode",
            "default" : "FIRSTMODE"
          },
          "numberOfModes" : {
            "title" : "Number of modes",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the maximum number of eigenfrequencies/eigenmodes, that should be calculated.</p>",
            "default" : 10
          }
        },
        "additionalProperties" : false
      },
      "FrequencyRange" : {
        "title" : "Frequency range",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FrequencyRange",
            "default" : "RANGE"
          },
          "startFrequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "endFrequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "numberOfSubBands" : {
            "title" : "Number of sub-bands",
            "maximum" : 1000,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 1
          },
          "parallelizationLevel" : {
            "title" : "Level of parallelization",
            "type" : "string",
            "default" : "COMPLETE",
            "enum" : [ "COMPLETE", "PARTIAL" ]
          }
        },
        "additionalProperties" : false
      },
      "CenterFrequency" : {
        "title" : "Center frequency",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CenterFrequency",
            "default" : "CENTER"
          },
          "centerFrequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "numberOfModes" : {
            "title" : "Number of modes",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the maximum number of eigenfrequencies/eigenmodes, that should be calculated.</p>",
            "default" : 10
          }
        },
        "additionalProperties" : false
      },
      "ModalBaseControl" : {
        "type" : "object",
        "properties" : {
          "eigenfrequencyScope" : {
            "$ref" : "#/components/schemas/OneOf_ModalBaseControlEigenfrequencyScope"
          }
        },
        "additionalProperties" : false
      },
      "TwiceMaxLoadingFrequency" : {
        "title" : "Twice max loading frequency",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TwiceMaxLoadingFrequency",
            "default" : "TWICE_MAX_LOADING_FREQUENCY"
          }
        },
        "additionalProperties" : false
      },
      "HarmonicResponseControl" : {
        "type" : "object",
        "properties" : {
          "excitationFrequencies" : {
            "$ref" : "#/components/schemas/OneOf_HarmonicResponseControlExcitationFrequencies"
          }
        },
        "additionalProperties" : false
      },
      "ClusterAroundModes" : {
        "title" : "Cluster around modes",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ClusterAroundModes",
            "default" : "CLUSTER_AROUND_MODES"
          },
          "startFrequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "endFrequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "frequenciesPerMode" : {
            "title" : "Frequencies per mode",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Specify the number of excitation frequencies to be clustered around each eigenfrequency. The eigenfrequency itself will also be considered when an even number is provided.",
            "default" : 5
          },
          "percentageSpread" : {
            "title" : "Spread (%)",
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Define the total bandwidth around each eigenfrequency, as a percentage of each individual eigenfrequency, within which excitation frequencies will be spaced. If a value of 10% is given, the bandwidth will extend 5% of the eigenfrequency value on both sides of the eigenfrequency.",
            "default" : 10.0
          }
        },
        "additionalProperties" : false
      },
      "CoverSpectrum" : {
        "title" : "Cover spectrum",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CoverSpectrum",
            "default" : "COVER_SPECTRUM"
          },
          "startFrequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "endFrequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "frequenciesPerMode" : {
            "title" : "Frequencies per mode",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Specify the number of excitation frequencies to be spread over each modal peak and neighbouring valleys. The eigenfrequency will also be considered when an even number is provided.",
            "default" : 10
          },
          "growthRatio" : {
            "title" : "Growth ratio",
            "minimum" : 1.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Ratio of the adjacent distances between excitation frequencies. It controls the distribution of the frequencies, with larger values resulting in a faster spread towards the valleys and tighter clustering around the modal peaks. Suggested value r >= 2.",
            "default" : 2.0
          }
        },
        "additionalProperties" : false
      },
      "ComputingCore" : {
        "type" : "object",
        "properties" : {
          "numOfProcessors" : {
            "title" : "Number of processors",
            "maximum" : 192,
            "exclusiveMaximum" : false,
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Selecting more processor cores will speed up the simulation process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/simulation-control-fluid/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "format" : "int64",
            "default" : -1,
            "enum" : [ -1, 1, 2, 4, 8, 16, 32, 48, 64, 96, 128, 192 ]
          },
          "numOfComputingProcessors" : {
            "title" : "Number of parallel processes",
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Set the number of processors which shall be used for the parallel computation.</p>",
            "default" : -1
          },
          "domainDecomposition" : {
            "$ref" : "#/components/schemas/OneOf_ComputingCoreDomainDecomposition"
          },
          "numOfThreads" : {
            "title" : "Number of threads",
            "maximum" : 192,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 1
          },
          "partitionMesh" : {
            "title" : "Partition mesh",
            "type" : "boolean",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "AutomaticDomainDecomposition" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticDomainDecomposition",
            "default" : "AUTOMATIC"
          }
        },
        "additionalProperties" : false
      },
      "CentralizedDomainDecomposition" : {
        "title" : "Centralized",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CentralizedDomainDecomposition",
            "default" : "CENTRALIZED"
          }
        },
        "additionalProperties" : false
      },
      "ElementGroupsDomainDecomposition" : {
        "title" : "Element groups",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElementGroupsDomainDecomposition",
            "default" : "ELEMENT_GROUPS"
          },
          "maxElementGroupSize" : {
            "title" : "Maximum size of element groups",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 1000
          }
        },
        "additionalProperties" : false
      },
      "CustomDomainDecomposition" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomDomainDecomposition",
            "default" : "CUSTOM"
          },
          "numPartitions" : {
            "title" : "Number of partitions",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 1
          },
          "partitioner" : {
            "title" : "Partitioner",
            "type" : "string",
            "default" : "METIS",
            "enum" : [ "METIS", "SCOTCH" ]
          }
        },
        "additionalProperties" : false
      },
      "SolidResultControl" : {
        "type" : "object",
        "properties" : {
          "solutionFields" : {
            "title" : "Solution fields",
            "type" : "array",
            "description" : "Each mode is normalized using its largest component of displacement.",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SolidResultControlSolutionFields"
            },
            "x-conditionalDefaults" : [ {
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true" ],
              "default" : [ {
                "type" : "DISPLACEMENT",
                "name" : "Displacement",
                "displacementType" : {
                  "type" : "GLOBAL"
                }
              }, {
                "type" : "STRESS",
                "name" : "Cauchy stress",
                "stressType" : {
                  "type" : "CAUCHY"
                }
              }, {
                "type" : "STRESS",
                "name" : "Von Mises stress",
                "stressType" : {
                  "type" : "VON_MISES"
                }
              }, {
                "type" : "STRAIN",
                "name" : "Total nonlinear strain",
                "strainType" : {
                  "type" : "TOTAL_NONLINEAR"
                }
              } ]
            }, {
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false" ],
              "default" : [ {
                "type" : "DISPLACEMENT",
                "name" : "Displacement",
                "displacementType" : {
                  "type" : "GLOBAL"
                }
              }, {
                "type" : "STRESS",
                "name" : "Cauchy stress",
                "stressType" : {
                  "type" : "CAUCHY"
                }
              }, {
                "type" : "STRESS",
                "name" : "Von Mises stress",
                "stressType" : {
                  "type" : "VON_MISES"
                }
              }, {
                "type" : "STRAIN",
                "name" : "Total strain",
                "strainType" : {
                  "type" : "TOTAL"
                }
              } ]
            }, {
              "when" : [ "type == DYNAMIC_ANALYSIS" ],
              "default" : [ {
                "type" : "DISPLACEMENT",
                "name" : "Displacement",
                "displacementType" : {
                  "type" : "GLOBAL"
                }
              }, {
                "type" : "STRESS",
                "name" : "Cauchy stress",
                "stressType" : {
                  "type" : "CAUCHY"
                }
              }, {
                "type" : "STRESS",
                "name" : "Von Mises stress",
                "stressType" : {
                  "type" : "VON_MISES"
                }
              }, {
                "type" : "STRAIN",
                "name" : "Total nonlinear strain",
                "strainType" : {
                  "type" : "TOTAL_NONLINEAR"
                }
              }, {
                "type" : "VELOCITY",
                "name" : "Velocity",
                "velocityType" : {
                  "type" : "GLOBAL"
                }
              }, {
                "type" : "ACCELERATION",
                "name" : "Acceleration",
                "accelerationType" : {
                  "type" : "GLOBAL"
                }
              } ]
            }, {
              "when" : [ "type == HEAT_TRANSFER" ],
              "default" : [ {
                "type" : "TEMPERATURE",
                "name" : "Temperature",
                "temperatureType" : "FIELD"
              } ]
            }, {
              "when" : [ "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ],
              "default" : [ {
                "type" : "DISPLACEMENT",
                "name" : "Displacement",
                "displacementType" : {
                  "type" : "GLOBAL"
                }
              }, {
                "type" : "STRESS",
                "name" : "Cauchy stress",
                "stressType" : {
                  "type" : "CAUCHY"
                }
              }, {
                "type" : "STRESS",
                "name" : "Von Mises stress",
                "stressType" : {
                  "type" : "VON_MISES"
                }
              }, {
                "type" : "STRAIN",
                "name" : "Total strain",
                "strainType" : {
                  "type" : "TOTAL"
                }
              }, {
                "type" : "TEMPERATURE",
                "name" : "Temperature",
                "temperatureType" : "FIELD"
              } ]
            }, {
              "when" : [ "type == THERMAL_MECHANICAL && nonLinearAnalysis == true && inertiaEffect == STATIC" ],
              "default" : [ {
                "type" : "DISPLACEMENT",
                "name" : "Displacement",
                "displacementType" : {
                  "type" : "GLOBAL"
                }
              }, {
                "type" : "STRESS",
                "name" : "Cauchy stress",
                "stressType" : {
                  "type" : "CAUCHY"
                }
              }, {
                "type" : "STRESS",
                "name" : "Von Mises stress",
                "stressType" : {
                  "type" : "VON_MISES"
                }
              }, {
                "type" : "STRAIN",
                "name" : "Total nonlinear strain",
                "strainType" : {
                  "type" : "TOTAL_NONLINEAR"
                }
              }, {
                "type" : "TEMPERATURE",
                "name" : "Temperature",
                "temperatureType" : "FIELD"
              } ]
            }, {
              "when" : [ "type == THERMAL_MECHANICAL && nonLinearAnalysis == true && inertiaEffect == DYNAMIC" ],
              "default" : [ {
                "type" : "DISPLACEMENT",
                "name" : "Displacement",
                "displacementType" : {
                  "type" : "GLOBAL"
                }
              }, {
                "type" : "STRESS",
                "name" : "Cauchy stress",
                "stressType" : {
                  "type" : "CAUCHY"
                }
              }, {
                "type" : "STRESS",
                "name" : "Von Mises stress",
                "stressType" : {
                  "type" : "VON_MISES"
                }
              }, {
                "type" : "STRAIN",
                "name" : "Total nonlinear strain",
                "strainType" : {
                  "type" : "TOTAL_NONLINEAR"
                }
              }, {
                "type" : "TEMPERATURE",
                "name" : "Temperature",
                "temperatureType" : "FIELD"
              }, {
                "type" : "VELOCITY",
                "name" : "Velocity",
                "velocityType" : {
                  "type" : "GLOBAL"
                }
              }, {
                "type" : "ACCELERATION",
                "name" : "Acceleration",
                "accelerationType" : {
                  "type" : "GLOBAL"
                }
              } ]
            }, {
              "when" : [ "type == HARMONIC_ANALYSIS" ],
              "default" : [ {
                "type" : "HARMONIC_DISPLACEMENT",
                "name" : "Displacement",
                "harmonicDisplacementType" : {
                  "type" : "ABSOLUTE"
                }
              }, {
                "type" : "STRESS",
                "name" : "Cauchy stress",
                "stressType" : {
                  "type" : "CAUCHY"
                }
              }, {
                "type" : "STRESS",
                "name" : "Von Mises stress (Max over Phase)",
                "stressType" : {
                  "type" : "MAX_OVER_PHASE_VON_MISES"
                }
              }, {
                "type" : "STRAIN",
                "name" : "Total strain",
                "strainType" : {
                  "type" : "TOTAL"
                }
              }, {
                "type" : "HARMONIC_VELOCITY",
                "name" : "Velocity",
                "harmonicVelocityType" : {
                  "type" : "ABSOLUTE"
                }
              }, {
                "type" : "HARMONIC_ACCELERATION",
                "name" : "Acceleration",
                "harmonicAccelerationType" : {
                  "type" : "ABSOLUTE"
                }
              } ]
            }, {
              "when" : [ "type == FREQUENCY_ANALYSIS" ],
              "default" : [ {
                "type" : "NORMALIZED_DISPLACEMENT",
                "name" : "Displacement",
                "displacementType" : {
                  "type" : "NORMALIZED"
                }
              } ]
            } ]
          },
          "edgeCalculation" : {
            "title" : "Edge calculation",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SolidResultControlEdgeCalculation"
            },
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL]" ]
          },
          "areaCalculation" : {
            "title" : "Area calculation",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SolidResultControlAreaCalculation"
            },
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL,HARMONIC_ANALYSIS]" ]
          },
          "volumeCalculation" : {
            "title" : "Volume calculation",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SolidResultControlVolumeCalculation"
            },
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL]" ]
          },
          "pointData" : {
            "title" : "Point data",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SolidResultControlPointData"
            },
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,THERMAL_MECHANICAL,HEAT_TRANSFER]" ]
          }
        },
        "additionalProperties" : false
      },
      "ContactResultControlItem" : {
        "title" : "Contact",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ContactResultControlItem",
            "default" : "CONTACT"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "contactType" : {
            "title" : "Contact result type",
            "type" : "string",
            "default" : "PRESSURE",
            "enum" : [ "PRESSURE", "RESULT" ],
            "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && inertiaEffect == DYNAMIC" ]
          }
        },
        "additionalProperties" : false
      },
      "DisplacementResultControlItem" : {
        "title" : "Displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DisplacementResultControlItem",
            "default" : "DISPLACEMENT"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "displacementType" : {
            "$ref" : "#/components/schemas/GlobalDisplacementType"
          }
        },
        "additionalProperties" : false
      },
      "GlobalDisplacementType" : {
        "title" : "Displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalDisplacementType",
            "default" : "GLOBAL"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "HarmonicDisplacementResultControlItem" : {
        "title" : "Displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HarmonicDisplacementResultControlItem",
            "default" : "HARMONIC_DISPLACEMENT"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "harmonicDisplacementType" : {
            "$ref" : "#/components/schemas/OneOf_HarmonicDisplacementResultControlItemHarmonicDisplacementType"
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteHarmonicDisplacementType" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteHarmonicDisplacementType",
            "default" : "ABSOLUTE"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "RelativeHarmonicDisplacementType" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeHarmonicDisplacementType",
            "default" : "RELATIVE"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "NormalizedDisplacementResultControlItem" : {
        "title" : "Normalized displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NormalizedDisplacementResultControlItem",
            "default" : "NORMALIZED_DISPLACEMENT"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "displacementType" : {
            "$ref" : "#/components/schemas/NormalizedDisplacementType"
          }
        },
        "additionalProperties" : false
      },
      "NormalizedDisplacementType" : {
        "title" : "Normalized displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NormalizedDisplacementType",
            "default" : "NORMALIZED"
          }
        },
        "additionalProperties" : false
      },
      "ForceResultControlItem" : {
        "title" : "Force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ForceResultControlItem",
            "default" : "FORCE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "forceType" : {
            "$ref" : "#/components/schemas/OneOf_ForceResultControlItemForceType"
          }
        },
        "additionalProperties" : false
      },
      "GlobalReactionForceType" : {
        "title" : "Reaction force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalReactionForceType",
            "default" : "REACTION"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "GlobalNodalForceType" : {
        "title" : "Nodal force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalNodalForceType",
            "default" : "NODAL"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "StrainResultControlItem" : {
        "title" : "Strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StrainResultControlItem",
            "default" : "STRAIN"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string",
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS]" ],
              "default" : "Total nonlinear strain"
            }, {
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ],
              "default" : "Total nonlinear strain"
            }, {
              "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ],
              "default" : "Total strain"
            } ]
          },
          "strainType" : {
            "$ref" : "#/components/schemas/OneOf_StrainResultControlItemStrainType"
          }
        },
        "additionalProperties" : false
      },
      "GlobalTotalNonlinearStrainType" : {
        "title" : "Total nonlinear strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalTotalNonlinearStrainType",
            "default" : "TOTAL_NONLINEAR"
          }
        },
        "additionalProperties" : false
      },
      "GlobalTotalEquivalentPlasticStrainType" : {
        "title" : "Cumulative plastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalTotalEquivalentPlasticStrainType",
            "default" : "TOTAL_EQUI_PLASTIC"
          }
        },
        "additionalProperties" : false
      },
      "GlobalUnelasticStrainType" : {
        "title" : "Unelastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalUnelasticStrainType",
            "default" : "UNELASTIC"
          }
        },
        "additionalProperties" : false
      },
      "GlobalTotalStrainType" : {
        "title" : "Total strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalTotalStrainType",
            "default" : "TOTAL"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "GlobalPrincipalStrainType" : {
        "title" : "Principal strain (Engineering)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalPrincipalStrainType",
            "default" : "PRINCIPAL"
          }
        },
        "additionalProperties" : false
      },
      "GlobalPrincipalGreenLagrangeStrainType" : {
        "title" : "Principal strain (Green-Lagrange)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalPrincipalGreenLagrangeStrainType",
            "default" : "PRINCIPAL_GREEN_LAGRANGE"
          }
        },
        "additionalProperties" : false
      },
      "StressResultControlItem" : {
        "title" : "Stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StressResultControlItem",
            "default" : "STRESS"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "stressType" : {
            "$ref" : "#/components/schemas/OneOf_StressResultControlItemStressType"
          }
        },
        "additionalProperties" : false
      },
      "GlobalTrescaStressType" : {
        "title" : "Tresca stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalTrescaStressType",
            "default" : "TRESCA"
          }
        },
        "additionalProperties" : false
      },
      "GlobalCauchyStressType" : {
        "title" : "Cauchy stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalCauchyStressType",
            "default" : "CAUCHY"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "GlobalPrincipalStressType" : {
        "title" : "Principal stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalPrincipalStressType",
            "default" : "PRINCIPAL"
          }
        },
        "additionalProperties" : false
      },
      "GlobalVonMisesStressType" : {
        "title" : "Von Mises stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalVonMisesStressType",
            "default" : "VON_MISES"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "REAL_AND_IMAGINARY",
            "enum" : [ "REAL_AND_IMAGINARY" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "GlobalMaxOverPhaseVonMisesStressType" : {
        "title" : "Von Mises stress (Max over Phase)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalMaxOverPhaseVonMisesStressType",
            "default" : "MAX_OVER_PHASE_VON_MISES"
          }
        },
        "additionalProperties" : false
      },
      "GlobalSignedVonMisesStressType" : {
        "title" : "Signed von Mises stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalSignedVonMisesStressType",
            "default" : "SIGNED_VON_MISES"
          }
        },
        "additionalProperties" : false
      },
      "VelocityResultControlItem" : {
        "title" : "Velocity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: VelocityResultControlItem",
            "default" : "VELOCITY"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "velocityType" : {
            "$ref" : "#/components/schemas/GlobalVelocityType"
          }
        },
        "additionalProperties" : false
      },
      "GlobalVelocityType" : {
        "title" : "Velocity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalVelocityType",
            "default" : "GLOBAL"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "HarmonicVelocityResultControlItem" : {
        "title" : "Velocity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HarmonicVelocityResultControlItem",
            "default" : "HARMONIC_VELOCITY"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "harmonicVelocityType" : {
            "$ref" : "#/components/schemas/OneOf_HarmonicVelocityResultControlItemHarmonicVelocityType"
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteHarmonicVelocityType" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteHarmonicVelocityType",
            "default" : "ABSOLUTE"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "RelativeHarmonicVelocityType" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeHarmonicVelocityType",
            "default" : "RELATIVE"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "AccelerationResultControlItem" : {
        "title" : "Acceleration",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AccelerationResultControlItem",
            "default" : "ACCELERATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "accelerationType" : {
            "$ref" : "#/components/schemas/GlobalAccelerationType"
          }
        },
        "additionalProperties" : false
      },
      "GlobalAccelerationType" : {
        "title" : "Acceleration",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalAccelerationType",
            "default" : "GLOBAL"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "HarmonicAccelerationResultControlItem" : {
        "title" : "Acceleration",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HarmonicAccelerationResultControlItem",
            "default" : "HARMONIC_ACCELERATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "harmonicAccelerationType" : {
            "$ref" : "#/components/schemas/OneOf_HarmonicAccelerationResultControlItemHarmonicAccelerationType"
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteHarmonicAccelerationType" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteHarmonicAccelerationType",
            "default" : "ABSOLUTE"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "RelativeHarmonicAccelerationType" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeHarmonicAccelerationType",
            "default" : "RELATIVE"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "MAGNITUDE_AND_PHASE",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "TemperatureResultControlItem" : {
        "title" : "Temperature",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TemperatureResultControlItem",
            "default" : "TEMPERATURE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "temperatureType" : {
            "title" : "Temperature type",
            "type" : "string",
            "default" : "FIELD",
            "enum" : [ "FIELD" ]
          }
        },
        "additionalProperties" : false
      },
      "HeatFluxResultControlItem" : {
        "title" : "Heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HeatFluxResultControlItem",
            "default" : "HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "heatFluxType" : {
            "title" : "Heat flux type",
            "type" : "string",
            "default" : "FIELD",
            "enum" : [ "FIELD" ],
            "x-showWhen" : [ "type in [HEAT_TRANSFER,THERMAL_MECHANICAL]" ]
          }
        },
        "additionalProperties" : false
      },
      "ERPDensityResultControlItem" : {
        "title" : "ERP Density",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ERPDensityResultControlItem",
            "default" : "ERP_DENSITY"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "densityType" : {
            "$ref" : "#/components/schemas/EquivalentRadiatedPowerDensityType"
          }
        },
        "additionalProperties" : false
      },
      "EquivalentRadiatedPowerDensityType" : {
        "title" : "ERP Density",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: EquivalentRadiatedPowerDensityType",
            "default" : "ERP"
          }
        },
        "additionalProperties" : false
      },
      "MinMaxFieldsCalculationResultControlItem" : {
        "title" : "Min-max",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Use <b>Min-max</b> to output the minimum and maximum nodal values of the selected result quantity on the assigned entity.</p>\n\nSchema name: MinMaxFieldsCalculationResultControlItem",
            "default" : "MIN_MAX_FIELDS_CALCULATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_MinMaxFieldsCalculationResultControlItemFieldSelection"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Use <b>Min-max</b> to output the minimum and maximum nodal values of the selected result quantity on the assigned entity.</p>"
      },
      "DisplacementFieldSelection" : {
        "title" : "Displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DisplacementFieldSelection",
            "default" : "DISPLACEMENT"
          },
          "displacementType" : {
            "$ref" : "#/components/schemas/OneOf_DisplacementFieldSelectionDisplacementType"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          },
          "outputMethod" : {
            "title" : "Output Method",
            "type" : "string",
            "description" : "<p>This option allows to control the output frequency and accuracy:</p><ul><li><p><b>Post simulation:</b> Point data output is synchronised with global solution fields. Data is interpolated from nodes surrounding the geometry primitive.</p></ul><ul><li><p><b>Live:</b> Point data is output continuously during the simulation at all computed timesteps. Data is taken directly from the nearest mesh node and no interpolation is performed.</p></ul>",
            "default" : "POST_SIMULATION",
            "enum" : [ "POST_SIMULATION", "LIVE" ],
            "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteHarmonicDisplacementFieldType" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteHarmonicDisplacementFieldType",
            "default" : "ABSOLUTE"
          }
        },
        "additionalProperties" : false
      },
      "RelativeHarmonicDisplacementFieldType" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeHarmonicDisplacementFieldType",
            "default" : "RELATIVE"
          }
        },
        "additionalProperties" : false
      },
      "ForceFieldSelection" : {
        "title" : "Force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ForceFieldSelection",
            "default" : "FORCE"
          },
          "forceType" : {
            "$ref" : "#/components/schemas/OneOf_ForceFieldSelectionForceType"
          }
        },
        "additionalProperties" : false
      },
      "ReactionForceType" : {
        "title" : "Reaction",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ReactionForceType",
            "default" : "REACTION"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "NodalForceType" : {
        "title" : "Nodal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NodalForceType",
            "default" : "NODAL"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "ContactFieldSelection" : {
        "title" : "Contact",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ContactFieldSelection",
            "default" : "CONTACT"
          },
          "contactType" : {
            "$ref" : "#/components/schemas/OneOf_ContactFieldSelectionContactType"
          }
        },
        "additionalProperties" : false
      },
      "ContactPressureType" : {
        "title" : "Pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ContactPressureType",
            "default" : "PRESSURE"
          }
        },
        "additionalProperties" : false
      },
      "ContactNormalForceType" : {
        "title" : "Normal force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ContactNormalForceType",
            "default" : "NORMAL_FORCE"
          }
        },
        "additionalProperties" : false
      },
      "ContactGapType" : {
        "title" : "Gap",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ContactGapType",
            "default" : "GAP"
          }
        },
        "additionalProperties" : false
      },
      "ContactStateType" : {
        "title" : "State",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ContactStateType",
            "default" : "STATE"
          }
        },
        "additionalProperties" : false
      },
      "StrainFieldSelection" : {
        "title" : "Strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StrainFieldSelection",
            "default" : "STRAIN"
          },
          "strainType" : {
            "$ref" : "#/components/schemas/OneOf_StrainFieldSelectionStrainType"
          }
        },
        "additionalProperties" : false
      },
      "TotalLinearStrainType" : {
        "title" : "Total linear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalLinearStrainType",
            "default" : "TOTAL_LINEAR"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "XX", "YY", "ZZ", "XY", "XZ", "YZ", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "TotalNonLinearStrainType" : {
        "title" : "Total nonlinear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalNonLinearStrainType",
            "default" : "TOTAL_NONLINEAR"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "XX", "YY", "ZZ", "XY", "XZ", "YZ", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "TotalEquivalentPlasticStrainType" : {
        "title" : "Cumulative plastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalEquivalentPlasticStrainType",
            "default" : "TOTAL_EQUI_PLASTIC"
          }
        },
        "additionalProperties" : false
      },
      "UnelasticStrainType" : {
        "title" : "Unelastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: UnelasticStrainType",
            "default" : "UNELASTIC"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "XX", "YY", "ZZ", "XY", "XZ", "YZ", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "PrincipalStrainType" : {
        "title" : "Principal (Engineering)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PrincipalStrainType",
            "default" : "PRINCIPAL"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "FIRST_COMPONENT", "SECOND_COMPONENT", "THIRD_COMPONENT", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "PrincipalGreenLagrangeStrainType" : {
        "title" : "Principal (Green-Lagrange)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PrincipalGreenLagrangeStrainType",
            "default" : "PRINCIPAL_GREEN_LAGRANGE"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "FIRST_COMPONENT", "SECOND_COMPONENT", "THIRD_COMPONENT", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "StressFieldSelection" : {
        "title" : "Stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StressFieldSelection",
            "default" : "STRESS"
          },
          "stressType" : {
            "$ref" : "#/components/schemas/OneOf_StressFieldSelectionStressType"
          }
        },
        "additionalProperties" : false
      },
      "TrescaStressType" : {
        "title" : "Tresca",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TrescaStressType",
            "default" : "TRESCA"
          }
        },
        "additionalProperties" : false
      },
      "CauchyStressType" : {
        "title" : "Cauchy",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CauchyStressType",
            "default" : "CAUCHY"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "XX", "YY", "ZZ", "XY", "XZ", "YZ", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "PrincipalStressType" : {
        "title" : "Principal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PrincipalStressType",
            "default" : "PRINCIPAL"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "FIRST_COMPONENT", "SECOND_COMPONENT", "THIRD_COMPONENT", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "VonMisesStressType" : {
        "title" : "Von Mises",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: VonMisesStressType",
            "default" : "VON_MISES"
          }
        },
        "additionalProperties" : false
      },
      "SignedVonMisesStressType" : {
        "title" : "Signed von Mises",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SignedVonMisesStressType",
            "default" : "SIGNED_VON_MISES"
          }
        },
        "additionalProperties" : false
      },
      "VelocityFieldSelection" : {
        "title" : "Velocity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: VelocityFieldSelection",
            "default" : "VELOCITY"
          },
          "velocityType" : {
            "$ref" : "#/components/schemas/OneOf_VelocityFieldSelectionVelocityType"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          },
          "outputMethod" : {
            "title" : "Output Method",
            "type" : "string",
            "description" : "<p>This option allows to control the output frequency and accuracy:</p><ul><li><p><b>Post simulation:</b> Point data output is synchronised with global solution fields. Data is interpolated from nodes surrounding the geometry primitive.</p></ul><ul><li><p><b>Live:</b> Point data is output continuously during the simulation at all computed timesteps. Data is taken directly from the nearest mesh node and no interpolation is performed.</p></ul>",
            "default" : "POST_SIMULATION",
            "enum" : [ "POST_SIMULATION", "LIVE" ],
            "x-showWhen" : [ "type == THERMAL_MECHANICAL && inertiaEffect == DYNAMIC", "type == DYNAMIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteHarmonicVelocityFieldType" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteHarmonicVelocityFieldType",
            "default" : "ABSOLUTE"
          }
        },
        "additionalProperties" : false
      },
      "RelativeHarmonicVelocityFieldType" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeHarmonicVelocityFieldType",
            "default" : "RELATIVE"
          }
        },
        "additionalProperties" : false
      },
      "AccelerationFieldSelection" : {
        "title" : "Acceleration",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AccelerationFieldSelection",
            "default" : "ACCELERATION"
          },
          "accelerationType" : {
            "$ref" : "#/components/schemas/OneOf_AccelerationFieldSelectionAccelerationType"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          },
          "outputMethod" : {
            "title" : "Output Method",
            "type" : "string",
            "description" : "<p>This option allows to control the output frequency and accuracy:</p><ul><li><p><b>Post simulation:</b> Point data output is synchronised with global solution fields. Data is interpolated from nodes surrounding the geometry primitive.</p></ul><ul><li><p><b>Live:</b> Point data is output continuously during the simulation at all computed timesteps. Data is taken directly from the nearest mesh node and no interpolation is performed.</p></ul>",
            "default" : "POST_SIMULATION",
            "enum" : [ "POST_SIMULATION", "LIVE" ],
            "x-showWhen" : [ "type == THERMAL_MECHANICAL && inertiaEffect == DYNAMIC", "type == DYNAMIC_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteHarmonicAccelerationFieldType" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteHarmonicAccelerationFieldType",
            "default" : "ABSOLUTE"
          }
        },
        "additionalProperties" : false
      },
      "RelativeHarmonicAccelerationFieldType" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeHarmonicAccelerationFieldType",
            "default" : "RELATIVE"
          }
        },
        "additionalProperties" : false
      },
      "TemperatureFieldSelection" : {
        "title" : "Temperature",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TemperatureFieldSelection",
            "default" : "TEMPERATURE"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "TEMPERATURE",
            "enum" : [ "TEMPERATURE" ]
          }
        },
        "additionalProperties" : false
      },
      "HeatFluxFieldSelection" : {
        "title" : "Heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HeatFluxFieldSelection",
            "default" : "HEAT_FLUX"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "AverageFieldsCalculationResultControlItem" : {
        "title" : "Average",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Use <b>Average</b> to output the mean nodal value of the selected result quantity on the assigned entity. Note that this is not an area weighted average and that the nodal values from large elements will have the same contribution as those from small elements meaning that results can be misleading when mesh size varies on the selected entity.</p>\n\nSchema name: AverageFieldsCalculationResultControlItem",
            "default" : "AVERAGE_FIELDS_CALCULATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_AverageFieldsCalculationResultControlItemFieldSelection"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Use <b>Average</b> to output the mean nodal value of the selected result quantity on the assigned entity. Note that this is not an area weighted average and that the nodal values from large elements will have the same contribution as those from small elements meaning that results can be misleading when mesh size varies on the selected entity.</p>"
      },
      "SumFieldsCalculationResultControlItem" : {
        "title" : "Sum",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Use <b>Sum</b> to output the sum of the nodal values of the selected result quantity on the assigned entity. This option is only available for use with force solution fields and must be used when computing any force e.g. reaction force on a selected entity.</p>\n\nSchema name: SumFieldsCalculationResultControlItem",
            "default" : "SUM_FIELDS_CALCULATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_SumFieldsCalculationResultControlItemFieldSelection"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Use <b>Sum</b> to output the sum of the nodal values of the selected result quantity on the assigned entity. This option is only available for use with force solution fields and must be used when computing any force e.g. reaction force on a selected entity.</p>"
      },
      "MomentFieldSelection" : {
        "title" : "Moment",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MomentFieldSelection",
            "default" : "MOMENT"
          },
          "momentType" : {
            "$ref" : "#/components/schemas/OneOf_MomentFieldSelectionMomentType"
          },
          "referencePoint" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "ReactionMomentType" : {
        "title" : "Reaction",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ReactionMomentType",
            "default" : "REACTION"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "NodalMomentType" : {
        "title" : "Nodal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NodalMomentType",
            "default" : "NODAL"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "HeatFlowCalculationResultControlItem" : {
        "title" : "Heat flow",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HeatFlowCalculationResultControlItem",
            "default" : "HEAT_FLOW_CALCULATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "ERPCalculationResultControlItem" : {
        "title" : "Equivalent radiated power",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ERPCalculationResultControlItem",
            "default" : "ERP_CALCULATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_ERPCalculationResultControlItemFieldSelection"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteERPFieldSelection" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteERPFieldSelection",
            "default" : "ABSOLUTE_ERP"
          }
        },
        "additionalProperties" : false
      },
      "RelativeERPFieldSelection" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeERPFieldSelection",
            "default" : "RELATIVE_ERP"
          },
          "referenceERPValue" : {
            "$ref" : "#/components/schemas/Dimensional_Power"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Power" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W", "Btu/s", "kW", "MW", "HP", "CV", "Btu/min", "Btu/h" ]
          }
        },
        "additionalProperties" : false
      },
      "TemporalResponseResultControlItem" : {
        "title" : "Point data",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TemporalResponseResultControlItem",
            "default" : "TEMPORAL_RESPONSE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_TemporalResponseResultControlItemFieldSelection"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL]" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : false,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "POINT" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "HarmonicResponseResultControlItem" : {
        "title" : "Point data",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HarmonicResponseResultControlItem",
            "default" : "HARMONIC_RESPONSE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_HarmonicResponseResultControlItemFieldSelection"
          },
          "complexNumber" : {
            "title" : "Complex number",
            "type" : "string",
            "default" : "REAL_AND_IMAGINARY",
            "enum" : [ "REAL_AND_IMAGINARY", "MAGNITUDE_AND_PHASE" ],
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : false,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "POINT" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DynamicAnalysis" : {
        "title" : "Dynamic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DynamicAnalysis",
            "default" : "DYNAMIC_ANALYSIS"
          },
          "connectionGroups" : {
            "title" : "Connection groups",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_DynamicAnalysisConnectionGroups"
            }
          },
          "connectors" : {
            "title" : "Connectors",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_DynamicAnalysisConnectors"
            }
          },
          "elementTechnology" : {
            "$ref" : "#/components/schemas/SolidElementTechnology"
          },
          "model" : {
            "$ref" : "#/components/schemas/SolidModel"
          },
          "materials" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SolidMaterial"
            }
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/SolidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_DynamicAnalysisBoundaryConditions"
            }
          },
          "numerics" : {
            "$ref" : "#/components/schemas/SolidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/SolidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/SolidResultControl"
          },
          "meshOrder" : {
            "title" : "Mesh order",
            "type" : "string",
            "default" : "NONE",
            "enum" : [ "FIRST", "SECOND", "NONE" ]
          }
        },
        "additionalProperties" : false
      },
      "HeatTransfer" : {
        "title" : "Heat Transfer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HeatTransfer",
            "default" : "HEAT_TRANSFER"
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_HeatTransferTimeDependency"
          },
          "nonLinearAnalysis" : {
            "title" : "Nonlinear analysis",
            "type" : "boolean",
            "description" : "<p>Choose if your analysis should feature any kind of <b>nonlinearity</b> like <b>physical contacts, nonlinear materials</b> as hyperelasticity or plasticity or <b>large rotations</b> and <b>large deformations, temperature dependant material properties</b> or <b>temperature dependant boundary conditions</b>. For a <b>linear analysis</b> none of those nonlinearities are available.</p>",
            "default" : false
          },
          "connectionGroups" : {
            "title" : "Connection groups",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Contact"
            }
          },
          "elementTechnology" : {
            "$ref" : "#/components/schemas/SolidElementTechnology"
          },
          "model" : {
            "$ref" : "#/components/schemas/SolidModel"
          },
          "materials" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SolidMaterial"
            }
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/SolidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_HeatTransferBoundaryConditions"
            }
          },
          "numerics" : {
            "$ref" : "#/components/schemas/SolidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/SolidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/SolidResultControl"
          },
          "meshOrder" : {
            "title" : "Mesh order",
            "type" : "string",
            "default" : "NONE",
            "enum" : [ "FIRST", "SECOND", "NONE" ]
          }
        },
        "additionalProperties" : false
      },
      "TransientTimeDependency" : {
        "title" : "Transient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TransientTimeDependency",
            "default" : "TRANSIENT"
          }
        },
        "additionalProperties" : false
      },
      "StationaryTimeDependency" : {
        "title" : "Steady-state",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StationaryTimeDependency",
            "default" : "STATIONARY"
          }
        },
        "additionalProperties" : false
      },
      "FixedTemperatureValueBC" : {
        "title" : "Fixed temperature value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a boundary condition for the <b>temperature</b> variable. It prescribes the given temperature value on all selected groups.<br /><br />Important remarks: <br /><ul><li>Do not define a temperature and a heat flux boundary condition on the same group</li><li>Do not define the temperature on slave entities of <b>Contact Constraints</b> as they are constrained by the master temperature</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file)</li></ul>\n\nSchema name: FixedTemperatureValueBC",
            "default" : "FIXED_TEMPERATURE_VALUE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "temperatureValue" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a boundary condition for the <b>temperature</b> variable. It prescribes the given temperature value on all selected groups.<br /><br />Important remarks: <br /><ul><li>Do not define a temperature and a heat flux boundary condition on the same group</li><li>Do not define the temperature on slave entities of <b>Contact Constraints</b> as they are constrained by the master temperature</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file)</li></ul>"
      },
      "SurfaceHeatFluxBC" : {
        "title" : "Surface heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Define the heatflux per unit area that enters the body through the assigned faces. Negative sign determines flux leaving the body.\n\nSchema name: SurfaceHeatFluxBC",
            "default" : "SURFACE_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatfluxValue" : {
            "$ref" : "#/components/schemas/DimensionalFunction_HeatFlux"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Define the heatflux per unit area that enters the body through the assigned faces. Negative sign determines flux leaving the body."
      },
      "DimensionalFunction_HeatFlux" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_HeatFluxValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W/m²", "Btu/(s·in²)", "W/mm²", "W/cm²", "Btu/(h·ft²)", "Btu/(min·ft²)", "Btu/(s·ft²)", "Btu/(h·in²)", "Btu/(min·in²)" ]
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_X_Y_Z_TIME_TEMP" : {
        "type" : "object",
        "properties" : {
          "T" : {
            "$ref" : "#/components/schemas/Unit_Time"
          },
          "Temperature" : {
            "$ref" : "#/components/schemas/Unit_Temperature"
          },
          "X" : {
            "$ref" : "#/components/schemas/Unit_Length"
          },
          "Y" : {
            "$ref" : "#/components/schemas/Unit_Length"
          },
          "Z" : {
            "$ref" : "#/components/schemas/Unit_Length"
          }
        }
      },
      "ConvectiveHeatFluxBC" : {
        "title" : "Convective heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a <b>heat flux</b> boundary condition representing a <b>convective heat flux</b> on the selected face groups. It is defined by the <b>reference temperature</b> (surrounding temperature) and the <b>convection coefficient</b>.<br /><br />Important remarks: <br /><ul><li>The convection coefficient is not only dependent on the material of the surrounding fluid but a property of the flow</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file) for the <b>reference temperature</b> and the <b>convection coefficient</b></li></ul>\n\nSchema name: ConvectiveHeatFluxBC",
            "default" : "CONVECTIVE_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "referenceTemperature" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "heatTransferCoefficient" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalTransmittance"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a <b>heat flux</b> boundary condition representing a <b>convective heat flux</b> on the selected face groups. It is defined by the <b>reference temperature</b> (surrounding temperature) and the <b>convection coefficient</b>.<br /><br />Important remarks: <br /><ul><li>The convection coefficient is not only dependent on the material of the surrounding fluid but a property of the flow</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file) for the <b>reference temperature</b> and the <b>convection coefficient</b></li></ul>"
      },
      "DimensionalFunction_ThermalTransmittance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_ThermalTransmittanceValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W/(K·m²)", "Btu/(s·in²·°F)", "W/(K·mm²)", "W/(K·cm²)", "Btu/(h·in²·°F)", "Btu/(min·in²·°F)", "Btu/(s·ft²·°F)", "Btu/(min·ft²·°F)" ]
          }
        },
        "additionalProperties" : false
      },
      "VolumeHeatFluxBC" : {
        "title" : "Volume heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a <b>volume heat source</b> boundary condition. It is applied to the <b>volume elements</b> in the selected volumes or volume groups.<br /><br />Important remarks: <br /><ul><li>The total heat generated depends on the volume of the selection as the value is given as Watt per cubic meter.</li><li>For positive values heat is generated, for negative values the bc represents a heat sink.</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file)</li></ul>\n\nSchema name: VolumeHeatFluxBC",
            "default" : "VOLUME_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatfluxValue" : {
            "$ref" : "#/components/schemas/DimensionalFunction_VolumetricPower"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a <b>volume heat source</b> boundary condition. It is applied to the <b>volume elements</b> in the selected volumes or volume groups.<br /><br />Important remarks: <br /><ul><li>The total heat generated depends on the volume of the selection as the value is given as Watt per cubic meter.</li><li>For positive values heat is generated, for negative values the bc represents a heat sink.</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file)</li></ul>"
      },
      "DimensionalFunction_VolumetricPower" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_VolumetricPowerValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W/m³", "Btu/(s·in³)" ]
          }
        },
        "additionalProperties" : false
      },
      "ThermalMechanical" : {
        "title" : "Thermomechanical",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ThermalMechanical",
            "default" : "THERMAL_MECHANICAL"
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_ThermalMechanicalTimeDependency"
          },
          "inertiaEffect" : {
            "title" : "Inertia effect",
            "type" : "string",
            "description" : "<p>Select if inertia effects should be considered in the analysis. If high loading accelerations or impacts are present then <b>dynamic</b> is the right choice for this parameter. If the dynamic effects are negligible, <b>static</b> should be selected.</p>",
            "default" : "STATIC",
            "x-conditionalEnum" : [ {
              "value" : "STATIC"
            }, {
              "value" : "DYNAMIC",
              "when" : [ "timeDependency.type == TRANSIENT" ]
            } ]
          },
          "nonLinearAnalysis" : {
            "title" : "Nonlinear analysis",
            "type" : "boolean",
            "description" : "<p>Choose if your analysis should feature any kind of <b>nonlinearity</b> like <b>physical contacts, nonlinear materials</b> as hyperelasticity or plasticity or <b>large rotations</b> and <b>large deformations, temperature dependant material properties</b> or <b>temperature dependant boundary conditions</b>. For a <b>linear analysis</b> none of those nonlinearities are available.</p>",
            "default" : false,
            "x-conditionalEnum" : [ {
              "value" : true,
              "when" : [ "timeDependency.type == TRANSIENT && inertiaEffect == STATIC" ]
            }, {
              "value" : true,
              "when" : [ "timeDependency.type == TRANSIENT && inertiaEffect == DYNAMIC" ]
            }, {
              "value" : false,
              "when" : [ "timeDependency.type == STATIONARY && inertiaEffect == STATIC" ]
            }, {
              "value" : false,
              "when" : [ "timeDependency.type == TRANSIENT && inertiaEffect == STATIC" ]
            } ]
          },
          "connectionGroups" : {
            "title" : "Connection groups",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_ThermalMechanicalConnectionGroups"
            }
          },
          "connectors" : {
            "title" : "Connectors",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PinConnector"
            }
          },
          "elementTechnology" : {
            "$ref" : "#/components/schemas/SolidElementTechnology"
          },
          "model" : {
            "$ref" : "#/components/schemas/SolidModel"
          },
          "materials" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SolidMaterial"
            }
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/SolidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_ThermalMechanicalBoundaryConditions"
            }
          },
          "numerics" : {
            "$ref" : "#/components/schemas/SolidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/SolidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/SolidResultControl"
          },
          "meshOrder" : {
            "title" : "Mesh order",
            "type" : "string",
            "default" : "NONE",
            "enum" : [ "FIRST", "SECOND", "NONE" ]
          }
        },
        "additionalProperties" : false
      },
      "Incompressible" : {
        "title" : "Incompressible",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Incompressible",
            "default" : "INCOMPRESSIBLE"
          },
          "turbulenceModel" : {
            "title" : "Turbulence model",
            "type" : "string",
            "description" : "Choose a turbulence model for your CFD analysis:<ul><li><strong>No turbulence</strong>: Laminar</li><li><strong>RANS</strong>: <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#standard-k-epsilon-model' target='_blank'>k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#realizable-k-epsilon-model' target='_blank'>Realizable k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-omega-sst/' target='_blank'>k-omega and k-omega SST</a></li><li><strong>LES</strong>: Smagorinsky, Spalart-Allmaras</li></ul><p><p><a href='https://www.simscale.com/blog/2017/12/turbulence-cfd-analysis/' target='_blank'>Learn more</a>.</p>",
            "default" : "KOMEGASST",
            "enum" : [ "SMAGORINSKY", "SPALARTALLMARAS", "NONE", "KEPSILON", "REALIZABLEKE", "KOMEGA", "KOMEGASST" ]
          },
          "adjointTurbulenceModel" : {
            "title" : "Adjoint turbulence model",
            "type" : "string",
            "default" : "ADJOINT_KOMEGASST",
            "enum" : [ "ADJOINT_NONE", "ADJOINT_KOMEGASST" ],
            "x-showWhen" : [ "enableAdjointOptimization == true" ]
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_IncompressibleTimeDependency"
          },
          "algorithm" : {
            "title" : "Algorithm",
            "type" : "string",
            "default" : "SIMPLE",
            "x-conditionalEnum" : [ {
              "value" : "SIMPLE",
              "when" : [ "type == INCOMPRESSIBLE && timeDependency.type == STATIONARY" ]
            }, {
              "value" : "PIMPLE",
              "when" : [ "type == INCOMPRESSIBLE && timeDependency.type == TRANSIENT" ]
            }, {
              "value" : "ICO",
              "when" : [ "type == INCOMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel == NONE" ]
            }, {
              "value" : "PISO",
              "when" : [ "type == INCOMPRESSIBLE && timeDependency.type == TRANSIENT" ]
            } ]
          },
          "numOfPassiveSpecies" : {
            "title" : "Passive species",
            "maximum" : 10,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Select the number of passive species involved in the simulation. Passive species allow you to simulate the transport of a scalar quantity within a fluid flow without affecting it. <a href='https://www.simscale.com/docs/simulation-setup/global-settings/#passive-species' target='_blank'>Learn more</a>.",
            "format" : "int64",
            "default" : 0,
            "enum" : [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
          },
          "enableAdjointOptimization" : {
            "title" : "Adjoint optimization",
            "type" : "boolean",
            "default" : false,
            "x-conditionalEnum" : [ {
              "value" : true,
              "when" : [ "timeDependency.type == STATIONARY" ]
            }, {
              "value" : false,
              "when" : [ "timeDependency.type == TRANSIENT" ]
            }, {
              "value" : false,
              "when" : [ "timeDependency.type == STATIONARY" ]
            } ]
          },
          "model" : {
            "$ref" : "#/components/schemas/FluidModel"
          },
          "materials" : {
            "$ref" : "#/components/schemas/IncompressibleFluidMaterials"
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/FluidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_IncompressibleBoundaryConditions"
            }
          },
          "advancedConcepts" : {
            "$ref" : "#/components/schemas/AdvancedConcepts"
          },
          "numerics" : {
            "$ref" : "#/components/schemas/FluidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/FluidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          }
        },
        "additionalProperties" : false
      },
      "FluidModel" : {
        "type" : "object",
        "properties" : {
          "turbulentSchmidtNumber" : {
            "title" : "(Sc<t>) Turb. Schmidt number",
            "minimum" : 1.0E-12,
            "exclusiveMinimum" : true,
            "type" : "number",
            "default" : 0.7,
            "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == true && enableHumidityModel == true && turbulenceModel != NONE", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && isCompressible == true && enableHumidityModel == true && turbulenceModel != NONE" ]
          },
          "diffusionCoefficients" : {
            "title" : "Diffusion coefficients",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
            },
            "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0" ]
          },
          "deltaCoefficient" : {
            "$ref" : "#/components/schemas/OneOf_FluidModelDeltaCoefficient"
          },
          "gravity" : {
            "$ref" : "#/components/schemas/DimensionalVector_Acceleration"
          },
          "surfaceTension" : {
            "$ref" : "#/components/schemas/Dimensional_SurfaceTension"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_KinematicViscosity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m²/s", "lbf·s·in/lb", "ft²/s", "in²/s" ]
          }
        },
        "additionalProperties" : false
      },
      "PrandtlLesDelta" : {
        "title" : "Prandtl LES delta",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PrandtlLesDelta",
            "default" : "PRANDTL"
          },
          "deltaCoefficient" : {
            "$ref" : "#/components/schemas/OneOf_PrandtlLesDeltaDeltaCoefficient"
          },
          "deltaReductionCoefficient" : {
            "title" : "Delta reduction coefficient",
            "type" : "number",
            "default" : 0.158
          }
        },
        "additionalProperties" : false
      },
      "SmoothLesDelta" : {
        "title" : "Smooth LES delta",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SmoothLesDelta",
            "default" : "SMOOTH"
          },
          "deltaCoefficient" : {
            "$ref" : "#/components/schemas/CubeRootVolLesDelta"
          },
          "maxDeltaRatio" : {
            "title" : "Max delta ratio",
            "type" : "number",
            "default" : 1.1
          }
        },
        "additionalProperties" : false
      },
      "CubeRootVolLesDelta" : {
        "title" : "Cube root vol LES delta",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CubeRootVolLesDelta",
            "default" : "CUBE_ROOT_VOL"
          },
          "deltaCoefficient" : {
            "title" : "Delta coefficient",
            "type" : "number",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_Acceleration" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s²", "in/s²", "G" ]
          }
        },
        "additionalProperties" : false
      },
      "IncompressibleFluidMaterials" : {
        "type" : "object",
        "properties" : {
          "fluids" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IncompressibleMaterial"
            }
          }
        },
        "additionalProperties" : false
      },
      "IncompressibleMaterial" : {
        "title" : "Material",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IncompressibleMaterial",
            "default" : "INCOMPRESSIBLE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "fluidType" : {
            "$ref" : "#/components/schemas/OneOf_IncompressibleMaterialFluidType"
          },
          "associatedPhase" : {
            "title" : "Associated phase",
            "type" : "string",
            "description" : "<p>Select the corresponding phase for this material:</p><p><b>Phase 0</b> would mean this material is represented by the phase fraction value of 0. Hence, a phase fraction of '0' in your setup corresponds to 100% of this fluid material.</p><p><b>Phase 1</b> would mean this material is represented by the phase fraction value of 1. Hence, a phase fraction of '1' in your setup corresponds to 100% of this fluid material.</p>",
            "default" : "PHASE_0",
            "enum" : [ "PHASE_0", "PHASE_1" ],
            "x-showWhen" : [ "type == MULTIPHASE", "type == SIMERICS_ANALYSIS && isMultiphase == true" ]
          },
          "viscosityModel" : {
            "$ref" : "#/components/schemas/OneOf_IncompressibleMaterialViscosityModel"
          },
          "density" : {
            "$ref" : "#/components/schemas/Dimensional_Density"
          },
          "thermalExpansionCoefficient" : {
            "$ref" : "#/components/schemas/Dimensional_ThermalExpansionRate"
          },
          "referenceTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "laminarPrandtlNumber" : {
            "title" : "(Pr<lam>) Laminar Prandtl number",
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Laminar Prandtl number is used to calculate the heat transfer in the domain.",
            "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER" ]
          },
          "laminarPrandtlNumberFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          },
          "turbulentPrandtlNumber" : {
            "title" : "(Pr<t>) Turb. Prandtl number",
            "type" : "number",
            "description" : "Turbulent Prandtl number is used to calculate the heat transfer due to turbulent effects in the domain.",
            "x-showWhen" : [ "type in [CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
          },
          "specificHeat" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificHeat"
          },
          "specificHeatFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_SpecificHeat"
          },
          "molarWeight" : {
            "$ref" : "#/components/schemas/Dimensional_MolarMass"
          },
          "cavitation" : {
            "$ref" : "#/components/schemas/Cavitation"
          },
          "radiativeBehavior" : {
            "$ref" : "#/components/schemas/TransparentMaterial"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "type == EMBEDDED_BOUNDARY && allowExternalFlow == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : false,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX" ]
            }
          },
          "builtInMaterial" : {
            "type" : "string"
          },
          "materialLibraryReference" : {
            "$ref" : "#/components/schemas/MaterialLibraryReference"
          }
        },
        "additionalProperties" : false
      },
      "FluidTypeLiquid" : {
        "title" : "Liquid",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FluidTypeLiquid",
            "default" : "LIQUID"
          }
        },
        "additionalProperties" : false
      },
      "FluidTypeGas" : {
        "title" : "Gas",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FluidTypeGas",
            "default" : "GAS"
          }
        },
        "additionalProperties" : false
      },
      "NewtonianViscosityModel" : {
        "title" : "Newtonian",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models.\n\nSchema name: NewtonianViscosityModel",
            "default" : "NEWTONIAN"
          },
          "kinematicViscosity" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "kinematicViscosityFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_KinematicViscosity"
          },
          "dynamicViscosityFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_DynamicViscosity"
          }
        },
        "additionalProperties" : false,
        "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models."
      },
      "DimensionalFunction_KinematicViscosity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_KinematicViscosityValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m²/s", "lbf·s·in/lb", "ft²/s", "in²/s" ]
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_DynamicViscosity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_DynamicViscosityValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/(s·m)", "lbf·s/in²" ]
          }
        },
        "additionalProperties" : false
      },
      "PowerLawViscosityModel" : {
        "title" : "Power law",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models.\n\nSchema name: PowerLawViscosityModel",
            "default" : "POWER_LAW"
          },
          "k" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "n" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          },
          "nuMin" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "nuMax" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          }
        },
        "additionalProperties" : false,
        "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models."
      },
      "Dimensional_Dimensionless" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "", "%" ]
          }
        },
        "additionalProperties" : false
      },
      "StandardHerschelBulkleyViscosityModel" : {
        "title" : "Herschel–Bulkley",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models.\n\nSchema name: StandardHerschelBulkleyViscosityModel",
            "default" : "STD_HERSCHEL_BULKLEY"
          },
          "consistency" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          },
          "flowIndex" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          },
          "fluidYieldStress" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "criticalShearRate" : {
            "$ref" : "#/components/schemas/Dimensional_StrainRate"
          }
        },
        "additionalProperties" : false,
        "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models."
      },
      "Dimensional_DynamicViscosity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/(s·m)", "lbf·s/in²" ]
          }
        },
        "additionalProperties" : false
      },
      "HerschelBulkleyViscosityModel" : {
        "title" : "Herschel–Bulkley",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models.\n\nSchema name: HerschelBulkleyViscosityModel",
            "default" : "HERSCHEL_BULKLEY"
          },
          "k" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "n" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          },
          "tau0" : {
            "$ref" : "#/components/schemas/Dimensional_TurbulenceKineticEnergy"
          },
          "nu0" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          }
        },
        "additionalProperties" : false,
        "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models."
      },
      "Dimensional_TurbulenceKineticEnergy" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m²/s²", "Btu/lb" ]
          }
        },
        "additionalProperties" : false
      },
      "CrossPowerLawViscosityModel" : {
        "title" : "Cross-Power law",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models.\n\nSchema name: CrossPowerLawViscosityModel",
            "default" : "CROSS_POWER_LAW"
          },
          "nu0" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "nuInf" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "m" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "n" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          }
        },
        "additionalProperties" : false,
        "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models."
      },
      "BirdCarreauViscosityModel" : {
        "title" : "Bird-Carreau",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models.\n\nSchema name: BirdCarreauViscosityModel",
            "default" : "BIRD_CARREAU"
          },
          "nu0" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "nuInf" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "k" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "n" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          },
          "a" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          }
        },
        "additionalProperties" : false,
        "description" : "Choose between <a href='https://www.simscale.com/docs/simulation-setup/materials/#newtonian-model' target='_blank'>Newtonian</a> and <a href='https://www.simscale.com/docs/simulation-setup/materials/non-newtonian-models/' target='_blank'>Non-Newtonian</a> viscosity models."
      },
      "Dimensional_ThermalExpansionRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/K", "1/°F" ],
            "x-MissingConversions" : true
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_SpecificHeat" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "J/(kg·K)", "Btu/(lb·°F)" ]
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_MolarMass" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/kmol", "lb/kmol" ]
          }
        },
        "additionalProperties" : false
      },
      "Cavitation" : {
        "type" : "object",
        "properties" : {
          "vaporMolecularWeight" : {
            "$ref" : "#/components/schemas/Dimensional_MolarMass"
          },
          "liquidBulkModulus" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "liquidBulkModulusCoefficient" : {
            "title" : "Liquid bulk modulus coefficient",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The <b>liquid bulk modulus coefficient</b> <i>B<sub>1</sub></i> accounts for a linear rate of change in the liquid bulk modulus with respect to pressure such that <i>B = B<sub>0</sub> + B<sub>1</sub> (P - P<sub>ref</sub>)</i>, where <i>B<sub>0</sub></i> is the constant liquid bulk modulus. Typically only applicable in cases where pressure differences exceed 100 bar, otherwise a zero value should be specified.",
            "default" : 0
          },
          "liquidReferencePressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "saturationPressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "liquidTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "TransparentMaterial" : {
        "title" : "Transparent material",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TransparentMaterial",
            "default" : "TRANSPARENT_MATERIAL"
          }
        },
        "additionalProperties" : false
      },
      "FluidInitialConditions" : {
        "type" : "object",
        "properties" : {
          "pressure" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_Pressure"
          },
          "pressureRgh" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_Pressure"
          },
          "gaugePressure" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_Pressure"
          },
          "gaugePressureRgh" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_Pressure"
          },
          "velocity" : {
            "$ref" : "#/components/schemas/DimensionalVectorInitialConditionDomains_Speed"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_Temperature"
          },
          "turbulentKineticEnergy" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_TurbulenceKineticEnergy"
          },
          "omegaDissipationRate" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_SpecificTurbulenceDissipationRate"
          },
          "epsilonDissipationRate" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_TurbulentDissipation"
          },
          "nuTilda" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_KinematicViscosity"
          },
          "passiveScalars" : {
            "title" : "Passive scalars",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_Dimensionless"
            },
            "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0" ]
          },
          "phaseFraction" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_Dimensionless"
          },
          "phaseFractions" : {
            "$ref" : "#/components/schemas/DimensionlessInitialConditionDomains"
          },
          "massFractions" : {
            "$ref" : "#/components/schemas/FractionValuesInitialConditions"
          },
          "relativeHumidity" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalInitialConditionDomains_Pressure" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionalInitialCondition_Pressure"
            },
            "x-showWhen" : [ "type != ELECTROMAGNETIC_ANALYSIS && 1# in [pressure,gaugePressure,pressureRgh,temperature,phaseFraction,passiveScalars,relativeHumidity]", "2# == passiveScalars", "type in [CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == gaugePressureRgh", "type == SIMERICS_ANALYSIS && 1# in [pressure,gaugePressure,gaugeStaticPressure,temperature]" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionalInitialCondition_Pressure" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVectorInitialConditionDomains_Speed" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionalVectorInitialCondition_Speed"
            },
            "x-showWhen" : [ "1# == velocity" ]
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_Speed" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s", "in/s", "m/min", "m/h", "mm/s", "mm/min", "mm/h", "cm/s", "cm/min", "cm/h", "km/h", "ft/s", "ft/min", "ft/h", "in/min", "in/h", "mph", "kn" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionalVectorInitialCondition_Speed" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalInitialConditionDomains_Temperature" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionalInitialCondition_Temperature"
            },
            "x-showWhen" : [ "type != ELECTROMAGNETIC_ANALYSIS && 1# in [pressure,gaugePressure,pressureRgh,temperature,phaseFraction,passiveScalars,relativeHumidity]", "2# == passiveScalars", "type in [CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == gaugePressureRgh", "type == SIMERICS_ANALYSIS && 1# in [pressure,gaugePressure,gaugeStaticPressure,temperature]" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionalInitialCondition_Temperature" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalInitialConditionDomains_TurbulenceKineticEnergy" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/Dimensional_TurbulenceKineticEnergy"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionalInitialCondition_TurbulenceKineticEnergy"
            },
            "x-showWhen" : [ "type != ELECTROMAGNETIC_ANALYSIS && 1# in [pressure,gaugePressure,pressureRgh,temperature,phaseFraction,passiveScalars,relativeHumidity]", "2# == passiveScalars", "type in [CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == gaugePressureRgh", "type == SIMERICS_ANALYSIS && 1# in [pressure,gaugePressure,gaugeStaticPressure,temperature]" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionalInitialCondition_TurbulenceKineticEnergy" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/Dimensional_TurbulenceKineticEnergy"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalInitialConditionDomains_SpecificTurbulenceDissipationRate" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificTurbulenceDissipationRate"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionalInitialCondition_SpecificTurbulenceDissipationRate"
            },
            "x-showWhen" : [ "type != ELECTROMAGNETIC_ANALYSIS && 1# in [pressure,gaugePressure,pressureRgh,temperature,phaseFraction,passiveScalars,relativeHumidity]", "2# == passiveScalars", "type in [CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == gaugePressureRgh", "type == SIMERICS_ANALYSIS && 1# in [pressure,gaugePressure,gaugeStaticPressure,temperature]" ]
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_SpecificTurbulenceDissipationRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/s" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionalInitialCondition_SpecificTurbulenceDissipationRate" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificTurbulenceDissipationRate"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalInitialConditionDomains_TurbulentDissipation" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/Dimensional_TurbulentDissipation"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionalInitialCondition_TurbulentDissipation"
            },
            "x-showWhen" : [ "type != ELECTROMAGNETIC_ANALYSIS && 1# in [pressure,gaugePressure,pressureRgh,temperature,phaseFraction,passiveScalars,relativeHumidity]", "2# == passiveScalars", "type in [CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == gaugePressureRgh", "type == SIMERICS_ANALYSIS && 1# in [pressure,gaugePressure,gaugeStaticPressure,temperature]" ]
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_TurbulentDissipation" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m²/s³", "lbf·in/(s·lb)" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionalInitialCondition_TurbulentDissipation" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/Dimensional_TurbulentDissipation"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalInitialConditionDomains_KinematicViscosity" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionalInitialCondition_KinematicViscosity"
            },
            "x-showWhen" : [ "type != ELECTROMAGNETIC_ANALYSIS && 1# in [pressure,gaugePressure,pressureRgh,temperature,phaseFraction,passiveScalars,relativeHumidity]", "2# == passiveScalars", "type in [CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == gaugePressureRgh", "type == SIMERICS_ANALYSIS && 1# in [pressure,gaugePressure,gaugeStaticPressure,temperature]" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionalInitialCondition_KinematicViscosity" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalInitialConditionDomains_Dimensionless" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionalInitialCondition_Dimensionless"
            },
            "x-showWhen" : [ "type != ELECTROMAGNETIC_ANALYSIS && 1# in [pressure,gaugePressure,pressureRgh,temperature,phaseFraction,passiveScalars,relativeHumidity]", "2# == passiveScalars", "type in [CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == gaugePressureRgh", "type == SIMERICS_ANALYSIS && 1# in [pressure,gaugePressure,gaugeStaticPressure,temperature]" ]
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionalInitialCondition_Dimensionless" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "subdomainValue" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionlessInitialConditionDomains" : {
        "type" : "object",
        "properties" : {
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainDimensionlessInitialCondition"
            }
          }
        },
        "additionalProperties" : false
      },
      "SubdomainDimensionlessInitialCondition" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "value" : {
            "$ref" : "#/components/schemas/PhaseFractionsIC"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "PhaseFractionsIC" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PhaseFractionsIC",
            "default" : "DIMENSIONLESS_PHASE_FRACTION_IC"
          },
          "associatedPhaseFractions" : {
            "title" : "Phase Fractions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PhaseFractionIC"
            }
          }
        },
        "additionalProperties" : false
      },
      "PhaseFractionIC" : {
        "type" : "object",
        "properties" : {
          "associatedPhase" : {
            "title" : "Associated phase",
            "type" : "string",
            "default" : "PHASE_0",
            "enum" : [ "PHASE_0", "PHASE_1" ],
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMultiphase == true" ]
          },
          "value" : {
            "title" : "Value",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0
          }
        },
        "additionalProperties" : false
      },
      "FractionValuesInitialConditions" : {
        "type" : "object",
        "properties" : {
          "global" : {
            "title" : "Global",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FractionValueInitialCondition"
            }
          },
          "subdomains" : {
            "title" : "Subdomains",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SubdomainFractionValueInitialCondition"
            }
          }
        },
        "additionalProperties" : false
      },
      "FractionValueInitialCondition" : {
        "type" : "object",
        "properties" : {
          "fractionValue" : {
            "title" : "Fraction Value",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "SubdomainFractionValueInitialCondition" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "massFractions" : {
            "title" : "Mass fractions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FractionValueInitialCondition"
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "VelocityInletBC" : {
        "title" : "Velocity inlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition imposes a known <b>velocity</b>-based constraint at an inlet.\n\nSchema name: VelocityInletBC",
            "default" : "VELOCITY_INLET_V3"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "velocity" : {
            "$ref" : "#/components/schemas/OneOf_VelocityInletBCVelocity"
          },
          "turbulence" : {
            "$ref" : "#/components/schemas/OneOf_VelocityInletBCTurbulence"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/OneOf_VelocityInletBCTemperature"
          },
          "passiveScalars" : {
            "title" : "Passive scalars",
            "type" : "array",
            "description" : "Please choose a boundary condition for passive scalar (T).",
            "items" : {
              "$ref" : "#/components/schemas/FixedValuePSBC"
            },
            "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0" ]
          },
          "phaseFraction" : {
            "$ref" : "#/components/schemas/FixedValuePFBC"
          },
          "phaseFractionsV2" : {
            "$ref" : "#/components/schemas/InletFixedPFValues"
          },
          "massFractionsV2" : {
            "$ref" : "#/components/schemas/InletFixedMFValues"
          },
          "turbulenceIntensity" : {
            "$ref" : "#/components/schemas/OneOf_VelocityInletBCTurbulenceIntensity"
          },
          "dissipationType" : {
            "$ref" : "#/components/schemas/OneOf_VelocityInletBCDissipationType"
          },
          "netRadiativeHeatFlux" : {
            "$ref" : "#/components/schemas/OneOf_VelocityInletBCNetRadiativeHeatFlux"
          },
          "radiativeIntensityRay" : {
            "$ref" : "#/components/schemas/OneOf_VelocityInletBCRadiativeIntensityRay"
          },
          "relativeHumidity" : {
            "$ref" : "#/components/schemas/FixedValueRHBC"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition imposes a known <b>velocity</b>-based constraint at an inlet."
      },
      "FixedValueVBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueVBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Speed"
          }
        },
        "additionalProperties" : false
      },
      "MeanValueVBC" : {
        "title" : "Mean value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MeanValueVBC",
            "default" : "FIXED_MEAN"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          }
        },
        "additionalProperties" : false
      },
      "FixedMagnitudeVBC" : {
        "title" : "Fixed magnitude",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedMagnitudeVBC",
            "default" : "FIXED_VALUE_NO_EXPRESSION"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Speed"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_Speed" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_SpeedValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s", "in/s", "m/min", "m/h", "mm/s", "mm/min", "mm/h", "cm/s", "cm/min", "cm/h", "km/h", "ft/s", "ft/min", "ft/h", "in/min", "in/h", "mph", "kn" ]
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_HEIGHT" : {
        "type" : "object",
        "properties" : {
          "HEIGHT" : {
            "$ref" : "#/components/schemas/Unit_Length"
          }
        }
      },
      "FlowRateInletVBC" : {
        "title" : "Flow rate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FlowRateInletVBC",
            "default" : "FLOW_RATE_INLET_VELOCITY"
          },
          "flowRate" : {
            "$ref" : "#/components/schemas/OneOf_FlowRateInletVBCFlowRate"
          }
        },
        "additionalProperties" : false
      },
      "MassFlow" : {
        "title" : "(ṁ) Mass flow",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Defines the mass flow rate <strong>per each face</strong> of the assignment.</p>\n\nSchema name: MassFlow",
            "default" : "MASS"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_MassFlowRate"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Defines the mass flow rate <strong>per each face</strong> of the assignment.</p>"
      },
      "DimensionalFunction_MassFlowRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_MassFlowRateValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/s", "lb/s", "kg/min", "kg/h", "g/s", "g/min", "g/h", "lb/min", "lb/h", "slug/s", "slug/min", "slug/h" ]
          }
        },
        "additionalProperties" : false
      },
      "VolumetricFlow" : {
        "title" : "(V̇) Volumetric flow",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Defines the volumetric flow rate <strong>per each face</strong> of the assignment.</p>\n\nSchema name: VolumetricFlow",
            "default" : "VOLUMETRIC"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_VolumetricFlowRate"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Defines the volumetric flow rate <strong>per each face</strong> of the assignment.</p>"
      },
      "DimensionalFunction_VolumetricFlowRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_VolumetricFlowRateValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m³/s", "in³/s", "m³/min", "m³/h", "mm³/s", "mm³/min", "mm³/h", "cm³/s", "cm³/min", "cm³/h", "l/s", "l/min", "l/h", "in³/min", "in³/h", "ft³/s", "ft³/min", "ft³/h", "gal/min", "gal/h", "gal/s" ]
          }
        },
        "additionalProperties" : false
      },
      "FlowRateMeanInletVBC" : {
        "title" : "Mean flow rate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FlowRateMeanInletVBC",
            "default" : "FLOW_RATE_MEAN_INLET_VELOCITY"
          },
          "flowRate" : {
            "$ref" : "#/components/schemas/OneOf_FlowRateMeanInletVBCFlowRate"
          }
        },
        "additionalProperties" : false
      },
      "FreestreamVBC" : {
        "title" : "Freestream",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FreestreamVBC",
            "default" : "FREESTREAM"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          },
          "ambientPressure" : {
            "$ref" : "#/components/schemas/OneOf_FreestreamVBCAmbientPressure"
          }
        },
        "additionalProperties" : false
      },
      "FixedValuePBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValuePBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "HydrostaticIsothermalFreestreamPBC" : {
        "title" : "Hydrostatic pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HydrostaticIsothermalFreestreamPBC",
            "default" : "HYDROSTATIC_ISOTHERMAL_FREESTREAM_PRESSURE"
          },
          "ambientStaticPressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticTurbulence" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticTurbulence",
            "default" : "AUTOMATIC_TURBULENCE"
          }
        },
        "additionalProperties" : false
      },
      "TurbulentIntensityAndReferenceLengthTurbulence" : {
        "title" : "Turbulent intensity and mixing length",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TurbulentIntensityAndReferenceLengthTurbulence",
            "default" : "TURBULENT_INTENSITY_AND_REFERENCE_LENGTH_TURBULENCE"
          },
          "turbulentIntensity" : {
            "title" : "(I) Turb. intensity",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "This provides a <b>turbulent intensity</b> boundary condition. The turbulent intensity is defined as the ratio of the root-mean-square of the velocity fluctuations to the mean flow velocity",
            "default" : 0.05
          },
          "mixingLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "FixedValueTurbulence" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueTurbulence",
            "default" : "FIXED_VALUE_TURBULENCE"
          },
          "turbulentKineticEnergy" : {
            "$ref" : "#/components/schemas/DimensionalFunction_TurbulenceKineticEnergy"
          },
          "epsilonDissipationRate" : {
            "$ref" : "#/components/schemas/DimensionalFunction_TurbulentDissipation"
          },
          "omegaDissipationRate" : {
            "$ref" : "#/components/schemas/DimensionalFunction_SpecificTurbulenceDissipationRate"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_TurbulenceKineticEnergy" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_TurbulenceKineticEnergyValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m²/s²", "Btu/lb" ]
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_TurbulentDissipation" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_TurbulentDissipationValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m²/s³", "lbf·in/(s·lb)" ]
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_SpecificTurbulenceDissipationRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_SpecificTurbulenceDissipationRateValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/s" ]
          }
        },
        "additionalProperties" : false
      },
      "FixedValueTBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueTBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "TotalTBC" : {
        "title" : "Total temperature",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalTBC",
            "default" : "TOTAL_TEMPERATURE"
          },
          "totalTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "totalTemperatureFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "specificHeatRatio" : {
            "title" : "(γ) Gamma",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "default" : 1.4,
            "x-showWhen" : [ "type != SIMERICS_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "FixedValuePSBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValuePSBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "FixedValuePFBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValuePFBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "InletFixedPFValues" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletFixedPFValues",
            "default" : "INLET_FIXED_PF_VALUES"
          },
          "phaseFractions" : {
            "title" : "Phase fractions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FixedValuePhaseFractionBC"
            }
          }
        },
        "additionalProperties" : false
      },
      "FixedValuePhaseFractionBC" : {
        "type" : "object",
        "properties" : {
          "associatedPhase" : {
            "title" : "Associated phase",
            "type" : "string",
            "default" : "PHASE_0",
            "enum" : [ "PHASE_0", "PHASE_1" ]
          },
          "fractionValue" : {
            "title" : "Fraction Value",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "InletFixedMFValues" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletFixedMFValues",
            "default" : "INLET_FIXED_MF_VALUES"
          },
          "massFractions" : {
            "title" : "Mass fractions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FixedValueMassFractionBC"
            }
          }
        },
        "additionalProperties" : false
      },
      "FixedValueMassFractionBC" : {
        "type" : "object",
        "properties" : {
          "fractionValue" : {
            "title" : "Fraction Value",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "TurbulenceIntensityTIBC" : {
        "title" : "Intensity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TurbulenceIntensityTIBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "TurbulenceKineticEnergyTIBC" : {
        "title" : "Turbulent Kinetic Energy",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TurbulenceKineticEnergyTIBC",
            "default" : "TURBULENCE_KINETIC_ENERGY"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_TurbulenceKineticEnergy"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticOmegaDissipation" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticOmegaDissipation",
            "default" : "AUTOMATIC_DISSIPATION"
          }
        },
        "additionalProperties" : false
      },
      "CustomOmegaDissipation" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomOmegaDissipation",
            "default" : "CUSTOM_DISSIPATION"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_SpecificTurbulenceDissipationRate"
          }
        },
        "additionalProperties" : false
      },
      "GreybodyDiffusiveRSBC" : {
        "title" : "Opaque",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GreybodyDiffusiveRSBC",
            "default" : "GREYBODY_DIFFUSIVE"
          },
          "emissivity" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "OpenWindowRSBC" : {
        "title" : "Transparent",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OpenWindowRSBC",
            "default" : "OPEN_WINDOW"
          },
          "radiativeSourceValue" : {
            "$ref" : "#/components/schemas/Dimensional_HeatFlux"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_HeatFlux" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W/m²", "Btu/(s·in²)", "W/mm²", "W/cm²", "Btu/(h·ft²)", "Btu/(min·ft²)", "Btu/(s·ft²)", "Btu/(h·in²)", "Btu/(min·in²)" ]
          }
        },
        "additionalProperties" : false
      },
      "GreybodyDiffusiveRayBC" : {
        "title" : "Opaque",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>\n\nSchema name: GreybodyDiffusiveRayBC",
            "default" : "GREYBODY_DIFFUSIVE_RAY"
          },
          "emissivity" : {
            "title" : "Emissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.9
          },
          "farfieldBlackBodyTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false,
        "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>"
      },
      "OpenBoundaryRayBC" : {
        "title" : "Transparent",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>\n\nSchema name: OpenBoundaryRayBC",
            "default" : "OPEN_BOUNDARY_RAY"
          },
          "farfieldBlackBodyTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false,
        "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>"
      },
      "SemiOpenBoundaryRayBC" : {
        "title" : "Semi-transparent",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>\n\nSchema name: SemiOpenBoundaryRayBC",
            "default" : "SEMI_OPEN_BOUNDARY_RAY"
          },
          "emissivity" : {
            "title" : "Emissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.1
          },
          "transmissivity" : {
            "title" : "Transmissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.7
          },
          "farfieldBlackBodyTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false,
        "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>"
      },
      "FixedValueRHBC" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueRHBC",
            "default" : "FIXED_VALUE"
          },
          "humidityValue" : {
            "$ref" : "#/components/schemas/OneOf_FixedValueRHBCHumidityValue"
          }
        },
        "additionalProperties" : false
      },
      "RelativeHumidityValue" : {
        "title" : "Relative Humidity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeHumidityValue",
            "default" : "RELATIVE_HUMIDITY_VALUE"
          },
          "value" : {
            "title" : "Relative Air Humidity (%)",
            "maximum" : 100,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 50
          }
        },
        "additionalProperties" : false
      },
      "SpecificHumidityValue" : {
        "title" : "Specific Humidity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SpecificHumidityValue",
            "default" : "SPECIFIC_HUMIDITY_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_MassFraction"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_MassFraction" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "", "g/kg", "gr/lb" ]
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteHumidityValue" : {
        "title" : "Absolute Humidity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteHumidityValue",
            "default" : "ABSOLUTE_HUMIDITY_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Density"
          }
        },
        "additionalProperties" : false
      },
      "VelocityOutletBC" : {
        "title" : "Velocity outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition imposes a known <b>velocity</b>-based constraint at an outlet.\n\nSchema name: VelocityOutletBC",
            "default" : "VELOCITY_OUTLET_V7"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "velocity" : {
            "$ref" : "#/components/schemas/OneOf_VelocityOutletBCVelocity"
          },
          "phaseFraction" : {
            "$ref" : "#/components/schemas/OneOf_VelocityOutletBCPhaseFraction"
          },
          "phaseFractionsV2" : {
            "$ref" : "#/components/schemas/OneOf_VelocityOutletBCPhaseFractionsV2"
          },
          "massFractionsV2" : {
            "$ref" : "#/components/schemas/OutletBackFlowMFValues"
          },
          "netRadiativeHeatFlux" : {
            "$ref" : "#/components/schemas/OneOf_VelocityOutletBCNetRadiativeHeatFlux"
          },
          "radiativeIntensityRay" : {
            "$ref" : "#/components/schemas/OneOf_VelocityOutletBCRadiativeIntensityRay"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition imposes a known <b>velocity</b>-based constraint at an outlet."
      },
      "OutletMeanPhaseVBC" : {
        "title" : "Outlet mean phase",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OutletMeanPhaseVBC",
            "default" : "OUTLET_MEAN_PHASE"
          },
          "phase" : {
            "title" : "Phase",
            "type" : "string",
            "default" : "PHASE_1",
            "enum" : [ "PHASE_0", "PHASE_1" ]
          },
          "meanVelocity" : {
            "$ref" : "#/components/schemas/Dimensional_Speed"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Speed" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s", "in/s", "m/min", "m/h", "mm/s", "mm/min", "mm/h", "cm/s", "cm/min", "cm/h", "km/h", "ft/s", "ft/min", "ft/h", "in/min", "in/h", "mph", "kn" ]
          }
        },
        "additionalProperties" : false
      },
      "FlowRateOutletVBC" : {
        "title" : "Flow rate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FlowRateOutletVBC",
            "default" : "FLOW_RATE_OUTLET_VELOCITY"
          },
          "flowRate" : {
            "$ref" : "#/components/schemas/OneOf_FlowRateOutletVBCFlowRate"
          }
        },
        "additionalProperties" : false
      },
      "FlowRateMeanOutletVBC" : {
        "title" : "Mean flow rate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FlowRateMeanOutletVBC",
            "default" : "FLOW_RATE_MEAN_OUTLET_VELOCITY"
          },
          "flowRate" : {
            "$ref" : "#/components/schemas/OneOf_FlowRateMeanOutletVBCFlowRate"
          }
        },
        "additionalProperties" : false
      },
      "FlowRateStableOutletVBC" : {
        "title" : "Flow rate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FlowRateStableOutletVBC",
            "default" : "FLOW_RATE_STABLE_OUTLET_VELOCITY"
          },
          "flowRate" : {
            "$ref" : "#/components/schemas/OneOf_FlowRateStableOutletVBCFlowRate"
          }
        },
        "additionalProperties" : false
      },
      "MeanValueOutletVBC" : {
        "title" : "Face normal value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MeanValueOutletVBC",
            "default" : "MEAN_VALUE_OUTLET_VELOCITY"
          },
          "normalVelocity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Speed"
          }
        },
        "additionalProperties" : false
      },
      "FlowDependentValuePFBC" : {
        "title" : "Flow dependent value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FlowDependentValuePFBC",
            "default" : "FLOW_DEPENDENT_VALUE"
          },
          "lowerBound" : {
            "title" : "Lower bound",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0
          },
          "upperBound" : {
            "title" : "Upper bound",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "OutletBackFlowPFValues" : {
        "title" : "Back flow",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "It specifies the phase fraction values of the back flow. If there is no back flow, the values are ignored.\n\nSchema name: OutletBackFlowPFValues",
            "default" : "OUTLET_BACK_FLOW_PF_VALUES"
          },
          "backFlowPhaseFractions" : {
            "title" : "Back flow phase fractions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FixedValuePhaseFractionBC"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "It specifies the phase fraction values of the back flow. If there is no back flow, the values are ignored."
      },
      "OutletFlowDrivenPF" : {
        "title" : "Flow driven",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Phase fraction values are automatically computed.\n\nSchema name: OutletFlowDrivenPF",
            "default" : "OUTLET_FLOW_DRIVEN_PF"
          }
        },
        "additionalProperties" : false,
        "description" : "Phase fraction values are automatically computed."
      },
      "OutletBackFlowMFValues" : {
        "title" : "Back flow",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "It specifies the mass fraction values of the back flow. If there is no back flow, the values are ignored.\n\nSchema name: OutletBackFlowMFValues",
            "default" : "OUTLET_BACK_FLOW_MF_VALUES"
          },
          "backFlowMassFractions" : {
            "title" : "Back flow mass fractions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FixedValueMassFractionBC"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "It specifies the mass fraction values of the back flow. If there is no back flow, the values are ignored."
      },
      "PressureInletBC" : {
        "title" : "Pressure inlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition is suitable for inlet and open boundaries where the value of <b>pressure</b> is known.\n\nSchema name: PressureInletBC",
            "default" : "PRESSURE_INLET_V31"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "pressure" : {
            "$ref" : "#/components/schemas/OneOf_PressureInletBCPressure"
          },
          "pressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_PressureInletBCPressureRgh"
          },
          "gaugePressure" : {
            "$ref" : "#/components/schemas/OneOf_PressureInletBCGaugePressure"
          },
          "gaugePressureRgh" : {
            "$ref" : "#/components/schemas/TotalPBC"
          },
          "turbulence" : {
            "$ref" : "#/components/schemas/OneOf_PressureInletBCTurbulence"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/OneOf_PressureInletBCTemperature"
          },
          "passiveScalars" : {
            "title" : "Passive scalars",
            "type" : "array",
            "description" : "Please choose a boundary condition for passive scalar (T).",
            "items" : {
              "$ref" : "#/components/schemas/FixedValuePSBC"
            },
            "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0" ]
          },
          "phaseFraction" : {
            "$ref" : "#/components/schemas/FixedValuePFBC"
          },
          "phaseFractionsV2" : {
            "$ref" : "#/components/schemas/InletFixedPFValues"
          },
          "massFractionsV2" : {
            "$ref" : "#/components/schemas/InletFixedMFValues"
          },
          "hydrostaticPressure" : {
            "$ref" : "#/components/schemas/HydrostaticPressure"
          },
          "netRadiativeHeatFlux" : {
            "$ref" : "#/components/schemas/OneOf_PressureInletBCNetRadiativeHeatFlux"
          },
          "radiativeIntensityRay" : {
            "$ref" : "#/components/schemas/OneOf_PressureInletBCRadiativeIntensityRay"
          },
          "relativeHumidity" : {
            "$ref" : "#/components/schemas/FixedValueRHBC"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition is suitable for inlet and open boundaries where the value of <b>pressure</b> is known."
      },
      "TotalPBC" : {
        "title" : "Total pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalPBC",
            "default" : "TOTAL_PRESSURE"
          },
          "totalPressure" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "HydrostaticIsothermalTotalPBC" : {
        "title" : "Hydrostatic pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HydrostaticIsothermalTotalPBC",
            "default" : "HYDROSTATIC_ISOTHERMAL_TOTAL_PRESSURE"
          },
          "ambientPressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "HydrostaticPressure" : {
        "type" : "object",
        "properties" : {
          "enableHydrostaticPressure" : {
            "title" : "Enable hydrostatic pressure",
            "type" : "boolean",
            "default" : false
          },
          "referenceHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "PressureOutletBC" : {
        "title" : "Pressure outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition allows to specify a <b>pressure</b> value at an outlet boundary.\n\nSchema name: PressureOutletBC",
            "default" : "PRESSURE_OUTLET_V30"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "pressure" : {
            "$ref" : "#/components/schemas/OneOf_PressureOutletBCPressure"
          },
          "pressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_PressureOutletBCPressureRgh"
          },
          "gaugePressure" : {
            "$ref" : "#/components/schemas/OneOf_PressureOutletBCGaugePressure"
          },
          "phaseFractionsV2" : {
            "$ref" : "#/components/schemas/OneOf_PressureOutletBCPhaseFractionsV2"
          },
          "massFractionsV2" : {
            "$ref" : "#/components/schemas/OutletBackFlowMFValues"
          },
          "hydrostaticPressure" : {
            "$ref" : "#/components/schemas/HydrostaticPressure"
          },
          "gaugePressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_PressureOutletBCGaugePressureRgh"
          },
          "netRadiativeHeatFlux" : {
            "$ref" : "#/components/schemas/OneOf_PressureOutletBCNetRadiativeHeatFlux"
          },
          "radiativeIntensityRay" : {
            "$ref" : "#/components/schemas/OneOf_PressureOutletBCRadiativeIntensityRay"
          },
          "relativeHumidity" : {
            "$ref" : "#/components/schemas/InletOutletRHBC"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/AmbientTBC"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition allows to specify a <b>pressure</b> value at an outlet boundary."
      },
      "MeanValuePBC" : {
        "title" : "Mean value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MeanValuePBC",
            "default" : "FIXED_MEAN"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "HydrostaticIsothermalPBC" : {
        "title" : "Hydrostatic pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HydrostaticIsothermalPBC",
            "default" : "HYDROSTATIC_ISOTHERMAL_PRESSURE"
          },
          "ambientStaticPressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "InletOutletRHBC" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletRHBC",
            "default" : "INLET_OUTLET"
          },
          "humidityValue" : {
            "$ref" : "#/components/schemas/OneOf_InletOutletRHBCHumidityValue"
          }
        },
        "additionalProperties" : false
      },
      "AmbientTBC" : {
        "title" : "Ambient temperature",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AmbientTBC",
            "default" : "AMBIENT_TEMPERATURE"
          },
          "ambientTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "WallBC" : {
        "title" : "Wall",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This boundary provides several Solid Wall conditions.</P>The default <b>no-slip</b> corresponds to friction wall with no movement. The <b>slip wall</b> models a surface with no friction. The <b>rotating/moving wall</b> model wall movement by prescribing velocities. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/wall/' target='_blank'>Learn more</a>.\n\nSchema name: WallBC",
            "default" : "WALL_V34"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "x-showWhen" : [ "1# != externalFlowBoundaryCondition" ]
          },
          "velocity" : {
            "$ref" : "#/components/schemas/OneOf_WallBCVelocity"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/OneOf_WallBCTemperature"
          },
          "relativeHumidity" : {
            "$ref" : "#/components/schemas/OneOf_WallBCRelativeHumidity"
          },
          "phaseFraction" : {
            "$ref" : "#/components/schemas/OneOf_WallBCPhaseFraction"
          },
          "netRadiativeHeatFlux" : {
            "$ref" : "#/components/schemas/OneOf_WallBCNetRadiativeHeatFlux"
          },
          "radiativeIntensityRay" : {
            "$ref" : "#/components/schemas/OneOf_WallBCRadiativeIntensityRay"
          },
          "electricBoundaryCondition" : {
            "$ref" : "#/components/schemas/OneOf_WallBCElectricBoundaryCondition"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This boundary provides several Solid Wall conditions.</P>The default <b>no-slip</b> corresponds to friction wall with no movement. The <b>slip wall</b> models a surface with no friction. The <b>rotating/moving wall</b> model wall movement by prescribing velocities. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/wall/' target='_blank'>Learn more</a>."
      },
      "MovingWallVBC" : {
        "title" : "Moving wall",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MovingWallVBC",
            "default" : "MOVING_WALL_VELOCITY"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          },
          "turbulenceWall" : {
            "title" : "Turbulence wall",
            "type" : "string",
            "default" : "WALL_FUNCTION",
            "enum" : [ "WALL_FUNCTION", "FULL_RESOLUTION" ],
            "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel != NONE" ]
          },
          "orientationReference" : {
            "title" : "Orientation reference",
            "type" : "string",
            "default" : "FLOW_DOMAIN",
            "enum" : [ "GEOMETRY", "FLOW_DOMAIN" ],
            "x-showWhen" : [ "type == INCOMPRESSIBLE_PACEFISH" ]
          },
          "wallContactModel" : {
            "title" : "Wall contact model",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WallContactAngle"
            },
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMultiphase == true" ]
          }
        },
        "additionalProperties" : false
      },
      "WallContactAngle" : {
        "type" : "object",
        "properties" : {
          "enableWallContactAngle" : {
            "title" : "Wall contact angle",
            "type" : "boolean",
            "default" : false
          },
          "associatedPhase" : {
            "title" : "Associated phase",
            "type" : "string",
            "default" : "PHASE_0",
            "enum" : [ "PHASE_0", "PHASE_1" ],
            "x-showWhen" : [ "1/enableWallContactAngle == true" ]
          },
          "contactAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          }
        },
        "additionalProperties" : false
      },
      "NoSlipVBC" : {
        "title" : "No-slip",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoSlipVBC",
            "default" : "NO_SLIP"
          },
          "turbulenceWall" : {
            "title" : "Turbulence wall",
            "type" : "string",
            "default" : "WALL_FUNCTION",
            "enum" : [ "WALL_FUNCTION", "FULL_RESOLUTION" ],
            "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel != NONE" ]
          },
          "enableSurfaceRoughness" : {
            "title" : "Surface roughness",
            "type" : "boolean",
            "description" : "When turned <em>ON</em>, this wall's is no longer considered to be <em>smooth</em>. Its roughness may be then be specified.",
            "default" : false,
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && turbulenceModel != NONE" ]
          },
          "surfaceRoughness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "noSlipWallRoughnessType" : {
            "$ref" : "#/components/schemas/OneOf_NoSlipVBCNoSlipWallRoughnessType"
          },
          "wallContactModel" : {
            "title" : "Wall contact model",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WallContactAngle"
            },
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMultiphase == true" ]
          }
        },
        "additionalProperties" : false
      },
      "NoSlipWallEquivalentSandRoughness" : {
        "title" : "Equivalent sand grain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoSlipWallEquivalentSandRoughness",
            "default" : "NO_SLIP_WALL_EQUIVALENT_SAND_ROUGHNESS"
          },
          "surfaceRoughness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "NoSlipWallAerodynamicRoughness" : {
        "title" : "Aerodynamic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoSlipWallAerodynamicRoughness",
            "default" : "NO_SLIP_WALL_AERODYNAMIC_ROUGHNESS"
          },
          "surfaceRoughness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "RotatingWallVBC" : {
        "title" : "Rotating wall",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RotatingWallVBC",
            "default" : "ROTATING_WALL_VELOCITY"
          },
          "rotation" : {
            "$ref" : "#/components/schemas/AngularRotation"
          },
          "turbulenceWall" : {
            "title" : "Turbulence wall",
            "type" : "string",
            "default" : "WALL_FUNCTION",
            "enum" : [ "WALL_FUNCTION", "FULL_RESOLUTION" ],
            "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel != NONE" ]
          },
          "wallContactModel" : {
            "title" : "Wall contact model",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WallContactAngle"
            },
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMultiphase == true" ]
          }
        },
        "additionalProperties" : false
      },
      "SlipVBC" : {
        "title" : "Slip",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SlipVBC",
            "default" : "SLIP"
          }
        },
        "additionalProperties" : false
      },
      "ExternalWallHeatFluxTBC" : {
        "title" : "External wall heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ExternalWallHeatFluxTBC",
            "default" : "EXTERNAL_WALL_HEAT_FLUX_TEMPERATURE"
          },
          "heatFlux" : {
            "$ref" : "#/components/schemas/OneOf_ExternalWallHeatFluxTBCHeatFlux"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "DerivedHeatFlux" : {
        "title" : "Derived heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DerivedHeatFlux",
            "default" : "DERIVED"
          },
          "heatTransferCoefficient" : {
            "$ref" : "#/components/schemas/Dimensional_ThermalTransmittance"
          },
          "ambientTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "additionalHeatFlux" : {
            "$ref" : "#/components/schemas/Dimensional_HeatFlux"
          },
          "wallThermal" : {
            "$ref" : "#/components/schemas/OneOf_DerivedHeatFluxWallThermal"
          },
          "outerSurfaceEmissivity" : {
            "title" : "Outer surface emissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Emissivity/Absorptivity of the outer side of the surface or the last wall thermal layer.",
            "default" : 0.9,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableSolarLoad == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableSolarLoad == true" ]
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_ThermalTransmittance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W/(K·m²)", "Btu/(s·in²·°F)", "W/(K·mm²)", "W/(K·cm²)", "Btu/(h·in²·°F)", "Btu/(min·in²·°F)", "Btu/(s·ft²·°F)", "Btu/(min·ft²·°F)" ]
          }
        },
        "additionalProperties" : false
      },
      "NoWallThermal" : {
        "title" : "No wall thermal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoWallThermal",
            "default" : "NO_RESISTANCE"
          }
        },
        "additionalProperties" : false
      },
      "TotalResistanceWallThermal" : {
        "title" : "Total resistance wall thermal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalResistanceWallThermal",
            "default" : "TOTAL_RESISTANCE"
          },
          "contactResistance" : {
            "$ref" : "#/components/schemas/Dimensional_ContactResistance"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_ContactResistance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "K/W", "°F·s/Btu" ]
          }
        },
        "additionalProperties" : false
      },
      "SpecificConductanceWallThermal" : {
        "title" : "Specific conductance wall thermal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SpecificConductanceWallThermal",
            "default" : "SPECIFIC_CONDUCTANCE"
          },
          "contactConductance" : {
            "$ref" : "#/components/schemas/Dimensional_ThermalTransmittance"
          }
        },
        "additionalProperties" : false
      },
      "LayerWallThermal" : {
        "title" : "Layer wall thermal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LayerWallThermal",
            "default" : "CONTACT_INTERFACE_MATERIAL"
          },
          "conductivityThicknessPairs" : {
            "title" : "Conductivity thickness pairs",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ConductivityThicknessPair"
            }
          }
        },
        "additionalProperties" : false
      },
      "ConductivityThicknessPair" : {
        "type" : "object",
        "properties" : {
          "thermalConductivity" : {
            "$ref" : "#/components/schemas/Dimensional_ThermalConductivity"
          },
          "electricResistivity" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricResistivity"
          },
          "layerThickness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_ThermalConductivity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W/(m·K)", "Btu/(s·in·°F)", "W/(mm·K)", "W/(cm·K)", "Btu/(min·in·°F)", "Btu/(h·in·°F)", "Btu/(s·ft·°F)", "Btu/(min·ft·°F)", "Btu/(h·ft·°F)" ]
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_ElectricResistivity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Ω·m", "Ω·in" ]
          }
        },
        "additionalProperties" : false
      },
      "FixedHeatFlux" : {
        "title" : "Fixed heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedHeatFlux",
            "default" : "FIXED"
          },
          "function" : {
            "$ref" : "#/components/schemas/DimensionalFunction_HeatFlux"
          }
        },
        "additionalProperties" : false
      },
      "FixedPowerHeatFlux" : {
        "title" : "Fixed power",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedPowerHeatFlux",
            "default" : "FIXED_POWER"
          },
          "function" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Power"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_Power" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_PowerValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W", "Btu/s", "kW", "MW", "HP", "CV", "Btu/min", "Btu/h" ]
          }
        },
        "additionalProperties" : false
      },
      "AdiabaticTBC" : {
        "title" : "Adiabatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AdiabaticTBC",
            "default" : "ADIABATIC"
          }
        },
        "additionalProperties" : false
      },
      "TurbulentHeatFluxTBC" : {
        "title" : "Turbulent heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TurbulentHeatFluxTBC",
            "default" : "TURBULENT_HEAT_FLUX_TEMPERATURE"
          },
          "heatSource" : {
            "$ref" : "#/components/schemas/OneOf_TurbulentHeatFluxTBCHeatSource"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "FluxHeatSource" : {
        "title" : "Flux heat source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FluxHeatSource",
            "default" : "FLUX"
          },
          "heatFlux" : {
            "$ref" : "#/components/schemas/Dimensional_HeatFlux"
          }
        },
        "additionalProperties" : false
      },
      "PowerHeatSource" : {
        "title" : "Power heat source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PowerHeatSource",
            "default" : "POWER"
          },
          "power" : {
            "$ref" : "#/components/schemas/Dimensional_Power"
          }
        },
        "additionalProperties" : false
      },
      "ConvectionTBC" : {
        "title" : "Convective heat transfer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ConvectionTBC",
            "default" : "CONVECTIVE_HEAT_TRANSFER"
          },
          "convection" : {
            "$ref" : "#/components/schemas/WallConvectionModel"
          }
        },
        "additionalProperties" : false
      },
      "WallConvectionModel" : {
        "type" : "object",
        "properties" : {
          "convectionCoefficient" : {
            "$ref" : "#/components/schemas/Dimensional_ThermalTransmittance"
          },
          "ambientTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "RadiationTBC" : {
        "title" : "Radiative heat transfer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RadiationTBC",
            "default" : "RADIATIVE_HEAT_TRANSFER"
          },
          "radiation" : {
            "$ref" : "#/components/schemas/WallRadiationModel"
          }
        },
        "additionalProperties" : false
      },
      "WallRadiationModel" : {
        "type" : "object",
        "properties" : {
          "emissivity" : {
            "title" : "Emissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The proportionality factor emissivity defines the type of radiation. The lower bound (0) determining complete reflection and the upper bound (1) defining complete absorption (black body).",
            "default" : 0
          },
          "ambientTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "ConvectionRadiationTBC" : {
        "title" : "Convective & Radiative heat transfer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ConvectionRadiationTBC",
            "default" : "CONVECTIVE_RADIATIVE_HEAT_TRANSFER"
          },
          "convection" : {
            "$ref" : "#/components/schemas/WallConvectionModel"
          },
          "radiation" : {
            "$ref" : "#/components/schemas/WallRadiationModel"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientHumidityBC" : {
        "title" : "Insulated",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientHumidityBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "WaterVaporFluxHumidityBC" : {
        "title" : "Mass source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WaterVaporFluxHumidityBC",
            "default" : "WATER_VAPOR_FLUX"
          },
          "waterVaporFlux" : {
            "$ref" : "#/components/schemas/Dimensional_MassFlowRate"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_MassFlowRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/s", "lb/s", "kg/min", "kg/h", "g/s", "g/min", "g/h", "lb/min", "lb/h", "slug/s", "slug/min", "slug/h" ]
          }
        },
        "additionalProperties" : false
      },
      "SurfaceWaterVaporFluxHumidityBC" : {
        "title" : "Mass flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SurfaceWaterVaporFluxHumidityBC",
            "default" : "SURFACE_WATER_VAPOR_FLUX"
          },
          "waterVaporFlux" : {
            "$ref" : "#/components/schemas/Dimensional_EddyViscosityGradient"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_EddyViscosityGradient" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/(s·m²)", "lbf·s/in³" ]
          }
        },
        "additionalProperties" : false
      },
      "ConstantContactAnglePFBC" : {
        "title" : "Constant contact angle",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ConstantContactAnglePFBC",
            "default" : "CONSTANT_CONTACT_ANGLE"
          },
          "equilibriumContactAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "limit" : {
            "title" : "Limit",
            "type" : "string",
            "default" : "NONE",
            "enum" : [ "GRADIENT", "NONE", "PHASE_FRACTION", "ZERO_GRADIENT" ]
          }
        },
        "additionalProperties" : false
      },
      "DynamicContactAnglePFBC" : {
        "title" : "Dynamic contact angle",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DynamicContactAnglePFBC",
            "default" : "DYNAMIC_CONTACT_ANGLE"
          },
          "equilibriumContactAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "advancingContactAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "recedingContactAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "velocityScaleOfContactAngle" : {
            "title" : "Velocity scale of contact angle",
            "type" : "number",
            "default" : 1
          },
          "limit" : {
            "title" : "Limit",
            "type" : "string",
            "default" : "NONE",
            "enum" : [ "GRADIENT", "NONE", "PHASE_FRACTION", "ZERO_GRADIENT" ]
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientPFBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientPFBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "NoCurrentEBC" : {
        "title" : "None",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoCurrentEBC",
            "default" : "NO_CURRENT"
          }
        },
        "additionalProperties" : false
      },
      "CurrentInflowEBC" : {
        "title" : "Current inflow",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CurrentInflowEBC",
            "default" : "CURRENT_INFLOW"
          },
          "currentFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricCurrent"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_ElectricCurrent" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_ElectricCurrentValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "A" ]
          }
        },
        "additionalProperties" : false
      },
      "CurrentOutflowEBC" : {
        "title" : "Current outflow",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CurrentOutflowEBC",
            "default" : "CURRENT_OUTFLOW"
          },
          "currentFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricCurrent"
          }
        },
        "additionalProperties" : false
      },
      "FixedElectricPotentialEBC" : {
        "title" : "Electric potential",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedElectricPotentialEBC",
            "default" : "FIXED_ELECTRIC_POTENTIAL"
          },
          "potentialFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricPotential"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_ElectricPotential" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_ElectricPotentialValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "V" ]
          }
        },
        "additionalProperties" : false
      },
      "FanBC" : {
        "title" : "Fan",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition sets the <b>pressure</b> based on the pressure drop specified as a function of the volumetric flow rate. <a href='https://www.simscale.com/knowledge-base/how-do-i-model-a-fan-curve-in-simscale/#external-fan-boundary-condition' target='_blank'>Learn more</a>\n\nSchema name: FanBC",
            "default" : "FAN"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "direction" : {
            "title" : "Fan Type",
            "type" : "string",
            "default" : "IN",
            "enum" : [ "IN", "OUT" ]
          },
          "pressure" : {
            "$ref" : "#/components/schemas/FanPBC"
          },
          "pressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_FanBCPressureRgh"
          },
          "gaugePressure" : {
            "$ref" : "#/components/schemas/FanPBC"
          },
          "gaugePressureRgh" : {
            "$ref" : "#/components/schemas/FanPBC"
          },
          "turbulence" : {
            "$ref" : "#/components/schemas/OneOf_FanBCTurbulence"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/OneOf_FanBCTemperature"
          },
          "passiveScalars" : {
            "title" : "Passive scalars",
            "type" : "array",
            "description" : "Please choose a boundary condition for passive scalar (T).",
            "items" : {
              "$ref" : "#/components/schemas/FixedValuePSBC"
            },
            "x-showWhen" : [ "type in [INCOMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1/direction == IN && numOfPassiveSpecies > 0" ]
          },
          "netRadiativeHeatFlux" : {
            "$ref" : "#/components/schemas/OneOf_FanBCNetRadiativeHeatFlux"
          },
          "radiativeIntensityRay" : {
            "$ref" : "#/components/schemas/OneOf_FanBCRadiativeIntensityRay"
          },
          "relativeHumidity" : {
            "$ref" : "#/components/schemas/FixedValueRHBC"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition sets the <b>pressure</b> based on the pressure drop specified as a function of the volumetric flow rate. <a href='https://www.simscale.com/knowledge-base/how-do-i-model-a-fan-curve-in-simscale/#external-fan-boundary-condition' target='_blank'>Learn more</a>"
      },
      "FanPBC" : {
        "title" : "(P<fan>) Fan pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FanPBC",
            "default" : "FAN_PRESSURE"
          },
          "fanPressure" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "environmentalTotalPressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_V_DOT" : {
        "type" : "object",
        "properties" : {
          "V_DOT" : {
            "$ref" : "#/components/schemas/Unit_VolumetricFlowRate"
          }
        }
      },
      "Unit_VolumetricFlowRate" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m³/s", "in³/s", "m³/min", "m³/h", "mm³/s", "mm³/min", "mm³/h", "cm³/s", "cm³/min", "cm³/h", "l/s", "l/min", "l/h", "in³/min", "in³/h", "ft³/s", "ft³/min", "ft³/h", "gal/min", "gal/h", "gal/s" ]
          }
        }
      },
      "HydrostaticFanPBC" : {
        "title" : "(P<fan>) Hydrostatic fan pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This pressure formulation is suitable for atmospheric flows with perfect gas fluids: the pressure decreases with increasing height to keep the domain at hydrostatic equilibrium. The ambient pressure in the input sets the pressure at ground level.\n\nSchema name: HydrostaticFanPBC",
            "default" : "HYDROSTATIC_ISOTHERMAL_FAN_PRESSURE"
          },
          "fanPressure" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "environmentalTotalPressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This pressure formulation is suitable for atmospheric flows with perfect gas fluids: the pressure decreases with increasing height to keep the domain at hydrostatic equilibrium. The ambient pressure in the input sets the pressure at ground level."
      },
      "SymmetryBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition provides a symmetry condition on any face by applying a mirror effect. The fluxes and the normal components across the symmetry face are set to zero. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/symmetry/' target='_blank'>Learn more</a>.\n\nSchema name: SymmetryBC",
            "default" : "SYMMETRY"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition provides a symmetry condition on any face by applying a mirror effect. The fluxes and the normal components across the symmetry face are set to zero. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/symmetry/' target='_blank'>Learn more</a>."
      },
      "PeriodicBC" : {
        "title" : "Periodic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition should be used on two faces of a system as if they are physically connected. It is required that the two faces are of same size and shape and the face elements of the mesh are congruent on both sides. Works for uploaded meshes only. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/periodic-boundary-condition/' target='_blank'>Learn more</a>.\n\nSchema name: PeriodicBC",
            "default" : "PERIODIC"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition should be used on two faces of a system as if they are physically connected. It is required that the two faces are of same size and shape and the face elements of the mesh are congruent on both sides. Works for uploaded meshes only. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/periodic-boundary-condition/' target='_blank'>Learn more</a>."
      },
      "WedgeBC" : {
        "title" : "Wedge",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition is applied to the front and back faces of an axisymmetric system (eg. cylinder). Note that the face elements of the mesh need to be congruent on both the faces. Works for uploaded 2D meshes only.  <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/wedge/' target='_blank'>Learn more</a>.\n\nSchema name: WedgeBC",
            "default" : "WEDGE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition is applied to the front and back faces of an axisymmetric system (eg. cylinder). Note that the face elements of the mesh need to be congruent on both the faces. Works for uploaded 2D meshes only.  <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/wedge/' target='_blank'>Learn more</a>."
      },
      "CustomFluidBC" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition allows the user to choose conditions for each physical variable separately. It provides full flexibility over the choice of boundary conditions to make advanced customization possible.\n\nSchema name: CustomFluidBC",
            "default" : "CUSTOM_V37"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "velocity" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCVelocity"
          },
          "pressure" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCPressure"
          },
          "pressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCPressureRgh"
          },
          "gaugePressure" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCGaugePressure"
          },
          "gaugePressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCGaugePressureRgh"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCTemperature"
          },
          "turbulentKineticEnergy" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCTurbulentKineticEnergy"
          },
          "omegaDissipationRate" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCOmegaDissipationRate"
          },
          "epsilonDissipationRate" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCEpsilonDissipationRate"
          },
          "eddyViscosity" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCEddyViscosity"
          },
          "eddyViscosityCompressible" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCEddyViscosityCompressible"
          },
          "nuTilda" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCNuTilda"
          },
          "turbulentThermalDiffusivity" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCTurbulentThermalDiffusivity"
          },
          "turbulentThermalDiffusivityCompressible" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCTurbulentThermalDiffusivityCompressible"
          },
          "turbulentDynamicViscosity" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCTurbulentDynamicViscosity"
          },
          "passiveScalars" : {
            "title" : "Passive scalars",
            "type" : "array",
            "description" : "Please choose a boundary condition for passive scalar (T).",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_CustomFluidBCPassiveScalars"
            },
            "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0" ]
          },
          "phaseFraction" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCPhaseFraction"
          },
          "netRadiativeHeatFlux" : {
            "$ref" : "#/components/schemas/OneOf_CustomFluidBCNetRadiativeHeatFlux"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition allows the user to choose conditions for each physical variable separately. It provides full flexibility over the choice of boundary conditions to make advanced customization possible."
      },
      "AdvectiveVBC" : {
        "title" : "Advective",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AdvectiveVBC",
            "default" : "ADVECTIVE"
          },
          "relaxBoundary" : {
            "title" : "Relax boundary",
            "type" : "boolean",
            "default" : false
          },
          "farFieldValue" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          },
          "relaxationLengthScale" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryVBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryVBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientVBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientVBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/DimensionalVector_SpecificTurbulenceDissipationRate"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_SpecificTurbulenceDissipationRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/s" ]
          }
        },
        "additionalProperties" : false
      },
      "InletOutletVBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletVBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          }
        },
        "additionalProperties" : false
      },
      "PressureInletVBC" : {
        "title" : "Pressure inlet velocity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PressureInletVBC",
            "default" : "PRESSURE_INLET_VELOCITY"
          }
        },
        "additionalProperties" : false
      },
      "PressureInletOutletVBC" : {
        "title" : "Pressure inlet-outlet velocity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PressureInletOutletVBC",
            "default" : "PRESSURE_INLET_OUTLET_VELOCITY"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientVBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientVBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "AdvectivePBC" : {
        "title" : "Advective",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AdvectivePBC",
            "default" : "ADVECTIVE"
          },
          "relaxBoundary" : {
            "title" : "Relax boundary",
            "type" : "boolean",
            "default" : false
          },
          "farFieldValue" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "relaxationLengthScale" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryPBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryPBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientPBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientPBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_ForceDensity"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_ForceDensity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Pa/m", "lbf/in³" ]
          }
        },
        "additionalProperties" : false
      },
      "FreestreamPBC" : {
        "title" : "Freestream",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FreestreamPBC",
            "default" : "FREESTREAM"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientPBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientPBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "WaveTransmissivePBC" : {
        "title" : "Wave transmissive",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WaveTransmissivePBC",
            "default" : "WAVE_TRANSMISSIVE"
          },
          "specificHeatRatio" : {
            "title" : "(γ) Gamma",
            "type" : "number",
            "default" : 1.4
          },
          "relaxBoundary" : {
            "title" : "Relax boundary",
            "type" : "boolean",
            "default" : false
          },
          "farFieldValue" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "relaxationLengthScale" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "FixedFluxPBC" : {
        "title" : "Fixed flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedFluxPBC",
            "default" : "FIXED_FLUX_PRESSURE"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientTBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientTBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/DimensionalFunction_TemperatureGradient"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_TemperatureGradient" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_TemperatureGradientValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "K/m", "°F/in" ]
          }
        },
        "additionalProperties" : false
      },
      "InletOutletTBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletTBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryTBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryTBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "WallHeatTransferTBC" : {
        "title" : "Wall heat transfer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallHeatTransferTBC",
            "default" : "WALL_HEAT_TRANSFER"
          },
          "wallTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "thermalDiffusivity" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryTKEBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryTKEBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientTKEBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientTKEBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_Acceleration"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Acceleration" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s²", "in/s²", "G" ]
          }
        },
        "additionalProperties" : false
      },
      "FixedValueTKEBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueTKEBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_TurbulenceKineticEnergy"
          }
        },
        "additionalProperties" : false
      },
      "InletOutletTKEBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletTKEBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_TurbulenceKineticEnergy"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientTKEBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientTKEBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "IntensityKineticEnergyInletTKEBC" : {
        "title" : "Intensity inlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IntensityKineticEnergyInletTKEBC",
            "default" : "TURBULENT_INTENSITY_KINETIC_ENERGY_INLET"
          },
          "intensity" : {
            "title" : "Intensity",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.05
          }
        },
        "additionalProperties" : false
      },
      "WallFunctionTKEBC" : {
        "title" : "Wall function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallFunctionTKEBC",
            "default" : "WALL_FUNCTION"
          },
          "wallRoughness" : {
            "title" : "Wall roughness",
            "type" : "boolean",
            "default" : false
          },
          "roughnessHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "roughnessConstant" : {
            "title" : "Roughness constant",
            "minimum" : 0.5,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.5,
            "x-showWhen" : [ "1/wallRoughness == true" ]
          }
        },
        "additionalProperties" : false
      },
      "FullResolutionTKEBC" : {
        "title" : "Full resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullResolutionTKEBC",
            "default" : "FULL_RESOLUTION"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryOBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryOBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientOBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientOBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificTurbulenceDissipationRateGradient"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_SpecificTurbulenceDissipationRateGradient" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/(s·m)", "1/(s·in)" ]
          }
        },
        "additionalProperties" : false
      },
      "FixedValueOBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueOBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_SpecificTurbulenceDissipationRate"
          }
        },
        "additionalProperties" : false
      },
      "InletOutletOBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletOBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificTurbulenceDissipationRate"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientOBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientOBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "WallFunctionOBC" : {
        "title" : "Wall function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallFunctionOBC",
            "default" : "WALL_FUNCTION"
          }
        },
        "additionalProperties" : false
      },
      "FullResolutionOBC" : {
        "title" : "Full resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullResolutionOBC",
            "default" : "FULL_RESOLUTION"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryEBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryEBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientEBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientEBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_EpsilonGradient"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_EpsilonGradient" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s³", "lbf/(s·lb)" ]
          }
        },
        "additionalProperties" : false
      },
      "FixedValueEBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueEBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/DimensionalFunction_TurbulentDissipation"
          }
        },
        "additionalProperties" : false
      },
      "InletOutletEBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletEBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_TurbulentDissipation"
          }
        },
        "additionalProperties" : false
      },
      "MixingLengthInletEBC" : {
        "title" : "Mixing length inlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MixingLengthInletEBC",
            "default" : "TURBULENCE_MIXING_LENGTH_DISSIPATION_RATE_INLET"
          },
          "mixingLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientEBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientEBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "WallFunctionEBC" : {
        "title" : "Wall function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallFunctionEBC",
            "default" : "WALL_FUNCTION"
          }
        },
        "additionalProperties" : false
      },
      "FullResolutionEBC" : {
        "title" : "Full resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullResolutionEBC",
            "default" : "FULL_RESOLUTION"
          }
        },
        "additionalProperties" : false
      },
      "CalculatedEVBC" : {
        "title" : "Calculated",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CalculatedEVBC",
            "default" : "CALCULATED"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryEVBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryEVBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientEVBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientEVBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_EddyViscosityGradient"
          }
        },
        "additionalProperties" : false
      },
      "FixedValueEVBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueEVBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "InletOutletEVBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletEVBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientEVBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientEVBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "WallFunctionEVBC" : {
        "title" : "Wall function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallFunctionEVBC",
            "default" : "WALL_FUNCTION"
          }
        },
        "additionalProperties" : false
      },
      "FullResolutionEVBC" : {
        "title" : "Full resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullResolutionEVBC",
            "default" : "FULL_RESOLUTION"
          }
        },
        "additionalProperties" : false
      },
      "CalculatedEVCBC" : {
        "title" : "Calculated",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CalculatedEVCBC",
            "default" : "CALCULATED"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryEVCBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryEVCBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientEVCBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientEVCBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_EddyViscosityGradient"
          }
        },
        "additionalProperties" : false
      },
      "FixedValueEVCBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueEVCBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "InletOutletEVCBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletEVCBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientEVCBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientEVCBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "WallFunctionEVCBC" : {
        "title" : "Wall function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallFunctionEVCBC",
            "default" : "WALL_FUNCTION"
          }
        },
        "additionalProperties" : false
      },
      "FullResolutionEVCBC" : {
        "title" : "Full resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullResolutionEVCBC",
            "default" : "FULL_RESOLUTION"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryNBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryNBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientNBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientNBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_Speed"
          }
        },
        "additionalProperties" : false
      },
      "FixedValueNBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueNBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "InletOutletNBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletNBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientNBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientNBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "WallFunctionNBC" : {
        "title" : "Wall function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallFunctionNBC",
            "default" : "WALL_FUNCTION"
          }
        },
        "additionalProperties" : false
      },
      "FullResolutionNBC" : {
        "title" : "Full resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullResolutionNBC",
            "default" : "FULL_RESOLUTION"
          }
        },
        "additionalProperties" : false
      },
      "CalculatedTDBC" : {
        "title" : "Calculated",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CalculatedTDBC",
            "default" : "CALCULATED"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientTDBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientTDBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_EddyViscosityGradient"
          }
        },
        "additionalProperties" : false
      },
      "FixedValueTDBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueTDBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientTDBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientTDBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryTDBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryTDBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "WallFunctionTDBC" : {
        "title" : "Wall function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallFunctionTDBC",
            "default" : "WALL_FUNCTION"
          },
          "prandtlNumber" : {
            "title" : "(Pr) Prandtl number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "default" : 0.85
          }
        },
        "additionalProperties" : false
      },
      "FullResolutionTDBC" : {
        "title" : "Full resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullResolutionTDBC",
            "default" : "FULL_RESOLUTION"
          },
          "prandtlNumber" : {
            "title" : "(Pr) Prandtl number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "default" : 0.85
          }
        },
        "additionalProperties" : false
      },
      "CalculatedTDCBC" : {
        "title" : "Calculated",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CalculatedTDCBC",
            "default" : "CALCULATED"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientTDCBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientTDCBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_EddyViscosityGradient"
          }
        },
        "additionalProperties" : false
      },
      "FixedValueTDCBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueTDCBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientTDCBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientTDCBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryTDCBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryTDCBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "WallFunctionTDCBC" : {
        "title" : "Wall function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallFunctionTDCBC",
            "default" : "WALL_FUNCTION"
          },
          "prandtlNumber" : {
            "title" : "(Pr) Prandtl number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "default" : 0.85
          }
        },
        "additionalProperties" : false
      },
      "FullResolutionTDCBC" : {
        "title" : "Full resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullResolutionTDCBC",
            "default" : "FULL_RESOLUTION"
          },
          "prandtlNumber" : {
            "title" : "(Pr) Prandtl number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "default" : 0.85
          }
        },
        "additionalProperties" : false
      },
      "CalculatedDVBC" : {
        "title" : "Calculated",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CalculatedDVBC",
            "default" : "CALCULATED"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientDVBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientDVBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_EddyViscosityGradient"
          }
        },
        "additionalProperties" : false
      },
      "FixedValueDVBC" : {
        "title" : "Fixed value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedValueDVBC",
            "default" : "FIXED_VALUE"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "InletOutletDVBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletDVBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientDVBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientDVBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryDVBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryDVBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "WallFunctionDVBC" : {
        "title" : "Wall function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallFunctionDVBC",
            "default" : "WALL_FUNCTION"
          }
        },
        "additionalProperties" : false
      },
      "FullResolutionDVBC" : {
        "title" : "Full resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FullResolutionDVBC",
            "default" : "FULL_RESOLUTION"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientPSBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientPSBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_Absorptivity"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Absorptivity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/m", "1/in" ]
          }
        },
        "additionalProperties" : false
      },
      "InletOutletPSBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletPSBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "ZeroGradientPSBC" : {
        "title" : "Zero gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZeroGradientPSBC",
            "default" : "ZERO_GRADIENT"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryPSBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryPSBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "FixedGradientPFBC" : {
        "title" : "Fixed gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedGradientPFBC",
            "default" : "FIXED_GRADIENT"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/Dimensional_PhaseFractionGradient"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_PhaseFractionGradient" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/m", "1/in" ]
          }
        },
        "additionalProperties" : false
      },
      "InletOutletPFBC" : {
        "title" : "Inlet-outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: InletOutletPFBC",
            "default" : "INLET_OUTLET"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "SymmetryPFBC" : {
        "title" : "Symmetry",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SymmetryPFBC",
            "default" : "SYMMETRY"
          }
        },
        "additionalProperties" : false
      },
      "Empty2DBC" : {
        "title" : "Empty 2D",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This boundary condition is intended only for uploaded 2D OpenFOAM meshes. A 2D mesh is ensured by having a single cell thickness in one of the 3 spatial directions. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/empty-2d/' target='_blank'>Learn more.</a>\n\nSchema name: Empty2DBC",
            "default" : "EMPTY_2D"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This boundary condition is intended only for uploaded 2D OpenFOAM meshes. A 2D mesh is ensured by having a single cell thickness in one of the 3 spatial directions. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/empty-2d/' target='_blank'>Learn more.</a>"
      },
      "AdvancedConcepts" : {
        "type" : "object",
        "properties" : {
          "thermalContactResistance" : {
            "title" : "Contact resistance",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedConceptsThermalContactResistance"
            },
            "x-showWhen" : [ "type == EMBEDDED_BOUNDARY" ]
          },
          "humiditySources" : {
            "title" : "Humidity sources",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedConceptsHumiditySources"
            },
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == true && enableHumidityModel == true", "type == EMBEDDED_BOUNDARY && isCompressible == true && enableHumidityModel == true" ]
          },
          "momentumSources" : {
            "title" : "Momentum sources",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedConceptsMomentumSources"
            },
            "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == INCOMPRESSIBLE && algorithm in [SIMPLE,PIMPLE]" ]
          },
          "passiveScalarSources" : {
            "title" : "Passive scalar sources",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedConceptsPassiveScalarSources"
            },
            "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0" ]
          },
          "porousMediums" : {
            "title" : "Porous media",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedConceptsPorousMediums"
            },
            "x-showWhen" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,SIMERICS_ANALYSIS]", "type == INCOMPRESSIBLE && algorithm in [SIMPLE,PIMPLE]" ]
          },
          "powerSources" : {
            "title" : "Power sources",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedConceptsPowerSources"
            },
            "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == SIMERICS_ANALYSIS && isCompressible == true" ]
          },
          "rotatingZones" : {
            "title" : "Rotating zones",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedConceptsRotatingZones"
            },
            "x-showWhen" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,SIMERICS_ANALYSIS]", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == STATIONARY && enableRadiation == false", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type != STATIONARY", "type == CONJUGATE_HEAT_TRANSFER && timeDependency.type == STATIONARY && enableRadiation == false", "type == CONJUGATE_HEAT_TRANSFER && timeDependency.type != STATIONARY", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && timeDependency.type == STATIONARY", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && timeDependency.type != STATIONARY && enableRadiation == false", "type == EMBEDDED_BOUNDARY && timeDependency.type == STATIONARY", "type == EMBEDDED_BOUNDARY && timeDependency.type != STATIONARY && enableRadiation == false", "type == MULTIPHASE && useLocalTimeStepping == false" ]
          },
          "solidBodyMotions" : {
            "title" : "Solid body motions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedConceptsSolidBodyMotions"
            },
            "x-showWhen" : [ "type == INCOMPRESSIBLE && algorithm == PIMPLE", "type == MULTIPHASE && useLocalTimeStepping == false" ]
          },
          "thermalResistanceNetworks" : {
            "title" : "Thermal Resistance Networks",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedConceptsThermalResistanceNetworks"
            },
            "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == false", "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
          }
        },
        "additionalProperties" : false
      },
      "ThinResistanceLayer" : {
        "title" : "Thin layer resistance",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the type of the contact resistance:</p><ul><li><p>To specify presence of thin layers with known thermal conductivity or/and electric resistivity and thickness, choose <b>Thin layer resistance</b>.</p><li><p>If the thermal/electric contact resistance is known (e.g. due to an imperfectly matching interface, choose <b>Contact resistance</b>. The resistance can be defined as surface-dependent or not, i.e. total or specific. To make a resistance inactive, set it to 0. Enter a high value to make it an isolator.</p><li><p>Conversely, if the thermal/electric contact conductance is known, choose <b>Specific conductance</b></p></ul><a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/contact-resistance/' target='_blank'>Learn more</a>.\n\nSchema name: ThinResistanceLayer",
            "default" : "THIN_RESISTANCE_LAYER"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "interfaceThermal" : {
            "$ref" : "#/components/schemas/ContactInterfaceMaterialInterfaceThermal"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the type of the contact resistance:</p><ul><li><p>To specify presence of thin layers with known thermal conductivity or/and electric resistivity and thickness, choose <b>Thin layer resistance</b>.</p><li><p>If the thermal/electric contact resistance is known (e.g. due to an imperfectly matching interface, choose <b>Contact resistance</b>. The resistance can be defined as surface-dependent or not, i.e. total or specific. To make a resistance inactive, set it to 0. Enter a high value to make it an isolator.</p><li><p>Conversely, if the thermal/electric contact conductance is known, choose <b>Specific conductance</b></p></ul><a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/contact-resistance/' target='_blank'>Learn more</a>."
      },
      "ContactInterfaceMaterialInterfaceThermal" : {
        "title" : "Thin layer resistance interface",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ContactInterfaceMaterialInterfaceThermal",
            "default" : "CONTACT_INTERFACE_MATERIAL"
          },
          "conductivityThicknessPairs" : {
            "title" : "Conductivity thickness pairs",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ConductivityThicknessPair"
            }
          }
        },
        "additionalProperties" : false
      },
      "ContactResistanceLayer" : {
        "title" : "Contact Resistance",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the type of the contact resistance:</p><ul><li><p>To specify presence of thin layers with known thermal conductivity or/and electric resistivity and thickness, choose <b>Thin layer resistance</b>.</p><li><p>If the thermal/electric contact resistance is known (e.g. due to an imperfectly matching interface, choose <b>Contact resistance</b>. The resistance can be defined as surface-dependent or not, i.e. total or specific. To make a resistance inactive, set it to 0. Enter a high value to make it an isolator.</p><li><p>Conversely, if the thermal/electric contact conductance is known, choose <b>Specific conductance</b></p></ul><a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/contact-resistance/' target='_blank'>Learn more</a>.\n\nSchema name: ContactResistanceLayer",
            "default" : "CONTACT_RESISTANCE_LAYER"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "interfaceThermal" : {
            "$ref" : "#/components/schemas/OneOf_ContactResistanceLayerInterfaceThermal"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the type of the contact resistance:</p><ul><li><p>To specify presence of thin layers with known thermal conductivity or/and electric resistivity and thickness, choose <b>Thin layer resistance</b>.</p><li><p>If the thermal/electric contact resistance is known (e.g. due to an imperfectly matching interface, choose <b>Contact resistance</b>. The resistance can be defined as surface-dependent or not, i.e. total or specific. To make a resistance inactive, set it to 0. Enter a high value to make it an isolator.</p><li><p>Conversely, if the thermal/electric contact conductance is known, choose <b>Specific conductance</b></p></ul><a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/contact-resistance/' target='_blank'>Learn more</a>."
      },
      "TotalResistanceInterfaceThermal" : {
        "title" : "Total resistance interface",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalResistanceInterfaceThermal",
            "default" : "TOTAL_RESISTANCE"
          },
          "contactResistance" : {
            "$ref" : "#/components/schemas/Dimensional_ContactResistance"
          },
          "electricResistance" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricResistance"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_ElectricResistance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Ω" ]
          }
        },
        "additionalProperties" : false
      },
      "SpecificResistanceInterfaceThermal" : {
        "title" : "Specific resistance interface",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SpecificResistanceInterfaceThermal",
            "default" : "SPECIFIC_RESISTANCE"
          },
          "contactResistance" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificContactResistance"
          },
          "electricResistance" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificElectricResistance"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_SpecificContactResistance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "K·m²/W", "°F·s·in²/Btu" ],
            "x-MissingConversions" : true
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_SpecificElectricResistance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Ω·m²", "Ω·in²" ]
          }
        },
        "additionalProperties" : false
      },
      "ContactConductanceLayer" : {
        "title" : "Contact Conductance",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose the type of the contact resistance:</p><ul><li><p>To specify presence of thin layers with known thermal conductivity or/and electric resistivity and thickness, choose <b>Thin layer resistance</b>.</p><li><p>If the thermal/electric contact resistance is known (e.g. due to an imperfectly matching interface, choose <b>Contact resistance</b>. The resistance can be defined as surface-dependent or not, i.e. total or specific. To make a resistance inactive, set it to 0. Enter a high value to make it an isolator.</p><li><p>Conversely, if the thermal/electric contact conductance is known, choose <b>Specific conductance</b></p></ul><a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/contact-resistance/' target='_blank'>Learn more</a>.\n\nSchema name: ContactConductanceLayer",
            "default" : "CONTACT_CONDUCTANCE_LAYER"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "interfaceThermal" : {
            "$ref" : "#/components/schemas/OneOf_ContactConductanceLayerInterfaceThermal"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose the type of the contact resistance:</p><ul><li><p>To specify presence of thin layers with known thermal conductivity or/and electric resistivity and thickness, choose <b>Thin layer resistance</b>.</p><li><p>If the thermal/electric contact resistance is known (e.g. due to an imperfectly matching interface, choose <b>Contact resistance</b>. The resistance can be defined as surface-dependent or not, i.e. total or specific. To make a resistance inactive, set it to 0. Enter a high value to make it an isolator.</p><li><p>Conversely, if the thermal/electric contact conductance is known, choose <b>Specific conductance</b></p></ul><a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/contact-resistance/' target='_blank'>Learn more</a>."
      },
      "SpecificConductanceInterfaceThermal" : {
        "title" : "Specific conductance interface",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SpecificConductanceInterfaceThermal",
            "default" : "SPECIFIC_CONDUCTANCE"
          },
          "contactConductance" : {
            "$ref" : "#/components/schemas/Dimensional_ThermalTransmittance"
          },
          "electricConductance" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificElectricConductance"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_SpecificElectricConductance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/(Ω·m²)", "1/(Ω·in²)" ]
          }
        },
        "additionalProperties" : false
      },
      "TotalConductanceInterfaceThermal" : {
        "title" : "Total conductance interface",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalConductanceInterfaceThermal",
            "default" : "TOTAL_CONDUCTANCE"
          },
          "contactConductance" : {
            "$ref" : "#/components/schemas/Dimensional_TotalThermalTransmittance"
          },
          "electricConductance" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricConductance"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_TotalThermalTransmittance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W/K", "Btu/(s·°F)" ],
            "x-MissingConversions" : true
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_ElectricConductance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "S" ]
          }
        },
        "additionalProperties" : false
      },
      "SpeciesHumiditySource" : {
        "title" : "Source of species",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<i>Humidity sources</i> can be used to simulate humidity generation from a volume, knowing the mass of species entering the fluid domain per second.\n\nSchema name: SpeciesHumiditySource",
            "default" : "SPECIES_MASS_FLOW_RATE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "waterVaporMassRate" : {
            "$ref" : "#/components/schemas/Dimensional_MassFlowRate"
          },
          "dryAirMassRate" : {
            "$ref" : "#/components/schemas/Dimensional_MassFlowRate"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<i>Humidity sources</i> can be used to simulate humidity generation from a volume, knowing the mass of species entering the fluid domain per second."
      },
      "VolumetricSpeciesHumiditySource" : {
        "title" : "Volumetric source of species",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<i>Humidity sources</i> can be used to simulate humidity generation from a volume, knowing the mass of species entering the fluid domain per second.\n\nSchema name: VolumetricSpeciesHumiditySource",
            "default" : "VOLUMETRIC_SPECIES_MASS_FLOW_RATE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "waterVaporMassRate" : {
            "$ref" : "#/components/schemas/Dimensional_AbsoluteHumidityRate"
          },
          "dryAirMassRate" : {
            "$ref" : "#/components/schemas/Dimensional_AbsoluteHumidityRate"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<i>Humidity sources</i> can be used to simulate humidity generation from a volume, knowing the mass of species entering the fluid domain per second."
      },
      "Dimensional_AbsoluteHumidityRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "kg/(m³·s)", "lb/(in³·s)" ]
          }
        },
        "additionalProperties" : false
      },
      "AverageVelocityMomentumSource" : {
        "title" : "Average velocity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AverageVelocityMomentumSource",
            "default" : "AVERAGE_VELOCITY"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "averageVelocity" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "FanPressureDropMomentumSource" : {
        "title" : "Fan model",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FanPressureDropMomentumSource",
            "default" : "FAN_PRESSURE_DROP"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "fanDirection" : {
            "$ref" : "#/components/schemas/DimensionalVector_Dimensionless"
          },
          "fanPressure" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "FrictionVelocityMomentumSource" : {
        "title" : "Friction velocity source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FrictionVelocityMomentumSource",
            "default" : "FRICTION_VELOCITY_SOURCE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "frictionVelocity" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          },
          "relaxationFactor" : {
            "title" : "Relaxation factor",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1.0
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "AbsolutePassiveScalarSource" : {
        "title" : "Passive scalar source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsolutePassiveScalarSource",
            "default" : "ABSOLUTE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "passiveScalarVariable" : {
            "title" : "Passive scalar variable",
            "type" : "string",
            "default" : "passive_scalar_one",
            "x-conditionalEnum" : [ {
              "value" : "passive_scalar_one"
            }, {
              "value" : "passive_scalar_two",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 1", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 1", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 1", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 1" ]
            }, {
              "value" : "passive_scalar_three",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 2", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 2", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 2", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 2" ]
            }, {
              "value" : "passive_scalar_four",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 3", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 3", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 3", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 3" ]
            }, {
              "value" : "passive_scalar_five",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 4", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 4", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 4", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 4" ]
            }, {
              "value" : "passive_scalar_six",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 5", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 5", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 5", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 5" ]
            }, {
              "value" : "passive_scalar_seven",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 6", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 6", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 6", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 6" ]
            }, {
              "value" : "passive_scalar_eight",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 7", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 7", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 7", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 7" ]
            }, {
              "value" : "passive_scalar_nine",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 8", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 8", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 8", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 8" ]
            } ]
          },
          "flux" : {
            "$ref" : "#/components/schemas/Dimensional_PassiveScalarSourceRate"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE", "POINT" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_PassiveScalarSourceRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/s" ]
          }
        },
        "additionalProperties" : false
      },
      "SpecificPassiveScalarSource" : {
        "title" : "Volumetric passive scalar source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SpecificPassiveScalarSource",
            "default" : "SPECIFIC"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "passiveScalarVariable" : {
            "title" : "Passive scalar variable",
            "type" : "string",
            "default" : "passive_scalar_one",
            "x-conditionalEnum" : [ {
              "value" : "passive_scalar_one"
            }, {
              "value" : "passive_scalar_two",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 1", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 1", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 1", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 1" ]
            }, {
              "value" : "passive_scalar_three",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 2", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 2", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 2", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 2" ]
            }, {
              "value" : "passive_scalar_four",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 3", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 3", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 3", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 3" ]
            }, {
              "value" : "passive_scalar_five",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 4", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 4", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 4", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 4" ]
            }, {
              "value" : "passive_scalar_six",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 5", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 5", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 5", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 5" ]
            }, {
              "value" : "passive_scalar_seven",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 6", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 6", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 6", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 6" ]
            }, {
              "value" : "passive_scalar_eight",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 7", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 7", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 7", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 7" ]
            }, {
              "value" : "passive_scalar_nine",
              "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 8", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 8", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 8", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 8" ]
            } ]
          },
          "flux" : {
            "$ref" : "#/components/schemas/Dimensional_VolumetricPassiveScalarSourceRate"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE", "POINT" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_VolumetricPassiveScalarSourceRate" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/(m³·s)", "1/(in³·s)" ]
          }
        },
        "additionalProperties" : false
      },
      "DarcyMedium" : {
        "title" : "Darcy Law medium",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DarcyMedium",
            "default" : "DARCY"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "porosity" : {
            "title" : "Porosity",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Porosity is the fraction of a volume of material is that is void. It ranges from φ = 1 (completely empty) to φ = 0 (completely solid).",
            "default" : 1
          },
          "permeability" : {
            "$ref" : "#/components/schemas/Dimensional_Area"
          },
          "dragCoefficient" : {
            "title" : "Drag coefficient",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The Darcy law may be extended to include the Forchheimer drag term for more inertial flows (Re > 10). This term is quadratic in flow velocity. Its coefficient includes the fluid drag coefficient Cd.",
            "default" : 0
          },
          "porousMaterialType" : {
            "$ref" : "#/components/schemas/OneOf_DarcyMediumPorousMaterialType"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "HomogeneousMaterialStructure" : {
        "title" : "Homogeneous",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HomogeneousMaterialStructure",
            "default" : "HOMOGENEOUS"
          }
        },
        "additionalProperties" : false
      },
      "DirectionalMaterialStructure" : {
        "title" : "Directional",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DirectionalMaterialStructure",
            "default" : "DIRECTIONAL"
          },
          "mode" : {
            "$ref" : "#/components/schemas/OneOf_DirectionalMaterialStructureMode"
          },
          "direction" : {
            "$ref" : "#/components/schemas/DimensionalVector_Dimensionless"
          },
          "orientation" : {
            "$ref" : "#/components/schemas/OneOf_DirectionalMaterialStructureOrientation"
          }
        },
        "additionalProperties" : false
      },
      "AllowedDirection" : {
        "title" : "Allowed direction",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AllowedDirection",
            "default" : "ALLOWED_DIRECTION"
          }
        },
        "additionalProperties" : false
      },
      "BlockedDirection" : {
        "title" : "Blocked direction",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: BlockedDirection",
            "default" : "BLOCKED_DIRECTION"
          }
        },
        "additionalProperties" : false
      },
      "CartesianOrientation" : {
        "title" : "Cartesian",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CartesianOrientation",
            "default" : "CARTESIAN"
          }
        },
        "additionalProperties" : false
      },
      "CustomOrientation" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomOrientation",
            "default" : "CUSTOM"
          },
          "unitVector1" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "unitVector2" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "PressureLossFunctionMedium" : {
        "title" : "Pressure loss function",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PressureLossFunctionMedium",
            "default" : "PRESSURE_LOSS_FUNCTION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "pressureLossFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "porousMaterialType" : {
            "$ref" : "#/components/schemas/OneOf_PressureLossFunctionMediumPorousMaterialType"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "DarcyForchheimerMedium" : {
        "title" : "Darcy-Forchheimer medium",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DarcyForchheimerMedium",
            "default" : "DARCY_FORCHHEIMER"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "coefficientD" : {
            "$ref" : "#/components/schemas/DimensionalVector_ReciprocalPermeability"
          },
          "coefficientF" : {
            "$ref" : "#/components/schemas/DimensionalVector_Absorptivity"
          },
          "orientation" : {
            "$ref" : "#/components/schemas/OneOf_DarcyForchheimerMediumOrientation"
          },
          "porousMediaHeatTransfer" : {
            "$ref" : "#/components/schemas/OneOf_DarcyForchheimerMediumPorousMediaHeatTransfer"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_ReciprocalPermeability" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/m²", "1/in²", "1/mm²", "1/cm²", "1/ft²", "1/yd²" ]
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_Absorptivity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "1/m", "1/in" ]
          }
        },
        "additionalProperties" : false
      },
      "FluidOnlyHeatTransfer" : {
        "title" : "Fluid only",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FluidOnlyHeatTransfer",
            "default" : "FLUID_ONLY_HEAT_TRANSFER"
          }
        },
        "additionalProperties" : false
      },
      "EffectiveConductivityHeatTransfer" : {
        "title" : "Effective conductivity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: EffectiveConductivityHeatTransfer",
            "default" : "EFFECTIVE_CONDUCTIVITY_HEAT_TRANSFER"
          },
          "effectiveThermalConductivity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalConductivity"
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_VELOCITY" : {
        "type" : "object",
        "properties" : {
          "VELOCITY" : {
            "$ref" : "#/components/schemas/Unit_Speed"
          }
        }
      },
      "Unit_Speed" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m/s", "in/s", "m/min", "m/h", "mm/s", "mm/min", "mm/h", "cm/s", "cm/min", "cm/h", "km/h", "ft/s", "ft/min", "ft/h", "in/min", "in/h", "mph", "kn" ]
          }
        }
      },
      "FixedCoeffMedium" : {
        "title" : "Fixed coeff medium",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedCoeffMedium",
            "default" : "FIXED_COEFFICIENTS"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "alpha" : {
            "$ref" : "#/components/schemas/DimensionalVector_SpecificTurbulenceDissipationRate"
          },
          "beta" : {
            "$ref" : "#/components/schemas/DimensionalVector_Absorptivity"
          },
          "referenceDensity" : {
            "$ref" : "#/components/schemas/Dimensional_Density"
          },
          "orientation" : {
            "$ref" : "#/components/schemas/OneOf_FixedCoeffMediumOrientation"
          },
          "porousMediaHeatTransfer" : {
            "$ref" : "#/components/schemas/OneOf_FixedCoeffMediumPorousMediaHeatTransfer"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "PowerLawMedium" : {
        "title" : "Power law medium",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PowerLawMedium",
            "default" : "POWER_LAW"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "linearCoefficient" : {
            "title" : "Linear coefficient",
            "maximum" : 100000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1
          },
          "exponentCoefficient" : {
            "title" : "Exponent coefficient",
            "maximum" : 50,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 2
          },
          "porousMediaHeatTransfer" : {
            "$ref" : "#/components/schemas/OneOf_PowerLawMediumPorousMediaHeatTransfer"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "PressureLossCurve" : {
        "title" : "Pressure loss curve",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PressureLossCurve",
            "default" : "PRESSURE_LOSS_CURVE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "pressureLossData" : {
            "$ref" : "#/components/schemas/PressureLossData"
          },
          "directionalDependency" : {
            "$ref" : "#/components/schemas/DirectionalDependency"
          },
          "porousMediaHeatTransfer" : {
            "$ref" : "#/components/schemas/OneOf_PressureLossCurvePorousMediaHeatTransfer"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "PressureLossData" : {
        "type" : "object",
        "properties" : {
          "pressureLossCurve" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "flowDirectionLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "crossSectionArea" : {
            "$ref" : "#/components/schemas/Dimensional_Area"
          }
        },
        "additionalProperties" : false
      },
      "DirectionalDependency" : {
        "title" : "Directional dependency",
        "type" : "object",
        "properties" : {
          "darcyForchheimerType" : {
            "$ref" : "#/components/schemas/OneOf_DirectionalDependencyDarcyForchheimerType"
          }
        },
        "additionalProperties" : false
      },
      "IsotropicDarcyForchheimer" : {
        "title" : "Isotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Isotropic porous object where the same permeability and friction form coefficient are applied in all directions.\n\nSchema name: IsotropicDarcyForchheimer",
            "default" : "ISOTROPIC"
          }
        },
        "additionalProperties" : false,
        "description" : "Isotropic porous object where the same permeability and friction form coefficient are applied in all directions."
      },
      "RectifyingDarcyForchheimer" : {
        "title" : "Directional",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Directional porous object where the permeability and friction form coefficient are applied only in the specified direction. For directions orthogonal to the specified direction, the permeability is set to zero, i.e. there is no flow in the orthogonal directions.\n\nSchema name: RectifyingDarcyForchheimer",
            "default" : "RECTIFYING"
          },
          "direction" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false,
        "description" : "Directional porous object where the permeability and friction form coefficient are applied only in the specified direction. For directions orthogonal to the specified direction, the permeability is set to zero, i.e. there is no flow in the orthogonal directions."
      },
      "PerforatedPlate" : {
        "title" : "Perforated plate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PerforatedPlate",
            "default" : "PERFORATED_PLATE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "plateData" : {
            "$ref" : "#/components/schemas/PlateData"
          },
          "darcyForchheimerType" : {
            "$ref" : "#/components/schemas/RectifyingDarcyForchheimer"
          },
          "porousMediaHeatTransfer" : {
            "$ref" : "#/components/schemas/OneOf_PerforatedPlatePorousMediaHeatTransfer"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "PlateData" : {
        "title" : "Plate data",
        "type" : "object",
        "properties" : {
          "freeAreaRatio" : {
            "title" : "Free area ratio",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Free area ratio is the ratio of open area of the perforated plate to its total area.",
            "default" : 0.5
          },
          "holeShape" : {
            "$ref" : "#/components/schemas/OneOf_PlateDataHoleShape"
          }
        },
        "additionalProperties" : false
      },
      "GeneralHoleShape" : {
        "title" : "General",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "General formulation that does not depend on the shape of the holes. Valid only for thin plates where thickness to hole ratio is less than 0.015 and Reynolds number is greater than 10000.\n\nSchema name: GeneralHoleShape",
            "default" : "GENERAL"
          }
        },
        "additionalProperties" : false,
        "description" : "General formulation that does not depend on the shape of the holes. Valid only for thin plates where thickness to hole ratio is less than 0.015 and Reynolds number is greater than 10000."
      },
      "CircularHoleShape" : {
        "title" : "Circular",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Circular holes in the perforated plate.\n\nSchema name: CircularHoleShape",
            "default" : "CIRCULAR"
          },
          "averageHoleDiameter" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false,
        "description" : "Circular holes in the perforated plate."
      },
      "AbsolutePowerSource" : {
        "title" : "Absolute power source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<i>Power sources</i> can be used to simulate heat generation from a volume. Three types are available:<br><li><b>Absolute</b>: Used when total power emitted by the assigned volume is known.<li><b>Specific:</b> Used when power density of the assigned volume is known.<li><b>Heat exchanger:</b> Used to model a heat exchanger on a fluid region. The heat input is computed from the total conductance (U [W/K]) and the difference between the fluid temperature (T) and the heat exchanger temperature (Tref). Q = U (T - Tref). <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/power-sources/' target='_blank'>Learn more</a>.\n\nSchema name: AbsolutePowerSource",
            "default" : "ABSOLUTE_V23"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatFlux" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Power"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<i>Power sources</i> can be used to simulate heat generation from a volume. Three types are available:<br><li><b>Absolute</b>: Used when total power emitted by the assigned volume is known.<li><b>Specific:</b> Used when power density of the assigned volume is known.<li><b>Heat exchanger:</b> Used to model a heat exchanger on a fluid region. The heat input is computed from the total conductance (U [W/K]) and the difference between the fluid temperature (T) and the heat exchanger temperature (Tref). Q = U (T - Tref). <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/power-sources/' target='_blank'>Learn more</a>."
      },
      "SpecificPowerSource" : {
        "title" : "Specific power source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<i>Power sources</i> can be used to simulate heat generation from a volume. Three types are available:<br><li><b>Absolute</b>: Used when total power emitted by the assigned volume is known.<li><b>Specific:</b> Used when power density of the assigned volume is known.<li><b>Heat exchanger:</b> Used to model a heat exchanger on a fluid region. The heat input is computed from the total conductance (U [W/K]) and the difference between the fluid temperature (T) and the heat exchanger temperature (Tref). Q = U (T - Tref). <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/power-sources/' target='_blank'>Learn more</a>.\n\nSchema name: SpecificPowerSource",
            "default" : "SPECIFIC_V23"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatFlux" : {
            "$ref" : "#/components/schemas/DimensionalFunction_VolumetricPower"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<i>Power sources</i> can be used to simulate heat generation from a volume. Three types are available:<br><li><b>Absolute</b>: Used when total power emitted by the assigned volume is known.<li><b>Specific:</b> Used when power density of the assigned volume is known.<li><b>Heat exchanger:</b> Used to model a heat exchanger on a fluid region. The heat input is computed from the total conductance (U [W/K]) and the difference between the fluid temperature (T) and the heat exchanger temperature (Tref). Q = U (T - Tref). <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/power-sources/' target='_blank'>Learn more</a>."
      },
      "HeatExchangerSource" : {
        "title" : "Heat exchanger",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<i>Power sources</i> can be used to simulate heat generation from a volume. Three types are available:<br><li><b>Absolute</b>: Used when total power emitted by the assigned volume is known.<li><b>Specific:</b> Used when power density of the assigned volume is known.<li><b>Heat exchanger:</b> Used to model a heat exchanger on a fluid region. The heat input is computed from the total conductance (U [W/K]) and the difference between the fluid temperature (T) and the heat exchanger temperature (Tref). Q = U (T - Tref). <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/power-sources/' target='_blank'>Learn more</a>.\n\nSchema name: HeatExchangerSource",
            "default" : "HEAT_EXCHANGER_SOURCE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatExchangerMode" : {
            "$ref" : "#/components/schemas/OneOf_HeatExchangerSourceHeatExchangerMode"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER", "SPHERE" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<i>Power sources</i> can be used to simulate heat generation from a volume. Three types are available:<br><li><b>Absolute</b>: Used when total power emitted by the assigned volume is known.<li><b>Specific:</b> Used when power density of the assigned volume is known.<li><b>Heat exchanger:</b> Used to model a heat exchanger on a fluid region. The heat input is computed from the total conductance (U [W/K]) and the difference between the fluid temperature (T) and the heat exchanger temperature (Tref). Q = U (T - Tref). <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/power-sources/' target='_blank'>Learn more</a>."
      },
      "HeatTransferCoefficients" : {
        "title" : "Heat transfer coefficient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HeatTransferCoefficients",
            "default" : "HEAT_TRANSFER_COEFFICIENTS"
          },
          "refTemperature" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "heatTransferCoefficient" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalTransmittance"
          },
          "surfaceAreaDensity" : {
            "$ref" : "#/components/schemas/Dimensional_Absorptivity"
          },
          "heatDistribution" : {
            "title" : "Heat distribution",
            "type" : "string",
            "description" : "Sampling method for the field temperature (T) in T - Tref. This indicates whether the temperature (T) is averaged on the complete heat exchanger or sampled at each position.",
            "default" : "LOCAL",
            "enum" : [ "LOCAL", "AVERAGE" ]
          }
        },
        "additionalProperties" : false
      },
      "HeatExchangerPerformance" : {
        "title" : "Heat exchanger performance",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HeatExchangerPerformance",
            "default" : "HEAT_EXCHANGER_PERFORMANCE"
          },
          "refTemperature" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "performance" : {
            "$ref" : "#/components/schemas/DimensionalFunction_TotalThermalTransmittance"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_TotalThermalTransmittance" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_TotalThermalTransmittanceValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "W/K", "Btu/(s·°F)" ],
            "x-MissingConversions" : true
          }
        },
        "additionalProperties" : false
      },
      "TrAbsolutePowerSource" : {
        "title" : "Absolute Power Source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TrAbsolutePowerSource",
            "default" : "TR_ABSOLUTE_POWER_SOURCE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatFlux" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Power"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "TrSpecificPowerSource" : {
        "title" : "Specific Power Source",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TrSpecificPowerSource",
            "default" : "TR_SPECIFIC_POWER_SOURCE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatFlux" : {
            "$ref" : "#/components/schemas/DimensionalFunction_VolumetricPower"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "AMIRotatingZone" : {
        "title" : "AMI rotating zone",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AMIRotatingZone",
            "default" : "ARBITRARY_MESH_INTERFACE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "motionType" : {
            "$ref" : "#/components/schemas/OneOf_AMIRotatingZoneMotionType"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "x-conditionalHelp" : [ {
          "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,MULTIPHASE]" ]
        } ]
      },
      "OscillatingRotatingMotionType" : {
        "title" : "Oscillating rotating motion",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OscillatingRotatingMotionType",
            "default" : "OSCILLATING_ROTATING_MOTION"
          },
          "rotationCenter" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "amplitude" : {
            "$ref" : "#/components/schemas/DimensionalVector_Angle"
          },
          "angularVelocity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_RotationSpeed"
          }
        },
        "additionalProperties" : false
      },
      "RotatingMotionType" : {
        "title" : "Rotating motion",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RotatingMotionType",
            "default" : "ROTATING_MOTION"
          },
          "rotation" : {
            "$ref" : "#/components/schemas/OneOf_RotatingMotionTypeRotation"
          }
        },
        "additionalProperties" : false
      },
      "VectorRotation" : {
        "title" : "Vector rotation",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: VectorRotation",
            "default" : "VECTOR_ROTATION"
          },
          "rotationCenter" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "angularVelocity" : {
            "$ref" : "#/components/schemas/DimensionalVector_RotationSpeed"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector_RotationSpeed" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "rad/s", "°/s", "RPM" ]
          }
        },
        "additionalProperties" : false
      },
      "MRFRotatingZone" : {
        "title" : "MRF rotating zone",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MRFRotatingZone",
            "default" : "MULTI_REFERENCE_FRAME"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "origin" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "axis" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "angularVelocity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_RotationSpeed"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "x-conditionalHelp" : [ {
          "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,MULTIPHASE]" ]
        } ]
      },
      "LinearSBM" : {
        "title" : "Linear motion",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LinearSBM",
            "default" : "LINEAR_MOTION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "velocity" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          }
        },
        "additionalProperties" : false
      },
      "OscillatingRotatingSBM" : {
        "title" : "Oscillating rotating motion",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OscillatingRotatingSBM",
            "default" : "OSCILLATING_ROTATING_MOTION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "rotationCenter" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "amplitude" : {
            "$ref" : "#/components/schemas/DimensionalVector_Angle"
          },
          "angularVelocity" : {
            "$ref" : "#/components/schemas/Dimensional_RotationSpeed"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_RotationSpeed" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "rad/s", "°/s", "RPM" ]
          }
        },
        "additionalProperties" : false
      },
      "OscillatingLinearSBM" : {
        "title" : "Oscillating linear motion",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OscillatingLinearSBM",
            "default" : "OSCILLATING_LINEAR_MOTION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "amplitude" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "angularVelocity" : {
            "$ref" : "#/components/schemas/Dimensional_RotationSpeed"
          }
        },
        "additionalProperties" : false
      },
      "RotatingSBM" : {
        "title" : "Rotating motion",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RotatingSBM",
            "default" : "ROTATING_MOTION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "rotation" : {
            "$ref" : "#/components/schemas/OneOf_RotatingSBMRotation"
          }
        },
        "additionalProperties" : false
      },
      "ShipDesignAnalysisSBM" : {
        "title" : "Ship design analysis",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ShipDesignAnalysisSBM",
            "default" : "SHIP_DESIGN_ANALYSIS"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "centerOfGravity" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "modelScaleRatio" : {
            "title" : "Model scale ratio",
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1
          },
          "maxRollAmplitude" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "minRollAmplitude" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "heaveAmplitude" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "swayAmplitude" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "dampingCoefficient" : {
            "title" : "Damping coefficient",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1
          },
          "timePeriodForLiquid" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "naturalPeriodOfShip" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "referenceTimeStep" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "increaseInLiquidPerTimeStep" : {
            "title" : "Increase in liquid per time step",
            "type" : "number",
            "default" : -0.001
          }
        },
        "additionalProperties" : false
      },
      "StarThermalResistanceNetwork" : {
        "title" : "Star Network Resistance Model",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br>A <i>Thermal Resistance Network</i> can be used to approximate the effect of heat sources and heat transfer from that source to the surrounding domain without resolving the source geometry.  Select the top face of the body you want to assign. <p>The models for <b>Thermal resistance network</b> are as follows:</p><ul><li><b>Star Network Resistance Model:</b> defines a thermal resistance network consisting out of a top, a board, a board to interface and four side resistances. A power source is assigned to the body.</li><li><b>Two resistor Model:</b> defines a thermal resistance network consisting out of a top, a board and a board to interface resistance. A power source is assigned to the body.</li></ul> <br> <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/thermal-resistance-networks/' target='_blank'>Learn more</a>.\n\nSchema name: StarThermalResistanceNetwork",
            "default" : "STAR_NETWORK"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "resistanceTop" : {
            "$ref" : "#/components/schemas/Dimensional_ContactResistance"
          },
          "resistanceBottom" : {
            "$ref" : "#/components/schemas/Dimensional_ContactResistance"
          },
          "resistanceSides" : {
            "$ref" : "#/components/schemas/Dimensional_ContactResistance"
          },
          "resistanceInterface" : {
            "$ref" : "#/components/schemas/Dimensional_ContactResistance"
          },
          "networkPower" : {
            "$ref" : "#/components/schemas/Dimensional_Power"
          },
          "emissivity" : {
            "title" : "Emissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.9,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true" ]
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<br>A <i>Thermal Resistance Network</i> can be used to approximate the effect of heat sources and heat transfer from that source to the surrounding domain without resolving the source geometry.  Select the top face of the body you want to assign. <p>The models for <b>Thermal resistance network</b> are as follows:</p><ul><li><b>Star Network Resistance Model:</b> defines a thermal resistance network consisting out of a top, a board, a board to interface and four side resistances. A power source is assigned to the body.</li><li><b>Two resistor Model:</b> defines a thermal resistance network consisting out of a top, a board and a board to interface resistance. A power source is assigned to the body.</li></ul> <br> <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/thermal-resistance-networks/' target='_blank'>Learn more</a>."
      },
      "TwoResistorNetwork" : {
        "title" : "Two Resistor Model",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br>A <i>Thermal Resistance Network</i> can be used to approximate the effect of heat sources and heat transfer from that source to the surrounding domain without resolving the source geometry.  Select the top face of the body you want to assign. <p>The models for <b>Thermal resistance network</b> are as follows:</p><ul><li><b>Star Network Resistance Model:</b> defines a thermal resistance network consisting out of a top, a board, a board to interface and four side resistances. A power source is assigned to the body.</li><li><b>Two resistor Model:</b> defines a thermal resistance network consisting out of a top, a board and a board to interface resistance. A power source is assigned to the body.</li></ul> <br> <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/thermal-resistance-networks/' target='_blank'>Learn more</a>.\n\nSchema name: TwoResistorNetwork",
            "default" : "TWO_RESISTOR_NETWORK"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "resistanceTop" : {
            "$ref" : "#/components/schemas/Dimensional_ContactResistance"
          },
          "resistanceBottom" : {
            "$ref" : "#/components/schemas/Dimensional_ContactResistance"
          },
          "resistanceInterface" : {
            "$ref" : "#/components/schemas/Dimensional_ContactResistance"
          },
          "networkPower" : {
            "$ref" : "#/components/schemas/Dimensional_Power"
          },
          "emissivity" : {
            "title" : "Emissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.9,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true" ]
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<br>A <i>Thermal Resistance Network</i> can be used to approximate the effect of heat sources and heat transfer from that source to the surrounding domain without resolving the source geometry.  Select the top face of the body you want to assign. <p>The models for <b>Thermal resistance network</b> are as follows:</p><ul><li><b>Star Network Resistance Model:</b> defines a thermal resistance network consisting out of a top, a board, a board to interface and four side resistances. A power source is assigned to the body.</li><li><b>Two resistor Model:</b> defines a thermal resistance network consisting out of a top, a board and a board to interface resistance. A power source is assigned to the body.</li></ul> <br> <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/thermal-resistance-networks/' target='_blank'>Learn more</a>."
      },
      "FluidNumerics" : {
        "type" : "object",
        "properties" : {
          "relaxationType" : {
            "title" : "Relaxation type",
            "type" : "string",
            "default" : "MANUAL",
            "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == INCOMPRESSIBLE && algorithm != PISO", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT", "type == MULTIPHASE" ],
            "x-conditionalEnum" : [ {
              "value" : "AUTOMATIC",
              "when" : [ "type == INCOMPRESSIBLE && enableAdjointOptimization == false", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && timeDependency.type == STATIONARY" ]
            }, {
              "value" : "MANUAL"
            } ]
          },
          "relaxationFactor" : {
            "$ref" : "#/components/schemas/RelaxationFactor"
          },
          "diagonalRelaxationFactor" : {
            "$ref" : "#/components/schemas/RelaxationFactor"
          },
          "viscousWorkIncluded" : {
            "title" : "Include viscous work",
            "type" : "boolean",
            "description" : "Enabling this option makes the viscous work terms included everywhere in the domain.",
            "default" : false,
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isCompressible == true" ]
          },
          "radiationResolution" : {
            "title" : "Radiation resolution",
            "type" : "string",
            "default" : "MODERATE",
            "enum" : [ "COARSE", "MODERATE", "FINE" ],
            "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true" ]
          },
          "momentumPredictor" : {
            "title" : "Momentum predictor",
            "type" : "boolean",
            "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,MULTIPHASE,CONVECTIVE_HEAT_TRANSFER]", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == MULTIPHASE && useLocalTimeStepping == false", "type == COMPRESSIBLE", "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ],
              "default" : false
            }, {
              "when" : [ "type == MULTIPHASE && useLocalTimeStepping == true", "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && timeDependency.type == STATIONARY" ],
              "default" : true
            } ]
          },
          "transonic" : {
            "title" : "Transonic",
            "type" : "boolean",
            "default" : false,
            "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == TRANSIENT && isCompressible == true" ]
          },
          "numOuterCorrectors" : {
            "title" : "Number of outer correctors",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 3,
            "x-showWhen" : [ "type == MULTIPHASE", "type == INCOMPRESSIBLE && algorithm == PIMPLE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == MULTIPHASE" ],
              "default" : 6
            }, {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,COMPRESSIBLE]", "type == INCOMPRESSIBLE && algorithm == PIMPLE" ],
              "default" : 10
            } ]
          },
          "numCorrectors" : {
            "title" : "Number of correctors",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 4,
            "x-showWhen" : [ "type == MULTIPHASE", "type == INCOMPRESSIBLE && algorithm in [PIMPLE,PISO,ICO]", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,CONVECTIVE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == MULTIPHASE" ],
              "default" : 3
            }, {
              "when" : [ "type == INCOMPRESSIBLE && algorithm == PIMPLE" ],
              "default" : 2
            } ]
          },
          "numNonOrthogonalCorrectors" : {
            "title" : "Number of non-orthogonal correctors",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>The pressure equation is repeatedly solved based on the value of non-orthogonal correctors in the PISO/SIMPLE/PIMPLE algorithm. This may reduce the effect of bad mesh.</p>",
            "default" : 1,
            "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,INCOMPRESSIBLE,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
          },
          "smoothingParameter" : {
            "title" : "Smoothing parameter",
            "maximum" : 10000000,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.05,
            "x-showWhen" : [ "type == MULTIPHASE && useLocalTimeStepping == true" ]
          },
          "dampingCoefficient" : {
            "title" : "Damping coefficient",
            "maximum" : 10000000,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.5,
            "x-showWhen" : [ "type == MULTIPHASE && useLocalTimeStepping == true" ]
          },
          "numAlphaSpreadIterations" : {
            "title" : "Number of alpha spread iterations",
            "maximum" : 10000000,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 0,
            "x-showWhen" : [ "type == MULTIPHASE && useLocalTimeStepping == true" ]
          },
          "numAlphaSweepIterations" : {
            "title" : "Number of alpha sweep iterations",
            "maximum" : 10000000,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 0,
            "x-showWhen" : [ "type == MULTIPHASE && useLocalTimeStepping == true" ]
          },
          "evaluateTurbulenceOnlyOnFinalIteration" : {
            "title" : "Evaluate turbulence only on final iteration",
            "type" : "boolean",
            "default" : false,
            "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == TRANSIENT && isCompressible == true" ]
          },
          "pressureReferenceCell" : {
            "title" : "Pressure reference cell",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Enter the cell where you want to define reference pressure in the PISO/SIMPLE/PIMPLE algorithm.</p>",
            "default" : 0,
            "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,INCOMPRESSIBLE,MULTIPHASE]", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
          },
          "pressureReferenceValue" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "velocityLimit" : {
            "$ref" : "#/components/schemas/Dimensional_Speed"
          },
          "maxVoltageInitialIterations" : {
            "title" : "Maximum voltage iterations",
            "maximum" : 10000,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 200,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableJouleHeating == true", "type == EMBEDDED_BOUNDARY && enableJouleHeating == true" ]
          },
          "voltageInitialTolerance" : {
            "title" : "Voltage tolerance",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 1.0E-16,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1.0E-8,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableJouleHeating == true", "type == EMBEDDED_BOUNDARY && enableJouleHeating == true" ]
          },
          "residualControls" : {
            "$ref" : "#/components/schemas/ResidualControls"
          },
          "solvers" : {
            "$ref" : "#/components/schemas/FluidSolvers"
          },
          "schemes" : {
            "$ref" : "#/components/schemas/Schemes"
          },
          "stabilization" : {
            "$ref" : "#/components/schemas/Stabilization"
          }
        },
        "additionalProperties" : false
      },
      "RelaxationFactor" : {
        "type" : "object",
        "properties" : {
          "pressureField" : {
            "title" : "(P) Pressure field",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>With this parameter you can initialize the under-relaxation of a field or equation. The solver will dynamically adapt this factor to improve stability.</p>",
            "x-showWhen" : [ "type == INCOMPRESSIBLE && algorithm == PIMPLE", "type == INCOMPRESSIBLE && algorithm == SIMPLE && turbulenceModel in [NONE,KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE]", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT", "type == SIMERICS_ANALYSIS" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type != SIMERICS_ANALYSIS && timeDependency.type == TRANSIENT", "type != SIMERICS_ANALYSIS && timeDependency.type == STATIONARY && 2/relaxationType == AUTOMATIC" ],
              "default" : 0.7
            }, {
              "when" : [ "type != SIMERICS_ANALYSIS && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.3
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == relaxationFactor && isMultiphase == false" ],
              "default" : 0.0
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == relaxationFactor && isMultiphase == true" ],
              "default" : 0.3
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == diagonalRelaxationFactor" ],
              "default" : 0.3
            } ]
          },
          "pressureRghField" : {
            "title" : "(P) Modified pressure field",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type in [CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,MULTIPHASE,EMBEDDED_BOUNDARY]" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
              "default" : 0.3
            }, {
              "when" : [ "type == MULTIPHASE" ],
              "default" : 0.7
            } ]
          },
          "passiveScalarEquation" : {
            "title" : "(T*) Passive Scalar Equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "timeDependency.type == TRANSIENT" ],
              "default" : 1.0
            }, {
              "when" : [ "timeDependency.type == STATIONARY" ],
              "default" : 0.8
            } ]
          },
          "velocityEquation" : {
            "title" : "(U) Velocity equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>With this parameter you can initialize the under-relaxation of a field or equation. The solver will dynamically adapt this factor to improve stability.</p>",
            "x-showWhen" : [ "type == MULTIPHASE", "type in [CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == INCOMPRESSIBLE && algorithm == PIMPLE", "type == INCOMPRESSIBLE && algorithm == SIMPLE && turbulenceModel in [NONE,KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE]", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == STATIONARY && 2/relaxationType == AUTOMATIC" ],
              "default" : 0.01
            }, {
              "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE] && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL", "type in [EMBEDDED_BOUNDARY,COUPLED_CONJUGATE_HEAT_TRANSFER]", "type in [CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.7
            }, {
              "when" : [ "type == MULTIPHASE", "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ],
              "default" : 0.8
            } ]
          },
          "velocity" : {
            "title" : "(U) Velocity",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == relaxationFactor && isMultiphase == false" ],
              "default" : 0.0
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == relaxationFactor && isMultiphase == true" ],
              "default" : 0.3
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == diagonalRelaxationFactor" ],
              "default" : 0.3
            } ]
          },
          "temperatureEquation" : {
            "title" : "(T) Temperature equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false", "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == CONVECTIVE_HEAT_TRANSFER && 2/relaxationType == AUTOMATIC" ],
              "default" : 0.01
            }, {
              "when" : [ "type in [EMBEDDED_BOUNDARY,COUPLED_CONJUGATE_HEAT_TRANSFER]", "type == CONVECTIVE_HEAT_TRANSFER && 2/relaxationType == MANUAL" ],
              "default" : 0.8
            } ]
          },
          "temperatureField" : {
            "title" : "(T) Temperature field",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER" ],
              "default" : 0.8
            }, {
              "when" : [ "type == EMBEDDED_BOUNDARY" ],
              "default" : 1.0
            } ]
          },
          "densityField" : {
            "title" : "(ρ) Density field",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == true", "type == EMBEDDED_BOUNDARY && isCompressible == true" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "timeDependency.type == STATIONARY && 2/relaxationType == AUTOMATIC" ],
              "default" : 0.01
            }, {
              "when" : [ "timeDependency.type == TRANSIENT", "type != COMPRESSIBLE && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.8
            }, {
              "when" : [ "type == COMPRESSIBLE && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.1
            } ]
          },
          "enthalpyEquation" : {
            "title" : "(h) Enthalpy equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>With this parameter you can initialize the under-relaxation of a field or equation. The solver will dynamically adapt this factor to improve stability.</p>",
            "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "timeDependency.type == STATIONARY && 2/relaxationType == AUTOMATIC" ],
              "default" : 0.01
            }, {
              "when" : [ "timeDependency.type == TRANSIENT", "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.8
            }, {
              "when" : [ "type == COMPRESSIBLE && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.1
            } ]
          },
          "internalEnergyEquation" : {
            "title" : "(e) Internal energy equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>With this parameter you can initialize the under-relaxation of a field or equation. The solver will dynamically adapt this factor to improve stability.</p>",
            "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "timeDependency.type == STATIONARY && 2/relaxationType == AUTOMATIC" ],
              "default" : 0.01
            }, {
              "when" : [ "timeDependency.type == TRANSIENT", "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.8
            }, {
              "when" : [ "type == COMPRESSIBLE && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.1
            } ]
          },
          "turbulentKineticEnergyEquation" : {
            "title" : "(k) Turb. kinetic energy equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && turbulenceModel in [KEPSILON,KOMEGASST]", "type == MULTIPHASE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST]", "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE] && algorithm in [PIMPLE,SIMPLE]" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == STATIONARY && 2/relaxationType == AUTOMATIC" ],
              "default" : 0.01
            }, {
              "when" : [ "type in [EMBEDDED_BOUNDARY,COUPLED_CONJUGATE_HEAT_TRANSFER]", "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.3
            }, {
              "when" : [ "type == MULTIPHASE", "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ],
              "default" : 0.7
            } ]
          },
          "omegaDissipationRateEquation" : {
            "title" : "(ω) Specific dissipation rate equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && turbulenceModel == KOMEGASST", "type == MULTIPHASE && turbulenceModel in [KOMEGA,KOMEGASST]", "type == INCOMPRESSIBLE && turbulenceModel in [KOMEGA,KOMEGASST] && algorithm in [PIMPLE,SIMPLE]" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == STATIONARY && 2/relaxationType == AUTOMATIC" ],
              "default" : 0.01
            }, {
              "when" : [ "type in [EMBEDDED_BOUNDARY,COUPLED_CONJUGATE_HEAT_TRANSFER]", "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.3
            }, {
              "when" : [ "type == MULTIPHASE", "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ],
              "default" : 0.7
            } ]
          },
          "epsilonDissipationRateEquation" : {
            "title" : "(ε) Dissipation rate equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER] && turbulenceModel in [KEPSILON]", "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,REALIZABLEKE] && algorithm in [PIMPLE,SIMPLE]" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "timeDependency.type == STATIONARY && 2/relaxationType == AUTOMATIC" ],
              "default" : 0.01
            }, {
              "when" : [ "timeDependency.type == STATIONARY && 2/relaxationType == MANUAL" ],
              "default" : 0.3
            }, {
              "when" : [ "timeDependency.type == TRANSIENT", "type == MULTIPHASE" ],
              "default" : 0.7
            } ]
          },
          "turbulentKineticEnergy" : {
            "title" : "(k) Turb. kinetic energy",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && turbulenceModel != NONE" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == relaxationFactor" ],
              "default" : 0.0
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == diagonalRelaxationFactor" ],
              "default" : 0.3
            } ]
          },
          "turbulentEnergyDissipationRate" : {
            "title" : "(ε) Turb. energy dissipation rate",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && turbulenceModel != NONE" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == relaxationFactor" ],
              "default" : 0.0
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == diagonalRelaxationFactor" ],
              "default" : 0.3
            } ]
          },
          "nuTildaEquation" : {
            "title" : "(ῦ) nuTilda equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type == INCOMPRESSIBLE && algorithm in [PIMPLE,PISO] && turbulenceModel == SPALARTALLMARAS", "type == COMPRESSIBLE && turbulenceModel == SPALARTALLMARAS", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == SPALARTALLMARAS" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "timeDependency.type == STATIONARY" ],
              "default" : 0.3
            }, {
              "when" : [ "timeDependency.type == TRANSIENT", "type == MULTIPHASE" ],
              "default" : 0.7
            } ]
          },
          "netRadiativeHeatFluxField" : {
            "title" : "(Qr) Net radiative heat flux field",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
              "default" : 0.1
            }, {
              "when" : [ "type in [CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER]" ],
              "default" : 0.3
            } ]
          },
          "internalEnergy" : {
            "title" : "(e) Internal energy",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isCompressible == true" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == relaxationFactor && isMultiphase == false" ],
              "default" : 0.0
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == relaxationFactor && isMultiphase == true" ],
              "default" : 0.2
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && 1# == diagonalRelaxationFactor" ],
              "default" : 0.0
            } ]
          },
          "gasMixtureTransport" : {
            "title" : "(ṁ) Gas mixture transport",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0,
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMulticomponent == true" ]
          },
          "radiativeIntensityRayEquation" : {
            "title" : "(I) Radiative intensity ray equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.8,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true && radiationModel == FV_DOM", "type == EMBEDDED_BOUNDARY && enableRadiation == true" ]
          },
          "radiativeIntensityRayField" : {
            "title" : "(I) Radiative intensity ray field",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.8,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true && radiationModel == FV_DOM", "type == EMBEDDED_BOUNDARY && enableRadiation == true" ]
          },
          "specificHumidityEquation" : {
            "title" : "Specific humidity equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.7,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == true && enableHumidityModel == true", "type == EMBEDDED_BOUNDARY && isCompressible == true && enableHumidityModel == true" ]
          },
          "ageOfFluidEquation" : {
            "title" : "Age of fluid equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "x-showWhen" : [ "type in [INCOMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "timeDependency.type == TRANSIENT" ],
              "default" : 1.0
            }, {
              "when" : [ "timeDependency.type == STATIONARY" ],
              "default" : 0.8
            } ]
          },
          "voltageField" : {
            "title" : "(V) Voltage equation",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.5,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableJouleHeating == true", "type == EMBEDDED_BOUNDARY && enableJouleHeating == true" ]
          }
        },
        "additionalProperties" : false
      },
      "ResidualControls" : {
        "type" : "object",
        "properties" : {
          "velocity" : {
            "$ref" : "#/components/schemas/Tolerance"
          },
          "pressure" : {
            "$ref" : "#/components/schemas/Tolerance"
          },
          "pressureRgh" : {
            "$ref" : "#/components/schemas/Tolerance"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/Tolerance"
          },
          "turbulentKineticEnergy" : {
            "$ref" : "#/components/schemas/Tolerance"
          },
          "omegaDissipationRate" : {
            "$ref" : "#/components/schemas/Tolerance"
          },
          "epsilonDissipationRate" : {
            "$ref" : "#/components/schemas/Tolerance"
          }
        },
        "additionalProperties" : false
      },
      "Tolerance" : {
        "type" : "object",
        "properties" : {
          "absoluteTolerance" : {
            "title" : "Absolute tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Absolute tolerance is the measure of residual in the solution after the current iteration is solved. The solution is stopped when the absolute residual falls below this value.",
            "default" : 1.0E-5,
            "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]", "type == INCOMPRESSIBLE && algorithm in [PIMPLE,SIMPLE]", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == INCOMPRESSIBLE && timeDependency.type == STATIONARY" ],
              "default" : 1.0E-6
            } ]
          },
          "relativeTolerance" : {
            "title" : "Relative tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Relative tolerance is the ratio of current residual to the initial residual. The solution is stopped when the relative residual falls below this value.",
            "default" : 0.01,
            "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == INCOMPRESSIBLE && timeDependency.type == TRANSIENT && algorithm == PIMPLE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true && timeDependency.type == TRANSIENT" ]
          }
        },
        "additionalProperties" : false
      },
      "FluidSolvers" : {
        "type" : "object",
        "properties" : {
          "phaseFractionSolver" : {
            "$ref" : "#/components/schemas/MULESSolver"
          },
          "velocitySolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversVelocitySolver"
          },
          "velocityFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversVelocityFinalSolver"
          },
          "densitySolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversDensitySolver"
          },
          "densityFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversDensityFinalSolver"
          },
          "pressureSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversPressureSolver"
          },
          "pressureFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversPressureFinalSolver"
          },
          "temperatureSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversTemperatureSolver"
          },
          "temperatureFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversTemperatureFinalSolver"
          },
          "pressureRghSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversPressureRghSolver"
          },
          "pressureRghFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversPressureRghFinalSolver"
          },
          "solidEnthalpySolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversSolidEnthalpySolver"
          },
          "solidEnthalpyFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversSolidEnthalpyFinalSolver"
          },
          "enthalpySolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversEnthalpySolver"
          },
          "enthalpyFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversEnthalpyFinalSolver"
          },
          "internalEnergySolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversInternalEnergySolver"
          },
          "internalEnergyFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversInternalEnergyFinalSolver"
          },
          "turbulentKineticEnergySolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversTurbulentKineticEnergySolver"
          },
          "turbulentKineticEnergyFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversTurbulentKineticEnergyFinalSolver"
          },
          "nuTildaSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversNuTildaSolver"
          },
          "nuTildaFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversNuTildaFinalSolver"
          },
          "omegaDissipationRateSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversOmegaDissipationRateSolver"
          },
          "omegaDissipationRateFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversOmegaDissipationRateFinalSolver"
          },
          "epsilonDissipationRateSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversEpsilonDissipationRateSolver"
          },
          "epsilonDissipationRateFinalSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversEpsilonDissipationRateFinalSolver"
          },
          "passiveScalarSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversPassiveScalarSolver"
          },
          "radiativeIntensityRaySolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversRadiativeIntensityRaySolver"
          },
          "internalNetRadiativeHeatFluxSolver" : {
            "$ref" : "#/components/schemas/PBICGStabSolver"
          },
          "specificHumiditySolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversSpecificHumiditySolver"
          },
          "voltageSolver" : {
            "$ref" : "#/components/schemas/OneOf_FluidSolversVoltageSolver"
          }
        },
        "additionalProperties" : false
      },
      "MULESSolver" : {
        "title" : "MULES",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MULESSolver",
            "default" : "MULES_V7"
          },
          "alphaCorrectors" : {
            "title" : "Alpha correctors",
            "type" : "integer",
            "default" : 2
          },
          "alphaSubCycles" : {
            "title" : "Alpha sub cycles",
            "type" : "integer",
            "default" : 2
          },
          "compressionCoefficient" : {
            "title" : "Compression coefficient",
            "type" : "number",
            "default" : 1
          },
          "isotropicCompressionCoefficient" : {
            "title" : "Isotropic compression coefficient",
            "type" : "number",
            "default" : 0.25
          },
          "semiImplicit" : {
            "$ref" : "#/components/schemas/OneOf_MULESSolverSemiImplicit"
          }
        },
        "additionalProperties" : false
      },
      "FalseSemiImplicit" : {
        "title" : "No",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FalseSemiImplicit",
            "default" : "FALSE_SEMI_IMPLICIT"
          }
        },
        "additionalProperties" : false
      },
      "TrueSemiImplicit" : {
        "title" : "Yes",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TrueSemiImplicit",
            "default" : "TRUE_SEMI_IMPLICIT"
          },
          "limiterIterations" : {
            "title" : "Limiter iterations",
            "type" : "integer",
            "default" : 8
          },
          "compressionCorrection" : {
            "title" : "Compression correction",
            "type" : "boolean",
            "default" : true
          },
          "solver" : {
            "$ref" : "#/components/schemas/OneOf_TrueSemiImplicitSolver"
          }
        },
        "additionalProperties" : false
      },
      "PBICGSolver" : {
        "title" : "PBiCG",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PBICGSolver",
            "default" : "PBICG"
          },
          "absoluteTolerance" : {
            "title" : "Absolute tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the absolute tolerance for the residual. The convergence process will be stopped as soon as the residual falls below the absolute tolerance.</p>",
            "default" : 1.0E-5,
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# != temperatureSolver" ],
              "default" : 1.0E-8
            }, {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == temperatureSolver" ],
              "default" : 1.0E-6
            }, {
              "when" : [ "1# == passiveScalarSolver" ],
              "default" : 1.0E-8
            } ]
          },
          "relativeTolerance" : {
            "title" : "Relative tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Choose the relative tolerance for the residual. The convergence process will be stopped as soon as the ratio of current to initial residual falls below the relative tolerance.</p>",
            "x-conditionalDefaults" : [ {
              "when" : [ "1# in [velocitySolver,nuTildaSolver,nuTildaFinalSolver,turbulentKineticEnergySolver,epsilonDissipationRateSolver,turbulentKineticEnergyFinalSolver,epsilonDissipationRateFinalSolver,omegaDissipationRateSolver,omegaDissipationRateFinalSolver,enthalpySolver,internalEnergySolver,phaseFractionSolver,temperatureSolver,temperatureFinalSolver,passiveScalarSolver,radiativeIntensityRaySolver,specificHumiditySolver] && type in [INCOMPRESSIBLE,COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]", "type in [INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && 1# in [velocityFinalSolver,enthalpyFinalSolver,internalEnergyFinalSolver]" ],
              "default" : 0.01
            }, {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# != temperatureSolver" ],
              "default" : 0.01
            }, {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == temperatureSolver" ],
              "default" : 0.1
            }, {
              "when" : [ "type == COMPRESSIBLE && 1# in [velocityFinalSolver,enthalpyFinalSolver,internalEnergyFinalSolver]" ],
              "default" : 0
            } ]
          },
          "preconditioner" : {
            "$ref" : "#/components/schemas/OneOf_PBICGSolverPreconditioner"
          }
        },
        "additionalProperties" : false
      },
      "DILUPreconditioner" : {
        "title" : "DILU",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Diagonal incomplete lower-upper (ILU) algorithm for non-symmetric matrices without fill-in.\n\nSchema name: DILUPreconditioner",
            "default" : "DILU"
          }
        },
        "additionalProperties" : false,
        "description" : "Diagonal incomplete lower-upper (ILU) algorithm for non-symmetric matrices without fill-in."
      },
      "ILUCpPreconditioner" : {
        "title" : "ILUCP",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Crout's version of the incomplete lower-upper (ILU) algorithm with arbitrary level of fill-in.\n\nSchema name: ILUCpPreconditioner",
            "default" : "ILUCP"
          },
          "fillInLevel" : {
            "title" : "Fill in level",
            "maximum" : 4.0,
            "exclusiveMaximum" : false,
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Number of face-neighbour layers to fill in. Increasing the level of fill-in improves the performance of preconditioner at the expense of computational overhead.",
            "default" : 1
          }
        },
        "additionalProperties" : false,
        "description" : "Crout's version of the incomplete lower-upper (ILU) algorithm with arbitrary level of fill-in."
      },
      "SmoothSolver" : {
        "title" : "Smooth solver",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SmoothSolver",
            "default" : "SMOOTH"
          },
          "absoluteTolerance" : {
            "title" : "Absolute tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the absolute tolerance for the residual. The convergence process will be stopped as soon as the residual falls below the absolute tolerance.</p>",
            "x-conditionalDefaults" : [ {
              "when" : [ "1# in [phaseFractionSolver,passiveScalarSolver]" ],
              "default" : 1.0E-8
            }, {
              "when" : [ "type == INCOMPRESSIBLE && 1# == velocityFinalSolver", "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ],
              "default" : 1.0E-7
            }, {
              "when" : [ "type == MULTIPHASE", "type == INCOMPRESSIBLE && 1# != velocityFinalSolver", "type == INCOMPRESSIBLE && numOfPassiveSpecies == 0" ],
              "default" : 1.0E-6
            }, {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
              "default" : 1.0E-8
            } ]
          },
          "relativeTolerance" : {
            "title" : "Relative tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Choose the relative tolerance for the residual. The convergence process will be stopped as soon as the ratio of current to initial residual falls below the relative tolerance.</p>",
            "default" : 0.01,
            "x-conditionalDefaults" : [ {
              "when" : [ "1# == phaseFractionSolver" ],
              "default" : 0.01
            }, {
              "when" : [ "type == INCOMPRESSIBLE && 1# in [turbulentKineticEnergyFinalSolver,omegaDissipationRateFinalSolver]", "type == MULTIPHASE && 1# in [velocityFinalSolver,turbulentKineticEnergyFinalSolver,omegaDissipationRateFinalSolver]" ],
              "default" : 0.001
            }, {
              "when" : [ "type == INCOMPRESSIBLE && 1# == omegaDissipationRateFinalSolver && numOfPassiveSpecies > 0" ],
              "default" : 0.05
            } ]
          },
          "smoother" : {
            "title" : "Smoother",
            "type" : "string",
            "description" : "<p>Choose a smoother for your solver.</p>",
            "default" : "GAUSSSEIDEL",
            "enum" : [ "GAUSSSEIDEL", "SYMGAUSSSEIDEL", "DIC" ]
          },
          "numSweeps" : {
            "title" : "Number of sweeps",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the numbers of sweeps.</p>",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "PBICGStabSolver" : {
        "title" : "PBiCGStab",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PBICGStabSolver",
            "default" : "PBICGStab"
          },
          "absoluteTolerance" : {
            "title" : "Absolute tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the absolute tolerance for the residual. The convergence process will be stopped as soon as the residual falls below the absolute tolerance.</p>",
            "default" : 1.0E-8
          },
          "relativeTolerance" : {
            "title" : "Relative tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Choose the relative tolerance for the residual. The convergence process will be stopped as soon as the ratio of current to initial residual falls below the relative tolerance.</p>",
            "default" : 0.01
          },
          "preconditioner" : {
            "$ref" : "#/components/schemas/OneOf_PBICGStabSolverPreconditioner"
          }
        },
        "additionalProperties" : false
      },
      "DICPreconditioner" : {
        "title" : "DIC",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Diagonal incomplete Cholesky algorithm for symmetric matrices without fill-in.\n\nSchema name: DICPreconditioner",
            "default" : "DIC"
          }
        },
        "additionalProperties" : false,
        "description" : "Diagonal incomplete Cholesky algorithm for symmetric matrices without fill-in."
      },
      "GAMGSolver" : {
        "title" : "GAMG",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GAMGSolver",
            "default" : "GAMG"
          },
          "absoluteTolerance" : {
            "title" : "Absolute tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the absolute tolerance for the residual. The convergence process will be stopped as soon as the residual falls below the absolute tolerance.</p>",
            "x-conditionalDefaults" : [ {
              "when" : [ "type == MULTIPHASE && 1# in [pressureRghSolver,pressureRghFinalSolver]" ],
              "default" : 1.0E-8
            }, {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
              "default" : 1.0E-8
            }, {
              "when" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]", "type == INCOMPRESSIBLE && 1# == pressureSolver && numOfPassiveSpecies > 0" ],
              "default" : 1.0E-7
            }, {
              "when" : [ "type == MULTIPHASE && 1# != pressureRghSolver", "type == MULTIPHASE && 1# != pressureRghFinalSolver", "type == INCOMPRESSIBLE && numOfPassiveSpecies == 0", "type == INCOMPRESSIBLE && 1# != pressureSolver" ],
              "default" : 1.0E-6
            } ]
          },
          "relativeTolerance" : {
            "title" : "Relative tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Choose the relative tolerance for the residual. The convergence process will be stopped as soon as the ratio of current to initial residual falls below the relative tolerance.</p>",
            "x-conditionalDefaults" : [ {
              "when" : [ "type == INCOMPRESSIBLE && 1# == pressureSolver && timeDependency.type == TRANSIENT", "type == MULTIPHASE && 1# == pressureRghFinalSolver" ],
              "default" : 0.005
            }, {
              "when" : [ "type == INCOMPRESSIBLE && 1# != pressureSolver", "type == INCOMPRESSIBLE && timeDependency.type == STATIONARY" ],
              "default" : 0.001
            }, {
              "when" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == MULTIPHASE && 1# != pressureRghFinalSolver" ],
              "default" : 0.01
            } ]
          },
          "smoother" : {
            "title" : "Smoother",
            "type" : "string",
            "description" : "<p>Choose a smoother for your solver.</p>",
            "enum" : [ "GAUSSSEIDEL", "DIC" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "1# == voltageSolver" ],
              "default" : "DIC"
            }, {
              "when" : [ "1# != voltageSolver" ],
              "default" : "GAUSSSEIDEL"
            } ]
          },
          "numPreSweeps" : {
            "title" : "Number of pre sweeps",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [CONJUGATE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
              "default" : 1
            }, {
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER]" ],
              "default" : 2
            } ]
          },
          "numPostSweeps" : {
            "title" : "Number of post sweeps",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 1
          },
          "cacheAgglomerationOn" : {
            "title" : "Cache agglomeration on",
            "type" : "boolean",
            "default" : true
          },
          "numCellsCoarsestLevel" : {
            "title" : "Number of cells coarsest level",
            "minimum" : 2,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 100
          },
          "numMergeLevels" : {
            "title" : "Number of merge levels",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "PCGSolver" : {
        "title" : "PCG",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PCGSolver",
            "default" : "PCG"
          },
          "absoluteTolerance" : {
            "title" : "Absolute tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Define the absolute tolerance for the residual. The convergence process will be stopped as soon as the residual falls below the absolute tolerance.</p>",
            "x-conditionalDefaults" : [ {
              "when" : [ "1# == solidEnthalpySolver" ],
              "default" : 1.0E-5
            }, {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
              "default" : 1.0E-8
            }, {
              "when" : [ "type != COUPLED_CONJUGATE_HEAT_TRANSFER && type != EMBEDDED_BOUNDARY", "1# != solidEnthalpySolver" ],
              "default" : 1.0E-4
            } ]
          },
          "relativeTolerance" : {
            "title" : "Relative tolerance",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Choose the relative tolerance for the residual. The convergence process will be stopped as soon as the ratio of current to initial residual falls below the relative tolerance.</p>",
            "default" : 0.01
          },
          "preconditioner" : {
            "$ref" : "#/components/schemas/OneOf_PCGSolverPreconditioner"
          }
        },
        "additionalProperties" : false
      },
      "Schemes" : {
        "type" : "object",
        "properties" : {
          "flux" : {
            "$ref" : "#/components/schemas/FluxSchemes"
          },
          "timeDifferentiation" : {
            "$ref" : "#/components/schemas/TimeDifferentiationSchemes"
          },
          "spatialDiscretization" : {
            "$ref" : "#/components/schemas/SpatialDiscretizationSchemes"
          },
          "gradient" : {
            "$ref" : "#/components/schemas/GradientSchemes"
          },
          "divergence" : {
            "$ref" : "#/components/schemas/DivergenceSchemes"
          },
          "laplacian" : {
            "$ref" : "#/components/schemas/LaplacianSchemes"
          },
          "interpolation" : {
            "$ref" : "#/components/schemas/InterpolationSchemes"
          },
          "surfaceNormalGradient" : {
            "$ref" : "#/components/schemas/SurfaceNormalGradientSchemes"
          },
          "secondOrderConvection" : {
            "title" : "Second order convection",
            "type" : "boolean",
            "description" : "Whether to use second-order convection scheme, which is less stable but more accurate for a given mesh. If false, first-order accurate upwind scheme is used.",
            "default" : false,
            "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
          }
        },
        "additionalProperties" : false
      },
      "FluxSchemes" : {
        "type" : "object",
        "properties" : {
          "forDefault" : {
            "$ref" : "#/components/schemas/OneOf_FluxSchemesForDefault"
          }
        },
        "additionalProperties" : false
      },
      "TadmorFluxScheme" : {
        "title" : "Tadmor flux scheme",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TadmorFluxScheme",
            "default" : "TADMOR"
          }
        },
        "additionalProperties" : false
      },
      "KurganovFluxScheme" : {
        "title" : "Kurganov",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: KurganovFluxScheme",
            "default" : "KURGANOV"
          }
        },
        "additionalProperties" : false
      },
      "TimeDifferentiationSchemes" : {
        "type" : "object",
        "properties" : {
          "forDefault" : {
            "$ref" : "#/components/schemas/OneOf_TimeDifferentiationSchemesForDefault"
          },
          "secondOrderScheme" : {
            "title" : "Second order scheme",
            "type" : "boolean",
            "default" : false,
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS" ]
          }
        },
        "additionalProperties" : false
      },
      "EulerTimeDifferentiationScheme" : {
        "title" : "Euler",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: EulerTimeDifferentiationScheme",
            "default" : "EULER"
          }
        },
        "additionalProperties" : false
      },
      "LocalEulerTimeDifferentiationScheme" : {
        "title" : "Local euler",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LocalEulerTimeDifferentiationScheme",
            "default" : "LOCAL_EULER"
          }
        },
        "additionalProperties" : false
      },
      "SteadystateTimeDifferentiationScheme" : {
        "title" : "Steady-state",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SteadystateTimeDifferentiationScheme",
            "default" : "STEADYSTATE"
          }
        },
        "additionalProperties" : false
      },
      "SpatialDiscretizationSchemes" : {
        "type" : "object",
        "properties" : {
          "velocity" : {
            "$ref" : "#/components/schemas/OneOf_SpatialDiscretizationSchemesVelocity"
          },
          "density" : {
            "$ref" : "#/components/schemas/OneOf_SpatialDiscretizationSchemesDensity"
          },
          "turbulentKineticEnergy" : {
            "$ref" : "#/components/schemas/OneOf_SpatialDiscretizationSchemesTurbulentKineticEnergy"
          },
          "turbulentEnergyDissipationRate" : {
            "$ref" : "#/components/schemas/OneOf_SpatialDiscretizationSchemesTurbulentEnergyDissipationRate"
          },
          "volumeOfFluid" : {
            "$ref" : "#/components/schemas/OneOf_SpatialDiscretizationSchemesVolumeOfFluid"
          },
          "internalEnergy" : {
            "$ref" : "#/components/schemas/OneOf_SpatialDiscretizationSchemesInternalEnergy"
          },
          "gasMixtureTransport" : {
            "$ref" : "#/components/schemas/OneOf_SpatialDiscretizationSchemesGasMixtureTransport"
          }
        },
        "additionalProperties" : false
      },
      "FirstOrderUpwindSpatialScheme" : {
        "title" : "Upwind",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FirstOrderUpwindSpatialScheme",
            "default" : "UPWIND_1ST"
          }
        },
        "additionalProperties" : false
      },
      "SecondOrderUpwindSpatialScheme" : {
        "title" : "Second order upwind",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SecondOrderUpwindSpatialScheme",
            "default" : "UPWIND_2ND"
          }
        },
        "additionalProperties" : false
      },
      "CentralDifferenceSpatialScheme" : {
        "title" : "Central difference",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CentralDifferenceSpatialScheme",
            "default" : "CENTRAL_DIFFERENCE"
          }
        },
        "additionalProperties" : false
      },
      "HighResolutionSpatialScheme" : {
        "title" : "High resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HighResolutionSpatialScheme",
            "default" : "HIGH_RESOLUTION"
          }
        },
        "additionalProperties" : false
      },
      "GradientSchemes" : {
        "type" : "object",
        "properties" : {
          "forDefault" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesForDefault"
          },
          "grad_pressure" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_pressure"
          },
          "grad_velocity" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_velocity"
          },
          "grad_pressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_pressureRgh"
          },
          "grad_density" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_density"
          },
          "grad_enthalpy" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_enthalpy"
          },
          "grad_internalEnergy" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_internalEnergy"
          },
          "grad_turbulentKineticEnergy" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_turbulentKineticEnergy"
          },
          "grad_epsilonDissipationRate" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_epsilonDissipationRate"
          },
          "grad_omegaDissipationRate" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_omegaDissipationRate"
          },
          "grad_nuTilda" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_nuTilda"
          },
          "grad_temperature" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_temperature"
          },
          "grad_rhok" : {
            "$ref" : "#/components/schemas/OneOf_GradientSchemesGrad_rhok"
          }
        },
        "additionalProperties" : false
      },
      "GaussLinearGradientScheme" : {
        "title" : "Gauss linear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLinearGradientScheme",
            "default" : "GAUSS_LINEAR"
          }
        },
        "additionalProperties" : false
      },
      "CelllimitedGaussLinearGradientScheme" : {
        "title" : "Celllimited Gauss linear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CelllimitedGaussLinearGradientScheme",
            "default" : "CELLLIMITED_GAUSS_LINEAR"
          },
          "limiterCoefficient" : {
            "title" : "Limiter coefficient",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "This property defines a limiter coefficient for the scheme. 1 ensures boundedness while 0 applies no limiting.",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "CelllimitedLeastSquaresGradientScheme" : {
        "title" : "Celllimited leastSquares",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CelllimitedLeastSquaresGradientScheme",
            "default" : "CELLLIMITED_LEASTSQUARES"
          },
          "limiterCoefficient" : {
            "title" : "Limiter coefficient",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "This property defines a limiter coefficient for the scheme. 1 ensures boundedness while 0 applies no limiting.",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "FourthGradientScheme" : {
        "title" : "Fourth gradient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FourthGradientScheme",
            "default" : "FOURTH"
          }
        },
        "additionalProperties" : false
      },
      "LeastsquaresGradientScheme" : {
        "title" : "Least squares",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LeastsquaresGradientScheme",
            "default" : "LEASTSQUARES"
          }
        },
        "additionalProperties" : false
      },
      "DivergenceSchemes" : {
        "type" : "object",
        "properties" : {
          "forDefault" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesForDefault"
          },
          "div_Phi_velocity" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_velocity"
          },
          "div_Phi_kineticEnergy" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_kineticEnergy"
          },
          "div_Phi_enthalpy" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_enthalpy"
          },
          "div_Phi_internalEnergy" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_internalEnergy"
          },
          "div_Phiv_pressure" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phiv_pressure"
          },
          "div_Phi_turbulentKineticEnergy" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_turbulentKineticEnergy"
          },
          "div_NuEff_dev_T_grad_velocity" : {
            "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
          },
          "div_MuEff_dev2_T_grad_velocity" : {
            "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
          },
          "div_Phi_omegaDissipationRate" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_omegaDissipationRate"
          },
          "div_Phi_epsilonDissipationRate" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_epsilonDissipationRate"
          },
          "div_R" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_R"
          },
          "div_Phi_R" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_R"
          },
          "div_Phi_nuTilda" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_nuTilda"
          },
          "div_Phi_temperature" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_temperature"
          },
          "div_Phi_passiveScalar" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_Phi_passiveScalar"
          },
          "div_tauMC" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_tauMC"
          },
          "div_phid_pressure" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_phid_pressure"
          },
          "div_velocity" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_velocity"
          },
          "div_phi_Ekp" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_phi_Ekp"
          },
          "div_phirb_alpha" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_phirb_alpha"
          },
          "div_muEff_dev_T_grad_velocity" : {
            "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
          },
          "div_phi_alpha" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_phi_alpha"
          },
          "div_rhoPhi_velocity" : {
            "$ref" : "#/components/schemas/OneOf_DivergenceSchemesDiv_rhoPhi_velocity"
          }
        },
        "additionalProperties" : false
      },
      "GaussLinearDivergenceScheme" : {
        "title" : "Gauss linear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLinearDivergenceScheme",
            "default" : "GAUSS_LINEAR"
          }
        },
        "additionalProperties" : false
      },
      "GaussLinearUpwindVUnlimitedDivergenceScheme" : {
        "title" : "Gauss linear upwind v unlimited",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLinearUpwindVUnlimitedDivergenceScheme",
            "default" : "GAUSS_LINEARUPWINDV_UNLIMITED"
          },
          "limiterCoefficient" : {
            "title" : "Limiter coefficient",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "This property defines a limiter coefficient for the scheme. 1 ensures boundedness while 0 applies no limiting.",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "GaussLinearUpwindUnlimitedDivergenceScheme" : {
        "title" : "Gauss linear upwind unlimited",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLinearUpwindUnlimitedDivergenceScheme",
            "default" : "GAUSS_LINEARUPWIND_UNLIMITED"
          }
        },
        "additionalProperties" : false
      },
      "GaussLinearUpwindLimitedGradDivergenceScheme" : {
        "title" : "Gauss linear upwind limited grad",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLinearUpwindLimitedGradDivergenceScheme",
            "default" : "GAUSS_LINEARUPWIND_LIMITEDGRAD"
          }
        },
        "additionalProperties" : false
      },
      "GaussLimitedLinear1DivergenceScheme" : {
        "title" : "Gauss limited linear 1",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLimitedLinear1DivergenceScheme",
            "default" : "GAUSS_LIMITEDLINEAR_1"
          }
        },
        "additionalProperties" : false
      },
      "GaussLimitedLinearV1DivergenceScheme" : {
        "title" : "Gauss limited linear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLimitedLinearV1DivergenceScheme",
            "default" : "GAUSS_LIMITEDLINEARV_1"
          }
        },
        "additionalProperties" : false
      },
      "BoundedGaussUpwindDivergenceScheme" : {
        "title" : "Bounded Gauss upwind",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: BoundedGaussUpwindDivergenceScheme",
            "default" : "BOUNDED_GAUSS_UPWIND"
          }
        },
        "additionalProperties" : false
      },
      "GaussUpwindDivergenceScheme" : {
        "title" : "Gauss upwind",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussUpwindDivergenceScheme",
            "default" : "GAUSS_UPWIND"
          }
        },
        "additionalProperties" : false
      },
      "GaussVanleerDivergenceScheme" : {
        "title" : "Gauss vanLeer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussVanleerDivergenceScheme",
            "default" : "GAUSS_VANLEER"
          }
        },
        "additionalProperties" : false
      },
      "GaussLinearUpwindVGradUDivergenceScheme" : {
        "title" : "Gauss linear upwind v ∇U ",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLinearUpwindVGradUDivergenceScheme",
            "default" : "GAUSS_LINEARUPWINDV_GRAD_U_"
          }
        },
        "additionalProperties" : false
      },
      "GaussInterfaceCompressionDivergenceScheme" : {
        "title" : "Gauss interface compression",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussInterfaceCompressionDivergenceScheme",
            "default" : "GAUSS_INTERFACECOMPRESSION"
          }
        },
        "additionalProperties" : false
      },
      "LaplacianSchemes" : {
        "type" : "object",
        "properties" : {
          "forDefault" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesForDefault"
          },
          "laplacian_NuEff_velocity" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_NuEff_velocity"
          },
          "laplacian_1A_U_pressure" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_1A_U_pressure"
          },
          "laplacian_Nu_velocity" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_Nu_velocity"
          },
          "laplacian_DREff_R" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_DREff_R"
          },
          "laplacian_DnuTildaEff_nuTilda" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_DnuTildaEff_nuTilda"
          },
          "laplacian_DkEff_turbulentKineticEnergy" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_DkEff_turbulentKineticEnergy"
          },
          "laplacian_alphaEff_enthalpy" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_alphaEff_enthalpy"
          },
          "laplacian_alpha_enthalpy" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_alpha_enthalpy"
          },
          "laplacian_muEff_velocity" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_muEff_velocity"
          },
          "laplacian_alphaEff_internalEnergy" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_alphaEff_internalEnergy"
          },
          "laplacian_rhorAUf_pressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_rhorAUf_pressureRgh"
          },
          "laplacian_DepsilonEff_epsilonDissipationRate" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_DepsilonEff_epsilonDissipationRate"
          },
          "laplacian_DomegaEff_omegaDissipationRate" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_DomegaEff_omegaDissipationRate"
          },
          "laplacian_rAUf_pressure" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_rAUf_pressure"
          },
          "laplacian_DT_passiveScalar" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_DT_passiveScalar"
          },
          "laplacian_Dp_pressure" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_Dp_pressure"
          },
          "laplacian_rhorAUf_pressure" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_rhorAUf_pressure"
          },
          "laplacian_rho_1_A_U_pressure" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_rho_1_A_U_pressure"
          },
          "laplacian_mut_velocity" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_mut_velocity"
          },
          "laplacian_alphaEff_temperature" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_alphaEff_temperature"
          },
          "laplacian_rAUf_pressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_LaplacianSchemesLaplacian_rAUf_pressureRgh"
          }
        },
        "additionalProperties" : false
      },
      "GaussLinearCorrectedLaplacianScheme" : {
        "title" : "Gauss linear corrected",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLinearCorrectedLaplacianScheme",
            "default" : "GAUSS_LINEAR_CORRECTED"
          }
        },
        "additionalProperties" : false
      },
      "GaussLinearLimitedCorrectedLaplacianScheme" : {
        "title" : "Gauss linear limited corrected",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLinearLimitedCorrectedLaplacianScheme",
            "default" : "GAUSS_LINEAR_LIMITED_CORRECTED"
          },
          "limiterCoefficient" : {
            "title" : "Limiter coefficient",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "This property defines a limiter coefficient for the scheme:<ul><li><strong>0</strong>: no correction, equivalent to the uncorrected scheme</li><li><strong>1</strong>: full non-orthogonal correction applied</li><li><strong>0.5</strong>: non-orthogonal contribution does not exceed the orthogonal part</li></ul>",
            "default" : 0.5,
            "x-conditionalDefaults" : [ {
              "when" : [ "type == CONJUGATE_HEAT_TRANSFER" ],
              "default" : 0.33
            } ]
          }
        },
        "additionalProperties" : false
      },
      "GaussLinearUncorrectedLaplacianScheme" : {
        "title" : "Gauss linear uncorrected",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GaussLinearUncorrectedLaplacianScheme",
            "default" : "GAUSS_LINEAR_UNCORRECTED"
          }
        },
        "additionalProperties" : false
      },
      "InterpolationSchemes" : {
        "type" : "object",
        "properties" : {
          "forDefault" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesForDefault"
          },
          "interpolate_HbyA" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_HbyA"
          },
          "interpolate_velocity" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_velocity"
          },
          "interpolate_kappa" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_kappa"
          },
          "interpolate_rho" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_rho"
          },
          "interpolate_thermo_rho_Cp" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_thermo_rho_Cp"
          },
          "interpolate_map_Kappa" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_map_Kappa"
          },
          "interpolate_rho_Hbya" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_rho_Hbya"
          },
          "interpolate_rho_0_velocity0" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_rho_0_velocity0"
          },
          "interpolate_grad_enthalpy" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_grad_enthalpy"
          },
          "interpolate_rho_rAU" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_rho_rAU"
          },
          "interpolate_rAU" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_rAU"
          },
          "interpolate_velocity0" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesInterpolate_velocity0"
          },
          "reconstruct_velocity" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesReconstruct_velocity"
          },
          "reconstruct_temperature" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesReconstruct_temperature"
          },
          "reconstruct_rho" : {
            "$ref" : "#/components/schemas/OneOf_InterpolationSchemesReconstruct_rho"
          }
        },
        "additionalProperties" : false
      },
      "CubicInterpolationScheme" : {
        "title" : "Cubic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CubicInterpolationScheme",
            "default" : "CUBIC"
          }
        },
        "additionalProperties" : false
      },
      "LinearInterpolationScheme" : {
        "title" : "Linear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LinearInterpolationScheme",
            "default" : "LINEAR"
          }
        },
        "additionalProperties" : false
      },
      "SurfaceNormalGradientSchemes" : {
        "type" : "object",
        "properties" : {
          "forDefault" : {
            "$ref" : "#/components/schemas/OneOf_SurfaceNormalGradientSchemesForDefault"
          },
          "surfaceNormalGradient_rho" : {
            "$ref" : "#/components/schemas/OneOf_SurfaceNormalGradientSchemesSurfaceNormalGradient_rho"
          },
          "surfaceNormalGradient_pressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_SurfaceNormalGradientSchemesSurfaceNormalGradient_pressureRgh"
          },
          "surfaceNormalGradient_rhok" : {
            "$ref" : "#/components/schemas/OneOf_SurfaceNormalGradientSchemesSurfaceNormalGradient_rhok"
          }
        },
        "additionalProperties" : false
      },
      "CorrectedSurfaceNormalGradientScheme" : {
        "title" : "Corrected",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CorrectedSurfaceNormalGradientScheme",
            "default" : "CORRECTED"
          }
        },
        "additionalProperties" : false
      },
      "UncorrectedSurfaceNormalGradientScheme" : {
        "title" : "Uncorrected",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: UncorrectedSurfaceNormalGradientScheme",
            "default" : "UNCORRECTED"
          }
        },
        "additionalProperties" : false
      },
      "LimitedSurfaceNormalGradientScheme" : {
        "title" : "Limited",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LimitedSurfaceNormalGradientScheme",
            "default" : "LIMITED"
          },
          "limiterCoefficient" : {
            "title" : "Limiter coefficient",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "This property defines a limiter coefficient for the scheme:<ul><li><strong>0</strong>: no correction, equivalent to the uncorrected scheme</li><li><strong>1</strong>: full non-orthogonal correction applied</li><li><strong>0.5</strong>: non-orthogonal contribution does not exceed the orthogonal part</li></ul>",
            "default" : 0.5
          }
        },
        "additionalProperties" : false
      },
      "Stabilization" : {
        "title" : "Stabilization",
        "type" : "object",
        "properties" : {
          "fieldLimits" : {
            "$ref" : "#/components/schemas/FieldLimits"
          }
        },
        "additionalProperties" : false
      },
      "FieldLimits" : {
        "title" : "Field limits",
        "type" : "object",
        "properties" : {
          "lowerDensityBound" : {
            "$ref" : "#/components/schemas/Dimensional_Density"
          },
          "upperDensityBound" : {
            "$ref" : "#/components/schemas/Dimensional_Density"
          },
          "lowerPressureBound" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "upperPressureBound" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "lowerTemperatureBound" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "upperTemperatureBound" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "FluidSimulationControl" : {
        "type" : "object",
        "properties" : {
          "endTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "adjointEndTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "numberOfIterations" : {
            "title" : "Number of iterations",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "This represents the total number of iterations at which the simulation will terminate. No further iterations will be performed beyond this point. <a href='https://www.simscale.com/docs/simulation-setup/simulation-control/' target='_blank'>Learn more</a>.",
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == SIMERICS_ANALYSIS && timeDependency.type == TRANSIENT && isMultiphase == true" ],
              "default" : 10
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && timeDependency.type == TRANSIENT && isMultiphase == false" ],
              "default" : 25
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && timeDependency.type == STATIONARY" ],
              "default" : 1000
            } ]
          },
          "deltaT" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "variableDeltaT" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Time"
          },
          "adjustableTimestep" : {
            "$ref" : "#/components/schemas/OneOf_FluidSimulationControlAdjustableTimestep"
          },
          "writeControl" : {
            "$ref" : "#/components/schemas/OneOf_FluidSimulationControlWriteControl"
          },
          "relativeConvergenceCriteria" : {
            "title" : "Convergence criteria",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<b>Steady-state simulation:</b> This represents the relative error residuals that once attained by the solver the simulation is considered to be converged and will stop. The recommended value is 0.001.<br> <b>Transient simulation:</b> This represents the relative error residuals that once attained by the solver the simulation will move to the next time-step regardless of the <i>Number of iterations</i>. The recommended value is 0.1.</br> <br> <b>Please note: </b>Relative residual is defined as the residual in the current iteration divided by the maximum value of residual calculated up to that point.</br> <br> <b>Please note: </b>Lower convergence criterion is demanded for <b>Steady-state simulations</b> because the initial guess is typically farther from the correct solution.</br>",
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS" ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == SIMERICS_ANALYSIS && timeDependency.type == TRANSIENT" ],
              "default" : 0.1
            }, {
              "when" : [ "type == SIMERICS_ANALYSIS && timeDependency.type == STATIONARY" ],
              "default" : 0.001
            } ]
          },
          "numProcessors" : {
            "title" : "Number of processors",
            "maximum" : 192,
            "exclusiveMaximum" : false,
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Selecting more processor cores will speed up the simulation process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/simulation-control-fluid/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "default" : -1,
            "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,SIMERICS_ANALYSIS]" ],
            "x-conditionalEnum" : [ {
              "value" : -1,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : -1,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 1,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : 1,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 2,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : 2,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 4,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : 4,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 8,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : 8,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 16,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : 16,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 32,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : 32,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 48,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 64,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : 64,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 96,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : 96,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 128,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            }, {
              "value" : 192,
              "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
            }, {
              "value" : 192,
              "when" : [ "type == SIMERICS_ANALYSIS" ]
            } ]
          },
          "maxRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "velocityScaling" : {
            "title" : "Velocity scaling",
            "maximum" : 0.25,
            "exclusiveMaximum" : false,
            "minimum" : 0.025,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>It affects the stability of the simulation. The default value of 0.1 is a good compromise between accuracy and computational requirements. Lower values of this parameter might increase the stability of the simulation at the cost of higher computational time.</p>",
            "default" : 0.1,
            "x-showWhen" : [ "type == INCOMPRESSIBLE_PACEFISH" ]
          },
          "potentialFoamInitialization" : {
            "title" : "Potential flow initialization",
            "type" : "boolean",
            "description" : "This setting activates the solution of a potential flow field. The potential flow is used as initial condition for the actual simulation. This can accelerate convergence and improve stability during the first time steps. If you experience stability problems, this setting may bring some improvement.",
            "default" : false,
            "x-showWhen" : [ "type in [INCOMPRESSIBLE,MULTIPHASE]", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [NONE,KEPSILON,KOMEGASST]" ]
          },
          "decomposeAlgorithm" : {
            "$ref" : "#/components/schemas/OneOf_FluidSimulationControlDecomposeAlgorithm"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_Time" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_TimeValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "s" ]
          }
        },
        "additionalProperties" : false
      },
      "InactiveAdjustableTimestep" : {
        "title" : "False",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option activates an adjustable time step. The time step is being modified according to the Courant number.\n\nSchema name: InactiveAdjustableTimestep",
            "default" : "INACTIVE_TIMESTEP"
          }
        },
        "additionalProperties" : false,
        "description" : "This option activates an adjustable time step. The time step is being modified according to the Courant number."
      },
      "ActiveAdjustableTimestep" : {
        "title" : "True",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option activates an adjustable time step. The time step is being modified according to the Courant number.\n\nSchema name: ActiveAdjustableTimestep",
            "default" : "ACTIVE_TIMESTEP"
          },
          "maximalCourantNumber" : {
            "title" : "Maximal Courant number",
            "type" : "number",
            "description" : "This option defines a maximum Courant number. The resulting time step should resolve relevant transient effects with at least 100 steps. <br><b>Transient multiphase simulations</b>: Maximum Courant number may not be greater than 1. Values of 0.5-0.7 are recommended for many cases.",
            "default" : 0.5,
            "x-conditionalDefaults" : [ {
              "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,COMPRESSIBLE]", "type == INCOMPRESSIBLE && algorithm == PIMPLE" ],
              "default" : 100
            } ]
          },
          "maximalStep" : {
            "title" : "Maximal step",
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "This option defines a maximum time step length which may not be exceeded when the time step is adapted during runtime.",
            "default" : 1
          },
          "maxAlphaCo" : {
            "title" : "Max alpha co",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Define a maximum Courant number based on the interface velocity.",
            "default" : 0.5,
            "x-showWhen" : [ "type == MULTIPHASE" ]
          }
        },
        "additionalProperties" : false,
        "description" : "This option activates an adjustable time step. The time step is being modified according to the Courant number."
      },
      "TimeStepWriteControl" : {
        "title" : "Time step",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option controls how the simulation results are written and how frequently.\n\nSchema name: TimeStepWriteControl",
            "default" : "TIME_STEP"
          },
          "writeInterval" : {
            "title" : "Write interval",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Specify an interval value that defines the number of time steps between two writes of the result.",
            "x-conditionalDefaults" : [ {
              "when" : [ "type == INCOMPRESSIBLE && timeDependency.type == TRANSIENT && 2# == simulationControl", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && 2# == simulationControl", "type == CONJUGATE_HEAT_TRANSFER && timeDependency.type == TRANSIENT && 2# == simulationControl", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == TRANSIENT && 2# == simulationControl", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && timeDependency.type == TRANSIENT && 2# == simulationControl", "type == EMBEDDED_BOUNDARY && timeDependency.type == TRANSIENT && 2# == simulationControl", "type == MULTIPHASE && 2# == simulationControl", "type == SIMERICS_ANALYSIS && 2# == simulationControl" ],
              "default" : 50
            }, {
              "when" : [ "type == INCOMPRESSIBLE && timeDependency.type == STATIONARY && 2# == simulationControl", "type == COMPRESSIBLE && timeDependency.type == STATIONARY && 2# == simulationControl", "type == CONJUGATE_HEAT_TRANSFER && timeDependency.type == STATIONARY && 2# == simulationControl", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == STATIONARY && 2# == simulationControl", "type == MULTIPHASE && 2# == simulationControl", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && timeDependency.type == STATIONARY && 2# == simulationControl", "type == EMBEDDED_BOUNDARY && timeDependency.type == STATIONARY && 2# == simulationControl" ],
              "default" : 1000
            }, {
              "when" : [ "2# != simulationControl", "2/type in [FORCES_AND_MOMENTS,FORCE_AND_MOMENT_COEFFICIENTS,AREA_AVERAGE,AREA_INTEGRAL,PROBE_POINTS]", "type == ELECTROMAGNETIC_ANALYSIS" ],
              "default" : 1
            } ]
          }
        },
        "additionalProperties" : false,
        "description" : "This option controls how the simulation results are written and how frequently."
      },
      "ClockTimeWriteControl" : {
        "title" : "Clock time",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option controls how the simulation results are written and how frequently.\n\nSchema name: ClockTimeWriteControl",
            "default" : "CLOCK_TIME"
          },
          "writeInterval" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false,
        "description" : "This option controls how the simulation results are written and how frequently."
      },
      "RunTimeWriteControl" : {
        "title" : "Runtime",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option controls how the simulation results are written and how frequently.\n\nSchema name: RunTimeWriteControl",
            "default" : "RUNTIME"
          },
          "writeInterval" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false,
        "description" : "This option controls how the simulation results are written and how frequently."
      },
      "CpuTimeWriteControl" : {
        "title" : "CPU time",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option controls how the simulation results are written and how frequently.\n\nSchema name: CpuTimeWriteControl",
            "default" : "CPU_TIME"
          },
          "writeInterval" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false,
        "description" : "This option controls how the simulation results are written and how frequently."
      },
      "AdjustableRuntimeWriteControl" : {
        "title" : "Adjustable runtime",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option controls how the simulation results are written and how frequently.\n\nSchema name: AdjustableRuntimeWriteControl",
            "default" : "ADJUSTABLE_RUNTIME"
          },
          "writeInterval" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false,
        "description" : "This option controls how the simulation results are written and how frequently."
      },
      "NumberIterationsWriteControl" : {
        "title" : "Iterations",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option controls how the simulation results are written and how frequently.\n\nSchema name: NumberIterationsWriteControl",
            "default" : "NUMBER_OF_ITERATIONS_STEADY_STATE"
          },
          "writeInterval" : {
            "title" : "Write interval",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Specify an interval value that defines the number of iterations between two writes of the result.",
            "default" : 1000
          }
        },
        "additionalProperties" : false,
        "description" : "This option controls how the simulation results are written and how frequently."
      },
      "ScotchDecomposeAlgorithm" : {
        "title" : "Scotch",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ScotchDecomposeAlgorithm",
            "default" : "SCOTCH"
          }
        },
        "additionalProperties" : false
      },
      "HierarchicalDecomposeAlgorithm" : {
        "title" : "Hierarchical",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HierarchicalDecomposeAlgorithm",
            "default" : "HIERARCHICAL"
          },
          "decompositionOrder" : {
            "title" : "Decomposition order",
            "type" : "string",
            "description" : "<p>Choose the order of domain decomposition .</p>",
            "default" : "XYZ",
            "enum" : [ "XYZ", "XZY", "YXZ", "YZX", "ZXY", "ZYX" ]
          },
          "delta" : {
            "title" : "Delta",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Delta is cell skew factor. It represents the cell skewness allowed at the decomposed domain boundaries and is generally kept below 10^{-2}. <a href='https://www.simscale.com/docs/simulation-setup/simulation-control/' target='_blank'>Learn more</a>.",
            "default" : 0.01
          },
          "numSubdomainX" : {
            "title" : "Number of subdomain x",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the number of subdomains the mesh is split into in the specific direction.</p>",
            "default" : 1
          },
          "numSubdomainY" : {
            "title" : "Number of subdomain y",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the number of subdomains the mesh is split into in the specific direction.</p>",
            "default" : 1
          },
          "numSubdomainZ" : {
            "title" : "Number of subdomain z",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the number of subdomains the mesh is split into in the specific direction.</p>",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "SimpleDecomposeAlgorithm" : {
        "title" : "Simple",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SimpleDecomposeAlgorithm",
            "default" : "SIMPLE"
          },
          "delta" : {
            "title" : "Delta",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Delta is cell skew factor. It represents the cell skewness allowed at the decomposed domain boundaries and is generally kept below 10^{-2}. <a href='https://www.simscale.com/docs/simulation-setup/simulation-control/' target='_blank'>Learn more</a>.",
            "default" : 0.01
          },
          "numSubdomainX" : {
            "title" : "Number of subdomain x",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the number of subdomains the mesh is split into in the specific direction.</p>",
            "default" : 1
          },
          "numSubdomainY" : {
            "title" : "Number of subdomain y",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the number of subdomains the mesh is split into in the specific direction.</p>",
            "default" : 1
          },
          "numSubdomainZ" : {
            "title" : "Number of subdomain z",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Define the number of subdomains the mesh is split into in the specific direction.</p>",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "FluidResultControls" : {
        "type" : "object",
        "properties" : {
          "customComfortCriteria" : {
            "title" : "Custom comfort criteria",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CustomComfortCriterionResultControl"
            },
            "x-showWhen" : [ "type == WIND_COMFORT" ]
          },
          "forcesMoments" : {
            "title" : "Forces and moments",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_FluidResultControlsForcesMoments"
            },
            "x-showWhen" : [ "type in [SIMERICS_ANALYSIS,INCOMPRESSIBLE,INCOMPRESSIBLE_PACEFISH,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,WIND_COMFORT]" ]
          },
          "surfaceData" : {
            "title" : "Surface data",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_FluidResultControlsSurfaceData"
            },
            "x-showWhen" : [ "type in [SIMERICS_ANALYSIS,COMPRESSIBLE,INCOMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER]", "type in [CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,MULTIPHASE,EMBEDDED_BOUNDARY]" ]
          },
          "scalarTransport" : {
            "title" : "Scalar transport",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ScalarTransportResultControl"
            },
            "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies == 0" ]
          },
          "probePoints" : {
            "title" : "Probe points",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ProbePointsResultControl"
            }
          },
          "fieldCalculations" : {
            "title" : "Field calculations",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_FluidResultControlsFieldCalculations"
            },
            "x-showWhen" : [ "type in [INCOMPRESSIBLE,INCOMPRESSIBLE_PACEFISH,WIND_COMFORT,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER]", "type in [CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == SIMERICS_ANALYSIS && isCHT == true" ]
          },
          "transientResultControl" : {
            "$ref" : "#/components/schemas/TransientResultControl"
          },
          "statisticalAveragingResultControl" : {
            "$ref" : "#/components/schemas/StatisticalAveragingResultControlV2"
          },
          "snapshotResultControl" : {
            "$ref" : "#/components/schemas/SnapshotResultControl"
          }
        },
        "additionalProperties" : false
      },
      "CustomComfortCriterionResultControl" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomComfortCriterionResultControl",
            "default" : "CUSTOM_COMFORT_CRITERION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "comfortCriterionDefinitionV2" : {
            "$ref" : "#/components/schemas/ComfortCriterionDefinitionV2"
          },
          "outOfBoundsName" : {
            "title" : "Out of bounds name",
            "pattern" : "^[A-Za-z][-0-9a-zA-Z_\\h]{0,31}$",
            "type" : "string",
            "description" : "It defines the name of the category that is reached if all defined criteria are exceeded.",
            "default" : "Uncomfortable"
          },
          "advancedSettings" : {
            "$ref" : "#/components/schemas/AdvancedComfortCriterionSettings"
          }
        },
        "additionalProperties" : false
      },
      "ComfortCriterionDefinitionV2" : {
        "type" : "object",
        "properties" : {
          "windSpeedThresholds" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Speed"
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_LEGEND_PROBABILITY" : {
        "type" : "object",
        "properties" : {
          "Legend" : {
            "$ref" : "#/components/schemas/Unit_Text"
          },
          "Probability [%]" : {
            "$ref" : "#/components/schemas/Unit_Dimensionless"
          }
        }
      },
      "Unit_Text" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "string"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "" ]
          }
        }
      },
      "AdvancedComfortCriterionSettings" : {
        "type" : "object",
        "properties" : {
          "gustFactor" : {
            "title" : "Gust factor",
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Value of the gust factor <b>k<sub>g</sub></b> used in the computation of the gust wind speed from the mean wind speed <b>U<sub>mean</sub></b> and the standard deviation of the wind speed <b>&sigma;</b>: <ul><b>U<sub>gust</sub> = U<sub>mean</sub> + k<sub>g</sub> &sigma;</b></ul> <a href= https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/pedestrian-comfort-map/gust-equivalent-mean/#gust-equivalent-mean-formulation target='_blank'>Learn more</a>.",
            "default" : 3.5
          },
          "gemCorrection" : {
            "title" : "GEM correction",
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Value of the gust equivalent mean correction factor <b>k<sub>GEM</sub></b> used in the computation of the gust equivalent mean wind speed <b>U<sub>GEM</sub></b> from the gust wind speed <b>U<sub>gust</sub>: <ul>U<sub>GEM</sub> = U<sub>gust</sub> / k<sub>GEM</sub></b></ul> <a href= https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/pedestrian-comfort-map/gust-equivalent-mean/#gust-equivalent-mean-formulation target='_blank'>Learn more</a>.",
            "default" : 1.85
          }
        },
        "additionalProperties" : false
      },
      "ForcesMomentsResultControl" : {
        "title" : "Forces and moments",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ForcesMomentsResultControl",
            "default" : "FORCES_AND_MOMENTS"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "centerOfRotation" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "writeControl" : {
            "$ref" : "#/components/schemas/OneOf_ForcesMomentsResultControlWriteControl"
          },
          "fractionFromEnd" : {
            "title" : "Fraction from end",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "It defines the point in simulation where the result output data extraction starts. For instance, <i>Fraction from end</i> of 1 (100%) extracts all data from the beginning of the simulation while default 0.2 extracts 20% data from the end of the simulation.",
            "default" : 0.2,
            "x-showWhen" : [ "type in [INCOMPRESSIBLE_PACEFISH,WIND_COMFORT]" ]
          },
          "exportStatistics" : {
            "title" : "Export statistical data",
            "type" : "boolean",
            "description" : "<p>When this switch is activated, statistical data for the selected forces and moments will be exported:</p><ul><li>Minimum (<strong>MIN</strong>)</li><li>Maximum (<strong>MAX</strong>)</li><li>Average (<strong>AVG</strong>)</li><li>Standard deviation (<strong>STDDEV</strong>)</li><li>Root mean square (<strong>RMS</strong>)</li></ul>",
            "default" : true,
            "x-showWhen" : [ "type in [INCOMPRESSIBLE_PACEFISH,WIND_COMFORT]" ]
          },
          "groupAssignments" : {
            "title" : "Group assignments",
            "type" : "boolean",
            "description" : "When this switch is activated, forces and moments will be calculated cumulatively on all assignments. When deactivated, they will be calculated individually for each assignment.",
            "default" : true,
            "x-showWhen" : [ "type in [INCOMPRESSIBLE_PACEFISH,WIND_COMFORT]" ]
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "SynchronizeWithFieldOutputWriteControl" : {
        "title" : "Synchronize with field output",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option controls how the simulation results are written and how frequently.\n\nSchema name: SynchronizeWithFieldOutputWriteControl",
            "default" : "OUTPUT_TIME"
          },
          "writeInterval" : {
            "title" : "Write interval",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1
          }
        },
        "additionalProperties" : false,
        "description" : "This option controls how the simulation results are written and how frequently."
      },
      "HighResolution" : {
        "title" : "High resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Output will be written every 2 time steps.\n\nSchema name: HighResolution",
            "default" : "HIGH_RESOLUTION"
          }
        },
        "additionalProperties" : false,
        "description" : "Output will be written every 2 time steps."
      },
      "ModerateResolution" : {
        "title" : "Moderate resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Output will be written every 4 time steps.\n\nSchema name: ModerateResolution",
            "default" : "MODERATE_RESOLUTION"
          }
        },
        "additionalProperties" : false,
        "description" : "Output will be written every 4 time steps."
      },
      "CoarseResolution" : {
        "title" : "Coarse resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Output will be written every 8 time steps.\n\nSchema name: CoarseResolution",
            "default" : "COARSE_RESOLUTION"
          }
        },
        "additionalProperties" : false,
        "description" : "Output will be written every 8 time steps."
      },
      "CustomResolution" : {
        "title" : "Custom resolution",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This option controls how the simulation results are written and how frequently.\n\nSchema name: CustomResolution",
            "default" : "CUSTOM_RESOLUTION"
          },
          "writeInterval" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false,
        "description" : "This option controls how the simulation results are written and how frequently."
      },
      "ForceMomentCoefficientsResultControl" : {
        "title" : "Force and moment coefficients",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ForceMomentCoefficientsResultControl",
            "default" : "FORCE_AND_MOMENT_COEFFICIENTS"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "centerOfRotation" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "liftDirection" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "dragDirection" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "pitchAxis" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "freestreamVelocityMagnitude" : {
            "$ref" : "#/components/schemas/Dimensional_Speed"
          },
          "referenceLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "referenceAreaValue" : {
            "$ref" : "#/components/schemas/Dimensional_Area"
          },
          "writeControl" : {
            "$ref" : "#/components/schemas/OneOf_ForceMomentCoefficientsResultControlWriteControl"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "AreaAverageResultControl" : {
        "title" : "Area average",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AreaAverageResultControl",
            "default" : "AREA_AVERAGE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "writeControl" : {
            "$ref" : "#/components/schemas/OneOf_AreaAverageResultControlWriteControl"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "AreaIntegralResultControl" : {
        "title" : "Area integral",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AreaIntegralResultControl",
            "default" : "AREA_INTEGRAL"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "writeControl" : {
            "$ref" : "#/components/schemas/OneOf_AreaIntegralResultControlWriteControl"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "PressureDifferenceResultControl" : {
        "title" : "Pressure difference",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PressureDifferenceResultControl",
            "default" : "PRESSURE_DIFFERENCE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "absoluteValueOfPressureDifference" : {
            "title" : "Apply Absolute Value",
            "type" : "boolean",
            "description" : "Ensure a non-negative pressure difference result. Useful for many applications in which the pressure difference is assumed to be a <i>pressure drop</i>. However, leaving this on may yield <b>non-physical</b> results for some combinations of static/total pressure.",
            "default" : true
          },
          "inletFacePressureDifferenceType" : {
            "title" : "Inlet face pressure type",
            "type" : "string",
            "description" : "<p>The total pressure is the sum of the static pressure and the dynamic pressure.</p>",
            "default" : "STATIC_PRESSURE",
            "enum" : [ "STATIC_PRESSURE", "TOTAL_PRESSURE" ]
          },
          "inletFaceTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "outletFacePressureDifferenceType" : {
            "title" : "Outlet face pressure type",
            "type" : "string",
            "description" : "<p>The total pressure is the sum of the static pressure and the dynamic pressure.</p>",
            "default" : "STATIC_PRESSURE",
            "enum" : [ "STATIC_PRESSURE", "TOTAL_PRESSURE" ]
          },
          "outletFaceTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "ScalarTransportResultControl" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "diffusionCoefficient" : {
            "title" : "Diffusion coefficient",
            "type" : "number",
            "default" : 0
          },
          "volumeMode" : {
            "title" : "Volume mode",
            "type" : "string",
            "default" : "SPECIFIC",
            "enum" : [ "SPECIFIC", "ABSOLUTE" ]
          },
          "su" : {
            "title" : "Explicit source term",
            "type" : "number",
            "default" : 1
          },
          "sp" : {
            "title" : "Implicit sink term",
            "type" : "number",
            "default" : 0
          },
          "writeControl" : {
            "$ref" : "#/components/schemas/OneOf_ScalarTransportResultControlWriteControl"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "POINT" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "ProbePointsResultControl" : {
        "title" : "Probe points",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ProbePointsResultControl",
            "default" : "PROBE_POINTS"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "writeControl" : {
            "$ref" : "#/components/schemas/OneOf_ProbePointsResultControlWriteControl"
          },
          "fractionFromEnd" : {
            "title" : "Fraction from end",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "It defines the point in simulation where the result output data extraction starts. For instance, <i>Fraction from end</i> of 1 (100%) extracts all data from the beginning of the simulation while default 0.2 extracts 20% data from the end of the simulation.",
            "default" : 0.2,
            "x-showWhen" : [ "type in [INCOMPRESSIBLE_PACEFISH,WIND_COMFORT]" ]
          },
          "exportStatistics" : {
            "title" : "Export statistical data",
            "type" : "boolean",
            "description" : "<p>When this switch is activated, statistical data for the selected probe points will be exported:</p><ul><li>Minimum (<strong>MIN</strong>)</li><li>Maximum (<strong>MAX</strong>)</li><li>Average (<strong>AVG</strong>)</li><li>Standard deviation (<strong>STDDEV</strong>)</li><li>Root mean square (<strong>RMS</strong>)</li></ul>",
            "default" : true,
            "x-showWhen" : [ "type in [INCOMPRESSIBLE_PACEFISH,WIND_COMFORT]" ]
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,EMBEDDED_BOUNDARY,SIMERICS_ANALYSIS]" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "POINT" ]
            }
          },
          "probeLocations" : {
            "$ref" : "#/components/schemas/TableDefinedProbeLocations"
          }
        },
        "additionalProperties" : false
      },
      "TableDefinedProbeLocations" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TableDefinedProbeLocations",
            "default" : "TABULAR"
          },
          "tableId" : {
            "type" : "string",
            "description" : "The ID of the imported table.",
            "format" : "uuid"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsPressureResultControl" : {
        "title" : "Pressure fields",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsPressureResultControl",
            "default" : "PRESSURE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "pressureType" : {
            "$ref" : "#/components/schemas/OneOf_FieldCalculationsPressureResultControlPressureType"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/OneOf_FieldCalculationsPressureResultControlResultType"
          }
        },
        "additionalProperties" : false
      },
      "TotalPressurePressureType" : {
        "title" : "Total pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalPressurePressureType",
            "default" : "TOTAL_PRESSURE"
          },
          "pressureValue" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "StaticPressurePressureType" : {
        "title" : "Static pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StaticPressurePressureType",
            "default" : "STATIC_PRESSURE"
          }
        },
        "additionalProperties" : false
      },
      "PressureValueResultType" : {
        "title" : "Pressure value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PressureValueResultType",
            "default" : "PRESSURE_VALUE"
          }
        },
        "additionalProperties" : false
      },
      "PressureCoefficientResultType" : {
        "title" : "Pressure coefficient",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PressureCoefficientResultType",
            "default" : "PRESSURE_COEFFICIENT"
          },
          "freeStreamPressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "freeStreamVelocity" : {
            "$ref" : "#/components/schemas/DimensionalVector_Speed"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsTurbulenceResultControl" : {
        "title" : "Turbulence",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsTurbulenceResultControl",
            "default" : "TURBULENCE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/OneOf_FieldCalculationsTurbulenceResultControlResultType"
          }
        },
        "additionalProperties" : false
      },
      "YPlusRASResultType" : {
        "title" : "y<plus>",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: YPlusRASResultType",
            "default" : "DIMENSIONLESS_WALL_DISTANCE_YPLUS"
          }
        },
        "additionalProperties" : false
      },
      "ReynoldsStressResultType" : {
        "title" : "Reynolds stress tensor",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ReynoldsStressResultType",
            "default" : "REYNOLDS_STRESS_TENSOR"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsVelocityResultControl" : {
        "title" : "Vorticity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsVelocityResultControl",
            "default" : "VELOCITY"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/VorticityResultType"
          }
        },
        "additionalProperties" : false
      },
      "VorticityResultType" : {
        "title" : "Vorticity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: VorticityResultType",
            "default" : "VORTICITY"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsFrictionVelocityResultControl" : {
        "title" : "Friction Velocity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsFrictionVelocityResultControl",
            "default" : "FRICTION_VELOCITY_U_TAU"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/FrictionVelocityResultType"
          }
        },
        "additionalProperties" : false
      },
      "FrictionVelocityResultType" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FrictionVelocityResultType",
            "default" : "FRICTION_VELOCITY_U_TAU"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsSurfaceNormalsResultControl" : {
        "title" : "Surface Normals",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsSurfaceNormalsResultControl",
            "default" : "SURFACE_NORMALS"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/SurfaceNormalsResultType"
          }
        },
        "additionalProperties" : false
      },
      "SurfaceNormalsResultType" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SurfaceNormalsResultType",
            "default" : "SURFACE_NORMALS"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsWallFluxesResultControl" : {
        "title" : "Wall shear stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsWallFluxesResultControl",
            "default" : "WALL_FLUXES"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/WallShearStressResultType"
          }
        },
        "additionalProperties" : false
      },
      "WallShearStressResultType" : {
        "title" : "Wall shear stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallShearStressResultType",
            "default" : "WALL_SHEAR_STRESS"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsMeanAgeOfFluidResultControl" : {
        "title" : "Mean age of fluid",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsMeanAgeOfFluidResultControl",
            "default" : "AGE_OF_FLUID"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/MeanAgeOfFluidResultType"
          },
          "ageOfFluidDiffusion" : {
            "title" : "Diffusion",
            "type" : "boolean",
            "description" : "<p>Enable or disable the diffusion term in the age of fluid equation. The exclusion of the diffusion term can be valid for laminar flows but tends to overestimate the age of fluid for turbulent flows.</p>",
            "x-conditionalDefaults" : [ {
              "when" : [ "turbulenceModel == NONE" ],
              "default" : false
            }, {
              "when" : [ "turbulenceModel != NONE" ],
              "default" : true
            } ]
          },
          "turbulentSchmidtNumber" : {
            "title" : "(Sc<t>) Turb. Schmidt number",
            "minimum" : 1.0E-12,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "<p>The <b>turbulent Schmidt number</b> characteristic of the flow. For HVAC applications it is recommended to maintain the default value of 0.7.</p>",
            "default" : 0.7,
            "x-showWhen" : [ "turbulenceModel != NONE && 1/ageOfFluidDiffusion == true" ]
          },
          "diffusionCoefficient" : {
            "$ref" : "#/components/schemas/Dimensional_KinematicViscosity"
          }
        },
        "additionalProperties" : false
      },
      "MeanAgeOfFluidResultType" : {
        "title" : "Mean age of fluid",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MeanAgeOfFluidResultType",
            "default" : "MEAN_AGE_OF_FLUID"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsThermalComfortResultControl" : {
        "title" : "Thermal comfort parameters",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsThermalComfortResultControl",
            "default" : "THERMAL_COMFORT"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "clothingCoefficientFactor" : {
            "title" : "Clothing Coefficient (clo)",
            "maximum" : 2.0,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1
          },
          "metabolicRateFactor" : {
            "title" : "Metabolic Rate (met)",
            "maximum" : 4.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.8,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1
          },
          "relativeHumidityFactor" : {
            "title" : "Relative Air Humidity (%)",
            "maximum" : 100,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 50,
            "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == false", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableHumidityModel == false", "type == EMBEDDED_BOUNDARY && isCompressible == false", "type == EMBEDDED_BOUNDARY && enableHumidityModel == false" ]
          },
          "mrtSolarParameters" : {
            "$ref" : "#/components/schemas/MrtSolarParameters"
          }
        },
        "additionalProperties" : false
      },
      "MrtSolarParameters" : {
        "type" : "object",
        "properties" : {
          "fractionBodySurface" : {
            "$ref" : "#/components/schemas/OneOf_MrtSolarParametersFractionBodySurface"
          },
          "projectedAreaFactor" : {
            "title" : "Projected area factor",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The projected area of a standard person exposed to direct beam sunlight in the range [0, 1]. This projection depends on the time of day and year usually in the range [0, 0.7]. This parameter is not a necessary input if the solar load is computed from time and place since it can be computed.",
            "default" : 0.7,
            "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && solarCalculator.sunDirection.type == CUSTOM_SOLAR_DIRECTION", "type == EMBEDDED_BOUNDARY && solarCalculator.sunDirection.type == CUSTOM_SOLAR_DIRECTION" ]
          },
          "shortWaveAbsorptivity" : {
            "title" : "Short wave absorptivity",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The radiation wavelength of a source depends on its temperature. Since the sun is much hotter than surfaces in a typical room, the amount of sun heat absorbed by a person is different than the amount it is able to emit back to its surroundings. Typical values are: <br><li><b> 0.2 </b>: White clothing. <br><li><b> 0.57 </b>: Khaki clothing <br><li><b> 0.57 </b>: White skin <br><li><b> 0.65 </b>: Brown skin <br><li><b> 0.84 </b>: Black skin. <br><li><b> 0.88 </b>: Black clothing.",
            "default" : 0.67
          }
        },
        "additionalProperties" : false
      },
      "SittingFractionBodySurface" : {
        "title" : "Sitting",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SittingFractionBodySurface",
            "default" : "SITTING_FRACTION_BODY_SURFACE"
          }
        },
        "additionalProperties" : false
      },
      "StandingFractionBodySurface" : {
        "title" : "Standing",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StandingFractionBodySurface",
            "default" : "STANDING_FRACTION_BODY_SURFACE"
          }
        },
        "additionalProperties" : false
      },
      "CustomFractionBodySurface" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomFractionBodySurface",
            "default" : "CUSTOM_FRACTION_BODY_SURFACE"
          },
          "value" : {
            "title" : "Value",
            "type" : "number",
            "default" : 0.696
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsAdjointSensitivitiesResultControl" : {
        "title" : "Adjoint sensitivities",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsAdjointSensitivitiesResultControl",
            "default" : "ADJOINT_SENSITIVITIES"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "computeSensitivitiesTo" : {
            "title" : "Compute sensitivities to",
            "type" : "string",
            "default" : "MINIMIZE_FORCE",
            "enum" : [ "MAXIMIZE_FORCE", "MINIMIZE_FORCE" ]
          },
          "optimizationForceDirection" : {
            "$ref" : "#/components/schemas/DecimalVector"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsWallHeatFluxResultControl" : {
        "title" : "Convective wall heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Computes the <b>heat flux</b> [W/m²] at every <b>wall</b> based on the surface normal gradient of the temperature. Radiation effects are not included.\n\nSchema name: FieldCalculationsWallHeatFluxResultControl",
            "default" : "WALL_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/WallHeatFluxResultType"
          },
          "computeHeatTransferCoefficient" : {
            "title" : "Heat transfer coefficient",
            "type" : "boolean",
            "description" : "Computes the <b>heat transfer coefficient</b> [W/(m²K)] at every wall. Radiation effects are not included. Two modes are available for the <b>reference temperature</b> calculation: <ul><li> <b>Wall adjacent cell</b>: Uses the temperature of the first adjacent cell. </li> <li><b>Fixed</b>: Uses a custom value.</li></ul>",
            "default" : false,
            "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
          },
          "referenceTemperatureResultType" : {
            "$ref" : "#/components/schemas/OneOf_FieldCalculationsWallHeatFluxResultControlReferenceTemperatureResultType"
          },
          "computeNusseltNumber" : {
            "title" : "Nusselt Number",
            "type" : "boolean",
            "description" : "Computes the <b>Nusselt Number</b> at every wall. The specified heat transfer coefficient mode will be used.",
            "default" : false,
            "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
          },
          "referenceNusseltNumberLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false,
        "description" : "Computes the <b>heat flux</b> [W/m²] at every <b>wall</b> based on the surface normal gradient of the temperature. Radiation effects are not included."
      },
      "WallHeatFluxResultType" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallHeatFluxResultType",
            "default" : "WALL_HEAT_FLUX"
          }
        },
        "additionalProperties" : false
      },
      "WallNextCellHeatTransferCoefficientResultType" : {
        "title" : "Wall adjacent cell",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WallNextCellHeatTransferCoefficientResultType",
            "default" : "WALL_NEXT_CELL_HEAT_TRANSFER_COEFFICIENT"
          }
        },
        "additionalProperties" : false
      },
      "FixedTemperatureHeatTransferCoefficientResultType" : {
        "title" : "Fixed",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FixedTemperatureHeatTransferCoefficientResultType",
            "default" : "REFERENCE_TEMPERATURE_HEAT_TRANSFER_COEFFICIENT"
          },
          "referenceHeatTransferTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsMeanRadiantTemperatureResultControl" : {
        "title" : "Mean radiant temperature",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Computes the <b>Mean Radiant Temperature (MRT)</b>. It is defined as the uniform surface temperature of an imaginary black enclosure in which an every point of the domain would exchange the same amount of radiative heat as in the actual nonuniform space\n\nSchema name: FieldCalculationsMeanRadiantTemperatureResultControl",
            "default" : "MEAN_RADIANT_TEMPERATURE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/MeanRadiantTemperatureResultType"
          },
          "mrtSolarParameters" : {
            "$ref" : "#/components/schemas/MrtSolarParameters"
          }
        },
        "additionalProperties" : false,
        "description" : "Computes the <b>Mean Radiant Temperature (MRT)</b>. It is defined as the uniform surface temperature of an imaginary black enclosure in which an every point of the domain would exchange the same amount of radiative heat as in the actual nonuniform space"
      },
      "MeanRadiantTemperatureResultType" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MeanRadiantTemperatureResultType",
            "default" : "MEAN_RADIANT_TEMPERATURE"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsOperativeTemperatureResultControl" : {
        "title" : "Operative temperature",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Computes the <b>Operative Temperature</b>. It is defined as the uniform surface temperature of an imaginary black enclosure in which an every point of the domain would exchange the same amount of convective and radiative heat as in the actual nonuniform space\n\nSchema name: FieldCalculationsOperativeTemperatureResultControl",
            "default" : "OPERATIVE_TEMPERATURE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/OperativeTemperatureResultType"
          },
          "mrtSolarParameters" : {
            "$ref" : "#/components/schemas/MrtSolarParameters"
          }
        },
        "additionalProperties" : false,
        "description" : "Computes the <b>Operative Temperature</b>. It is defined as the uniform surface temperature of an imaginary black enclosure in which an every point of the domain would exchange the same amount of convective and radiative heat as in the actual nonuniform space"
      },
      "OperativeTemperatureResultType" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OperativeTemperatureResultType",
            "default" : "OPERATIVE_TEMPERATURE"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsResolvedTKEResultControl" : {
        "title" : "Turbulent Kinetic Energy (Resolved)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsResolvedTKEResultControl",
            "default" : "RESOLVED_TURBULENT_KINETIC_ENERGY"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/ResolvedTurbulentKineticEnergy"
          }
        },
        "additionalProperties" : false
      },
      "ResolvedTurbulentKineticEnergy" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ResolvedTurbulentKineticEnergy",
            "default" : "RESOLVED_TURBULENT_KINETIC_ENERGY"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsTotalTKEResultControl" : {
        "title" : "Turbulent Kinetic Energy (Total)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsTotalTKEResultControl",
            "default" : "TOTAL_TURBULENT_KINETIC_ENERGY"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/TotalTurbulentKineticEnergy"
          }
        },
        "additionalProperties" : false
      },
      "TotalTurbulentKineticEnergy" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalTurbulentKineticEnergy",
            "default" : "TOTAL_TURBULENT_KINETIC_ENERGY"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsModeledTIResultControl" : {
        "title" : "Turbulence Intensity (Modeled)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsModeledTIResultControl",
            "default" : "MODELED_TURBULENCE_INTENSITY"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/ModeledTurbulenceIntensity"
          }
        },
        "additionalProperties" : false
      },
      "ModeledTurbulenceIntensity" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ModeledTurbulenceIntensity",
            "default" : "MODELED_TURBULENCE_INTENSITY"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsResolvedTIResultControl" : {
        "title" : "Turbulence Intensity (Resolved)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsResolvedTIResultControl",
            "default" : "RESOLVED_TURBULENCE_INTENSITY"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/ResolvedTurbulenceIntensity"
          }
        },
        "additionalProperties" : false
      },
      "ResolvedTurbulenceIntensity" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ResolvedTurbulenceIntensity",
            "default" : "RESOLVED_TURBULENCE_INTENSITY"
          }
        },
        "additionalProperties" : false
      },
      "FieldCalculationsTotalTIResultControl" : {
        "title" : "Turbulence Intensity (Total)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FieldCalculationsTotalTIResultControl",
            "default" : "TOTAL_TURBULENCE_INTENSITY"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "resultType" : {
            "$ref" : "#/components/schemas/TotalTurbulenceIntensity"
          }
        },
        "additionalProperties" : false
      },
      "TotalTurbulenceIntensity" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalTurbulenceIntensity",
            "default" : "TOTAL_TURBULENCE_INTENSITY"
          }
        },
        "additionalProperties" : false
      },
      "TransientResultControl" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TransientResultControl",
            "default" : "TRANSIENT"
          },
          "writeControl" : {
            "$ref" : "#/components/schemas/OneOf_TransientResultControlWriteControl"
          },
          "fractionFromEnd" : {
            "title" : "Fraction from end",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "It defines the point in simulation where the result output data extraction starts. For instance, <i>Fraction from end</i> of 1 (100%) extracts all data from the beginning of the simulation while default 0.2 extracts 20% data from the end of the simulation.",
            "default" : 0.2
          },
          "exportFluid" : {
            "title" : "Export flow-domain fields",
            "type" : "boolean",
            "description" : "When this switch is activated, simulation data of the flow-field enclosed in the assignments will be exported",
            "default" : false
          },
          "exportSurface" : {
            "title" : "Export surface fields",
            "type" : "boolean",
            "description" : "When this switch is activated, simulation data on all surfaces enclosed in the assignments will be exported",
            "default" : false
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/exportFluid == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "LOCAL_CARTESIAN_BOX", "ROTATABLE_CARTESIAN_BOX", "LOCAL_HALF_SPACE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "StatisticalAveragingResultControlV2" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StatisticalAveragingResultControlV2",
            "default" : "STATISTICAL_AVERAGING_V2"
          },
          "fractionFromEnd" : {
            "title" : "Fraction from end",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "It defines the point in simulation where the result output data extraction starts. For instance, <i>Fraction from end</i> of 1 (100%) extracts all data from the beginning of the simulation while default 0.2 extracts 20% data from the end of the simulation.",
            "default" : 0.2
          },
          "samplingInterval" : {
            "$ref" : "#/components/schemas/OneOf_StatisticalAveragingResultControlV2SamplingInterval"
          },
          "exportFluid" : {
            "title" : "Export flow-domain fields",
            "type" : "boolean",
            "description" : "When this switch is activated, simulation data of the flow-field enclosed in the assignments will be exported",
            "default" : false
          },
          "exportSurface" : {
            "title" : "Export surface fields",
            "type" : "boolean",
            "description" : "When this switch is activated, simulation data on all surfaces enclosed in the assignments will be exported",
            "default" : false
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/exportFluid == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "LOCAL_CARTESIAN_BOX", "ROTATABLE_CARTESIAN_BOX", "LOCAL_HALF_SPACE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "SnapshotResultControl" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SnapshotResultControl",
            "default" : "SNAPSHOT"
          },
          "exportFluid" : {
            "title" : "Export flow-domain fields",
            "type" : "boolean",
            "description" : "When this switch is activated, simulation data of the flow-field enclosed in the assignments will be exported",
            "default" : false
          },
          "exportSurface" : {
            "title" : "Export surface fields",
            "type" : "boolean",
            "description" : "When this switch is activated, simulation data on all surfaces enclosed in the assignments will be exported",
            "default" : false
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/exportFluid == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "LOCAL_CARTESIAN_BOX", "ROTATABLE_CARTESIAN_BOX", "LOCAL_HALF_SPACE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "IncompressiblePacefish" : {
        "title" : "Incompressible (LBM)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IncompressiblePacefish",
            "default" : "INCOMPRESSIBLE_PACEFISH"
          },
          "boundingBoxUuid" : {
            "type" : "string",
            "format" : "uuid"
          },
          "turbulenceModel" : {
            "title" : "Turbulence model",
            "type" : "string",
            "description" : "Choose between RANS, LES, or DES turbulence models. <a href='https://www.simscale.com/docs/incompressible-lbm-lattice-boltzmann-advanced/#turbulence-models-in-incompressible-lbm' target='_blank'>Learn more</a>.",
            "default" : "KOMEGASST_DDES",
            "enum" : [ "SMAGORINSKY", "SMAGORINSKY_DIRECT", "NONE", "KOMEGASST", "KOMEGASST_DDES", "KOMEGASST_IDDES" ]
          },
          "material" : {
            "$ref" : "#/components/schemas/IncompressibleMaterial"
          },
          "flowDomainBoundaries" : {
            "$ref" : "#/components/schemas/FlowDomainBoundaries"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/FluidSimulationControl"
          },
          "advancedModelling" : {
            "$ref" : "#/components/schemas/AdvancedModelling"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          },
          "meshSettingsNew" : {
            "$ref" : "#/components/schemas/OneOf_IncompressiblePacefishMeshSettingsNew"
          }
        },
        "additionalProperties" : false
      },
      "FlowDomainBoundaries" : {
        "type" : "object",
        "properties" : {
          "XMIN" : {
            "$ref" : "#/components/schemas/OneOf_FlowDomainBoundariesXMIN"
          },
          "XMAX" : {
            "$ref" : "#/components/schemas/OneOf_FlowDomainBoundariesXMAX"
          },
          "YMIN" : {
            "$ref" : "#/components/schemas/OneOf_FlowDomainBoundariesYMIN"
          },
          "YMAX" : {
            "$ref" : "#/components/schemas/OneOf_FlowDomainBoundariesYMAX"
          },
          "ZMIN" : {
            "$ref" : "#/components/schemas/OneOf_FlowDomainBoundariesZMIN"
          },
          "ZMAX" : {
            "$ref" : "#/components/schemas/OneOf_FlowDomainBoundariesZMAX"
          }
        },
        "additionalProperties" : false
      },
      "AtmosphericBoundaryLayerInletBC" : {
        "title" : "Atmospheric boundary layer inlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "The atmospheric boundary layer boundary condition implements the standard logarithmic profile for the stream-wise wind velocity component with corresponding profiles for turbulence kinetic energy and specific dissipation rate, where the ground roughness effects are taken into account.\n\nSchema name: AtmosphericBoundaryLayerInletBC",
            "default" : "ATMOSPHERIC_BOUNDARY_LAYER_INLET"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "referenceVelocity" : {
            "$ref" : "#/components/schemas/Dimensional_Speed"
          },
          "referenceHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "groundRoughness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "The atmospheric boundary layer boundary condition implements the standard logarithmic profile for the stream-wise wind velocity component with corresponding profiles for turbulence kinetic energy and specific dissipation rate, where the ground roughness effects are taken into account."
      },
      "AdvancedModelling" : {
        "type" : "object",
        "properties" : {
          "surfaceRoughnessModels" : {
            "title" : "Surface roughness",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SurfaceRoughnessModel"
            }
          },
          "porousObjects" : {
            "title" : "Porous objects",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AdvancedModellingPorousObjects"
            }
          },
          "rotatingWalls" : {
            "title" : "Rotating walls",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RotatingWall"
            },
            "x-showWhen" : [ "type in [INCOMPRESSIBLE_PACEFISH]" ]
          }
        },
        "additionalProperties" : false
      },
      "SurfaceRoughnessModel" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "surfaceRoughnessType" : {
            "$ref" : "#/components/schemas/OneOf_SurfaceRoughnessModelSurfaceRoughnessType"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "EquivalentSandGrainRoughness" : {
        "title" : "Equivalent sand grain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: EquivalentSandGrainRoughness",
            "default" : "EQUIVALENT_SAND_GRAIN_ROUGHNESS"
          },
          "surfaceRoughness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "AerodynamicRoughness" : {
        "title" : "Aerodynamic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AerodynamicRoughness",
            "default" : "AERODYNAMIC_ROUGHNESS"
          },
          "surfaceRoughness" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "WindExposureRoughness" : {
        "title" : "From wind exposure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WindExposureRoughness",
            "default" : "WIND_EXPOSURE_ROUGHNESS"
          }
        },
        "additionalProperties" : false
      },
      "GeneralDarcyForchheimerPacefish" : {
        "title" : "Darcy-Forchheimer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GeneralDarcyForchheimerPacefish",
            "default" : "GENERAL_POROSITY"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "darcyForchheimerType" : {
            "$ref" : "#/components/schemas/OneOf_GeneralDarcyForchheimerPacefishDarcyForchheimerType"
          },
          "permeability" : {
            "$ref" : "#/components/schemas/Dimensional_Area"
          },
          "frictionFormCoefficient" : {
            "title" : "Friction form coefficient",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Friction form coefficient defines the pressure losses due to inertial effects through the porous object. The greater the friction form coefficient, the greater the pressure losses due to inertial effects  are. Friction form coefficient of zero means that there are no inertial losses through the porous object.",
            "default" : 1.0
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "ROTATABLE_CARTESIAN_BOX", "LOCAL_CARTESIAN_BOX", "LOCAL_SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "PorousTree" : {
        "title" : "Tree",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PorousTree",
            "default" : "POROUS_TREE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z][-+0-9a-zA-Z_\\h]{0,11}$",
            "type" : "string"
          },
          "treeType" : {
            "$ref" : "#/components/schemas/OneOf_PorousTreeTreeType"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "ROTATABLE_CARTESIAN_BOX", "LOCAL_CARTESIAN_BOX", "LOCAL_SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "CustomTree" : {
        "title" : "Custom tree",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomTree",
            "default" : "CUSTOM_TREE"
          },
          "leafAreaIndex" : {
            "title" : "Leaf area index",
            "type" : "number",
            "description" : "Leaf Area Index (LAI) is a dimensionless quantity that is defined as the leaf area per unit ground surface area in broadle af canopies",
            "default" : 5.28
          },
          "averageTreeHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "dragCoefficient" : {
            "title" : "Drag coefficient",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Drag coefficient of the tree canopy.",
            "default" : 0.2
          }
        },
        "additionalProperties" : false
      },
      "PlaneTree" : {
        "title" : "Plane tree",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PlaneTree",
            "default" : "PLANE_TREE"
          },
          "averageTreeHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "Oak" : {
        "title" : "Oak",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Oak",
            "default" : "OAK"
          },
          "averageTreeHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "Sycamore" : {
        "title" : "Sycamore",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Sycamore",
            "default" : "SYCAMORE"
          },
          "averageTreeHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "SilverBirch" : {
        "title" : "Silver birch",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SilverBirch",
            "default" : "SILVER_BIRCH"
          },
          "averageTreeHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "Chestnut" : {
        "title" : "Chestnut",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Chestnut",
            "default" : "CHESTNUT"
          },
          "averageTreeHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "RotatingWall" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "origin" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "axis" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "rotationalVelocity" : {
            "$ref" : "#/components/schemas/Dimensional_RotationSpeed"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "PacefishMeshLegacy" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose between <i>Automatic</i> and <i>Manual</i> mesh settings. <a href='https://www.simscale.com/docs/analysis-types/incompressible-lbm/#mesh' target='_blank'>Learn more.</a></p><p><b>Note:</b> Mesh fineness impacts the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>\n\nSchema name: PacefishMeshLegacy",
            "default" : "PACEFISH_MESH_LEGACY"
          },
          "fineness" : {
            "title" : "Fineness",
            "type" : "string",
            "default" : "COARSE",
            "enum" : [ "VERY_COARSE", "COARSE", "MODERATE", "FINE", "VERY_FINE" ]
          },
          "progressiveRefinement" : {
            "$ref" : "#/components/schemas/ProgressiveRefinement"
          },
          "referenceLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "reynoldsScalingType" : {
            "$ref" : "#/components/schemas/ManualReynoldsScaling"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_PacefishMeshLegacyRefinements"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose between <i>Automatic</i> and <i>Manual</i> mesh settings. <a href='https://www.simscale.com/docs/analysis-types/incompressible-lbm/#mesh' target='_blank'>Learn more.</a></p><p><b>Note:</b> Mesh fineness impacts the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>"
      },
      "ProgressiveRefinement" : {
        "type" : "object",
        "properties" : {
          "enableProgressiveRefinement" : {
            "title" : "Enable progressive refinement",
            "type" : "boolean",
            "default" : true
          },
          "baseRefinementFraction" : {
            "title" : "Base refinement fraction",
            "maximum" : 1.0,
            "exclusiveMaximum" : true,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.4,
            "x-showWhen" : [ "1/enableProgressiveRefinement == true" ],
            "x-divisibleBy" : 0.01
          },
          "fullRefinementFraction" : {
            "title" : "Full refinement fraction",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "default" : 0.3,
            "x-showWhen" : [ "1/enableProgressiveRefinement == true" ],
            "x-divisibleBy" : 0.01
          }
        },
        "additionalProperties" : false
      },
      "ManualReynoldsScaling" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualReynoldsScaling",
            "default" : "MANUAL_REYNOLDS_SCALING"
          },
          "reynoldsScalingFactor" : {
            "title" : "Reynolds scaling factor",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.001,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1.0
          }
        },
        "additionalProperties" : false
      },
      "RegionRefinementPacefish" : {
        "title" : "Region refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RegionRefinementPacefish",
            "default" : "REGION_PACEFISH"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Region refinement"
          },
          "targetResolution" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "ROTATABLE_CARTESIAN_BOX", "LOCAL_CARTESIAN_BOX", "LOCAL_SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "SurfaceRefinementPacefish" : {
        "title" : "Surface refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SurfaceRefinementPacefish",
            "default" : "SURFACE_PACEFISH"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Surface refinement"
          },
          "targetResolution" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "bufferCellsNoExtrude" : {
            "title" : "Buffer cells between refinement levels",
            "minimum" : 3,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Specify the minimum number of buffer cells between regions of different refinements.",
            "default" : 4
          },
          "additionalDirectionalCells" : {
            "$ref" : "#/components/schemas/AdditionalDirectionalCells"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "AdditionalDirectionalCells" : {
        "required" : [ "x", "y", "z" ],
        "type" : "object",
        "properties" : {
          "x" : {
            "title" : "X",
            "type" : "integer",
            "description" : "Specify the number of additional cells to be added in the X-direction. Note: additional cells in the negative X direction is not supported."
          },
          "y" : {
            "title" : "Y",
            "type" : "integer",
            "description" : "Specify the number of additional cells to be added in the Y-direction. Note: additional cells in the negative Y direction is not supported."
          },
          "z" : {
            "title" : "Z",
            "type" : "integer",
            "description" : "Specify the number of additional cells to be added in the Z-direction. Note: additional cells in the negative Z direction is not supported."
          }
        },
        "additionalProperties" : false
      },
      "PacefishAutomesh" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Choose between <i>Automatic</i> and <i>Manual</i> mesh settings. <a href='https://www.simscale.com/docs/analysis-types/incompressible-lbm/#mesh' target='_blank'>Learn more.</a></p><p><b>Note:</b> Mesh fineness impacts the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>\n\nSchema name: PacefishAutomesh",
            "default" : "PACEFISH_AUTOMESH"
          },
          "newFineness" : {
            "$ref" : "#/components/schemas/OneOf_PacefishAutomeshNewFineness"
          },
          "automaticGapClosing" : {
            "$ref" : "#/components/schemas/OneOf_PacefishAutomeshAutomaticGapClosing"
          },
          "progressiveRefinement" : {
            "$ref" : "#/components/schemas/ProgressiveRefinement"
          },
          "referenceLengthComputation" : {
            "$ref" : "#/components/schemas/OneOf_PacefishAutomeshReferenceLengthComputation"
          },
          "reynoldsScalingType" : {
            "$ref" : "#/components/schemas/OneOf_PacefishAutomeshReynoldsScalingType"
          },
          "primaryTopology" : {
            "$ref" : "#/components/schemas/OneOf_PacefishAutomeshPrimaryTopology"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_PacefishAutomeshRefinements"
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Choose between <i>Automatic</i> and <i>Manual</i> mesh settings. <a href='https://www.simscale.com/docs/analysis-types/incompressible-lbm/#mesh' target='_blank'>Learn more.</a></p><p><b>Note:</b> Mesh fineness impacts the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>"
      },
      "PacefishFinenessVeryCoarse" : {
        "title" : "Very coarse",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>\n\nSchema name: PacefishFinenessVeryCoarse",
            "default" : "VERY_COARSE"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>"
      },
      "PacefishFinenessCoarse" : {
        "title" : "Coarse",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>\n\nSchema name: PacefishFinenessCoarse",
            "default" : "COARSE"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>"
      },
      "PacefishFinenessModerate" : {
        "title" : "Moderate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>\n\nSchema name: PacefishFinenessModerate",
            "default" : "MODERATE"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>"
      },
      "PacefishFinenessFine" : {
        "title" : "Fine",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>\n\nSchema name: PacefishFinenessFine",
            "default" : "FINE"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>"
      },
      "PacefishFinenessVeryFine" : {
        "title" : "Very fine",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>\n\nSchema name: PacefishFinenessVeryFine",
            "default" : "VERY_FINE"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>"
      },
      "PacefishFinenessTargetSize" : {
        "title" : "Target size",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>\n\nSchema name: PacefishFinenessTargetSize",
            "default" : "TARGET_SIZE"
          },
          "minimumCellSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>"
      },
      "SmallestCell" : {
        "title" : "Smallest cell size",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SmallestCell",
            "default" : "SMALLEST_CELL_SIZE"
          }
        },
        "additionalProperties" : false
      },
      "MinimumGapSize" : {
        "title" : "Minimum gap size",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MinimumGapSize",
            "default" : "MINIMUM_GAP_SIZE"
          },
          "minimumGapSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticReferenceLength" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticReferenceLength",
            "default" : "AUTOMATIC_REFERENCE_LENGTH"
          }
        },
        "additionalProperties" : false
      },
      "ManualReferenceLength" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualReferenceLength",
            "default" : "MANUAL_REFERENCE_LENGTH"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "AutomaticReynoldsScaling" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticReynoldsScaling",
            "default" : "AUTOMATIC_REYNOLDS_SCALING"
          }
        },
        "additionalProperties" : false
      },
      "BuildingsOfInterest" : {
        "title" : "Part(s)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: BuildingsOfInterest",
            "default" : "BUILDINGS_OF_INTEREST"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "Region" : {
        "title" : "Region",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Region",
            "default" : "REGION"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "LOCAL_CARTESIAN_BOX", "CYLINDER", "LOCAL_SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "NewRegionRefinementPacefishV38" : {
        "title" : "Region refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NewRegionRefinementPacefishV38",
            "default" : "REGION_PACEFISH_V38"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Region refinement"
          },
          "meshSizing" : {
            "$ref" : "#/components/schemas/OneOf_NewRegionRefinementPacefishV38MeshSizing"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "ROTATABLE_CARTESIAN_BOX", "LOCAL_CARTESIAN_BOX", "LOCAL_SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "ManualRegionSizingPacefish" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualRegionSizingPacefish",
            "default" : "MANUAL_REGION_PACEFISH"
          },
          "targetResolution" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "NewSurfaceRefinementPacefishV38" : {
        "title" : "Surface refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NewSurfaceRefinementPacefishV38",
            "default" : "SURFACE_PACEFISH_V38"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Surface refinement"
          },
          "meshSizing" : {
            "$ref" : "#/components/schemas/OneOf_NewSurfaceRefinementPacefishV38MeshSizing"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "ManualSurfaceSizingPacefish" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualSurfaceSizingPacefish",
            "default" : "MANUAL_SURFACE_PACEFISH"
          },
          "targetResolution" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "bufferCellsNoExtrude" : {
            "title" : "Buffer cells between refinement levels",
            "minimum" : 3,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Specify the minimum number of buffer cells between regions of different refinements.",
            "default" : 4
          },
          "additionalDirectionalCells" : {
            "$ref" : "#/components/schemas/AdditionalDirectionalCells"
          }
        },
        "additionalProperties" : false
      },
      "SimericsAnalysis" : {
        "title" : "Multi-purpose",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SimericsAnalysis",
            "default" : "SIMERICS_ANALYSIS"
          },
          "isCompressible" : {
            "title" : "Compressible",
            "type" : "boolean",
            "default" : false,
            "x-conditionalEnum" : [ {
              "value" : true,
              "when" : [ "isMulticomponent == true", "isCHT == true" ]
            }, {
              "value" : true,
              "when" : [ "isMulticomponent == false && isCHT == false", "isMulticomponent IS EMPTY", "isCHT IS EMPTY" ]
            }, {
              "value" : false,
              "when" : [ "isMulticomponent == false && isCHT == false", "isMulticomponent IS EMPTY", "isCHT IS EMPTY" ]
            } ]
          },
          "isMulticomponent" : {
            "title" : "Multicomponent",
            "type" : "boolean",
            "default" : false,
            "x-conditionalEnum" : [ {
              "value" : true,
              "when" : [ "isMultiphase == false && isCHT == false" ]
            }, {
              "value" : false,
              "when" : [ "isMultiphase == true", "isCHT == true" ]
            }, {
              "value" : false,
              "when" : [ "isMultiphase == false && isCHT == false" ]
            } ]
          },
          "isMultiphase" : {
            "title" : "Multiphase",
            "type" : "boolean",
            "default" : false,
            "x-conditionalEnum" : [ {
              "value" : true,
              "when" : [ "isMulticomponent == false && isCHT == false" ]
            }, {
              "value" : false,
              "when" : [ "isMulticomponent == true", "isCHT == true" ]
            }, {
              "value" : false,
              "when" : [ "isMulticomponent == false && isCHT == false" ]
            } ]
          },
          "isCHT" : {
            "title" : "Conjugate heat transfer",
            "type" : "boolean",
            "default" : false,
            "x-conditionalEnum" : [ {
              "value" : true,
              "when" : [ "isMulticomponent == false && isMultiphase == false" ]
            }, {
              "value" : false,
              "when" : [ "isMulticomponent == true", "isMultiphase == true" ]
            }, {
              "value" : false,
              "when" : [ "isMulticomponent == false && isMultiphase == false" ]
            } ]
          },
          "numberOfPhases" : {
            "title" : "Number of phases",
            "maximum" : 2,
            "exclusiveMaximum" : false,
            "minimum" : 2,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 2,
            "x-showWhen" : [ "1/isMultiphase == true" ]
          },
          "cavitationModel" : {
            "title" : "Cavitation model",
            "type" : "string",
            "default" : "NONE",
            "enum" : [ "CONSTANT_GAS_MASS_FRACTION", "NONE" ],
            "x-showWhen" : [ "1/isCompressible == false && 1/isMultiphase == false" ]
          },
          "turbulenceModel" : {
            "title" : "Turbulence model",
            "type" : "string",
            "description" : "Choose a turbulence model for your CFD analysis:<ul><li><strong>No turbulence</strong>: Laminar</li><li><strong>RANS</strong>: <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/' target='_blank'>k-epsilon</a></ul><p><p><a href='https://www.simscale.com/blog/2017/12/turbulence-cfd-analysis/' target='_blank'>Learn more</a>.</p>",
            "default" : "KEPSILON",
            "enum" : [ "NONE", "KEPSILON" ]
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_SimericsAnalysisTimeDependency"
          },
          "model" : {
            "$ref" : "#/components/schemas/FluidModel"
          },
          "materials" : {
            "$ref" : "#/components/schemas/SimericsMaterials"
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/FluidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SimericsAnalysisBoundaryConditions"
            }
          },
          "advancedConcepts" : {
            "$ref" : "#/components/schemas/AdvancedConcepts"
          },
          "numerics" : {
            "$ref" : "#/components/schemas/FluidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/FluidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          },
          "meshSettings" : {
            "$ref" : "#/components/schemas/OneOf_SimericsAnalysisMeshSettings"
          }
        },
        "additionalProperties" : false
      },
      "SimericsMaterials" : {
        "type" : "object",
        "properties" : {
          "fluids" : {
            "title" : "Fluids",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_SimericsMaterialsFluids"
            }
          },
          "solids" : {
            "title" : "Solids",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SolidCompressibleMaterial"
            }
          }
        },
        "additionalProperties" : false
      },
      "FluidCompressibleMaterial" : {
        "title" : "Fluid compressible material",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FluidCompressibleMaterial",
            "default" : "COMPRESSIBLE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "fluidType" : {
            "$ref" : "#/components/schemas/OneOf_FluidCompressibleMaterialFluidType"
          },
          "associatedPhase" : {
            "title" : "Associated phase",
            "type" : "string",
            "description" : "<p>Select the corresponding phase for this material:</p><p><b>Phase 0</b> would mean this material is represented by the phase fraction value of 0. Hence, a phase fraction of '0' in your setup corresponds to 100% of this fluid material.</p><p><b>Phase 1</b> would mean this material is represented by the phase fraction value of 1. Hence, a phase fraction of '1' in your setup corresponds to 100% of this fluid material.</p>",
            "default" : "PHASE_0",
            "enum" : [ "PHASE_0", "PHASE_1" ],
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMultiphase == true" ]
          },
          "specie" : {
            "$ref" : "#/components/schemas/SpecieDefault"
          },
          "transport" : {
            "$ref" : "#/components/schemas/OneOf_FluidCompressibleMaterialTransport"
          },
          "viscosityModel" : {
            "$ref" : "#/components/schemas/OneOf_FluidCompressibleMaterialViscosityModel"
          },
          "laminarPrandtlNumberFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          },
          "turbulentPrandtlNumber" : {
            "title" : "(Pr<t>) Turb. Prandtl number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Turbulent Prandtl number is used to calculate the heat transfer due to turbulent effects in the domain.",
            "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
          },
          "schmidtNumber" : {
            "title" : "(Sc) Schmidt Number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "The Schmidt number is a dimensionless number defined as the ratio of viscous diffusion to molecular mass diffusion. In dilute flows where a dominant carrier gas advects other species, it is assumed to be constant and a typical value is Sc = 5/6.",
            "default" : 0.8333,
            "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMulticomponent == true" ]
          },
          "specificHeatFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_SpecificHeat"
          },
          "equationOfState" : {
            "$ref" : "#/components/schemas/OneOf_FluidCompressibleMaterialEquationOfState"
          },
          "radiativeBehavior" : {
            "$ref" : "#/components/schemas/TransparentMaterial"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "type == EMBEDDED_BOUNDARY && allowExternalFlow == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX" ]
            }
          },
          "builtInMaterial" : {
            "type" : "string"
          },
          "materialLibraryReference" : {
            "$ref" : "#/components/schemas/MaterialLibraryReference"
          }
        },
        "additionalProperties" : false
      },
      "SpecieDefault" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p><b>Specie:</b> defines the molecular composition of the fluid material. Currently a single specie is available.</p>\n\nSchema name: SpecieDefault",
            "default" : "SPECIE"
          },
          "molarWeight" : {
            "$ref" : "#/components/schemas/Dimensional_MolarMass"
          }
        },
        "additionalProperties" : false,
        "description" : "<p><b>Specie:</b> defines the molecular composition of the fluid material. Currently a single specie is available.</p>"
      },
      "ConstTransport" : {
        "title" : "Const",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ConstTransport",
            "default" : "CONST"
          },
          "dynamicViscosity" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          },
          "dynamicViscosityFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_DynamicViscosity"
          },
          "prandtlNumber" : {
            "title" : "(Pr) Prandtl number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Prandtl number (<i>Pr</i>) is the ratio of momentum transport to thermal tranport. Fluids with low <i>Pr</i> are free flowing and good for heat conduction."
          },
          "turbulentPrandtlNumber" : {
            "title" : "(Pr<t>) Turb. Prandtl number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Turbulent Prandtl number is used to calculate the heat transfer due to turbulent effects in the domain.",
            "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,SIMERICS_ANALYSIS]" ]
          },
          "thermo" : {
            "$ref" : "#/components/schemas/OneOf_ConstTransportThermo"
          }
        },
        "additionalProperties" : false
      },
      "EConstThermo" : {
        "title" : "eConst",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br><p>The <b>Thermo models</b> are used to calculate the specific heat at constant pressure (<i>Cp</i>) for the fluid. The available models are:</p><p><b>hConst:</b> This model assumes a constant value for specific heat at fixed pressure (<i>Cp</i>). </p><p><b>eConst:</b> This model assumes a constant value for the specific heat at fixed volume (<i>Cv</i>). </p>\n\nSchema name: EConstThermo",
            "default" : "ECONST"
          },
          "specificHeat" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificHeat"
          },
          "equationOfState" : {
            "$ref" : "#/components/schemas/PerfectGasEquationOfState"
          }
        },
        "additionalProperties" : false,
        "description" : "<br><p>The <b>Thermo models</b> are used to calculate the specific heat at constant pressure (<i>Cp</i>) for the fluid. The available models are:</p><p><b>hConst:</b> This model assumes a constant value for specific heat at fixed pressure (<i>Cp</i>). </p><p><b>eConst:</b> This model assumes a constant value for the specific heat at fixed volume (<i>Cv</i>). </p>"
      },
      "PerfectGasEquationOfState" : {
        "title" : "Perfect gas",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>.\n\nSchema name: PerfectGasEquationOfState",
            "default" : "PERFECT_GAS"
          },
          "energy" : {
            "title" : "Energy",
            "type" : "string",
            "description" : "<p><b>Energy</b> provides the methods for the form of energy to be used. The options are:</p><p><b>Sensible enthalpy:</b> The enthalpy form of equation is used without the heat of formation. In most cases this is the recommended choice.</p><p><b>Sensible internal Energy:</b> The internal energy form of equation is used without the heat of formation but also incorporates energy change due to reactions.</p>",
            "x-showWhen" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ],
            "x-conditionalEnum" : [ {
              "value" : "SENSIBLE_ENTHALPY",
              "when" : [ "type == COMPRESSIBLE && 2/type == HCONST", "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ]
            }, {
              "value" : "SENSIBLE_INTERNAL_ENERGY",
              "when" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ]
            } ],
            "x-conditionalDefaults" : [ {
              "when" : [ "type == COMPRESSIBLE && 2/type == HCONST", "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ],
              "default" : "SENSIBLE_ENTHALPY"
            }, {
              "when" : [ "type == COMPRESSIBLE && 2/type == ECONST" ],
              "default" : "SENSIBLE_INTERNAL_ENERGY"
            } ]
          }
        },
        "additionalProperties" : false,
        "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>."
      },
      "HConstThermo" : {
        "title" : "hConst",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br><p>The <b>Thermo models</b> are used to calculate the specific heat at constant pressure (<i>Cp</i>) for the fluid. The available models are:</p><p><b>hConst:</b> This model assumes a constant value for specific heat at fixed pressure (<i>Cp</i>). </p><p><b>eConst:</b> This model assumes a constant value for the specific heat at fixed volume (<i>Cv</i>). </p>\n\nSchema name: HConstThermo",
            "default" : "HCONST"
          },
          "specificHeat" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificHeat"
          },
          "specificHeatFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_SpecificHeat"
          },
          "equationOfState" : {
            "$ref" : "#/components/schemas/OneOf_HConstThermoEquationOfState"
          }
        },
        "additionalProperties" : false,
        "description" : "<br><p>The <b>Thermo models</b> are used to calculate the specific heat at constant pressure (<i>Cp</i>) for the fluid. The available models are:</p><p><b>hConst:</b> This model assumes a constant value for specific heat at fixed pressure (<i>Cp</i>). </p><p><b>eConst:</b> This model assumes a constant value for the specific heat at fixed volume (<i>Cv</i>). </p>"
      },
      "RealGasEquationOfState" : {
        "title" : "Real gas",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>.\n\nSchema name: RealGasEquationOfState",
            "default" : "REAL_GAS"
          },
          "density" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Density"
          },
          "specificEnthalpy" : {
            "$ref" : "#/components/schemas/DimensionalFunction_SpecificEnergy"
          }
        },
        "additionalProperties" : false,
        "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>."
      },
      "VariableGroup_TEMP_PRESSURE" : {
        "type" : "object",
        "properties" : {
          "Temperature" : {
            "$ref" : "#/components/schemas/Unit_Temperature"
          },
          "Pressure" : {
            "$ref" : "#/components/schemas/Unit_Pressure"
          }
        }
      },
      "Unit_Pressure" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Pa", "lbf/in²", "hPa", "kPa", "MPa", "atm", "mbar", "bar", "mH2O", "mmH2O", "mmHg", "dyne/cm²", "inH2O", "ftH2O", "inHg", "psf" ]
          }
        }
      },
      "DimensionalFunction_SpecificEnergy" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_SpecificEnergyValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "J/kg", "Btu/lb" ]
          }
        },
        "additionalProperties" : false
      },
      "RhoConstEquationOfState" : {
        "title" : "Rho const.",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>.\n\nSchema name: RhoConstEquationOfState",
            "default" : "RHO_CONST"
          },
          "density" : {
            "$ref" : "#/components/schemas/Dimensional_Density"
          },
          "densityFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Density"
          },
          "energy" : {
            "title" : "Energy",
            "type" : "string",
            "description" : "<p><b>Energy</b> provides the methods for the form of energy to be used. The options are:</p><p><b>Sensible enthalpy:</b> The enthalpy form of equation is used without the heat of formation. In most cases this is the recommended choice.</p><p><b>Sensible internal Energy:</b> The internal energy form of equation is used without the heat of formation but also incorporates energy change due to reactions.</p>",
            "default" : "SENSIBLE_ENTHALPY",
            "x-showWhen" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ],
            "x-conditionalEnum" : [ {
              "value" : "SENSIBLE_ENTHALPY",
              "when" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER]" ]
            }, {
              "value" : "SENSIBLE_INTERNAL_ENERGY",
              "when" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER]", "type == CONJUGATE_HEAT_TRANSFER && 3/type in [CONST,SUTHERLAND]" ]
            } ]
          }
        },
        "additionalProperties" : false,
        "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>."
      },
      "PerfectFluidEquationOfState" : {
        "title" : "Perfect fluid",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>.\n\nSchema name: PerfectFluidEquationOfState",
            "default" : "PERFECT_FLUID"
          },
          "fluidConstant" : {
            "$ref" : "#/components/schemas/Dimensional_SpecificHeat"
          },
          "referenceDensity" : {
            "$ref" : "#/components/schemas/Dimensional_Density"
          },
          "energy" : {
            "title" : "Energy",
            "type" : "string",
            "description" : "<p><b>Energy</b> provides the methods for the form of energy to be used. The options are:</p><p><b>Sensible enthalpy:</b> The enthalpy form of equation is used without the heat of formation. In most cases this is the recommended choice.</p><p><b>Sensible internal Energy:</b> The internal energy form of equation is used without the heat of formation but also incorporates energy change due to reactions.</p>",
            "default" : "SENSIBLE_ENTHALPY",
            "enum" : [ "SENSIBLE_ENTHALPY", "SENSIBLE_INTERNAL_ENERGY" ]
          }
        },
        "additionalProperties" : false,
        "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>."
      },
      "IncompressiblePerfectGasEquationOfState" : {
        "title" : "Incompressible perfect gas",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>.\n\nSchema name: IncompressiblePerfectGasEquationOfState",
            "default" : "INCOMPRESSIBLE_PERFECT_GAS"
          },
          "referencePressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "energy" : {
            "title" : "Energy",
            "type" : "string",
            "description" : "<p><b>Energy</b> provides the methods for the form of energy to be used. The options are:</p><p><b>Sensible enthalpy:</b> The enthalpy form of equation is used without the heat of formation. In most cases this is the recommended choice.</p><p><b>Sensible internal Energy:</b> The internal energy form of equation is used without the heat of formation but also incorporates energy change due to reactions.</p>",
            "default" : "SENSIBLE_ENTHALPY",
            "enum" : [ "SENSIBLE_ENTHALPY", "SENSIBLE_INTERNAL_ENERGY" ]
          }
        },
        "additionalProperties" : false,
        "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>."
      },
      "AdiabaticPerfectFluidEquationOfState" : {
        "title" : "Adiabatic perfect fluid",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>.\n\nSchema name: AdiabaticPerfectFluidEquationOfState",
            "default" : "ADIABATIC_PERFECT_FLUID"
          },
          "referencePressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "referenceDensity" : {
            "$ref" : "#/components/schemas/Dimensional_Density"
          },
          "isentropicExponent" : {
            "title" : "Isentropic exponent",
            "type" : "number",
            "description" : "Specify the isentropic exponent. This parameter characterizes changes in density due to pressure. A Larger isentropic exponent results in less sensitivity of the density to reference pressure."
          },
          "pressureOffset" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "energy" : {
            "title" : "Energy",
            "type" : "string",
            "description" : "<p><b>Energy</b> provides the methods for the form of energy to be used. The options are:</p><p><b>Sensible enthalpy:</b> The enthalpy form of equation is used without the heat of formation. In most cases this is the recommended choice.</p><p><b>Sensible internal Energy:</b> The internal energy form of equation is used without the heat of formation but also incorporates energy change due to reactions.</p>",
            "default" : "SENSIBLE_ENTHALPY",
            "enum" : [ "SENSIBLE_ENTHALPY", "SENSIBLE_INTERNAL_ENERGY" ]
          }
        },
        "additionalProperties" : false,
        "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>."
      },
      "PengRobinsonGasEquationOfState" : {
        "title" : "Peng-Robinson",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>.\n\nSchema name: PengRobinsonGasEquationOfState",
            "default" : "PENG_ROBINSON_GAS"
          },
          "criticalTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "criticalVolume" : {
            "$ref" : "#/components/schemas/Dimensional_MolarMass"
          },
          "criticalPressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "acentricFactor" : {
            "title" : "Acentric factor",
            "type" : "number",
            "description" : "Specify the acentric factor. It is a property of the material that characterized the changes in thermodynamic properties of the fluid due to non-spherical molecules."
          },
          "energy" : {
            "title" : "Energy",
            "type" : "string",
            "description" : "<p><b>Energy</b> provides the methods for the form of energy to be used. The options are:</p><p><b>Sensible enthalpy:</b> The enthalpy form of equation is used without the heat of formation. In most cases this is the recommended choice.</p><p><b>Sensible internal Energy:</b> The internal energy form of equation is used without the heat of formation but also incorporates energy change due to reactions.</p>",
            "default" : "SENSIBLE_ENTHALPY",
            "enum" : [ "SENSIBLE_ENTHALPY", "SENSIBLE_INTERNAL_ENERGY" ]
          }
        },
        "additionalProperties" : false,
        "description" : "<br><p>The <b>Equation of state</b> describes the relation between density of a fluid and the fluid pressure and temperature. The available options are:</p><p><b>Rho const:</b> Fluid density is assumed constant.</p><p><b>Incompressibel perfect gas:</b> The fluid is assumed to be an 'Ideal Gas' that is incompressible by pressure. But, fluid density can change due to temperature.</p><p><b>Perfect gas:</b> Fluid is assumed to be an 'Ideal Gas' and obeys the 'Ideal Gas Law'.</p><p><b>Perfect fluid:</b> Fluid density can change due to pressure and temperature with respect to a base value.</p><p><b>Adiabatic perfect fluid:</b> The fluid is a perfect fluid which is adiabatic in nature.</p> <a href='https://www.simscale.com/docs/simulation-setup/materials/thermophysical-fluid-models/#equation-of-state' target='_blank'>Learn more</a>."
      },
      "SutherlandTransport" : {
        "title" : "Sutherland",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SutherlandTransport",
            "default" : "SUTHERLAND"
          },
          "referenceViscosity" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          },
          "referenceTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "ts" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "thermo" : {
            "$ref" : "#/components/schemas/OneOf_SutherlandTransportThermo"
          }
        },
        "additionalProperties" : false
      },
      "HerschelBulkleyTransport" : {
        "title" : "Herschel–Bulkley Viscosity",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HerschelBulkleyTransport",
            "default" : "HERSCHEL_BULKLEY"
          },
          "viscosityModel" : {
            "$ref" : "#/components/schemas/StandardHerschelBulkleyViscosityModel"
          },
          "prandtlNumber" : {
            "title" : "(Pr) Prandtl number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Prandtl number (<i>Pr</i>) is the ratio of momentum transport to thermal tranport. Fluids with low <i>Pr</i> are free flowing and good for heat conduction."
          },
          "turbulentPrandtlNumber" : {
            "title" : "(Pr<t>) Turb. Prandtl number",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "Turbulent Prandtl number is used to calculate the heat transfer due to turbulent effects in the domain."
          },
          "thermo" : {
            "$ref" : "#/components/schemas/HConstThermo"
          }
        },
        "additionalProperties" : false
      },
      "SutherlandViscosity" : {
        "title" : "Sutherland",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SutherlandViscosity",
            "default" : "SUTHERLAND_VISCOSITY"
          },
          "referenceViscosity" : {
            "$ref" : "#/components/schemas/Dimensional_DynamicViscosity"
          },
          "referenceTemperature" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          },
          "ts" : {
            "$ref" : "#/components/schemas/Dimensional_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "SolidCompressibleMaterial" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "specie" : {
            "$ref" : "#/components/schemas/SpecieDefault"
          },
          "transport" : {
            "$ref" : "#/components/schemas/OneOf_SolidCompressibleMaterialTransport"
          },
          "emissivity" : {
            "title" : "Emissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.9,
            "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true" ]
          },
          "radiativeBehavior" : {
            "$ref" : "#/components/schemas/OneOf_SolidCompressibleMaterialRadiativeBehavior"
          },
          "electricConductivityType" : {
            "$ref" : "#/components/schemas/OneOf_SolidCompressibleMaterialElectricConductivityType"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "builtInMaterial" : {
            "type" : "string"
          },
          "materialLibraryReference" : {
            "$ref" : "#/components/schemas/MaterialLibraryReference"
          }
        },
        "additionalProperties" : false
      },
      "ConstIsoTransport" : {
        "title" : "Isotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>The thermal conductivity of a material is a measure of its ability to conduct heat.<ul><li><strong>Isotropic</strong>: the thermal conductivity &kappa; is the same in all directions.</li><li><strong>Orthotropic</strong>: the thermal conductivity is unique and independent in three orthogonal directions. It is defined by &kappa;<sub>x</sub>, &kappa;<sub>y</sub>, and &kappa;<sub>z</sub>.</li><li><strong>Cross-plane orthotropic</strong>: it is defined by an <em>in-plane</em> conductivity, which is an isotropic conductivity on a given plane, and a <em>cross-plane<strong>&nbsp;</strong></em>conductivity, which acts in the direction normal to the aforementioned plane.</li></ul></p>\n\nSchema name: ConstIsoTransport",
            "default" : "CONST_ISO"
          },
          "conductivity" : {
            "$ref" : "#/components/schemas/IsotropicConductivity"
          },
          "thermo" : {
            "$ref" : "#/components/schemas/HConstThermo"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>The thermal conductivity of a material is a measure of its ability to conduct heat.<ul><li><strong>Isotropic</strong>: the thermal conductivity &kappa; is the same in all directions.</li><li><strong>Orthotropic</strong>: the thermal conductivity is unique and independent in three orthogonal directions. It is defined by &kappa;<sub>x</sub>, &kappa;<sub>y</sub>, and &kappa;<sub>z</sub>.</li><li><strong>Cross-plane orthotropic</strong>: it is defined by an <em>in-plane</em> conductivity, which is an isotropic conductivity on a given plane, and a <em>cross-plane<strong>&nbsp;</strong></em>conductivity, which acts in the direction normal to the aforementioned plane.</li></ul></p>"
      },
      "ConstAnIsoTransport" : {
        "title" : "Orthotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>The thermal conductivity of a material is a measure of its ability to conduct heat.<ul><li><strong>Isotropic</strong>: the thermal conductivity &kappa; is the same in all directions.</li><li><strong>Orthotropic</strong>: the thermal conductivity is unique and independent in three orthogonal directions. It is defined by &kappa;<sub>x</sub>, &kappa;<sub>y</sub>, and &kappa;<sub>z</sub>.</li><li><strong>Cross-plane orthotropic</strong>: it is defined by an <em>in-plane</em> conductivity, which is an isotropic conductivity on a given plane, and a <em>cross-plane<strong>&nbsp;</strong></em>conductivity, which acts in the direction normal to the aforementioned plane.</li></ul></p>\n\nSchema name: ConstAnIsoTransport",
            "default" : "CONST_AN_ISO"
          },
          "conductivity" : {
            "$ref" : "#/components/schemas/OrthotropicConductivity"
          },
          "orientation" : {
            "$ref" : "#/components/schemas/OneOf_ConstAnIsoTransportOrientation"
          },
          "thermo" : {
            "$ref" : "#/components/schemas/HConstThermo"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>The thermal conductivity of a material is a measure of its ability to conduct heat.<ul><li><strong>Isotropic</strong>: the thermal conductivity &kappa; is the same in all directions.</li><li><strong>Orthotropic</strong>: the thermal conductivity is unique and independent in three orthogonal directions. It is defined by &kappa;<sub>x</sub>, &kappa;<sub>y</sub>, and &kappa;<sub>z</sub>.</li><li><strong>Cross-plane orthotropic</strong>: it is defined by an <em>in-plane</em> conductivity, which is an isotropic conductivity on a given plane, and a <em>cross-plane<strong>&nbsp;</strong></em>conductivity, which acts in the direction normal to the aforementioned plane.</li></ul></p>"
      },
      "ConstCrossPlaneOrthotropicTransport" : {
        "title" : "Cross-plane orthotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>The thermal conductivity of a material is a measure of its ability to conduct heat.<ul><li><strong>Isotropic</strong>: the thermal conductivity &kappa; is the same in all directions.</li><li><strong>Orthotropic</strong>: the thermal conductivity is unique and independent in three orthogonal directions. It is defined by &kappa;<sub>x</sub>, &kappa;<sub>y</sub>, and &kappa;<sub>z</sub>.</li><li><strong>Cross-plane orthotropic</strong>: it is defined by an <em>in-plane</em> conductivity, which is an isotropic conductivity on a given plane, and a <em>cross-plane<strong>&nbsp;</strong></em>conductivity, which acts in the direction normal to the aforementioned plane.</li></ul></p>\n\nSchema name: ConstCrossPlaneOrthotropicTransport",
            "default" : "CONST_CROSS_PLANE_ORTHO"
          },
          "conductivity" : {
            "$ref" : "#/components/schemas/CrossPlaneOrthotropicConductivity"
          },
          "orientation" : {
            "$ref" : "#/components/schemas/OneOf_ConstCrossPlaneOrthotropicTransportOrientation"
          },
          "thermo" : {
            "$ref" : "#/components/schemas/HConstThermo"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>The thermal conductivity of a material is a measure of its ability to conduct heat.<ul><li><strong>Isotropic</strong>: the thermal conductivity &kappa; is the same in all directions.</li><li><strong>Orthotropic</strong>: the thermal conductivity is unique and independent in three orthogonal directions. It is defined by &kappa;<sub>x</sub>, &kappa;<sub>y</sub>, and &kappa;<sub>z</sub>.</li><li><strong>Cross-plane orthotropic</strong>: it is defined by an <em>in-plane</em> conductivity, which is an isotropic conductivity on a given plane, and a <em>cross-plane<strong>&nbsp;</strong></em>conductivity, which acts in the direction normal to the aforementioned plane.</li></ul></p>"
      },
      "CrossPlaneOrthotropicConductivity" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CrossPlaneOrthotropicConductivity",
            "default" : "CROSS_PLANE_ORTHOTROPIC"
          },
          "inPlaneConductivity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalConductivity"
          },
          "crossPlaneConductivity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalConductivity"
          }
        },
        "additionalProperties" : false
      },
      "XAxis" : {
        "title" : "x-Axis",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: XAxis",
            "default" : "XAXIS"
          }
        },
        "additionalProperties" : false
      },
      "YAxis" : {
        "title" : "y-Axis",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: YAxis",
            "default" : "YAXIS"
          }
        },
        "additionalProperties" : false
      },
      "ZAxis" : {
        "title" : "z-Axis",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ZAxis",
            "default" : "ZAXIS"
          }
        },
        "additionalProperties" : false
      },
      "CrossPlaneCustomOrientation" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CrossPlaneCustomOrientation",
            "default" : "CROSS_PLANE"
          },
          "crossPlaneOrientation" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "SemiTransparentMaterial" : {
        "title" : "Semi-transparent material",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SemiTransparentMaterial",
            "default" : "SEMI_TRANSPARENT_MATERIAL"
          },
          "emissivity" : {
            "title" : "Emissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "transmissivity" : {
            "title" : "Transmissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0
          }
        },
        "additionalProperties" : false
      },
      "OpaqueMaterial" : {
        "title" : "Opaque material",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OpaqueMaterial",
            "default" : "OPAQUE_MATERIAL"
          },
          "emissivity" : {
            "title" : "Emissivity",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.9
          }
        },
        "additionalProperties" : false
      },
      "Dielectric" : {
        "title" : "Dielectric",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Dielectric materials do not conduct electric field.\n\nSchema name: Dielectric",
            "default" : "DIELECTRIC"
          }
        },
        "additionalProperties" : false,
        "description" : "Dielectric materials do not conduct electric field."
      },
      "IsotropicElectricConductivity" : {
        "title" : "Isotropic conductor",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent. Orthotropic means directionally dependent.</p>\n\nSchema name: IsotropicElectricConductivity",
            "default" : "ISOTROPIC_ELECTRIC_CONDUCTIVITY"
          },
          "electricResistivityFunction" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricResistivity"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent. Orthotropic means directionally dependent.</p>"
      },
      "DimensionalFunction_ElectricResistivity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_ElectricResistivityValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "Ω·m", "Ω·in" ]
          }
        },
        "additionalProperties" : false
      },
      "OrthotropicElectricConductivity" : {
        "title" : "Orthotropic conductor",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent. Orthotropic means directionally dependent.</p>\n\nSchema name: OrthotropicElectricConductivity",
            "default" : "ORTHOTROPIC_ELECTRIC_CONDUCTIVITY"
          },
          "electricResistivityX" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricResistivity"
          },
          "electricResistivityY" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricResistivity"
          },
          "electricResistivityZ" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricResistivity"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define the directional dependency of this property. Isotropic means directionally independent. Orthotropic means directionally dependent.</p>"
      },
      "AutomaticSimericsMeshSettings" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticSimericsMeshSettings",
            "default" : "AUTOMATIC_SETTINGS"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_AutomaticSimericsMeshSettingsRefinements"
            }
          },
          "fineness" : {
            "title" : "Fineness",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>Adjust the overall mesh sizing from coarse (value: 0) to fine (10).</p>",
            "default" : 1,
            "x-divisibleBy" : 0.1
          },
          "enableCADSurfaceMerging" : {
            "title" : "Merge CAD surfaces",
            "type" : "boolean",
            "description" : "<b>Merge CAD surfaces</b> combines all surfaces of the CAD model that are <i>not</i> assigned a boundary condition or result control. With this turned on, the probability of successful mesh generation for more complicated geometries significantly increases. If you need to inspect unassigned surfaces separately, turn it off. For more information, please contact Support.",
            "default" : true
          }
        },
        "additionalProperties" : false
      },
      "RegionRefinementSimerics" : {
        "title" : "Region refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RegionRefinementSimerics",
            "default" : "REGION_REFINEMENT_SIMERICS"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Region refinement"
          },
          "refinementCellSizeAbsolute" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "refinementCellSizeRelative" : {
            "title" : "Target cell size (relative to CAD)",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "This parameter defines the length scale to which the entire region enclosed by the refinement zone needs to be resolved. Due to the binary-tree mesh generation approach applied, the actual cell size might be equal or smaller than the target cell size specified. Choosing a finer resolution will resolve the enclosed region to a greater level of detail, but will result in a larger mesh. This typically means longer runtimes and bigger sizes of results.",
            "default" : 1,
            "x-showWhen" : [ "meshSettings.type == MANUAL_SETTINGS && meshSettings.cellSizeSpecification.type == RELATIVE_TO_ALL_CAD_SURFACES" ]
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "CARTESIAN_BOX", "CYLINDER" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "SurfaceRefinementSimerics" : {
        "title" : "Surface refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SurfaceRefinementSimerics",
            "default" : "SURFACE_REFINEMENT_SIMERICS"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Surface refinement"
          },
          "refinementCellSizeAbsolute" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "refinementCellSizeRelative" : {
            "title" : "Target cell size (relative to CAD)",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "This parameter defines the length scale to which the entire region enclosed by the refinement zone needs to be resolved. Due to the binary-tree mesh generation approach applied, the actual cell size might be equal or smaller than the target cell size specified. Choosing a finer resolution will resolve the enclosed region to a greater level of detail, but will result in a larger mesh. This typically means longer runtimes and bigger sizes of results.",
            "default" : 1,
            "x-showWhen" : [ "meshSettings.type == MANUAL_SETTINGS && meshSettings.cellSizeSpecification.type == RELATIVE_TO_ALL_CAD_SURFACES" ]
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "ManualSimericsMeshSettings" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualSimericsMeshSettings",
            "default" : "MANUAL_SETTINGS"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_ManualSimericsMeshSettingsRefinements"
            }
          },
          "cellSizeSpecification" : {
            "$ref" : "#/components/schemas/OneOf_ManualSimericsMeshSettingsCellSizeSpecification"
          },
          "enableCADSurfaceMerging" : {
            "title" : "Merge CAD surfaces",
            "type" : "boolean",
            "description" : "<b>Merge CAD surfaces</b> combines all surfaces of the CAD model that are <i>not</i> assigned a boundary condition or result control. With this turned on, the probability of successful mesh generation for more complicated geometries significantly increases. If you need to inspect unassigned surfaces separately, turn it off. For more information, please contact Support.",
            "default" : true
          }
        },
        "additionalProperties" : false
      },
      "RelativeToAllCadSurfacesSettings" : {
        "title" : "Relative to CAD",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeToAllCadSurfacesSettings",
            "default" : "RELATIVE_TO_ALL_CAD_SURFACES"
          },
          "minimumCellSize" : {
            "title" : "Minimum cell size",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "<p>This parameter specifies the <b>minimum size for all cells</b> of the mesh relative to the diagonal of the CAD model. A higher value leads to a coarser mesh. Our recommendation is to start with the default value and if necessary, gradually lower the parameter until a desired mesh fineness is obtained.</p>",
            "default" : 7.0E-4
          },
          "maximumCellSize" : {
            "title" : "Maximum cell size",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "<p>This parameter specifies the <b>maximum size for all cells</b> of the mesh relative to the diagonal of the CAD model. A lower value leads to a finer mesh. Our recommendation is to start with the default value and if necessary, gradually lower the parameter until a desired mesh fineness is obtained.</p>",
            "default" : 0.02
          },
          "cellSizeOnSurfaces" : {
            "title" : "Cell size on surfaces",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "<p>This parameter specifies the <b>size of cells close to the surfaces</b> relative to the diagonal of the CAD model. A higher value leads to a coarser mesh. Our recommendation is to start with the default value and if necessary, gradually lower the parameter until a desired mesh fineness is obtained.</p>",
            "default" : 0.01
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteToAllCadSurfacesSettings" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteToAllCadSurfacesSettings",
            "default" : "ABSOLUTE_TO_ALL_CAD_SURFACES"
          },
          "minimumCellSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "maximumCellSize" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "cellSizeOnSurfaces" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "enableGrowthRate" : {
            "title" : "Specify growth rate",
            "type" : "boolean",
            "description" : "<p><b>Specify growth rate</b>: Define the cell size growth rate between interior cells and surface cells.</p>",
            "default" : false
          },
          "growthRate" : {
            "title" : "Growth rate",
            "maximum" : 8,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "The <i>Growth rate</i> defines the cell size ratio between interior cell size and surface cell size. It needs to be <b>a whole number</b> always greater than 1 and smaller or equal to 8, such that the cell size increases towards the interior of the mesh.",
            "default" : 2,
            "x-showWhen" : [ "1/enableGrowthRate == true" ]
          }
        },
        "additionalProperties" : false
      },
      "WindComfort" : {
        "title" : "Pedestrian Wind Comfort",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WindComfort",
            "default" : "WIND_COMFORT"
          },
          "regionOfInterest" : {
            "$ref" : "#/components/schemas/RegionOfInterest"
          },
          "windConditions" : {
            "$ref" : "#/components/schemas/WindConditions"
          },
          "pedestrianComfortMap" : {
            "title" : "Pedestrian comfort map",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/PedestrianComfortSurface"
            }
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/WindComfortSimulationControl"
          },
          "advancedModelling" : {
            "$ref" : "#/components/schemas/AdvancedModelling"
          },
          "additionalResultExport" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          },
          "meshSettings" : {
            "$ref" : "#/components/schemas/WindComfortMesh"
          }
        },
        "additionalProperties" : false
      },
      "RegionOfInterest" : {
        "type" : "object",
        "properties" : {
          "discRadius" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "centerPoint" : {
            "$ref" : "#/components/schemas/DimensionalVector2d_Length"
          },
          "groundHeight" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "northAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "advancedSettings" : {
            "$ref" : "#/components/schemas/AdvancedROISettings"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalVector2d_Length" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/DecimalVector2d"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "m", "in", "mm", "cm", "ft", "yd" ]
          }
        },
        "additionalProperties" : false
      },
      "DecimalVector2d" : {
        "type" : "object",
        "properties" : {
          "x" : {
            "title" : "X",
            "type" : "number"
          },
          "y" : {
            "title" : "Y",
            "type" : "number"
          }
        },
        "additionalProperties" : false
      },
      "AdvancedROISettings" : {
        "type" : "object",
        "properties" : {
          "windTunnelSize" : {
            "$ref" : "#/components/schemas/OneOf_AdvancedROISettingsWindTunnelSize"
          }
        },
        "additionalProperties" : false
      },
      "WindTunnelSizeModerate" : {
        "title" : "Moderate",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WindTunnelSizeModerate",
            "default" : "WIND_TUNNEL_SIZE_MODERATE"
          }
        },
        "additionalProperties" : false
      },
      "WindTunnelSizeLarge" : {
        "title" : "Large",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WindTunnelSizeLarge",
            "default" : "WIND_TUNNEL_SIZE_LARGE"
          }
        },
        "additionalProperties" : false
      },
      "WindTunnelSizeCustom" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WindTunnelSizeCustom",
            "default" : "WIND_TUNNEL_SIZE_CUSTOM"
          },
          "heightExtension" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "sideExtension" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "inflowExtension" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "outflowExtension" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "WindConditions" : {
        "type" : "object",
        "properties" : {
          "geographicalLocation" : {
            "$ref" : "#/components/schemas/GeographicalLocation"
          },
          "windRose" : {
            "$ref" : "#/components/schemas/WindRose"
          }
        },
        "additionalProperties" : false
      },
      "GeographicalLocation" : {
        "type" : "object",
        "properties" : {
          "latitude" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "longitude" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          }
        },
        "additionalProperties" : false
      },
      "WindRose" : {
        "required" : [ "velocityUnit" ],
        "type" : "object",
        "properties" : {
          "numDirections" : {
            "title" : "Num directions",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 16
          },
          "velocityBuckets" : {
            "title" : "Velocity buckets",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/WindRoseVelocityBucket"
            }
          },
          "velocityUnit" : {
            "title" : "Velocity unit",
            "type" : "string",
            "default" : "m/s"
          },
          "exposureCategories" : {
            "title" : "Exposure categories",
            "type" : "array",
            "items" : {
              "type" : "string",
              "enum" : [ "EC1", "EC2", "EC3", "EC4", "EC5", "EC6" ]
            }
          },
          "windEngineeringStandard" : {
            "title" : "Wind engineering standard",
            "type" : "string",
            "default" : "EU",
            "enum" : [ "EU", "AS_NZS", "NEN8100", "LONDON", "AIJ" ]
          },
          "windDataSource" : {
            "type" : "string",
            "enum" : [ "METEOBLUE", "USER_UPLOAD" ]
          },
          "addSurfaceRoughness" : {
            "type" : "boolean",
            "default" : true
          },
          "gustFactorV2" : {
            "title" : "Gust factor",
            "maximum" : 3.5,
            "exclusiveMaximum" : false,
            "minimum" : 1.5,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 2.5,
            "x-showWhen" : [ "1/windEngineeringStandard == AIJ" ]
          }
        },
        "additionalProperties" : false
      },
      "WindRoseVelocityBucket" : {
        "type" : "object",
        "properties" : {
          "from" : {
            "title" : "From",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number"
          },
          "to" : {
            "title" : "To",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number"
          },
          "fractions" : {
            "title" : "Fractions",
            "type" : "array",
            "items" : {
              "type" : "number"
            }
          }
        },
        "additionalProperties" : false
      },
      "PedestrianComfortSurface" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heightAboveGround" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "ground" : {
            "$ref" : "#/components/schemas/OneOf_PedestrianComfortSurfaceGround"
          }
        },
        "additionalProperties" : false
      },
      "GroundAbsolute" : {
        "title" : "Ground absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GroundAbsolute",
            "default" : "GROUND_ABSOLUTE"
          }
        },
        "additionalProperties" : false
      },
      "GroundRelative" : {
        "title" : "Ground relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GroundRelative",
            "default" : "GROUND_RELATIVE"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "WindComfortSimulationControl" : {
        "type" : "object",
        "properties" : {
          "maxDirectionRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "numberOfFluidPasses" : {
            "title" : "Number of fluid passes",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "<p>Set how many times the fluid (air) passes over the domain during the simulation.</p><p> <b>Warning</b>: Values below 2.0 might produce invalid results while higher numbers will require more simulation time and consequently more GPU hours. Recommended value is 3.0. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/simulation-control/' target='_blank'>Learn more</a>.</p>",
            "default" : 3.0
          },
          "velocityScaling" : {
            "title" : "Velocity scaling",
            "maximum" : 0.25,
            "exclusiveMaximum" : false,
            "minimum" : 0.025,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>It affects the stability of the simulation. The default value of 0.1 is a good compromise between accuracy and computational requirements. Lower values of this parameter might increase the stability of the simulation at the cost of higher computational time.</p>",
            "default" : 0.1
          }
        },
        "additionalProperties" : false
      },
      "WindComfortMesh" : {
        "type" : "object",
        "properties" : {
          "windComfortFineness" : {
            "$ref" : "#/components/schemas/OneOf_WindComfortMeshWindComfortFineness"
          },
          "automaticGapClosing" : {
            "$ref" : "#/components/schemas/OneOf_WindComfortMeshAutomaticGapClosing"
          },
          "progressiveRefinement" : {
            "$ref" : "#/components/schemas/ProgressiveRefinement"
          },
          "reynoldsScalingType" : {
            "$ref" : "#/components/schemas/OneOf_WindComfortMeshReynoldsScalingType"
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_WindComfortMeshRefinements"
            }
          }
        },
        "additionalProperties" : false
      },
      "SurfaceRefinementWindComfort" : {
        "title" : "Surface refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SurfaceRefinementWindComfort",
            "default" : "SURFACE_REFINEMENT_WIND_COMFORT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Surface refinement"
          },
          "newFineness" : {
            "$ref" : "#/components/schemas/OneOf_SurfaceRefinementWindComfortNewFineness"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "RegionRefinementWindComfort" : {
        "title" : "Region refinement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RegionRefinementWindComfort",
            "default" : "REGION_REFINEMENT_WIND_COMFORT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "default" : "Region refinement"
          },
          "newFineness" : {
            "$ref" : "#/components/schemas/OneOf_RegionRefinementWindComfortNewFineness"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "ROTATABLE_CARTESIAN_BOX", "LOCAL_CARTESIAN_BOX", "LOCAL_SPHERE" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "Compressible" : {
        "title" : "Compressible",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Compressible",
            "default" : "COMPRESSIBLE"
          },
          "turbulenceModel" : {
            "title" : "Turbulence model",
            "type" : "string",
            "description" : "Choose a turbulence model for your CFD analysis:<ul><li><strong>No turbulence</strong>: Laminar</li><li><strong>RANS</strong>: <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#standard-k-epsilon-model' target='_blank'>k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#realizable-k-epsilon-model' target='_blank'>Realizable k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-omega-sst/' target='_blank'>k-omega and k-omega SST</a></li><li><strong>LES</strong>: Smagorinsky, Spalart-Allmaras</li></ul><p><p><a href='https://www.simscale.com/blog/2017/12/turbulence-cfd-analysis/' target='_blank'>Learn more</a>.</p>",
            "default" : "KOMEGASST",
            "enum" : [ "SMAGORINSKY", "SPALARTALLMARAS", "NONE", "KEPSILON", "KOMEGASST" ]
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_CompressibleTimeDependency"
          },
          "model" : {
            "$ref" : "#/components/schemas/FluidModel"
          },
          "materials" : {
            "$ref" : "#/components/schemas/CompressibleFluidMaterials"
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/FluidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_CompressibleBoundaryConditions"
            }
          },
          "advancedConcepts" : {
            "$ref" : "#/components/schemas/AdvancedConcepts"
          },
          "numerics" : {
            "$ref" : "#/components/schemas/FluidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/FluidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          }
        },
        "additionalProperties" : false
      },
      "CompressibleFluidMaterials" : {
        "type" : "object",
        "properties" : {
          "fluids" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FluidCompressibleMaterial"
            }
          }
        },
        "additionalProperties" : false
      },
      "ConvectiveHeatTransfer" : {
        "title" : "Convective Heat Transfer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ConvectiveHeatTransfer",
            "default" : "CONVECTIVE_HEAT_TRANSFER"
          },
          "isCompressible" : {
            "title" : "Compressible",
            "type" : "boolean",
            "description" : "<ul><li>Toggle off <em>Compressible</em> for small temperature variations within the domain, for example, in natural convection simulations (Boussinesq approximation). Use Gauge pressure (0 Pa). </li><li>Toggle on <em>Compressible</em> to calculate resulting density variations within the domain based on pressure and temperature. Use Absolute pressure (for example, 101325 Pa at sea level)</li></ul>",
            "default" : false
          },
          "turbulenceModel" : {
            "title" : "Turbulence model",
            "type" : "string",
            "description" : "Choose a turbulence model for your CFD analysis:<ul><li><strong>No turbulence</strong>: Laminar</li><li><strong>RANS</strong>: <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#standard-k-epsilon-model' target='_blank'>k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#realizable-k-epsilon-model' target='_blank'>Realizable k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-omega-sst/' target='_blank'>k-omega and k-omega SST</a></li><li><strong>LES</strong>: Smagorinsky, Spalart-Allmaras</li></ul><p><p><a href='https://www.simscale.com/blog/2017/12/turbulence-cfd-analysis/' target='_blank'>Learn more</a>.</p>",
            "default" : "KOMEGASST",
            "enum" : [ "SMAGORINSKY", "SPALARTALLMARAS", "NONE", "KEPSILON", "KOMEGASST" ]
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_ConvectiveHeatTransferTimeDependency"
          },
          "enableRadiation" : {
            "title" : "Radiation",
            "type" : "boolean",
            "description" : "Heat transfer through radiation takes place in the form of electromagnetic waves and it can be calculated in the simulation. This phenomenon becomes more important when the temperature differences in the simulation domain are large. <a href='https://www.simscale.com/docs/analysis-types/convective-heat-transfer-analysis/radiation/' target='_blank'>Learn more</a>.",
            "default" : false,
            "x-showWhen" : [ "timeDependency.type == STATIONARY" ]
          },
          "numOfPassiveSpecies" : {
            "title" : "Passive species",
            "maximum" : 10,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Select the number of passive species involved in the simulation. Passive species allow you to simulate the transport of a scalar quantity within a fluid flow without affecting it. <a href='https://www.simscale.com/docs/simulation-setup/global-settings/#passive-species' target='_blank'>Learn more</a>.",
            "format" : "int64",
            "default" : 0,
            "enum" : [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
          },
          "model" : {
            "$ref" : "#/components/schemas/FluidModel"
          },
          "materials" : {
            "$ref" : "#/components/schemas/ConvectiveHeatTransferMaterials"
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/FluidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_ConvectiveHeatTransferBoundaryConditions"
            }
          },
          "advancedConcepts" : {
            "$ref" : "#/components/schemas/AdvancedConcepts"
          },
          "numerics" : {
            "$ref" : "#/components/schemas/FluidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/FluidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          }
        },
        "additionalProperties" : false
      },
      "ConvectiveHeatTransferMaterials" : {
        "type" : "object",
        "properties" : {
          "fluids" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_ConvectiveHeatTransferMaterialsFluids"
            }
          }
        },
        "additionalProperties" : false
      },
      "NaturalConvectionInletOutletBC" : {
        "title" : "Natural convection inlet/outlet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This boundary condition is suitable for an <b>open boundary</b> where the air can enter or exit freely from or to the <b>atmosphere<b>. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/natural-convection-inlet-outlet/' target='_blank'>Learn more</a>.</P>\n\nSchema name: NaturalConvectionInletOutletBC",
            "default" : "NATURAL_CONVECTION_INLET_OUTLET"
          },
          "name" : {
            "title" : "Name",
            "type" : "string",
            "x-showWhen" : [ "1# != externalFlowBoundaryCondition" ]
          },
          "pressureRgh" : {
            "$ref" : "#/components/schemas/OneOf_NaturalConvectionInletOutletBCPressureRgh"
          },
          "gaugePressureRgh" : {
            "$ref" : "#/components/schemas/AmbientPBC"
          },
          "turbulence" : {
            "$ref" : "#/components/schemas/OneOf_NaturalConvectionInletOutletBCTurbulence"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/AmbientTBC"
          },
          "passiveScalars" : {
            "title" : "Passive scalars",
            "type" : "array",
            "description" : "Please choose a boundary condition for passive scalar (T).",
            "items" : {
              "$ref" : "#/components/schemas/InletOutletPSBC"
            },
            "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0" ]
          },
          "netRadiativeHeatFlux" : {
            "$ref" : "#/components/schemas/OneOf_NaturalConvectionInletOutletBCNetRadiativeHeatFlux"
          },
          "radiativeIntensityRay" : {
            "$ref" : "#/components/schemas/OpenBoundaryRayBC"
          },
          "relativeHumidity" : {
            "$ref" : "#/components/schemas/InletOutletRHBC"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This boundary condition is suitable for an <b>open boundary</b> where the air can enter or exit freely from or to the <b>atmosphere<b>. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/natural-convection-inlet-outlet/' target='_blank'>Learn more</a>.</P>"
      },
      "AmbientPBC" : {
        "title" : "Fixed pressure value",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AmbientPBC",
            "default" : "AMBIENT_PRESSURE"
          },
          "ambientPressure" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "CoupledConjugateHeatTransfer" : {
        "title" : "Conjugate Heat Transfer",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CoupledConjugateHeatTransfer",
            "default" : "COUPLED_CONJUGATE_HEAT_TRANSFER"
          },
          "isCompressible" : {
            "title" : "Compressible",
            "type" : "boolean",
            "description" : "<ul><li>Toggle off <em>Compressible</em> for small temperature variations within the domain, for example, in natural convection simulations (Boussinesq approximation). Use Gauge pressure (0 Pa). </li><li>Toggle on <em>Compressible</em> to calculate resulting density variations within the domain based on pressure and temperature. Use Absolute pressure (for example, 101325 Pa at sea level)</li></ul>",
            "default" : false
          },
          "enableRadiation" : {
            "title" : "Radiation",
            "type" : "boolean",
            "description" : "Heat transfer through radiation takes place in the form of electromagnetic waves and it can be calculated in the simulation. This phenomenon becomes more important when the temperature differences in the simulation domain are large. <a href='https://www.simscale.com/docs/analysis-types/convective-heat-transfer-analysis/radiation/' target='_blank'>Learn more</a>.",
            "default" : false
          },
          "radiationModel" : {
            "title" : "Radiation model",
            "type" : "string",
            "description" : "Choose a radiation model:<ul><li> Use the <strong>Discrete Ordinates</strong> model for steady-state cases with complex surfaces or semi-transparent solids.</li><li> Use the <strong>View Factors</strong> model for faster simulations of less complex geometries; it is suitable for both steady-state and transient cases. <strong>Transparent solids are not supported with this model.</strong></li></ul>",
            "default" : "FV_DOM",
            "enum" : [ "FV_DOM", "VIEW_FACTORS" ],
            "x-showWhen" : [ "enableRadiation == true" ]
          },
          "enableSolarLoad" : {
            "title" : "Solar load",
            "type" : "boolean",
            "description" : "Enables the <b>solar load</b> model in the simulation. <b>Diffuse</b> and/or <b>directional</b> solar load contributions are specified in the <b>solar calculator</b>. The solar load terms will heat the external faces of the simulation domain. Moreover, if transparent and/or semi-transparent boundaries are present, internal surfaces of the domain might also be heated. All <b>internal solids</b> will be considered <b>opaque</b>. <a href='https://www.simscale.com/docs/analysis-types/conjugate-heat-transfer-analysis/solar-load/' target='_blank'>Learn more</a>.",
            "default" : false
          },
          "enableHumidityModel" : {
            "title" : "Relative humidity",
            "type" : "boolean",
            "description" : "<b>Humidity model</b> to simulate wet air. First turn on the <em>compressible</em> toggle to enable it. The simulation will take the effect of humid air on the flow field into account. Dry air is heavier than wet air and hence sinks. The model does not account for condensation and evaporation and is not applicable in cases where this is of concern, for example dehumidifiers. It is suitable for HVAC analysis and for temperature ranges of <b>0° to 100°C</b>. </li></ul></p><a href= https://www.simscale.com/docs/simulation-setup/global-settings/humidity-modeling/' target='_blank'>Learn more</a>.",
            "default" : false,
            "x-conditionalEnum" : [ {
              "value" : true,
              "when" : [ "isCompressible == true" ]
            }, {
              "value" : false,
              "when" : [ "isCompressible == false" ]
            }, {
              "value" : false,
              "when" : [ "isCompressible == true" ]
            } ]
          },
          "enableJouleHeating" : {
            "title" : "Joule heating",
            "type" : "boolean",
            "description" : "Enabling <b>Joule heating</b> gives you the possibility to solve a coupled electric conduction and conjugate heat transfer problem in a single simulation.",
            "default" : false
          },
          "turbulenceModel" : {
            "title" : "Turbulence model",
            "type" : "string",
            "description" : "Choose a turbulence model for your CFD analysis:<ul><li><strong>No turbulence</strong>: Laminar</li><li><strong>RANS</strong>: <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-omega-sst/' target='_blank'>k-omega SST</a> ,<a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#standard-k-epsilon-model' target='_blank'>k-epsilon</a></p>",
            "default" : "KOMEGASST",
            "enum" : [ "NONE", "KEPSILON", "KOMEGASST" ]
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_CoupledConjugateHeatTransferTimeDependency"
          },
          "numOfPassiveSpecies" : {
            "title" : "Passive species",
            "maximum" : 9,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Select the number of passive species involved in the simulation. Passive species allow you to simulate the transport of a scalar quantity within a fluid flow without affecting it. <a href='https://www.simscale.com/docs/simulation-setup/global-settings/#passive-species' target='_blank'>Learn more</a>.",
            "format" : "int64",
            "default" : 0,
            "enum" : [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ]
          },
          "connectionGroups" : {
            "title" : "Connection groups",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FluidInterface"
            }
          },
          "model" : {
            "$ref" : "#/components/schemas/FluidModel"
          },
          "solarCalculator" : {
            "$ref" : "#/components/schemas/SolarCalculator"
          },
          "materials" : {
            "$ref" : "#/components/schemas/CoupledConjugateHeatTransferMaterials"
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/FluidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_CoupledConjugateHeatTransferBoundaryConditions"
            }
          },
          "advancedConcepts" : {
            "$ref" : "#/components/schemas/AdvancedConcepts"
          },
          "numerics" : {
            "$ref" : "#/components/schemas/FluidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/FluidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          },
          "contactHandlingMode" : {
            "title" : "Contact handling mode",
            "type" : "string",
            "default" : "MANUAL",
            "enum" : [ "MANUAL", "AUTO" ]
          }
        },
        "additionalProperties" : false
      },
      "FluidInterface" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FluidInterface",
            "default" : "FLUID_INTERFACE"
          },
          "connections" : {
            "title" : "Contacts",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RegionInterface"
            }
          }
        },
        "additionalProperties" : false
      },
      "RegionInterface" : {
        "title" : "Standard interface",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RegionInterface",
            "default" : "REGION_INTERFACE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "interfaceThermal" : {
            "$ref" : "#/components/schemas/OneOf_RegionInterfaceInterfaceThermal"
          },
          "masterTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "slaveTopologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "isPartial" : {
            "title" : "Is partial",
            "type" : "boolean",
            "default" : false
          },
          "customModified" : {
            "title" : "Custom modified",
            "type" : "boolean",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "CoupledInterfaceThermal" : {
        "title" : "Coupled interface",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CoupledInterfaceThermal",
            "default" : "COUPLED"
          }
        },
        "additionalProperties" : false
      },
      "AdiabaticInterfaceThermal" : {
        "title" : "Adiabatic interface",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AdiabaticInterfaceThermal",
            "default" : "ADIABATIC"
          }
        },
        "additionalProperties" : false
      },
      "SolarCalculator" : {
        "type" : "object",
        "properties" : {
          "sunDirection" : {
            "$ref" : "#/components/schemas/OneOf_SolarCalculatorSunDirection"
          },
          "solarLoad" : {
            "$ref" : "#/components/schemas/OneOf_SolarCalculatorSolarLoad"
          }
        },
        "additionalProperties" : false
      },
      "TimeAndPlaceSunDirection" : {
        "title" : "Time and place",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TimeAndPlaceSunDirection",
            "default" : "TIME_AND_PLACE"
          },
          "northAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "geographicalLocation" : {
            "$ref" : "#/components/schemas/GeographicalLocation"
          },
          "localDateTime" : {
            "title" : "Date and time",
            "type" : "string",
            "format" : "datetime-local"
          }
        },
        "additionalProperties" : false
      },
      "CustomSunDirection" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomSunDirection",
            "default" : "CUSTOM_SOLAR_DIRECTION"
          },
          "sunDirectionVector" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "CustomSolarLoad" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomSolarLoad",
            "default" : "CUSTOM_SOLAR_LOAD"
          },
          "directSolarLoad" : {
            "$ref" : "#/components/schemas/Dimensional_HeatFlux"
          },
          "diffuseSolarLoad" : {
            "$ref" : "#/components/schemas/Dimensional_HeatFlux"
          }
        },
        "additionalProperties" : false
      },
      "FairWeatherConditions" : {
        "title" : "Fair Weather Conditions",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FairWeatherConditions",
            "default" : "FAIR_WEATHER_CONDITIONS"
          },
          "skyCloudCoverFraction" : {
            "title" : "Sky cloud cover fraction",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0
          },
          "groundReflectivity" : {
            "title" : "Ground reflectivity",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.2
          },
          "apparentSolarIrradiation" : {
            "$ref" : "#/components/schemas/Dimensional_HeatFlux"
          },
          "atmosphericExtinctionCoefficient" : {
            "title" : "Atmospheric extinction",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Atmospheric extinction coefficient (B)",
            "default" : 0.142
          },
          "diffuseRadiationFactor" : {
            "title" : "Diffuse radiation factor",
            "maximum" : 1,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Diffuse radiation factor (C)",
            "default" : 0.058
          }
        },
        "additionalProperties" : false
      },
      "CoupledConjugateHeatTransferMaterials" : {
        "type" : "object",
        "properties" : {
          "fluids" : {
            "title" : "Fluid",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_CoupledConjugateHeatTransferMaterialsFluids"
            }
          },
          "solids" : {
            "title" : "Solids",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SolidCompressibleMaterial"
            }
          }
        },
        "additionalProperties" : false
      },
      "EmbeddedBoundary" : {
        "title" : "Conjugate Heat Transfer (IBM)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: EmbeddedBoundary",
            "default" : "EMBEDDED_BOUNDARY"
          },
          "allowExternalFlow" : {
            "title" : "External flow",
            "type" : "boolean",
            "description" : "This toggle allows you to create an additional external fluid domain via a Cartesian box. Enable this toggle if you want to simulate for example natural convection around your system and the external flow domain is not represented in your CAD model as a solid body.",
            "default" : false
          },
          "model" : {
            "$ref" : "#/components/schemas/FluidModel"
          },
          "solarCalculator" : {
            "$ref" : "#/components/schemas/SolarCalculator"
          },
          "materials" : {
            "$ref" : "#/components/schemas/CoupledConjugateHeatTransferMaterials"
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/FluidInitialConditions"
          },
          "externalFlowBoundaryCondition" : {
            "$ref" : "#/components/schemas/OneOf_EmbeddedBoundaryExternalFlowBoundaryCondition"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_EmbeddedBoundaryBoundaryConditions"
            }
          },
          "advancedConcepts" : {
            "$ref" : "#/components/schemas/AdvancedConcepts"
          },
          "numerics" : {
            "$ref" : "#/components/schemas/FluidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/FluidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          },
          "embeddedBoundaryMeshing" : {
            "$ref" : "#/components/schemas/EmbeddedBoundaryMeshing"
          },
          "isCompressible" : {
            "title" : "Compressible",
            "type" : "boolean",
            "description" : "<ul><li>Toggle off <em>Compressible</em> for small temperature variations within the domain, for example, in natural convection simulations (Boussinesq approximation). Use Gauge pressure (0 Pa). </li><li>Toggle on <em>Compressible</em> to calculate resulting density variations within the domain based on pressure and temperature. Use Absolute pressure (for example, 101325 Pa at sea level)</li></ul>",
            "default" : false
          },
          "enableRadiation" : {
            "title" : "Radiation",
            "type" : "boolean",
            "description" : "Heat transfer through radiation takes place in the form of electromagnetic waves and it can be calculated in the simulation. This phenomenon becomes more important when the temperature differences in the simulation domain are large. <a href='https://www.simscale.com/docs/analysis-types/convective-heat-transfer-analysis/radiation/' target='_blank'>Learn more</a>.",
            "default" : false
          },
          "enableSolarLoad" : {
            "title" : "Solar load",
            "type" : "boolean",
            "description" : "Enables the <b>solar load</b> model in the simulation. <b>Diffuse</b> and/or <b>directional</b> solar load contributions are specified in the <b>solar calculator</b>. The solar load terms will heat the external faces of the simulation domain. Moreover, if transparent and/or semi-transparent boundaries are present, internal surfaces of the domain might also be heated. All <b>internal solids</b> will be considered <b>opaque</b>. <a href='https://www.simscale.com/docs/analysis-types/conjugate-heat-transfer-analysis/solar-load/' target='_blank'>Learn more</a>.",
            "default" : false
          },
          "enableHumidityModel" : {
            "title" : "Relative humidity",
            "type" : "boolean",
            "description" : "<b>Humidity model</b> to simulate wet air. First turn on the <em>compressible</em> toggle to enable it. The simulation will take the effect of humid air on the flow field into account. Dry air is heavier than wet air and hence sinks. The model does not account for condensation and evaporation and is not applicable in cases where this is of concern, for example dehumidifiers. It is suitable for HVAC analysis and for temperature ranges of <b>0° to 100°C</b>. </li></ul></p><a href= https://www.simscale.com/docs/simulation-setup/global-settings/humidity-modeling/' target='_blank'>Learn more</a>.",
            "default" : false,
            "x-conditionalEnum" : [ {
              "value" : true,
              "when" : [ "isCompressible == true" ]
            }, {
              "value" : false,
              "when" : [ "isCompressible == false" ]
            }, {
              "value" : false,
              "when" : [ "isCompressible == true" ]
            } ]
          },
          "enableJouleHeating" : {
            "title" : "Joule heating",
            "type" : "boolean",
            "description" : "Enabling <b>Joule heating</b> gives you the possibility to solve a coupled electric conduction and conjugate heat transfer problem in a single simulation.",
            "default" : false
          },
          "turbulenceModel" : {
            "title" : "Turbulence model",
            "type" : "string",
            "description" : "Choose a turbulence model for your CFD analysis:<ul><li><strong>No turbulence</strong>: Laminar</li><li><strong>RANS</strong>: <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-omega-sst/' target='_blank'>k-omega SST</a> ,<a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#standard-k-epsilon-model' target='_blank'>k-epsilon</a></p>",
            "default" : "KOMEGASST",
            "enum" : [ "NONE", "KOMEGASST" ]
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_EmbeddedBoundaryTimeDependency"
          },
          "numOfPassiveSpecies" : {
            "title" : "Passive species",
            "maximum" : 9,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Select the number of passive species involved in the simulation. Passive species allow you to simulate the transport of a scalar quantity within a fluid flow without affecting it. <a href='https://www.simscale.com/docs/simulation-setup/global-settings/#passive-species' target='_blank'>Learn more</a>.",
            "format" : "int64",
            "default" : 0,
            "enum" : [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 ]
          }
        },
        "additionalProperties" : false
      },
      "EmbeddedBoundaryMeshing" : {
        "type" : "object",
        "properties" : {
          "sizing" : {
            "$ref" : "#/components/schemas/OneOf_EmbeddedBoundaryMeshingSizing"
          },
          "numberOfBufferCells" : {
            "title" : "Number of buffer cells",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Target number of cells for every cell size level. Higher number of buffer cells ensure smoother cell size transitions, which results in better accuracy but bigger computation costs. On the other hand, lower number of buffer cells will result in smaller computation costs but worse accuracy. <img src=\"/spec/resources/help/imgs/buffer_cells.png\" class=\"helpPopupImage\"/>",
            "default" : 4.0
          },
          "refinements" : {
            "title" : "Refinements",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_EmbeddedBoundaryMeshingRefinements"
            }
          }
        },
        "additionalProperties" : false
      },
      "AutomaticEmbeddedBoundaryMeshSizing" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticEmbeddedBoundaryMeshSizing",
            "default" : "AUTOMATIC_EBM_MESH_SIZING"
          },
          "fineness" : {
            "title" : "Fineness",
            "maximum" : 10.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells.</p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results.</p>",
            "default" : 5.0,
            "x-parametricFieldOptions" : {
              "maxNumOfValues" : 40,
              "enableValueGeneration" : false
            }
          },
          "physicsBasedMeshingIBM" : {
            "title" : "Physics-based meshing",
            "type" : "boolean",
            "description" : "<b>Physics-based meshing</b> takes setup information into account to size the immersed mesh accordingly. Users can expect automatic refinements applied to the following: </p><ul><li><p><b>Boundary faces</b>: All of those which belong to a boundary condition.</p></li> <li><p><b>Advanced concepts</b>: Power and momentum sources, porous regions and thermal resistance networks.</p></li></ul>",
            "default" : true
          }
        },
        "additionalProperties" : false
      },
      "ManualEmbeddedBoundaryMeshSizing" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualEmbeddedBoundaryMeshSizing",
            "default" : "MANUAL_EBM_MESH_SIZING"
          },
          "maximumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "minimumEdgeLength" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "CustomEmbeddedBoundaryMeshSizing" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomEmbeddedBoundaryMeshSizing",
            "default" : "CUSTOM_EBM_MESH_SIZING"
          },
          "numCellsPerDirection" : {
            "$ref" : "#/components/schemas/NumberOfCellsPerDirection"
          },
          "numRefinementLevels" : {
            "title" : "Number of refinement levels",
            "maximum" : 7,
            "exclusiveMaximum" : false,
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Number of refinement levels to refine in the vicinity of all CAD surfaces.",
            "default" : 3,
            "x-divisibleBy" : 1
          }
        },
        "additionalProperties" : false
      },
      "Multiphase" : {
        "title" : "Multiphase",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Multiphase",
            "default" : "MULTIPHASE"
          },
          "useLocalTimeStepping" : {
            "title" : "Use local time stepping",
            "type" : "boolean",
            "description" : "With the <i>Local time stepping</i> option enabled, it’s possible to accelerate the simulation towards a steady-state. As a result, faster computing times and smaller result data size. Commonly used in ship hull resistance analysis.",
            "default" : false
          },
          "turbulenceModel" : {
            "title" : "Turbulence model",
            "type" : "string",
            "description" : "Choose a turbulence model for your CFD analysis:<ul><li><strong>No turbulence</strong>: Laminar</li><li><strong>RANS</strong>: <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#standard-k-epsilon-model' target='_blank'>k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#realizable-k-epsilon-model' target='_blank'>Realizable k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-omega-sst/' target='_blank'>k-omega and k-omega SST</a></li><li><strong>LES</strong>: Smagorinsky, Spalart-Allmaras</li></ul><p><p><a href='https://www.simscale.com/blog/2017/12/turbulence-cfd-analysis/' target='_blank'>Learn more</a>.</p>",
            "default" : "KOMEGASST",
            "enum" : [ "SMAGORINSKY", "SPALARTALLMARAS", "NONE", "KEPSILON", "KOMEGA", "KOMEGASST" ]
          },
          "model" : {
            "$ref" : "#/components/schemas/FluidModel"
          },
          "materials" : {
            "$ref" : "#/components/schemas/IncompressibleFluidMaterials"
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/FluidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_MultiphaseBoundaryConditions"
            }
          },
          "advancedConcepts" : {
            "$ref" : "#/components/schemas/AdvancedConcepts"
          },
          "numerics" : {
            "$ref" : "#/components/schemas/FluidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/FluidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          }
        },
        "additionalProperties" : false
      },
      "ConjugateHeatTransfer" : {
        "title" : "Conjugate Heat Transfer (legacy)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ConjugateHeatTransfer",
            "default" : "CONJUGATE_HEAT_TRANSFER"
          },
          "turbulenceModel" : {
            "title" : "Turbulence model",
            "type" : "string",
            "description" : "Choose a turbulence model for your CFD analysis:<ul><li><strong>No turbulence</strong>: Laminar</li><li><strong>RANS</strong>: <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#standard-k-epsilon-model' target='_blank'>k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/#realizable-k-epsilon-model' target='_blank'>Realizable k-epsilon</a>, <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-omega-sst/' target='_blank'>k-omega and k-omega SST</a></li><li><strong>LES</strong>: Smagorinsky, Spalart-Allmaras</li></ul><p><p><a href='https://www.simscale.com/blog/2017/12/turbulence-cfd-analysis/' target='_blank'>Learn more</a>.</p>",
            "default" : "KOMEGASST",
            "enum" : [ "SMAGORINSKY", "NONE", "KEPSILON", "KOMEGASST" ]
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_ConjugateHeatTransferTimeDependency"
          },
          "enableRadiation" : {
            "title" : "Radiation",
            "type" : "boolean",
            "description" : "Heat transfer through radiation takes place in the form of electromagnetic waves and it can be calculated in the simulation. This phenomenon becomes more important when the temperature differences in the simulation domain are large. <a href='https://www.simscale.com/docs/analysis-types/convective-heat-transfer-analysis/radiation/' target='_blank'>Learn more</a>.",
            "default" : false,
            "x-showWhen" : [ "timeDependency.type == STATIONARY" ]
          },
          "connectionGroups" : {
            "title" : "Connection groups",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FluidInterface"
            }
          },
          "model" : {
            "$ref" : "#/components/schemas/FluidModel"
          },
          "materials" : {
            "$ref" : "#/components/schemas/ConjugateHeatTransferMaterials"
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/FluidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_ConjugateHeatTransferBoundaryConditions"
            }
          },
          "advancedConcepts" : {
            "$ref" : "#/components/schemas/AdvancedConcepts"
          },
          "numerics" : {
            "$ref" : "#/components/schemas/FluidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/FluidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/FluidResultControls"
          },
          "contactHandlingMode" : {
            "title" : "Contact handling mode",
            "type" : "string",
            "default" : "MANUAL",
            "enum" : [ "MANUAL", "AUTO" ]
          }
        },
        "additionalProperties" : false
      },
      "ConjugateHeatTransferMaterials" : {
        "type" : "object",
        "properties" : {
          "fluids" : {
            "title" : "Fluids",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/FluidCompressibleMaterial"
            }
          },
          "solids" : {
            "title" : "Solids",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SolidCompressibleMaterial"
            }
          }
        },
        "additionalProperties" : false
      },
      "HarmonicAnalysis" : {
        "title" : "Harmonic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HarmonicAnalysis",
            "default" : "HARMONIC_ANALYSIS"
          },
          "connectionGroups" : {
            "title" : "Connection groups",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Contact"
            }
          },
          "connectors" : {
            "title" : "Connectors",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_HarmonicAnalysisConnectors"
            }
          },
          "elementTechnology" : {
            "$ref" : "#/components/schemas/SolidElementTechnology"
          },
          "globalPhysics" : {
            "$ref" : "#/components/schemas/SolidGlobalPhysics"
          },
          "model" : {
            "$ref" : "#/components/schemas/SolidModel"
          },
          "materials" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SolidMaterial"
            }
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/SolidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_HarmonicAnalysisBoundaryConditions"
            }
          },
          "numerics" : {
            "$ref" : "#/components/schemas/SolidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/SolidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/SolidResultControl"
          },
          "meshOrder" : {
            "title" : "Mesh order",
            "type" : "string",
            "default" : "NONE",
            "enum" : [ "FIRST", "SECOND", "NONE" ]
          }
        },
        "additionalProperties" : false
      },
      "SolidGlobalPhysics" : {
        "type" : "object",
        "properties" : {
          "enableGlobalDamping" : {
            "title" : "Enable global damping",
            "type" : "boolean",
            "description" : "Apply a constant level of damping to all parts that do not have a specified material damping behavior.",
            "default" : false,
            "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
          },
          "dampingLevel" : {
            "title" : "Damping level (%)",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Specify the level of damping to be applied globally as a percentage of critical damping.",
            "default" : 1.0,
            "x-showWhen" : [ "1/enableGlobalDamping == true" ]
          }
        },
        "additionalProperties" : false
      },
      "BaseExcitationBC" : {
        "title" : "Base excitation",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p><b>Base excitation</b> boundary condition applies a uniform acceleration to all fixed surfaces in the model (zero displacement), e.g. faces assigned to the <i>Fixed support</i> boundary condition. Specify the direction vector, the acceleration magnitude and the delay in terms of a harmonic phase angle, from the load to the reference harmonic excitation.<a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/base-excitation/' target='_blank'>Learn more</a></p>\n\nSchema name: BaseExcitationBC",
            "default" : "BASE_EXCITATION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "direction" : {
            "$ref" : "#/components/schemas/DimensionalVector_Dimensionless"
          },
          "acceleration" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Acceleration"
          },
          "phaseAngle" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          }
        },
        "additionalProperties" : false,
        "description" : "<p><b>Base excitation</b> boundary condition applies a uniform acceleration to all fixed surfaces in the model (zero displacement), e.g. faces assigned to the <i>Fixed support</i> boundary condition. Specify the direction vector, the acceleration magnitude and the delay in terms of a harmonic phase angle, from the load to the reference harmonic excitation.<a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/base-excitation/' target='_blank'>Learn more</a></p>"
      },
      "FrequencyAnalysis" : {
        "title" : "Frequency Analysis",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FrequencyAnalysis",
            "default" : "FREQUENCY_ANALYSIS"
          },
          "connectionGroups" : {
            "title" : "Connection groups",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Contact"
            }
          },
          "connectors" : {
            "title" : "Connectors",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_FrequencyAnalysisConnectors"
            }
          },
          "elementTechnology" : {
            "$ref" : "#/components/schemas/SolidElementTechnology"
          },
          "model" : {
            "$ref" : "#/components/schemas/SolidModel"
          },
          "materials" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/SolidMaterial"
            }
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/SolidInitialConditions"
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_FrequencyAnalysisBoundaryConditions"
            }
          },
          "numerics" : {
            "$ref" : "#/components/schemas/SolidNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/SolidSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/SolidResultControl"
          },
          "meshOrder" : {
            "title" : "Mesh order",
            "type" : "string",
            "default" : "FIRST",
            "enum" : [ "FIRST", "SECOND", "NONE" ]
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticAnalysis" : {
        "title" : "Electromagnetics",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectromagneticAnalysis",
            "default" : "ELECTROMAGNETIC_ANALYSIS"
          },
          "model" : {
            "$ref" : "#/components/schemas/OneOf_ElectromagneticAnalysisModel"
          },
          "materials" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ElectromagneticMaterial"
            }
          },
          "initialConditions" : {
            "$ref" : "#/components/schemas/ElectromagneticInitialConditions"
          },
          "coils" : {
            "title" : "Coils",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Coil"
            },
            "x-showWhen" : [ "model.type in [MAGNETOSTATICS,TIME_HARMONIC_MAGNETICS,TIME_TRANSIENT_MAGNETICS,TIME_HARMONIC_ELECTRICS]" ]
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_ElectromagneticAnalysisBoundaryConditions"
            }
          },
          "advancedConcepts" : {
            "$ref" : "#/components/schemas/ElectromagneticAdvancedConcepts"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/ElectromagneticResultControl"
          },
          "numerics" : {
            "$ref" : "#/components/schemas/ElectromagneticNumerics"
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/ElectromagneticSimulationControl"
          }
        },
        "additionalProperties" : false
      },
      "Electrostatics" : {
        "title" : "Electrostatics",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Electrostatics",
            "default" : "ELECTROSTATICS"
          },
          "breakdown" : {
            "title" : "Breakdown",
            "type" : "boolean",
            "description" : "Enabling allows the specification of the dielectric breakdown voltage for each material and the calculation of the safety factor.",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "TimeHarmonicElectrics" : {
        "title" : "Time-Harmonic Electrics",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TimeHarmonicElectrics",
            "default" : "TIME_HARMONIC_ELECTRICS"
          },
          "frequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          }
        },
        "additionalProperties" : false
      },
      "Magnetostatics" : {
        "title" : "Magnetostatics",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Magnetostatics",
            "default" : "MAGNETOSTATICS"
          },
          "thermal" : {
            "title" : "Thermal",
            "type" : "boolean",
            "description" : "Coupling with thermal solves for the temperature by considering electromagnetic losses such as Ohmic, hysteric or displacement losses.",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "TimeHarmonicMagnetics" : {
        "title" : "Time-Harmonic Magnetics",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TimeHarmonicMagnetics",
            "default" : "TIME_HARMONIC_MAGNETICS"
          },
          "frequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "thermal" : {
            "title" : "Thermal",
            "type" : "boolean",
            "description" : "Coupling with thermal solves for the temperature by considering electromagnetic losses such as Ohmic, hysteric or displacement losses.",
            "default" : false
          },
          "timeDependency" : {
            "$ref" : "#/components/schemas/OneOf_TimeHarmonicMagneticsTimeDependency"
          }
        },
        "additionalProperties" : false
      },
      "TimeTransientMagnetics" : {
        "title" : "Time-Transient Magnetics",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TimeTransientMagnetics",
            "default" : "TIME_TRANSIENT_MAGNETICS"
          },
          "thermal" : {
            "title" : "Thermal",
            "type" : "boolean",
            "description" : "Coupling with thermal solves for the temperature by considering electromagnetic losses such as Ohmic, hysteric or displacement losses.",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticMaterial" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "materialBehavior" : {
            "$ref" : "#/components/schemas/OneOf_ElectromagneticMaterialMaterialBehavior"
          },
          "electricConductivityType" : {
            "$ref" : "#/components/schemas/OneOf_ElectromagneticMaterialElectricConductivityType"
          },
          "magneticPermeabilityType" : {
            "$ref" : "#/components/schemas/OneOf_ElectromagneticMaterialMagneticPermeabilityType"
          },
          "electricPermittivityType" : {
            "$ref" : "#/components/schemas/LinearIsotropicPermittivityMethod"
          },
          "densityType" : {
            "$ref" : "#/components/schemas/IsotropicDensityMethod"
          },
          "specificHeatType" : {
            "$ref" : "#/components/schemas/IsotropicSpecificHeatMethod"
          },
          "thermalConductivity" : {
            "$ref" : "#/components/schemas/IsotropicThermalConductivityMethod"
          },
          "dielectricStrengthType" : {
            "$ref" : "#/components/schemas/OneOf_ElectromagneticMaterialDielectricStrengthType"
          },
          "coreLossesType" : {
            "$ref" : "#/components/schemas/OneOf_ElectromagneticMaterialCoreLossesType"
          },
          "dielectricLossType" : {
            "$ref" : "#/components/schemas/OneOf_ElectromagneticMaterialDielectricLossType"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "builtInMaterial" : {
            "type" : "string"
          },
          "materialLibraryReference" : {
            "$ref" : "#/components/schemas/MaterialLibraryReference"
          }
        },
        "additionalProperties" : false
      },
      "SoftMagneticMaterial" : {
        "title" : "Soft Magnetic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "A soft magnetic material can be easily magnetized and demagnetized. It can be a ferromagnetic material such as iron and non-ferromagnetic material such as copper or air.\n\nSchema name: SoftMagneticMaterial",
            "default" : "SOFT_MAGNETIC"
          }
        },
        "additionalProperties" : false,
        "description" : "A soft magnetic material can be easily magnetized and demagnetized. It can be a ferromagnetic material such as iron and non-ferromagnetic material such as copper or air."
      },
      "PermanentMagnetMaterial" : {
        "title" : "Permanent Magnet",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "A permanent magnet retains a significant portion of its magnetization indefinitely, even without an external magnetic field.\n\nSchema name: PermanentMagnetMaterial",
            "default" : "PERMANENT_MAGNET"
          },
          "remanence" : {
            "$ref" : "#/components/schemas/Dimensional_MagneticFluxDensity"
          },
          "magnetizationDirectionType" : {
            "$ref" : "#/components/schemas/OneOf_PermanentMagnetMaterialMagnetizationDirectionType"
          }
        },
        "additionalProperties" : false,
        "description" : "A permanent magnet retains a significant portion of its magnetization indefinitely, even without an external magnetic field."
      },
      "Dimensional_MagneticFluxDensity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "T" ]
          }
        },
        "additionalProperties" : false
      },
      "GlobalCartesianMagnetizationDirectionMethod" : {
        "title" : "Global cartesian",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalCartesianMagnetizationDirectionMethod",
            "default" : "GLOBAL_CARTESIAN"
          },
          "magnetizationDirection" : {
            "$ref" : "#/components/schemas/DimensionalVector_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "FaceNormalMagnetizationDirectionMethod" : {
        "title" : "Face normal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: FaceNormalMagnetizationDirectionMethod",
            "default" : "FACE_NORMAL"
          },
          "magnetFaces" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "IsotropicElectricConductivityMethod" : {
        "title" : "Constant",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicElectricConductivityMethod",
            "default" : "ISOTROPIC_ELECTRIC_CONDUCTIVITY"
          },
          "electricConductivity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricConductivity"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_ElectricConductivity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_ElectricConductivityValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "S/m", "S/in", "µS/cm" ]
          }
        },
        "additionalProperties" : false
      },
      "IsotropicRelativePermeabilityMethod" : {
        "title" : "Constant",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicRelativePermeabilityMethod",
            "default" : "ISOTROPIC_RELATIVE_MAGNETIC_PERMEABILITY"
          },
          "relativeMagneticPermeability" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "NonlinearIsotropicPermeability" : {
        "title" : "BH curve",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NonlinearIsotropicPermeability",
            "default" : "NONLINEAR_ISOTROPIC"
          },
          "bhCurve" : {
            "$ref" : "#/components/schemas/DimensionalFunction_MagneticFluxDensity"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_MagneticFluxDensity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_MagneticFluxDensityValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "T" ]
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_MAGNETIC_FIELD_STRENGTH" : {
        "type" : "object",
        "properties" : {
          "H" : {
            "$ref" : "#/components/schemas/Unit_MagneticFieldStrength"
          }
        }
      },
      "Unit_MagneticFieldStrength" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "A/m", "A/in" ]
          }
        }
      },
      "LinearIsotropicPermittivityMethod" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LinearIsotropicPermittivityMethod",
            "default" : "LINEAR_ISOTROPIC"
          },
          "relativeElectricPermittivity" : {
            "title" : "(ε<r>) Relative electric permittivity",
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 1.0
          }
        },
        "additionalProperties" : false
      },
      "IsotropicDensityMethod" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicDensityMethod",
            "default" : "ISOTROPIC_DENSITY_METHOD"
          },
          "density" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Density"
          }
        },
        "additionalProperties" : false
      },
      "IsotropicSpecificHeatMethod" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicSpecificHeatMethod",
            "default" : "ISOTROPIC_SPECIFIC_HEAT_METHOD"
          },
          "specificHeat" : {
            "$ref" : "#/components/schemas/DimensionalFunction_SpecificHeat"
          }
        },
        "additionalProperties" : false
      },
      "IsotropicThermalConductivityMethod" : {
        "title" : "Constant",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicThermalConductivityMethod",
            "default" : "ISOTROPIC_THERMAL_CONDUCTIVITY"
          },
          "thermalConductivity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalConductivity"
          }
        },
        "additionalProperties" : false
      },
      "NoDielectricStrength" : {
        "title" : "None",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoDielectricStrength",
            "default" : "NONE"
          }
        },
        "additionalProperties" : false
      },
      "IsotropicDielectricStrength" : {
        "title" : "Isotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicDielectricStrength",
            "default" : "ISOTROPIC"
          },
          "dielectricStrength" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricFieldStrength"
          }
        },
        "additionalProperties" : false
      },
      "DimensionalFunction_ElectricFieldStrength" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/OneOf_DimensionalFunction_ElectricFieldStrengthValue"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "V/m", "V/in" ]
          }
        },
        "additionalProperties" : false
      },
      "NoCoreLoss" : {
        "title" : "None",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoCoreLoss",
            "default" : "NONE"
          }
        },
        "additionalProperties" : false
      },
      "ElectricalSteelCoreLoss" : {
        "title" : "Electrical steel",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectricalSteelCoreLoss",
            "default" : "ELECTRICAL_STEEL"
          },
          "hysteresisLoss" : {
            "title" : "(K<h>) Hysteresis loss",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "eddyLoss" : {
            "title" : "(K<c>) Eddy loss",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "excessLoss" : {
            "title" : "(K<e>) Excess loss",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "PowerFerriteCoreLoss" : {
        "title" : "Power ferrite",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PowerFerriteCoreLoss",
            "default" : "POWER_FERRITE"
          },
          "steinmetzConstant" : {
            "title" : "(k<s>) Steinmetz constant",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "frequencyExponent" : {
            "title" : "(α) Frequency exponent",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "fluxDensityExponent" : {
            "title" : "(β) Flux density exponent",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "NoDielectricLosses" : {
        "title" : "No losses",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoDielectricLosses",
            "default" : "NONE"
          }
        },
        "additionalProperties" : false
      },
      "IsotropicLossTangent" : {
        "title" : "Isotropic loss tangent",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicLossTangent",
            "default" : "ISOTROPIC_LOSS_TANGENT"
          },
          "dielectricLossTangent" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticInitialConditions" : {
        "type" : "object",
        "properties" : {
          "temperature" : {
            "$ref" : "#/components/schemas/DimensionalInitialConditionDomains_Temperature"
          }
        },
        "additionalProperties" : false
      },
      "Coil" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topology" : {
            "$ref" : "#/components/schemas/OneOf_CoilTopology"
          },
          "coilType" : {
            "$ref" : "#/components/schemas/OneOf_CoilCoilType"
          },
          "excitation" : {
            "$ref" : "#/components/schemas/OneOf_CoilExcitation"
          }
        },
        "additionalProperties" : false
      },
      "OpenCoil" : {
        "title" : "Open",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OpenCoil",
            "default" : "OPEN_COIL"
          },
          "bodies" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "entryPort" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "exitPort" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "ClosedCoil" : {
        "title" : "Closed",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ClosedCoil",
            "default" : "CLOSED_COIL"
          },
          "bodies" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "internalPort" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "StrandedCoil" : {
        "title" : "Stranded",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StrandedCoil",
            "default" : "STRANDED_COIL"
          },
          "numberOfTurns" : {
            "title" : "Number of turns",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>The <strong>Number of Turns</strong> option indicates the number of times the wire is wound around the coil's core to form loops. Each loop is a complete 360-degree winding of the wire around the core.</p><p>With <strong>Current Excitation</strong>, the entered current is the current in a single turn. The solver multiplies it by the number of turns to obtain the ampere-turns of the coil, so do not multiply the current by the number of turns yourself.</p>",
            "default" : 1
          },
          "wireDiameter" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "SolidCoil" : {
        "title" : "Solid",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SolidCoil",
            "default" : "SOLID_COIL"
          }
        },
        "additionalProperties" : false
      },
      "LitzWireCoil" : {
        "title" : "Litz wire",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LitzWireCoil",
            "default" : "LITZ_WIRE_COIL"
          },
          "strandCrossSectionType" : {
            "$ref" : "#/components/schemas/OneOf_LitzWireCoilStrandCrossSectionType"
          },
          "numberOfTurns" : {
            "title" : "Number of turns",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>The <strong>Number of Turns</strong> option indicates the number of times the wire is wound around the coil's core to form loops. Each loop is a complete 360-degree winding of the wire around the core.</p><p>With <strong>Current Excitation</strong>, the entered current is the current in a single turn. The solver multiplies it by the number of turns to obtain the ampere-turns of the coil, so do not multiply the current by the number of turns yourself.</p>",
            "default" : 1
          },
          "numberOfStrandsPerTurn" : {
            "title" : "Number of strands per turn",
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "Round" : {
        "title" : "Round",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Round",
            "default" : "ROUND"
          },
          "strandDiameter" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "Square" : {
        "title" : "Square",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: Square",
            "default" : "SQUARE"
          },
          "strandWidth" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          }
        },
        "additionalProperties" : false
      },
      "CurrentExcitation" : {
        "title" : "Current",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>The current in a single turn of the coil. For <strong>Stranded</strong> and <strong>Litz wire</strong> coils, the solver multiplies it by the <strong>Number of turns</strong> to obtain the ampere-turns.</p><p>The current is shared over all entry (or internal) port faces of the coil, which are treated as parallel current paths. To model coils that are connected in series, create one coil per physical coil, each with a single port face, and assign the full current to every coil.</p>\n\nSchema name: CurrentExcitation",
            "default" : "CURRENT_EXCITATION"
          },
          "currentType" : {
            "$ref" : "#/components/schemas/OneOf_CurrentExcitationCurrentType"
          },
          "currentRMS" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricCurrent"
          },
          "currentPhase" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>The current in a single turn of the coil. For <strong>Stranded</strong> and <strong>Litz wire</strong> coils, the solver multiplies it by the <strong>Number of turns</strong> to obtain the ampere-turns.</p><p>The current is shared over all entry (or internal) port faces of the coil, which are treated as parallel current paths. To model coils that are connected in series, create one coil per physical coil, each with a single port face, and assign the full current to every coil.</p>"
      },
      "ElectromagneticCurrentTypeConstant" : {
        "title" : "Constant",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectromagneticCurrentTypeConstant",
            "default" : "CURRENT_TYPE_CONSTANT"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricCurrent"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_ElectricCurrent" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "A" ]
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticCurrentTypeSinusoidal" : {
        "title" : "Sinusoidal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectromagneticCurrentTypeSinusoidal",
            "default" : "CURRENT_TYPE_SINUSOIDAL"
          },
          "frequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "amplitude" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricCurrent"
          },
          "offset" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricCurrent"
          },
          "timeOffset" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticCurrentTypeTable" : {
        "title" : "Table",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectromagneticCurrentTypeTable",
            "default" : "CURRENT_TYPE_TABLE"
          },
          "values" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricCurrent"
          }
        },
        "additionalProperties" : false
      },
      "VoltageExcitation" : {
        "title" : "Voltage",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: VoltageExcitation",
            "default" : "VOLTAGE_EXCITATION"
          },
          "voltageType" : {
            "$ref" : "#/components/schemas/OneOf_VoltageExcitationVoltageType"
          },
          "voltageRMS" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricPotential"
          },
          "voltagePhase" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "additionalResistance" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricResistance"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticVoltageTypeConstant" : {
        "title" : "Constant",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectromagneticVoltageTypeConstant",
            "default" : "VOLTAGE_TYPE_CONSTANT"
          },
          "value" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricPotential"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_ElectricPotential" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "V" ]
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticVoltageTypeSinusoidal" : {
        "title" : "Sinusoidal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectromagneticVoltageTypeSinusoidal",
            "default" : "VOLTAGE_TYPE_SINUSOIDAL"
          },
          "frequency" : {
            "$ref" : "#/components/schemas/Dimensional_Frequency"
          },
          "amplitude" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricPotential"
          },
          "offset" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricPotential"
          },
          "timeOffset" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticVoltageTypeTable" : {
        "title" : "Table",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectromagneticVoltageTypeTable",
            "default" : "VOLTAGE_TYPE_TABLE"
          },
          "values" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ElectricPotential"
          }
        },
        "additionalProperties" : false
      },
      "MagneticFieldNormal" : {
        "title" : "Magnetic field normal",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "The magnetic field is enforced to be perpendicular to the boundary. \n\nSchema name: MagneticFieldNormal",
            "default" : "MAGNETIC_FIELD_NORMAL"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "The magnetic field is enforced to be perpendicular to the boundary. "
      },
      "MagneticFluxTangential" : {
        "title" : "Magnetic flux tangential",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "The magnetic flux is enforced to be tangential to the boundary. This boundary is often appropriate when electric current enters or leaves the boundary.\n\nSchema name: MagneticFluxTangential",
            "default" : "MAGNETIC_FLUX_TANGENTIAL"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "The magnetic flux is enforced to be tangential to the boundary. This boundary is often appropriate when electric current enters or leaves the boundary."
      },
      "FixedPotential" : {
        "title" : "Fixed potential",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Specify a constant electric potential (voltage) on a boundary or a body.\n\nSchema name: FixedPotential",
            "default" : "FIXED_POTENTIAL"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "potential" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricPotential"
          },
          "potentialRMS" : {
            "$ref" : "#/components/schemas/Dimensional_ElectricPotential"
          },
          "phase" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Specify a constant electric potential (voltage) on a boundary or a body."
      },
      "FloatingPotential" : {
        "title" : "Floating potential",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Specify a floating potential on a boundary or a body for conductive bodies with a constant but unspecified voltage value.\n\nSchema name: FloatingPotential",
            "default" : "FLOATING_POTENTIAL"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Specify a floating potential on a boundary or a body for conductive bodies with a constant but unspecified voltage value."
      },
      "ChargeDensity" : {
        "title" : "Charge density",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Assign a specific charge density to a body.\n\nSchema name: ChargeDensity",
            "default" : "CHARGE_DENSITY"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "chargeDensity" : {
            "$ref" : "#/components/schemas/Dimensional_ChargeDensity"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Assign a specific charge density to a body."
      },
      "Dimensional_ChargeDensity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "C/m³", "C/in³" ]
          }
        },
        "additionalProperties" : false
      },
      "TotalCharge" : {
        "title" : "Total charge",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Set the total charge of a body.\n\nSchema name: TotalCharge",
            "default" : "TOTAL_CHARGE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "totalCharge" : {
            "$ref" : "#/components/schemas/Dimensional_Charge"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Set the total charge of a body."
      },
      "Dimensional_Charge" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "C" ]
          }
        },
        "additionalProperties" : false
      },
      "FixedTemperature" : {
        "title" : "Fixed temperature",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Specify a fixed temperature at a volume or boundary. Used for parts maintained at a known temperature.\n\nSchema name: FixedTemperature",
            "default" : "FIXED_TEMPERATURE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "temperature" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Specify a fixed temperature at a volume or boundary. Used for parts maintained at a known temperature."
      },
      "SurfaceHeatFlux" : {
        "title" : "Surface heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Specify the rate of heat transfer per unit area at the boundary. Used for heating or cooling surfaces.\n\nSchema name: SurfaceHeatFlux",
            "default" : "SURFACE_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatFluxValue" : {
            "$ref" : "#/components/schemas/DimensionalFunction_HeatFlux"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Specify the rate of heat transfer per unit area at the boundary. Used for heating or cooling surfaces."
      },
      "VolumeHeatFlux" : {
        "title" : "Volume heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Specify the rate of heat transfer per unit volume within a body. Used for internal heat generation sources.\n\nSchema name: VolumeHeatFlux",
            "default" : "VOLUME_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatFluxValue" : {
            "$ref" : "#/components/schemas/DimensionalFunction_VolumetricPower"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Specify the rate of heat transfer per unit volume within a body. Used for internal heat generation sources."
      },
      "ConvectiveHeatFlux" : {
        "title" : "Convective heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Represents heat transfer between a surface and a fluid.\n\nSchema name: ConvectiveHeatFlux",
            "default" : "CONVECTIVE_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatTransferCoefficient" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalTransmittance"
          },
          "ambientTemperature" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Represents heat transfer between a surface and a fluid."
      },
      "RadiationHeatFlux" : {
        "title" : "Radiation heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Accounts for heat transfer due to thermal radiation between surfaces.\n\nSchema name: RadiationHeatFlux",
            "default" : "RADIATION_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "emissivity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          },
          "ambientTemperature" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Accounts for heat transfer due to thermal radiation between surfaces."
      },
      "ElectromagneticAdvancedConcepts" : {
        "title" : "Advanced Concepts",
        "type" : "object",
        "properties" : {
          "motionAnalysis" : {
            "title" : "Motion analysis",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ElectromagneticMotion"
            }
          },
          "circuit" : {
            "$ref" : "#/components/schemas/ElectromagneticCircuit"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticMotion" : {
        "title" : "Motion",
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectromagneticMotion"
          },
          "angularVelocity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_RotationSpeed"
          },
          "rotationCenter" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "rotationAxis" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          },
          "velocity" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Speed"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticCircuit" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectromagneticCircuit",
            "default" : "CIRCUIT"
          },
          "objectId" : {
            "title" : "Object id",
            "type" : "string",
            "description" : "The file definition for the EMWORKS Circuit Netlist specification"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticResultControl" : {
        "type" : "object",
        "properties" : {
          "calculateInductances" : {
            "title" : "Calculate inductances",
            "type" : "boolean",
            "description" : "Calculate the inductance matrix of the coils.",
            "default" : false,
            "x-showWhen" : [ "model.type == MAGNETOSTATICS", "model.type == TIME_TRANSIENT_MAGNETICS" ]
          },
          "calculateCapacitances" : {
            "title" : "Calculate capacitances",
            "type" : "boolean",
            "description" : "Calculate the capacitance matrix of the conductive bodies.<strong><span style='color: red;'>Note that the field solution will be modified.</span></strong>",
            "default" : false,
            "x-showWhen" : [ "model.type == ELECTROSTATICS" ]
          },
          "forcesAndTorques" : {
            "title" : "Forces and Torques",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ForceAndTorque"
            }
          },
          "probePoints" : {
            "title" : "Probe points",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ElectromagneticResultControlProbePoint"
            },
            "x-showWhen" : [ "model.type in [MAGNETOSTATICS,TIME_HARMONIC_MAGNETICS,TIME_TRANSIENT_MAGNETICS,ELECTROSTATICS]" ]
          },
          "resistanceSets" : {
            "title" : "Resistance sets",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ElectromagneticResistanceSet"
            },
            "x-showWhen" : [ "model.type == TIME_HARMONIC_ELECTRICS" ]
          }
        },
        "additionalProperties" : false
      },
      "ForceAndTorque" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "torqueReferencePoint" : {
            "$ref" : "#/components/schemas/DimensionalVector_Length"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticResultControlProbePoint" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_ElectromagneticResultControlProbePointFieldSelection"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "POINT" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "MagneticFluxDensityFieldSelection" : {
        "title" : "Magnetic flux density",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MagneticFluxDensityFieldSelection",
            "default" : "MAGNETIC_FLUX_DENSITY"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "MAG", "ALL" ],
            "x-showWhen" : [ "model.type == TIME_TRANSIENT_MAGNETICS" ]
          }
        },
        "additionalProperties" : false
      },
      "MagneticFieldFieldSelection" : {
        "title" : "Magnetic field",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MagneticFieldFieldSelection",
            "default" : "MAGNETIC_FIELD"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "MAG", "ALL" ],
            "x-showWhen" : [ "model.type == TIME_TRANSIENT_MAGNETICS" ]
          }
        },
        "additionalProperties" : false
      },
      "ElectricCurrentDensityFieldSelection" : {
        "title" : "Electric current density",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectricCurrentDensityFieldSelection",
            "default" : "ELECTRIC_CURRENT_DENSITY"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "MAG", "ALL" ],
            "x-showWhen" : [ "model.type == TIME_TRANSIENT_MAGNETICS" ]
          }
        },
        "additionalProperties" : false
      },
      "ElectricPotentialFieldSelection" : {
        "title" : "Electric potential",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectricPotentialFieldSelection",
            "default" : "ELECTRIC_POTENTIAL"
          }
        },
        "additionalProperties" : false
      },
      "ElectricFieldFieldSelection" : {
        "title" : "Electric field",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectricFieldFieldSelection",
            "default" : "ELECTRIC_FIELD"
          }
        },
        "additionalProperties" : false
      },
      "ElectricDisplacementFieldFieldSelection" : {
        "title" : "Electric displacement field",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElectricDisplacementFieldFieldSelection",
            "default" : "ELECTRIC_DISPLACEMENT_FIELD"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticResistanceSet" : {
        "title" : "Resistance set",
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "entryPort" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "exitPort" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticNumerics" : {
        "type" : "object",
        "properties" : {
          "nonlinearResidual" : {
            "title" : "Nonlinear residual",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The nonlinear residual error is computed as the difference between the calculated and expected flux density value when a BH curve is specified.",
            "default" : 1.0E-6,
            "x-showWhen" : [ "model.type == MAGNETOSTATICS", "model.type == TIME_HARMONIC_MAGNETICS", "model.type == TIME_TRANSIENT_MAGNETICS" ]
          },
          "elementAccuracy" : {
            "title" : "Element accuracy",
            "type" : "string",
            "description" : "Uses second order element shape functions for a higher accuracy. Especially recommended when calculating torques or forces. However this increases memory consumption and computational time.",
            "default" : "FIRST_ORDER",
            "enum" : [ "FIRST_ORDER", "SECOND_ORDER" ]
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticSimulationControl" : {
        "type" : "object",
        "properties" : {
          "transientMagneticsControl" : {
            "$ref" : "#/components/schemas/ElectromagneticTransientControl"
          },
          "writeControl" : {
            "$ref" : "#/components/schemas/TimeStepWriteControl"
          },
          "numProcessors" : {
            "title" : "Number of processors",
            "maximum" : 192,
            "exclusiveMaximum" : false,
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Selecting more processor cores will speed up the simulation process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/simulation-control-fluid/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "format" : "int64",
            "default" : -1,
            "enum" : [ -1, 1, 2, 4, 8, 16, 32, 48, 64, 96, 128, 192 ]
          },
          "maxRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "coreLossReferencePeriod" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "timePeriodicAcceleration" : {
            "title" : "Time-periodic acceleration",
            "type" : "boolean",
            "description" : "Activate when the coil excitation is periodic to accelerate simulation. For more information, please refer to our <a href='https://www.simscale.com/docs/analysis-types/electromagnetics/#time-periodic-acceleration' target='_blank'>documentation</a>.",
            "default" : false,
            "x-showWhen" : [ "model.type == TIME_TRANSIENT_MAGNETICS" ]
          }
        },
        "additionalProperties" : false
      },
      "ElectromagneticTransientControl" : {
        "type" : "object",
        "properties" : {
          "endTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "timeIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false
      },
      "MarcAnalysis" : {
        "title" : "Nonlinear Mechanical (Marc)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcAnalysis",
            "default" : "MARC_ANALYSIS"
          },
          "thermalEffects" : {
            "title" : "Thermal effects",
            "type" : "boolean",
            "description" : "<p>Choose whether <b>thermal effects</b> should be included in the analysis, such as <b>heat conduction</b>, <b>thermal loads</b>, <b>temperature fields</b>, <b>thermal expansion</b>, and <b>temperature-dependent material properties</b>. When thermal effects are disabled, the analysis is purely mechanical and assumes constant temperature.</p><p><b>Note:</b> Changing this setting will delete all existing material definitions.</p>",
            "default" : false
          },
          "connectionGroups" : {
            "title" : "Connection groups",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MarcConnectionGroup"
            }
          },
          "connectors" : {
            "title" : "Connectors",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/RemotePointConnectionMarc"
            }
          },
          "elementTechnology" : {
            "$ref" : "#/components/schemas/MarcElementTechnology"
          },
          "materials" : {
            "title" : "Materials",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MarcMaterial"
            }
          },
          "boundaryConditions" : {
            "title" : "Boundary conditions",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_MarcAnalysisBoundaryConditions"
            }
          },
          "numerics" : {
            "$ref" : "#/components/schemas/MarcNumerics"
          },
          "loadSteps" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LoadStep"
            }
          },
          "simulationControl" : {
            "$ref" : "#/components/schemas/MarcSimulationControl"
          },
          "resultControl" : {
            "$ref" : "#/components/schemas/MarcResultControl"
          }
        },
        "additionalProperties" : false
      },
      "MarcConnectionGroup" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcConnectionGroup",
            "default" : "CONTACT"
          },
          "friction" : {
            "title" : "Friction",
            "type" : "string",
            "description" : "<p>Define how tangential forces are handled when surfaces slide against each other.</p><ul><li><b>No Friction:</b> Surfaces slide freely without resistance. Use this to simplify models where friction is negligible.</li><li><b>Coulomb - Bilinear:</b> Surfaces resist sliding based on the normal force and the <b>friction coefficient</b>. This model uses a regularized &quot;bilinear&quot; transition to smooth the change from sticking to sliding, providing better numerical stability in nonlinear analyses compared to a rigid stick-slip model.</li></ul>",
            "default" : "COULOMB_BILINEAR",
            "enum" : [ "NO_FRICTION", "COULOMB_BILINEAR" ]
          },
          "contactFormulation" : {
            "title" : "Contact formulation",
            "type" : "string",
            "description" : "<p>Define how to search for and enforce contact constraints between contacting bodies:</p><ul><li><b>Double-sided:</b> The solver checks for penetration from Part A into Part B AND Part B into Part A. This is the most accurate method, especially for complex geometries as it minimizes contact penetrations. With this setting the &quot;<b>Hybrid</b>&quot; contact formulation of Marc is used.</li><li><b>One-sided:</b> The solver only checks if nodes of the &quot;Source&quot; surface penetrate the &quot;Target&quot; surface. The choice of Source and Master is done automatically by the solver. With this setting the &quot;<b>Standard</b>&quot; contact formulation of Marc is used. With this setting some small contact penetrations are expected. Refine the mesh to reduce contact penetrations.</li></ul>",
            "default" : "DOUBLE_SIDED",
            "enum" : [ "ONE_SIDED", "DOUBLE_SIDED" ]
          },
          "separationControl" : {
            "title" : "Separation control",
            "type" : "string",
            "description" : "<p>Define the criteria used to determine when two surfaces in contact should be allowed to pull apart.</p><ul><li><b>Automatic:</b> The solver selects the best choice between force and stress criteria, based on the mesh order and contact formulation.</li><li><b>Force:</b> Separation is based on the nodal contact forces.</li><li><b>Stress:</b> Separation is triggered when the contact stress (pressure) drops below a specific threshold (close to zero). This is the preferred method as it is less mesh dependent than the force criterion.</li></ul>",
            "default" : "AUTOMATIC",
            "enum" : [ "AUTOMATIC", "FORCE", "STRESS" ]
          },
          "connections" : {
            "title" : "Contacts",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_MarcConnectionGroupConnections"
            }
          }
        },
        "additionalProperties" : false
      },
      "MarcBondedContactConnection" : {
        "title" : "Glued",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define the physical nature of the connection between bodies.</p><ul><li><b>Glued:</b> Parts are permanently bonded. No sliding or separation is allowed. Interfaces are treated as a continuous material transition.<br/><br/><b>Note</b>: Parts that are initially separated but come into contact during deformation will also be glued together locally once contact is established.</li><li><b>Touching:</b> Parts can slide and separate but cannot penetrate each other. Friction coefficients apply here.</li><li><b>Glued + Touching:</b> Use this for bodies which have both contact areas which behave glued and others which should be modeled as touching. Use the &quot;touching faces&quot; to define faces which should exhibit a &quot;touching&quot; behavior during contact.</li></ul><p><b>Note: Self-contact</b> can be modeled by assigning a <b>single volume</b> to a contact definition.</p>\n\nSchema name: MarcBondedContactConnection",
            "default" : "BONDED"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "positionTolerance" : {
            "$ref" : "#/components/schemas/OneOf_MarcBondedContactConnectionPositionTolerance"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "contactBodies" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define the physical nature of the connection between bodies.</p><ul><li><b>Glued:</b> Parts are permanently bonded. No sliding or separation is allowed. Interfaces are treated as a continuous material transition.<br/><br/><b>Note</b>: Parts that are initially separated but come into contact during deformation will also be glued together locally once contact is established.</li><li><b>Touching:</b> Parts can slide and separate but cannot penetrate each other. Friction coefficients apply here.</li><li><b>Glued + Touching:</b> Use this for bodies which have both contact areas which behave glued and others which should be modeled as touching. Use the &quot;touching faces&quot; to define faces which should exhibit a &quot;touching&quot; behavior during contact.</li></ul><p><b>Note: Self-contact</b> can be modeled by assigning a <b>single volume</b> to a contact definition.</p>"
      },
      "MarcTouchingContactConnection" : {
        "title" : "Touching",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define the physical nature of the connection between bodies.</p><ul><li><b>Glued:</b> Parts are permanently bonded. No sliding or separation is allowed. Interfaces are treated as a continuous material transition.<br/><br/><b>Note</b>: Parts that are initially separated but come into contact during deformation will also be glued together locally once contact is established.</li><li><b>Touching:</b> Parts can slide and separate but cannot penetrate each other. Friction coefficients apply here.</li><li><b>Glued + Touching:</b> Use this for bodies which have both contact areas which behave glued and others which should be modeled as touching. Use the &quot;touching faces&quot; to define faces which should exhibit a &quot;touching&quot; behavior during contact.</li></ul><p><b>Note: Self-contact</b> can be modeled by assigning a <b>single volume</b> to a contact definition.</p>\n\nSchema name: MarcTouchingContactConnection",
            "default" : "TOUCHING"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "frictionCoefficient" : {
            "title" : "Friction coefficient",
            "type" : "number",
            "description" : "<p>The <b>Friction coefficient</b> (&mu;) defines the proportionality between the normal contact force and the maximum allowable tangential resistance at the interface. A value of 0 represents a frictionless (lubricated) surface, while higher values increase the resistance to relative sliding between the two parts. For most metal-to-metal or metal-to-plastic contacts, values typically range between 0.1 and 0.4.</p>",
            "default" : 0.0,
            "x-showWhen" : [ "connectionGroups.0.friction == COULOMB_BILINEAR" ]
          },
          "interferenceFit" : {
            "$ref" : "#/components/schemas/InterferenceFit"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "contactBodies" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define the physical nature of the connection between bodies.</p><ul><li><b>Glued:</b> Parts are permanently bonded. No sliding or separation is allowed. Interfaces are treated as a continuous material transition.<br/><br/><b>Note</b>: Parts that are initially separated but come into contact during deformation will also be glued together locally once contact is established.</li><li><b>Touching:</b> Parts can slide and separate but cannot penetrate each other. Friction coefficients apply here.</li><li><b>Glued + Touching:</b> Use this for bodies which have both contact areas which behave glued and others which should be modeled as touching. Use the &quot;touching faces&quot; to define faces which should exhibit a &quot;touching&quot; behavior during contact.</li></ul><p><b>Note: Self-contact</b> can be modeled by assigning a <b>single volume</b> to a contact definition.</p>"
      },
      "InterferenceFit" : {
        "type" : "object",
        "properties" : {
          "enableInterferenceFit" : {
            "title" : "Enable interference fit",
            "type" : "boolean",
            "description" : "<p>Enable <b>Interference fit</b> to resolve the initial penetration as a physical load (press-fit) rather than a geometric inaccuracy.</p><ul><li><b>Interference Closure Value:</b> Specifies how much of the initial overlap should be &quot;removed&quot;. If left at default, the solver resolves the full overlap in the first time step to calculate the resulting stresses. Ramp the value from an initially negative (overlap) value gradually to zero to resolve nonlinearities robustly during the interference fit phase.</li></ul>",
            "default" : false
          },
          "closure" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Length"
          }
        },
        "additionalProperties" : false
      },
      "MarcBondedAndTouchingContactConnection" : {
        "title" : "Glued + Touching",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Define the physical nature of the connection between bodies.</p><ul><li><b>Glued:</b> Parts are permanently bonded. No sliding or separation is allowed. Interfaces are treated as a continuous material transition.<br/><br/><b>Note</b>: Parts that are initially separated but come into contact during deformation will also be glued together locally once contact is established.</li><li><b>Touching:</b> Parts can slide and separate but cannot penetrate each other. Friction coefficients apply here.</li><li><b>Glued + Touching:</b> Use this for bodies which have both contact areas which behave glued and others which should be modeled as touching. Use the &quot;touching faces&quot; to define faces which should exhibit a &quot;touching&quot; behavior during contact.</li></ul><p><b>Note: Self-contact</b> can be modeled by assigning a <b>single volume</b> to a contact definition.</p>\n\nSchema name: MarcBondedAndTouchingContactConnection",
            "default" : "BONDED_AND_TOUCHING"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "positionTolerance" : {
            "$ref" : "#/components/schemas/OneOf_MarcBondedAndTouchingContactConnectionPositionTolerance"
          },
          "frictionCoefficient" : {
            "title" : "Friction coefficient",
            "type" : "number",
            "description" : "<p>The <b>Friction coefficient</b> (&mu;) defines the proportionality between the normal contact force and the maximum allowable tangential resistance at the interface. A value of 0 represents a frictionless (lubricated) surface, while higher values increase the resistance to relative sliding between the two parts. For most metal-to-metal or metal-to-plastic contacts, values typically range between 0.1 and 0.4.</p>",
            "default" : 0.0,
            "x-showWhen" : [ "connectionGroups.0.friction == COULOMB_BILINEAR" ]
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "contactBodies" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "touchingFaces" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Define the physical nature of the connection between bodies.</p><ul><li><b>Glued:</b> Parts are permanently bonded. No sliding or separation is allowed. Interfaces are treated as a continuous material transition.<br/><br/><b>Note</b>: Parts that are initially separated but come into contact during deformation will also be glued together locally once contact is established.</li><li><b>Touching:</b> Parts can slide and separate but cannot penetrate each other. Friction coefficients apply here.</li><li><b>Glued + Touching:</b> Use this for bodies which have both contact areas which behave glued and others which should be modeled as touching. Use the &quot;touching faces&quot; to define faces which should exhibit a &quot;touching&quot; behavior during contact.</li></ul><p><b>Note: Self-contact</b> can be modeled by assigning a <b>single volume</b> to a contact definition.</p>"
      },
      "RemotePointConnectionMarc" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RemotePointConnectionMarc",
            "default" : "REMOTE_POINT_CONNECTION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "behavior" : {
            "title" : "Behavior",
            "type" : "string",
            "description" : "<p><b>Behavior</b>: Create a connector between a remote point and a set of entities of the model. The remote point can then be used in a point load or point displacement condition to apply a point force/moment load or constraint to the model.<br><ul><li><b>Rigid (RBE2)</b>: This option creates a kinematically rigid link between the reference point and the assigned entities. It ensures the connected nodes move and rotate as a single rigid body, which is ideal for modeling stiff components like bolts or heavy mounting brackets, but it can artificially over-stiffen the assembly.<br><li><b>Deformable (RBE3)</b>: This option distributes the loads and displacements of the reference point to the connected nodes using a weighted interpolation. It allows the connected faces to deform and expand naturally without adding artificial stiffness, making it suitable for distributing mass or applying loads to flexible structures.</ul></p>",
            "default" : "UNDEFORMABLE",
            "enum" : [ "DEFORMABLE", "UNDEFORMABLE" ]
          },
          "geometryPrimitiveUuids" : {
            "title" : "Point",
            "type" : "array",
            "description" : "<p>Create or select the point geometry primitive which should be connected to the assigned surfaces, volumes or edges via the defined connection type.</p>",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : false,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "POINT" ]
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "MarcElementTechnology" : {
        "type" : "object",
        "properties" : {
          "meshOrder" : {
            "title" : "Mesh order",
            "type" : "string",
            "description" : "<p>Select the finite element order to be used for the mesh. Typically, a <b>first-order mesh is sufficient</b> for this analysis type. It utilizes advanced element formulations that prevent locking effects and poor bending behavior. In general it is advised to rather increase the mesh resolution instead of switching to second order elements for more accurate stress results.</p><ul><li><b>First order:</b> Elements use linear interpolation between corner nodes, providing high computational efficiency and lower memory consumption. They are best suited for large models where complex contact situations appear and capturing stress gradients with highest precision is not the primary requirement.</li><li><b>Second order:</b> Elements include additional mid-side nodes to support quadratic displacement functions, improving accuracy for curved surfaces and bending-dominated loading. Solving complex contact problems might be less robust with second order elements.</li></ul><p><b>Note:</b> Once the value for the mesh order is changed, an existing mesh needs to be re-computed before running the analysis, otherwise the simulation will fail with an element order mismatch error.</p>",
            "default" : "FIRST",
            "enum" : [ "FIRST", "SECOND" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcMaterial" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "marcMaterialBehavior" : {
            "$ref" : "#/components/schemas/OneOf_MarcMaterialMarcMaterialBehavior"
          },
          "density" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Density"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "builtInMaterial" : {
            "type" : "string"
          },
          "materialLibraryReference" : {
            "$ref" : "#/components/schemas/MaterialLibraryReference"
          }
        },
        "additionalProperties" : false
      },
      "LinearElasticMarcMaterialBehavior" : {
        "title" : "Linear elastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LinearElasticMarcMaterialBehavior",
            "default" : "LINEAR_ELASTIC_MARC"
          },
          "youngsModulus" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "poissonsRatio" : {
            "$ref" : "#/components/schemas/OneOf_LinearElasticMarcMaterialBehaviorPoissonsRatio"
          }
        },
        "additionalProperties" : false
      },
      "HyperelasticMarcMaterialBehavior" : {
        "title" : "Hyperelastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: HyperelasticMarcMaterialBehavior",
            "default" : "HYPERELASTIC_MARC"
          },
          "hyperelasticity" : {
            "$ref" : "#/components/schemas/Hyperelasticity"
          }
        },
        "additionalProperties" : false
      },
      "Hyperelasticity" : {
        "type" : "object",
        "properties" : {
          "hyperelasticModelMarc" : {
            "$ref" : "#/components/schemas/OneOf_HyperelasticityHyperelasticModelMarc"
          }
        },
        "additionalProperties" : false
      },
      "MooneyTypeHyperelasticModelMarc" : {
        "title" : "Mooney",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MooneyTypeHyperelasticModelMarc",
            "default" : "MOONEY_TYPE_MARC"
          },
          "c10" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c01" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c11" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c20" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c30" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "bulkModulus" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "OgdenHyperelasticModelMarc" : {
        "title" : "Ogden",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OgdenHyperelasticModelMarc",
            "default" : "OGDEN_MARC"
          },
          "numberOfTerms" : {
            "$ref" : "#/components/schemas/OneOf_OgdenHyperelasticModelMarcNumberOfTerms"
          },
          "bulkModulus" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "OneTerm" : {
        "title" : "1",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OneTerm",
            "default" : "ONE_TERM"
          },
          "modulus1" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "exponent1" : {
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "TwoTerms" : {
        "title" : "2",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TwoTerms",
            "default" : "TWO_TERMS"
          },
          "modulus1" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "exponent1" : {
            "type" : "number",
            "default" : 0.0
          },
          "modulus2" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "exponent2" : {
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "ThreeTerms" : {
        "title" : "3",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ThreeTerms",
            "default" : "THREE_TERMS"
          },
          "modulus1" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "exponent1" : {
            "type" : "number",
            "default" : 0.0
          },
          "modulus2" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "exponent2" : {
            "type" : "number",
            "default" : 0.0
          },
          "modulus3" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "exponent3" : {
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "MarlowHyperelasticModelMarc" : {
        "title" : "Marlow",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarlowHyperelasticModelMarc",
            "default" : "MARLOW_MARC"
          },
          "deformationMode" : {
            "title" : "Deformation mode",
            "type" : "string",
            "description" : "Select the primary deformation mode from the experimental test data generation.<ul><li><b>Uniaxial (tension)</b>: Specifies that the provided stress-strain data was obtained from a standard <b>tensile test</b> where the specimen is stretched in one direction. This is the most common experimental input for characterizing basic elastomer behavior.<br><br><b>Note</b>: For uniaxial compression tests, the data needs to first be converted and the equi-biaxial tension option used.</li><li><b>Equi-biaxial (tension)</b>: Indicates that the input data comes from a test where equal tensile loads were applied in two perpendicular directions. This mode is critical for accurately modeling materials that will experience significant stretching in two dimensions, such as inflatable membranes.</li><li><b>Pure Shear</b>: Used when the input data is derived from a planar tension test where the width of the specimen is much larger than its length, preventing lateral contraction. This data helps the solver better predict the material's response under shearing or complex combined loading.</li></ul>",
            "default" : "UNIAXIAL",
            "enum" : [ "UNIAXIAL", "EQUI_BIAXIAL", "PURE_SHEAR" ]
          },
          "engineeringStressStrainCurve" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "bulkModulus" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_ENGINEERING_STRAIN" : {
        "type" : "object",
        "properties" : {
          "E_ENG" : {
            "$ref" : "#/components/schemas/Unit_Dimensionless"
          }
        }
      },
      "VariableGroup_TEMP_ENGINEERING_STRAIN" : {
        "type" : "object",
        "properties" : {
          "E_ENG" : {
            "$ref" : "#/components/schemas/Unit_Dimensionless"
          },
          "Temperature" : {
            "$ref" : "#/components/schemas/Unit_Temperature"
          }
        }
      },
      "ElastoplasticMarcMaterialBehavior" : {
        "title" : "Elastoplastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElastoplasticMarcMaterialBehavior",
            "default" : "ELASTOPLASTIC_MARC"
          },
          "elasticity" : {
            "$ref" : "#/components/schemas/ElasticityMarc"
          },
          "plasticity" : {
            "$ref" : "#/components/schemas/PlasticityMarc"
          }
        },
        "additionalProperties" : false
      },
      "ElasticityMarc" : {
        "type" : "object",
        "properties" : {
          "youngsModulus" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "poissonsRatio" : {
            "$ref" : "#/components/schemas/OneOf_ElasticityMarcPoissonsRatio"
          }
        },
        "additionalProperties" : false
      },
      "PlasticityMarc" : {
        "type" : "object",
        "properties" : {
          "plasticityModel" : {
            "$ref" : "#/components/schemas/OneOf_PlasticityMarcPlasticityModel"
          }
        },
        "additionalProperties" : false
      },
      "BilinearModelMarc" : {
        "title" : "Bilinear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: BilinearModelMarc",
            "default" : "BILINEAR"
          },
          "yieldStress" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "hardeningModel" : {
            "$ref" : "#/components/schemas/OneOf_BilinearModelMarcHardeningModel"
          },
          "hardeningRule" : {
            "$ref" : "#/components/schemas/OneOf_BilinearModelMarcHardeningRule"
          }
        },
        "additionalProperties" : false
      },
      "PerfectPlasticityModelMarc" : {
        "title" : "Perfectly plastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PerfectPlasticityModelMarc",
            "default" : "PERFECT_PLASTICITY"
          }
        },
        "additionalProperties" : false
      },
      "StrainHardeningModelMarc" : {
        "title" : "Strain hardening",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StrainHardeningModelMarc",
            "default" : "STRAIN_HARDENING"
          },
          "ultimateTensileStress" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "ultimateTotalStrain" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "IsotropicPlasticHardeningMarc" : {
        "title" : "Isotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicPlasticHardeningMarc",
            "default" : "ISOTROPIC"
          }
        },
        "additionalProperties" : false
      },
      "KinematicPlasticHardeningMarc" : {
        "title" : "Kinematic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: KinematicPlasticHardeningMarc",
            "default" : "KINEMATIC"
          }
        },
        "additionalProperties" : false
      },
      "CombinedPlasticHardeningMarc" : {
        "title" : "Combined",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CombinedPlasticHardeningMarc",
            "default" : "COMBINED"
          },
          "kinematicFraction" : {
            "title" : "Kinematic fraction",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "This value (from 0 to 1) defines the weight of the kinematic component relative to the isotropic component for the combined hardening rule. A value of 1 represents pure kinematic hardening, while 0 represents pure isotropic hardening.",
            "default" : 0.5
          }
        },
        "additionalProperties" : false
      },
      "MultilinearModelMarc" : {
        "title" : "Multilinear",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MultilinearModelMarc",
            "default" : "MULTILINEAR"
          },
          "stressStrainCurve" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "hardeningRule" : {
            "$ref" : "#/components/schemas/OneOf_MultilinearModelMarcHardeningRule"
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_PLASTIC_STRAIN" : {
        "type" : "object",
        "properties" : {
          "E_PL" : {
            "$ref" : "#/components/schemas/Unit_Dimensionless"
          }
        }
      },
      "VariableGroup_TEMP_PLASTIC_STRAIN" : {
        "type" : "object",
        "properties" : {
          "E_PL" : {
            "$ref" : "#/components/schemas/Unit_Dimensionless"
          },
          "Temperature" : {
            "$ref" : "#/components/schemas/Unit_Temperature"
          }
        }
      },
      "VoceChabocheModelMarc" : {
        "title" : "Voce-Chaboche",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: VoceChabocheModelMarc",
            "default" : "VOCE_CHABOCHE"
          },
          "initialYieldStress" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "hardeningRule" : {
            "$ref" : "#/components/schemas/OneOf_VoceChabocheModelMarcHardeningRule"
          }
        },
        "additionalProperties" : false
      },
      "IsotropicVoceHardeningMarc" : {
        "title" : "Isotropic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: IsotropicVoceHardeningMarc",
            "default" : "ISOTROPIC"
          },
          "asymptoticHardeningLimit" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "isotropicSaturationRate" : {
            "title" : "(b) Saturation rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Controls how quickly the isotropic hardening approaches its asymptotic limit as plastic strain accumulates; higher values saturate faster.",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "KinematicChabocheHardeningMarc" : {
        "title" : "Kinematic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: KinematicChabocheHardeningMarc",
            "default" : "KINEMATIC"
          },
          "backstressTerms" : {
            "$ref" : "#/components/schemas/OneOf_KinematicChabocheHardeningMarcBackstressTerms"
          }
        },
        "additionalProperties" : false
      },
      "OneBackstressTerm" : {
        "title" : "1",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OneBackstressTerm",
            "default" : "ONE_TERM"
          },
          "hardeningModulus1" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "dynamicRecoveryRate1" : {
            "title" : "(γ<1>) Dynamic recovery rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The dynamic recovery rate of this backstress term, controlling how quickly it saturates with accumulated plastic strain. A value of 0 makes this term purely linear (no saturation).",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "TwoBackstressTerms" : {
        "title" : "2",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TwoBackstressTerms",
            "default" : "TWO_TERMS"
          },
          "hardeningModulus1" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "dynamicRecoveryRate1" : {
            "title" : "(γ<1>) Dynamic recovery rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The dynamic recovery rate of this backstress term, controlling how quickly it saturates with accumulated plastic strain. A value of 0 makes this term purely linear (no saturation).",
            "default" : 0.0
          },
          "hardeningModulus2" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "dynamicRecoveryRate2" : {
            "title" : "(γ<2>) Dynamic recovery rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The dynamic recovery rate of this backstress term, controlling how quickly it saturates with accumulated plastic strain. A value of 0 makes this term purely linear (no saturation).",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "ThreeBackstressTerms" : {
        "title" : "3",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ThreeBackstressTerms",
            "default" : "THREE_TERMS"
          },
          "hardeningModulus1" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "dynamicRecoveryRate1" : {
            "title" : "(γ<1>) Dynamic recovery rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The dynamic recovery rate of this backstress term, controlling how quickly it saturates with accumulated plastic strain. A value of 0 makes this term purely linear (no saturation).",
            "default" : 0.0
          },
          "hardeningModulus2" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "dynamicRecoveryRate2" : {
            "title" : "(γ<2>) Dynamic recovery rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The dynamic recovery rate of this backstress term, controlling how quickly it saturates with accumulated plastic strain. A value of 0 makes this term purely linear (no saturation).",
            "default" : 0.0
          },
          "hardeningModulus3" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "dynamicRecoveryRate3" : {
            "title" : "(γ<3>) Dynamic recovery rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The dynamic recovery rate of this backstress term, controlling how quickly it saturates with accumulated plastic strain. A value of 0 makes this term purely linear (no saturation).",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "CombinedVoceChabocheHardeningMarc" : {
        "title" : "Combined",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CombinedVoceChabocheHardeningMarc",
            "default" : "COMBINED"
          },
          "asymptoticHardeningLimit" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "isotropicSaturationRate" : {
            "title" : "(b) Saturation rate",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Controls how quickly the isotropic hardening approaches its asymptotic limit as plastic strain accumulates; higher values saturate faster.",
            "default" : 0.0
          },
          "backstressTerms" : {
            "$ref" : "#/components/schemas/OneOf_CombinedVoceChabocheHardeningMarcBackstressTerms"
          }
        },
        "additionalProperties" : false
      },
      "ViscoplasticMarcMaterialBehavior" : {
        "title" : "Viscoplastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ViscoplasticMarcMaterialBehavior",
            "default" : "VISCOPLASTIC_MARC"
          },
          "primaryNetwork" : {
            "$ref" : "#/components/schemas/PrimaryNetwork"
          },
          "viscoelasticNetwork" : {
            "$ref" : "#/components/schemas/ViscoelasticNetwork"
          },
          "elastoplasticNetwork" : {
            "$ref" : "#/components/schemas/ElastoplasticNetwork"
          }
        },
        "additionalProperties" : false
      },
      "PrimaryNetwork" : {
        "type" : "object",
        "properties" : {
          "hyperelasticModelPrimaryNetwork" : {
            "$ref" : "#/components/schemas/YeohPrimaryNetwork"
          },
          "damageModelPrimaryNetwork" : {
            "$ref" : "#/components/schemas/OneOf_PrimaryNetworkDamageModelPrimaryNetwork"
          }
        },
        "additionalProperties" : false
      },
      "YeohPrimaryNetwork" : {
        "title" : "Yeoh",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: YeohPrimaryNetwork",
            "default" : "YEOH_PRIMARY_NETWORK"
          },
          "c10" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c20" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "c30" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "bulkModulus" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "OgdenRoxburgh" : {
        "title" : "Ogden-Roxburgh",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OgdenRoxburgh",
            "default" : "OGDEN_ROXBURGH"
          },
          "relativeDamageExtent" : {
            "title" : "(r) Relative extent of damage",
            "minimum" : 1.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "This parameter (<i>r</i> ≥ 1) dictates the maximum magnitude of damage achievable in the Ogden-Roxburgh model. Higher values lead to a more pronounced reduction in material stiffness during unloading and reloading cycles, characteristic of the Mullins effect."
          },
          "deformationDependence" : {
            "$ref" : "#/components/schemas/Dimensional_EnergyDensity"
          },
          "deviatoricStrainEnergyFactor" : {
            "title" : "(β) Factor of max. deviatoric strain energy",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "A scaling factor (<i>β</i> ≥ 0) that adjusts the influence of the shape-changing (deviatoric) part of the strain energy on the damage evolution. It allows the model to prioritize distortion over volume change when calculating the softening effect."
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_EnergyDensity" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "J/m³", "Btu/in³" ]
          }
        },
        "additionalProperties" : false
      },
      "NoDamage" : {
        "title" : "None",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoDamage",
            "default" : "OFF"
          }
        },
        "additionalProperties" : false
      },
      "ViscoelasticNetwork" : {
        "type" : "object",
        "properties" : {
          "creepModelViscoelasticNetwork" : {
            "$ref" : "#/components/schemas/OneOf_ViscoelasticNetworkCreepModelViscoelasticNetwork"
          }
        },
        "additionalProperties" : false
      },
      "PronySeries" : {
        "title" : "Prony series",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PronySeries",
            "default" : "PRONY_SERIES"
          },
          "pronyFactors" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          }
        },
        "additionalProperties" : false
      },
      "VariableGroup_RELAXATION_TIME" : {
        "type" : "object",
        "properties" : {
          "R_T" : {
            "$ref" : "#/components/schemas/Unit_Time"
          }
        }
      },
      "NoCreep" : {
        "title" : "None",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoCreep",
            "default" : "OFF"
          }
        },
        "additionalProperties" : false
      },
      "ElastoplasticNetwork" : {
        "type" : "object",
        "properties" : {
          "plasticityModelElastoplasticNetwork" : {
            "$ref" : "#/components/schemas/OneOf_ElastoplasticNetworkPlasticityModelElastoplasticNetwork"
          }
        },
        "additionalProperties" : false
      },
      "ArrudaBoycePlasticElastoplasticNetwork" : {
        "title" : "Arruda-Boyce Plastic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ArrudaBoycePlasticElastoplasticNetwork",
            "default" : "ARRUDA_BOYCE_PLASTIC"
          },
          "nkTheta" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "chainLength" : {
            "title" : "Chain length",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "Defined by the number of statistically independent links (<i>N</i>) in a polymer chain, this determines the material's extensibility. It dictates the \"locking stretch\" point where chains become fully extended and the stress-strain curve turns sharply upward."
          },
          "yieldStress" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "tangentModulus" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          },
          "kinematicFraction" : {
            "title" : "Kinematic fraction",
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "This value (from 0 to 1) defines the weight of the kinematic component relative to the isotropic component for the combined hardening rule. A value of 1 represents pure kinematic hardening, while 0 represents pure isotropic hardening."
          }
        },
        "additionalProperties" : false
      },
      "NoElastoplasticity" : {
        "title" : "None",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: NoElastoplasticity",
            "default" : "OFF"
          }
        },
        "additionalProperties" : false
      },
      "FixedValueBCMarc" : {
        "title" : "Imposed displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This is a boundary condition for the displacement vector variable. You can define prescribed values for the displacement of the assigned entities in every coordinate direction (x,y,z) or leave it unconstrained in order to let the entity move freely.</p><p><b>Important remarks:</b></p><ul><li><b>Gradually ramp the displacement values via a table or formula depending on time [t],</b> otherwise the full movement will be applied on the first iteration already and the simulation might fail to converge.</li><li>Choose 0 as value in order to fix your selection in place.</li></ul>\n\nSchema name: FixedValueBCMarc",
            "default" : "FIXED_VALUE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "displacement" : {
            "$ref" : "#/components/schemas/DimensionalPartialVectorFunction_Length"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This is a boundary condition for the displacement vector variable. You can define prescribed values for the displacement of the assigned entities in every coordinate direction (x,y,z) or leave it unconstrained in order to let the entity move freely.</p><p><b>Important remarks:</b></p><ul><li><b>Gradually ramp the displacement values via a table or formula depending on time [t],</b> otherwise the full movement will be applied on the first iteration already and the simulation might fail to converge.</li><li>Choose 0 as value in order to fix your selection in place.</li></ul>"
      },
      "PressureBCMarc" : {
        "title" : "Pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This is a pressure boundary condition representing a distributed load on the selection. It is applied <u>normal</u> to the surface.</p><p><b>Important remarks:</b></p><ul><li>If <b>follower pressure</b> is activated the normal direction and surface area of the faces is updated on every iteration, otherwise only in the undeformed state is used.</li><li><b>Gradually ramp the pressure value via a table or formula depending on time [t],</b> otherwise the full movement will be applied on the first iteration already and the simulation might fail to converge.</li><li>The applied total force depends on the surface area of the selection.</li></ul>\n\nSchema name: PressureBCMarc",
            "default" : "PRESSURE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "pressure" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Pressure"
          },
          "isFollowerPressure" : {
            "title" : "Follower pressure",
            "type" : "boolean",
            "description" : "<p>When enabled, the direction of the pressure load is automatically updated to remain normal to the surface as it deforms and rotates throughout the analysis. This is essential for large deformation simulations where the surface orientation changes significantly.</p>",
            "default" : true
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This is a pressure boundary condition representing a distributed load on the selection. It is applied <u>normal</u> to the surface.</p><p><b>Important remarks:</b></p><ul><li>If <b>follower pressure</b> is activated the normal direction and surface area of the faces is updated on every iteration, otherwise only in the undeformed state is used.</li><li><b>Gradually ramp the pressure value via a table or formula depending on time [t],</b> otherwise the full movement will be applied on the first iteration already and the simulation might fail to converge.</li><li>The applied total force depends on the surface area of the selection.</li></ul>"
      },
      "SymmetryBCMarc" : {
        "title" : "Symmetry plane",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>Use this boundary condition to define a plane of symmetry for the model by constraining the displacement normal to the plane. This allows you to simulate only a portion of a symmetric structure, significantly reducing computational requirements while maintaining physical accuracy.</p><p><b>Important remarks:</b></p><ul><li>The symmetry plane acts <b>like a contact surface</b> for all surfaces of the assigned body which are not initially in contact with the plane. If there is an initial gap with a surface, which closes during the simulation, the contact will be activated and the surface will not pass through the symmetry plane.</li></ul>\n\nSchema name: SymmetryBCMarc",
            "default" : "SYMMETRY"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Planes",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "HALF_SPACE" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<p>Use this boundary condition to define a plane of symmetry for the model by constraining the displacement normal to the plane. This allows you to simulate only a portion of a symmetric structure, significantly reducing computational requirements while maintaining physical accuracy.</p><p><b>Important remarks:</b></p><ul><li>The symmetry plane acts <b>like a contact surface</b> for all surfaces of the assigned body which are not initially in contact with the plane. If there is an initial gap with a surface, which closes during the simulation, the contact will be activated and the surface will not pass through the symmetry plane.</li></ul>"
      },
      "PointDisplacementBCMarc" : {
        "title" : "Point displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This boundary condition prescribes a specific translation or rotation value at a single remote point defined via a point geometry primitive.</p><p><b>Important remarks:</b></p><ul><li>The assigned point geometry primitive point needs to be connected to the CAD model via an <b>RBE3 or RBE2 connector.</b></li><li><b>Gradually ramp the displacement and rotation values via a table or formula depending on time [t],</b> otherwise the full movement will be applied on the first iteration already and the simulation might fail to converge.</li></ul>\n\nSchema name: PointDisplacementBCMarc",
            "default" : "POINT_DISPLACEMENT"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "displacement" : {
            "$ref" : "#/components/schemas/DimensionalPartialVectorFunction_Length"
          },
          "rotation" : {
            "$ref" : "#/components/schemas/DimensionalPartialVectorFunction_Angle"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "geometryPrimitiveUuids" : {
            "title" : "Assigned points",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "POINT" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This boundary condition prescribes a specific translation or rotation value at a single remote point defined via a point geometry primitive.</p><p><b>Important remarks:</b></p><ul><li>The assigned point geometry primitive point needs to be connected to the CAD model via an <b>RBE3 or RBE2 connector.</b></li><li><b>Gradually ramp the displacement and rotation values via a table or formula depending on time [t],</b> otherwise the full movement will be applied on the first iteration already and the simulation might fail to converge.</li></ul>"
      },
      "PointLoadBCMarc" : {
        "title" : "Point load",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<p>This boundary condition adds a point force or moment load at a single remote point defined via a point geometry primitive.</p><p><b>Important remarks:</b></p><ul><li>The assigned point geometry primitive point needs to be connected to the CAD model via an <b>RBE3 or RBE2 connector.</b></li><li><b>Gradually ramp the force and moment values via a table or formula depending on time [t],</b> otherwise the full load will be applied on the first iteration already and the simulation might fail to converge.</li></ul>\n\nSchema name: PointLoadBCMarc",
            "default" : "POINT_LOAD"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "force" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Force"
          },
          "moment" : {
            "$ref" : "#/components/schemas/DimensionalVectorFunction_Torque"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "geometryPrimitiveUuids" : {
            "title" : "Assigned points",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "POINT" ]
            }
          }
        },
        "additionalProperties" : false,
        "description" : "<p>This boundary condition adds a point force or moment load at a single remote point defined via a point geometry primitive.</p><p><b>Important remarks:</b></p><ul><li>The assigned point geometry primitive point needs to be connected to the CAD model via an <b>RBE3 or RBE2 connector.</b></li><li><b>Gradually ramp the force and moment values via a table or formula depending on time [t],</b> otherwise the full load will be applied on the first iteration already and the simulation might fail to converge.</li></ul>"
      },
      "TemperatureBCMarc" : {
        "title" : "Temperature",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a boundary condition for the <b>temperature</b> variable. It prescribes the given temperature value on all selected groups.<br /><br />Important remarks: <br /><ul><li>Do not define a temperature and a heat flux boundary condition on the same group</li><li>Do not define the temperature on slave entities of <b>Contact Constraints</b> as they are constrained by the master temperature</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file)</li></ul>\n\nSchema name: TemperatureBCMarc",
            "default" : "TEMPERATURE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "temperatureValue" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a boundary condition for the <b>temperature</b> variable. It prescribes the given temperature value on all selected groups.<br /><br />Important remarks: <br /><ul><li>Do not define a temperature and a heat flux boundary condition on the same group</li><li>Do not define the temperature on slave entities of <b>Contact Constraints</b> as they are constrained by the master temperature</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file)</li></ul>"
      },
      "ConvectionRadiationBCMarc" : {
        "title" : "Convection & radiation",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a <b>heat flux</b> boundary condition combining <b>convection</b> and <b>radiation</b> on the selected face groups. It is defined by a common <b>reference temperature</b> (surrounding/sink temperature), the <b>heat transfer coefficient</b> (convective part) and the <b>emissivity</b> (radiative part).<br /><br />Important remarks: <br /><ul><li>The heat transfer coefficient is not only a property of the surrounding fluid but also of the flow.</li><li>The emissivity takes values between 0 and 1: a value of 1 represents blackbody radiation, while the default value of 0 disables the radiative contribution, leaving a pure convection boundary condition.</li><li>Radiation is considered diffuse and gray (no dependency on the rotational angle or wavelength).</li><li>If the reference temperature is higher than the computed temperature on the boundary, heat flux enters the body; for lower values, heat flux leaves the body.</li><li>You may define a <b>time dependent</b> value by defining a formula or uploading a table (csv-file) for the <b>reference temperature</b>, the <b>heat transfer coefficient</b> and the <b>emissivity</b>.</li></ul>\n\nSchema name: ConvectionRadiationBCMarc",
            "default" : "CONVECTION_RADIATION"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "referenceTemperature" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Temperature"
          },
          "heatTransferCoefficient" : {
            "$ref" : "#/components/schemas/DimensionalFunction_ThermalTransmittance"
          },
          "emissivity" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Dimensionless"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a <b>heat flux</b> boundary condition combining <b>convection</b> and <b>radiation</b> on the selected face groups. It is defined by a common <b>reference temperature</b> (surrounding/sink temperature), the <b>heat transfer coefficient</b> (convective part) and the <b>emissivity</b> (radiative part).<br /><br />Important remarks: <br /><ul><li>The heat transfer coefficient is not only a property of the surrounding fluid but also of the flow.</li><li>The emissivity takes values between 0 and 1: a value of 1 represents blackbody radiation, while the default value of 0 disables the radiative contribution, leaving a pure convection boundary condition.</li><li>Radiation is considered diffuse and gray (no dependency on the rotational angle or wavelength).</li><li>If the reference temperature is higher than the computed temperature on the boundary, heat flux enters the body; for lower values, heat flux leaves the body.</li><li>You may define a <b>time dependent</b> value by defining a formula or uploading a table (csv-file) for the <b>reference temperature</b>, the <b>heat transfer coefficient</b> and the <b>emissivity</b>.</li></ul>"
      },
      "SurfaceHeatFluxBCMarc" : {
        "title" : "Surface heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Define the heatflux per unit area that enters the body through the assigned faces. Negative sign determines flux leaving the body.\n\nSchema name: SurfaceHeatFluxBCMarc",
            "default" : "SURFACE_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatfluxValue" : {
            "$ref" : "#/components/schemas/DimensionalFunction_HeatFlux"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "Define the heatflux per unit area that enters the body through the assigned faces. Negative sign determines flux leaving the body."
      },
      "VolumeHeatFluxBCMarc" : {
        "title" : "Volume heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "This is a <b>volume heat source</b> boundary condition. It is applied to the <b>volume elements</b> in the selected volumes or volume groups.<br /><br />Important remarks: <br /><ul><li>The total heat generated depends on the volume of the selection as the value is given as Watt per cubic meter.</li><li>For positive values heat is generated, for negative values the bc represents a heat sink.</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file)</li></ul>\n\nSchema name: VolumeHeatFluxBCMarc",
            "default" : "VOLUME_HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "heatfluxValue" : {
            "$ref" : "#/components/schemas/DimensionalFunction_VolumetricPower"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "This is a <b>volume heat source</b> boundary condition. It is applied to the <b>volume elements</b> in the selected volumes or volume groups.<br /><br />Important remarks: <br /><ul><li>The total heat generated depends on the volume of the selection as the value is given as Watt per cubic meter.</li><li>For positive values heat is generated, for negative values the bc represents a heat sink.</li><li>You may define a <b>parameter dependent (x,y,z,t)</b> value by defining a formula or uploading a table (csv-file)</li></ul>"
      },
      "BoltPreloadBCMarc" : {
        "title" : "Bolt preload",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "<b>Bolt preload</b> boundary condition allows you to model pre-stressed fasteners in structural assemblies by assigning clamping conditions directly to solid <b>volumes</b> representing the bolt shanks. For each assigned volume, an individual bolt preload with the defined value is created and evaluated independently.<br/><b>Note:</b><ul><li><b>Ramping phase:</b> During the first active load step, the specified force or displacement linearly ramps up from zero to your target value.</li><li><b>Locked phase:</b> From the second active load step onwards, the solver automatically imposes a zero axial shortening condition, locking the bolt at its current stretched length so it properly resists external loads.</li><li><b>Open condition:</b> If a bolt volume has no active preload boundary condition during a given load step, it enters an \"open\" state where it cannot resist external forces. To ensure an already tightened bolt resists external loads in subsequent stages without adding more preload, you can also specify a <b>Length</b> control mode with an <b>Axial shortening</b> of <b>0 m</b> for those steps.</li><li><b>Multiple conditions:</b> You can apply multiple bolt preload boundary conditions to the same volume (e.g., to change tightening states across stages), provided that their active load steps do not overlap.</li></ul><b>Example:</b> The below diagram explains the states of the bolt preload for a sample setup with four load steps, where the bolt preload is active on steps 2 and 3 and inactive on load steps 1 and 4:<br/><img src=\"/spec/resources/help/imgs/marc_bolt_preload_help_text.png\" class=\"helpPopupImage\"/>\n\nSchema name: BoltPreloadBCMarc",
            "default" : "BOLT_PRELOAD"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "controlMode" : {
            "title" : "Control mode",
            "type" : "string",
            "description" : "<p>The <b>Control mode</b> determines whether the bolt pre-tensioning behavior is governed by a target force or a specific physical contraction distance. Choose <b>Load</b> if you know the exact clamping force required, or <b>Length</b> if you want to prescribe a precise adjustment displacement.</p>",
            "default" : "LOAD",
            "enum" : [ "LOAD", "LENGTH" ]
          },
          "compressionForce" : {
            "$ref" : "#/components/schemas/Dimensional_Force"
          },
          "axialShortening" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "activateLoadSteps" : {
            "title" : "Activate load steps",
            "type" : "boolean",
            "description" : "Turn this option on to assign this boundary condition or contact to specific load steps in your simulation. When enabled, you can control exactly when (and for how long) this condition is applied. If this option is turned off, the boundary condition or contact is considered globally active and remains applied throughout the entire simulation time.",
            "default" : false
          },
          "loadStepUuids" : {
            "title" : "Load steps",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-showWhen" : [ "1/activateLoadSteps == true" ],
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "analysis.loadSteps",
              "allowedReferencedPrimitiveTypes" : [ "LOAD_STEP" ]
            }
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false,
        "description" : "<b>Bolt preload</b> boundary condition allows you to model pre-stressed fasteners in structural assemblies by assigning clamping conditions directly to solid <b>volumes</b> representing the bolt shanks. For each assigned volume, an individual bolt preload with the defined value is created and evaluated independently.<br/><b>Note:</b><ul><li><b>Ramping phase:</b> During the first active load step, the specified force or displacement linearly ramps up from zero to your target value.</li><li><b>Locked phase:</b> From the second active load step onwards, the solver automatically imposes a zero axial shortening condition, locking the bolt at its current stretched length so it properly resists external loads.</li><li><b>Open condition:</b> If a bolt volume has no active preload boundary condition during a given load step, it enters an \"open\" state where it cannot resist external forces. To ensure an already tightened bolt resists external loads in subsequent stages without adding more preload, you can also specify a <b>Length</b> control mode with an <b>Axial shortening</b> of <b>0 m</b> for those steps.</li><li><b>Multiple conditions:</b> You can apply multiple bolt preload boundary conditions to the same volume (e.g., to change tightening states across stages), provided that their active load steps do not overlap.</li></ul><b>Example:</b> The below diagram explains the states of the bolt preload for a sample setup with four load steps, where the bolt preload is active on steps 2 and 3 and inactive on load steps 1 and 4:<br/><img src=\"/spec/resources/help/imgs/marc_bolt_preload_help_text.png\" class=\"helpPopupImage\"/>"
      },
      "MarcNumerics" : {
        "type" : "object",
        "properties" : {
          "linearSolverSettings" : {
            "$ref" : "#/components/schemas/MarcLinearSolverSettings"
          },
          "nonlinearSolverSettings" : {
            "$ref" : "#/components/schemas/MarcNonlinearSolverSettings"
          }
        },
        "additionalProperties" : false
      },
      "MarcLinearSolverSettings" : {
        "type" : "object",
        "properties" : {
          "linearSolver" : {
            "$ref" : "#/components/schemas/OneOf_MarcLinearSolverSettingsLinearSolver"
          }
        },
        "additionalProperties" : false
      },
      "MumpsDirectSolver" : {
        "title" : "Direct (MUMPS)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MumpsDirectSolver",
            "default" : "MUMPS_DIRECT"
          },
          "autoConstrain" : {
            "title" : "Auto constrain to eliminate rigid body motions",
            "type" : "boolean",
            "description" : "<p>Automatically applies small artificial stiffness to unconstrained bodies to prevent numerical singularities during the initial stages of a simulation. Use this when your setup has parts that are not fully fixed until contact is established.</p>",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "PardisoDirectSolver" : {
        "title" : "Direct (Pardiso)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PardisoDirectSolver",
            "default" : "PARDISO_DIRECT"
          }
        },
        "additionalProperties" : false
      },
      "SparseIterative" : {
        "title" : "Iterative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: SparseIterative",
            "default" : "SPARSE_ITERATIVE"
          },
          "preconditioner" : {
            "title" : "Preconditioner",
            "type" : "string",
            "description" : "<p>Selects the preconditioning technique used to accelerate convergence of the iterative solver.</p><ul><li><b>Incomplete Cholesky:</b> Recommended default. Provides the best convergence reduction at the cost of slightly higher setup time.</li><li><b>Diagonal:</b> Cheapest to compute but least effective. Suitable only for well-conditioned systems or when memory is very limited.</li><li><b>Scaled Diagonal:</b> Improves upon plain diagonal at minimal extra cost; useful when large stiffness contrasts exist between parts.</li></ul>",
            "default" : "INCOMPLETE_CHOLESKY",
            "enum" : [ "DIAGONAL", "SCALED_DIAGONAL", "INCOMPLETE_CHOLESKY" ]
          },
          "nonConvergenceAction" : {
            "title" : "When not converged",
            "type" : "string",
            "description" : "<p>Defines what Marc should do if the iterative solver fails to converge within the allowed number of iterations for a given increment.</p><ul><li><b>Switch to Direct Solver:</b> Automatically falls back to the direct solver for the failed increment and then resumes iterative solving for subsequent increments. This provides a safety net while still benefiting from the lower memory usage of the iterative solver in most increments.</li><li><b>Stop:</b> Terminates the analysis if the iterative solver does not converge. Use this when a fallback to the direct solver is not feasible due to memory constraints, or when you want strict control over solver behavior.</li></ul>",
            "default" : "SWITCH_TO_DIRECT_SOLVER",
            "enum" : [ "STOP", "SWITCH_TO_DIRECT_SOLVER" ]
          },
          "convergenceTolerance" : {
            "title" : "Convergence tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "<p>The relative residual tolerance used to determine when the iterative solver has found a sufficiently accurate solution to the linear system within a single Newton-Raphson iteration. The solver stops when the norm of the residual is reduced below the fraction of the initial residual. A smaller value gives a more accurate linear solution but requires more iterations; the default of 10<sup>-4</sup> is suitable for most nonlinear structural analyses.</p>",
            "default" : 1.0E-4
          }
        },
        "additionalProperties" : false
      },
      "MarcNonlinearSolverSettings" : {
        "type" : "object",
        "properties" : {
          "iterativeProcedure" : {
            "title" : "Iterative procedure",
            "type" : "string",
            "description" : "<p>Determines how the global stiffness matrix is updated during the nonlinear equilibrium search. This choice balances the speed of convergence against the computational cost per iteration.</p><ul><li><b>Full Newton-Raphson:</b> Recomputes and factorizes the stiffness matrix at every single iteration. It provides the most robust convergence for highly nonlinear problems.</li><li><b>Modified Newton-Raphson:</b> Updates the stiffness matrix only at the beginning of each increment, reusing it for all subsequent iterations. This reduces the cost per iteration but may require more iterations or smaller time steps to converge in nonlinear cases.</li><li><b>Newton-Raphson with strain correction:</b> A variation of the Newton-Raphson method that applies a correction based on the strain increment to improve stability. It is particularly useful in material nonlinearities where plastic flow or creep is dominant.</li></ul>",
            "default" : "FULL_NEWTON_RAPHSON",
            "enum" : [ "FULL_NEWTON_RAPHSON", "MODIFIED_NEWTON_RAPHSON", "NEWTON_RAPHSON_STRAIN_CORRECTION" ]
          },
          "initialStressStiffnessContribution" : {
            "title" : "Contribution of initial stress to stiffness",
            "type" : "string",
            "description" : "<p>Controls how the current state of stress in the material (geometric stiffness) influences the overall stiffness matrix. This is critical for capturing effects like &quot;stress stiffening&quot; in thin membranes or stability in buckled structures.</p><ul><li><b>Full contribution:</b> Includes the complete geometric stiffness matrix based on the current stress state. Use this for standard large displacement or buckling analyses to ensure all physical stiffening/softening effects are captured.</li><li><b>No initial stress stiffness:</b> Ignores the geometric stiffness component, relying solely on the material stiffness. This can be used to improve stability in specific cases where stress-induced numerical fluctuations prevent convergence, though it may reduce physical accuracy.</li><li><b>Only positive stress:</b> Includes the geometric stiffness only for regions under tension, neglecting the destabilizing effects of compression. This is sometimes used to stabilize membranes or cables that cannot support compressive loads.</li><li><b>Reduce proportional to hydrostatic pressure:</b> Modifies the geometric stiffness based on the pressure component of the stress tensor. This is typically used in specialized rubber or foam applications to prevent numerical instabilities under high confinement.</li><li><b>Stress at beginning of increment:</b> Uses the stress state from the end of the previous increment to form the geometric stiffness for the current one. This can speed up calculation but may lead to &quot;lagging&quot; errors in highly dynamic or rapidly changing nonlinear cases.</li></ul>",
            "default" : "FULL_CONTRIBUTION",
            "enum" : [ "FULL_CONTRIBUTION", "NO_CONTRIBUTION", "TENSILE_STRESS", "DEVIATORIC_STRESS", "BEGIN_INCREMENT_STRESS", "PRINCIPAL_TENSILE_STRESS" ]
          },
          "maxNumberOfRecycles" : {
            "title" : "Max recycles during an increment",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Defines the upper limit for the number of additional equilibrium iterations (recycles) within a single increment. If Marc cannot converge within this many recycles, the increment is reduced or the simulation stops.</p>",
            "default" : 20
          },
          "minNumberOfRecycles" : {
            "title" : "Min recycles during an increment",
            "minimum" : 0,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Defines the lower limit of the number of equilibrium recycles within a single increment. Setting this above 1 ensures that Marc always performs multiple iterations, which can help to avoid false convergence due to numerical noise.</p>",
            "default" : 0
          },
          "convergenceMethod" : {
            "$ref" : "#/components/schemas/OneOf_MarcNonlinearSolverSettingsConvergenceMethod"
          }
        },
        "additionalProperties" : false
      },
      "ResidualsConvergenceMethod" : {
        "title" : "Residuals",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ResidualsConvergenceMethod",
            "default" : "RESIDUALS"
          },
          "convergenceCriteria" : {
            "$ref" : "#/components/schemas/OneOf_ResidualsConvergenceMethodConvergenceCriteria"
          }
        },
        "additionalProperties" : false
      },
      "RelativeConvergenceResiduals" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeConvergenceResiduals",
            "default" : "RELATIVE"
          },
          "relativeForceTolerance" : {
            "title" : "Relative force tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The ratio of the maximum residual force to the maximum reaction force (or applied load). A typical value is 5 &times; 10<sup>-2</sup> (5%) or 10<sup>-2</sup>, ensuring that the error in force balance is negligible.</p>",
            "default" : 0.05
          },
          "relativeMomentTolerance" : {
            "title" : "Relative moment tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "relativeResidualAutoSwitch" : {
            "title" : "Auto switch method",
            "type" : "boolean",
            "description" : "<p><b>Auto switch method:</b> Automatically toggles the convergence criteria between residual, displacement, or energy methods if the primary method becomes numerically unstable due to near-zero reactions or displacements. It is <b>recommended for complex nonlinear assemblies</b> to maintain progress without manually relaxing the tolerances.</p>",
            "default" : true
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteConvergenceResiduals" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteConvergenceResiduals",
            "default" : "ABSOLUTE"
          },
          "maxResidualForce" : {
            "$ref" : "#/components/schemas/Dimensional_Force"
          },
          "maxResidualMoment" : {
            "$ref" : "#/components/schemas/Dimensional_Torque"
          }
        },
        "additionalProperties" : false
      },
      "Dimensional_Torque" : {
        "required" : [ "unit" ],
        "type" : "object",
        "properties" : {
          "value" : {
            "title" : "Value",
            "type" : "number"
          },
          "unit" : {
            "title" : "Unit",
            "type" : "string",
            "enum" : [ "N·m", "lbf·in", "lbf·ft" ]
          }
        },
        "additionalProperties" : false
      },
      "AdaptiveConvergenceResiduals" : {
        "title" : "Adaptive",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AdaptiveConvergenceResiduals",
            "default" : "ADAPTIVE"
          },
          "relativeForceTolerance" : {
            "title" : "Relative force tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The ratio of the maximum residual force to the maximum reaction force (or applied load). A typical value is 5 &times; 10<sup>-2</sup> (5%) or 10<sup>-2</sup>, ensuring that the error in force balance is negligible.</p>",
            "default" : 0.05
          },
          "maxResidualForce" : {
            "$ref" : "#/components/schemas/Dimensional_Force"
          },
          "relativeMomentTolerance" : {
            "title" : "Relative moment tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "maxResidualMoment" : {
            "$ref" : "#/components/schemas/Dimensional_Torque"
          }
        },
        "additionalProperties" : false
      },
      "DisplacementsConvergenceMethod" : {
        "title" : "Displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: DisplacementsConvergenceMethod",
            "default" : "DISPLACEMENTS"
          },
          "convergenceCriteria" : {
            "$ref" : "#/components/schemas/OneOf_DisplacementsConvergenceMethodConvergenceCriteria"
          }
        },
        "additionalProperties" : false
      },
      "RelativeConvergenceDisplacements" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeConvergenceDisplacements",
            "default" : "RELATIVE"
          },
          "relativeDisplacementTolerance" : {
            "title" : "Relative displacement tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The ratio of the maximum displacement change in the current iteration to the maximum displacement in the current increment. It ensures the geometry has stopped changing significantly before finishing the step.</p>",
            "default" : 0.1
          },
          "relativeRotationTolerance" : {
            "title" : "Relative rotation tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteConvergenceDisplacements" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteConvergenceDisplacements",
            "default" : "ABSOLUTE"
          },
          "maxDisplacementIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "maxRotationIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          }
        },
        "additionalProperties" : false
      },
      "AdaptiveConvergenceDisplacements" : {
        "title" : "Adaptive",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AdaptiveConvergenceDisplacements",
            "default" : "ADAPTIVE"
          },
          "relativeDisplacementTolerance" : {
            "title" : "Relative displacement tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The ratio of the maximum displacement change in the current iteration to the maximum displacement in the current increment. It ensures the geometry has stopped changing significantly before finishing the step.</p>",
            "default" : 0.1
          },
          "maxDisplacementIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "relativeRotationTolerance" : {
            "title" : "Relative rotation tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "maxRotationIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          }
        },
        "additionalProperties" : false
      },
      "StrainEnergyConvergenceMethod" : {
        "title" : "Strain energy",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: StrainEnergyConvergenceMethod",
            "default" : "STRAIN_ENERGY"
          },
          "strainEnergyTolerance" : {
            "title" : "Strain energy tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "<p>The ratio of the incremental strain energy to the total strain energy. Because energy is a scalar, this criterion is often smoother and less sensitive to local numerical noise than force or displacement checks.</p>",
            "default" : 0.1
          }
        },
        "additionalProperties" : false
      },
      "ResidualsOrDisplacementsConvergenceMethod" : {
        "title" : "Residuals or displacements",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ResidualsOrDisplacementsConvergenceMethod",
            "default" : "RESIDUALS_OR_DISPLACEMENTS"
          },
          "convergenceCriteria" : {
            "$ref" : "#/components/schemas/OneOf_ResidualsOrDisplacementsConvergenceMethodConvergenceCriteria"
          }
        },
        "additionalProperties" : false
      },
      "RelativeConvergenceResidualsOrDisplacements" : {
        "title" : "Relative",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: RelativeConvergenceResidualsOrDisplacements",
            "default" : "RELATIVE"
          },
          "relativeForceTolerance" : {
            "title" : "Relative force tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.05
          },
          "relativeMomentTolerance" : {
            "title" : "Relative moment tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "relativeDisplacementTolerance" : {
            "title" : "Relative displacement tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.1
          },
          "relativeRotationTolerance" : {
            "title" : "Relative rotation tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          }
        },
        "additionalProperties" : false
      },
      "AbsoluteConvergenceResidualsOrDisplacements" : {
        "title" : "Absolute",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AbsoluteConvergenceResidualsOrDisplacements",
            "default" : "ABSOLUTE"
          },
          "maxResidualForce" : {
            "$ref" : "#/components/schemas/Dimensional_Force"
          },
          "maxResidualMoment" : {
            "$ref" : "#/components/schemas/Dimensional_Torque"
          },
          "maxDisplacementIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "maxRotationIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          }
        },
        "additionalProperties" : false
      },
      "AdaptiveConvergenceResidualsOrDisplacements" : {
        "title" : "Adaptive",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AdaptiveConvergenceResidualsOrDisplacements",
            "default" : "ADAPTIVE"
          },
          "relativeForceTolerance" : {
            "title" : "Relative force tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.05
          },
          "maxResidualForce" : {
            "$ref" : "#/components/schemas/Dimensional_Force"
          },
          "relativeMomentTolerance" : {
            "title" : "Relative moment tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "maxResidualMoment" : {
            "$ref" : "#/components/schemas/Dimensional_Torque"
          },
          "relativeDisplacementTolerance" : {
            "title" : "Relative displacement tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.1
          },
          "maxDisplacementIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "relativeRotationTolerance" : {
            "title" : "Relative rotation tolerance",
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "default" : 0.0
          },
          "maxRotationIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Angle"
          }
        },
        "additionalProperties" : false
      },
      "LoadStep" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: LoadStep",
            "default" : "LOAD_STEP"
          },
          "id" : {
            "title" : "Id",
            "type" : "string",
            "format" : "uuid"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          },
          "duration" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          }
        },
        "additionalProperties" : false
      },
      "MarcSimulationControl" : {
        "type" : "object",
        "properties" : {
          "timestepDefinition" : {
            "$ref" : "#/components/schemas/OneOf_MarcSimulationControlTimestepDefinition"
          },
          "outputWritingContainer" : {
            "$ref" : "#/components/schemas/MarcOutputWritingContainer"
          },
          "numProcessors" : {
            "title" : "Number of processors",
            "maximum" : 192,
            "exclusiveMaximum" : false,
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Selecting more processor cores will speed up the simulation process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/simulation-control-fluid/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "format" : "int64",
            "default" : -1,
            "enum" : [ -1, 1, 2, 4, 8, 16, 32, 48, 64, 96, 128, 192 ]
          },
          "manuallyAssignParallelization" : {
            "title" : "Manually assign parallelization",
            "type" : "boolean",
            "default" : false
          },
          "nprocds" : {
            "title" : "Number of processors for domain decomposition via MPI (nprocds)",
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : -1,
            "x-showWhen" : [ "1/manuallyAssignParallelization == true" ]
          },
          "nte" : {
            "title" : "Number of assembly threads for shared memory parallelization (nte)",
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : -1,
            "x-showWhen" : [ "1/manuallyAssignParallelization == true" ]
          },
          "nts" : {
            "title" : "Number of solver threads for shared memory parallelization (nts)",
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : -1,
            "x-showWhen" : [ "1/manuallyAssignParallelization == true" ]
          },
          "nsolver" : {
            "title" : "Number of processors for solver parallelization via MPI (nsolver)",
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "default" : -1,
            "x-showWhen" : [ "1/manuallyAssignParallelization == true" ]
          },
          "maxRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "livePostprocessing" : {
            "title" : "Live results processing",
            "type" : "boolean",
            "description" : "<p>Determines whether simulation results are updated in the post-processor in real-time while the solver is still running. Enabling this allows for early inspection of the structural behavior before the full analysis completes. This option is particularly useful for long running simulations.</p>",
            "default" : true
          }
        },
        "additionalProperties" : false
      },
      "AutomaticTimeStepDefintion" : {
        "title" : "Automatic",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AutomaticTimeStepDefintion",
            "default" : "AUTOMATIC"
          },
          "endTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "initialTimeStep" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "minimumTimeStep" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "maximumTimeStep" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "physicalCriteria" : {
            "title" : "Physical criteria",
            "type" : "boolean",
            "description" : "Enable or disable user-defined criteria to control automatic time stepping adjustments during simulation.",
            "default" : false
          },
          "displacementCriteria" : {
            "title" : "Displacement",
            "type" : "boolean",
            "description" : "Enable to limit time step based on displacement increment.",
            "default" : false,
            "x-showWhen" : [ "1/physicalCriteria == true" ]
          },
          "displacementIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Length"
          },
          "totalStrainCriteria" : {
            "title" : "Total strain",
            "type" : "boolean",
            "description" : "Enable to limit time step based on total strain increment.",
            "default" : false,
            "x-showWhen" : [ "1/physicalCriteria == true" ]
          },
          "totalStrainIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          },
          "plasticStrainCriteria" : {
            "title" : "Plastic strain",
            "type" : "boolean",
            "description" : "Enable to limit time step based on plastic strain increment.",
            "default" : false,
            "x-showWhen" : [ "1/physicalCriteria == true" ]
          },
          "plasticStrainIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Dimensionless"
          },
          "stressCriteria" : {
            "title" : "Stress",
            "type" : "boolean",
            "description" : "Enable to limit time step based on stress increment.",
            "default" : false,
            "x-showWhen" : [ "1/physicalCriteria == true" ]
          },
          "stressIncrement" : {
            "$ref" : "#/components/schemas/Dimensional_Pressure"
          }
        },
        "additionalProperties" : false
      },
      "ManualTimeStepDefintion" : {
        "title" : "Manual",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ManualTimeStepDefintion",
            "default" : "MANUAL"
          },
          "endTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "timeStepLength" : {
            "$ref" : "#/components/schemas/DimensionalFunction_Time"
          },
          "cutbacks" : {
            "title" : "Allowed cutbacks",
            "minimum" : 0,
            "exclusiveMinimum" : true,
            "type" : "integer",
            "description" : "The maximum number of times to cut down the time step in each increment when convergence criteria are not met.",
            "default" : 10
          }
        },
        "additionalProperties" : false
      },
      "MarcOutputWritingContainer" : {
        "type" : "object",
        "properties" : {
          "outputWriting" : {
            "$ref" : "#/components/schemas/OneOf_MarcOutputWritingContainerOutputWriting"
          }
        },
        "additionalProperties" : false
      },
      "AllComputed" : {
        "title" : "All computed",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AllComputed",
            "default" : "ALL_COMPUTED"
          }
        },
        "additionalProperties" : false
      },
      "WriteInterval" : {
        "title" : "Write interval",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: WriteInterval",
            "default" : "WRITE_INTERVAL"
          },
          "writeInterval" : {
            "title" : "Write interval",
            "maximum" : 1000,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Output results are saved every <i>n</i> time steps. Use a value larger than one to reduce the size of the output data and speed up the post-processing.",
            "default" : 1
          }
        },
        "additionalProperties" : false
      },
      "OutputSteps" : {
        "title" : "Output steps",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: OutputSteps",
            "default" : "OUTPUT_STEPS"
          },
          "numberOfOutputSteps" : {
            "title" : "Number of output steps",
            "maximum" : 1000,
            "exclusiveMaximum" : false,
            "minimum" : 1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "Specify the number of output steps for the entire simulation. They are distributed as evenly as possible.",
            "default" : 20
          }
        },
        "additionalProperties" : false
      },
      "MarcResultControl" : {
        "type" : "object",
        "properties" : {
          "solutionFields" : {
            "title" : "Solution fields",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_MarcResultControlSolutionFields"
            },
            "x-conditionalDefaults" : [ {
              "when" : [ "type == MARC_ANALYSIS" ],
              "default" : [ {
                "type" : "DISPLACEMENT",
                "name" : "Displacement",
                "displacementType" : {
                  "type" : "GLOBAL"
                }
              }, {
                "type" : "STRESS",
                "name" : "Von Mises stress",
                "stressType" : {
                  "type" : "VON_MISES"
                }
              }, {
                "type" : "STRAIN",
                "name" : "Equivalent elastic strain",
                "strainType" : {
                  "type" : "EQUIVALENT_ELASTIC"
                }
              }, {
                "type" : "STRESS",
                "name" : "Cauchy stress",
                "stressType" : {
                  "type" : "CAUCHY"
                }
              }, {
                "type" : "STRAIN",
                "name" : "Total strain",
                "strainType" : {
                  "type" : "TOTAL"
                }
              } ]
            } ]
          },
          "areaCalculation" : {
            "title" : "Area calculation",
            "type" : "array",
            "description" : "<ul><li><b>Min-max</b>: Identifies and records the absolute minimum and maximum values of the selected field within the designated area or volume.<li><b>Average</b>: Calculates the <b>nodal average</b> of the selected field across the entity. This can provide a representative mean value if the mesh is uniformly distributed, but might be skewed for meshes with highly varying element sizes, as the average is not area- or volume-weighted.<li><b>Sum</b>: Calculates the sum of the nodal field values across all nodes of the assigned area or volume; for example, summing \"contact body force\" returns the total contact force acting on the assigned body.</ul>",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_MarcResultControlAreaCalculation"
            }
          },
          "volumeCalculation" : {
            "title" : "Volume calculation",
            "type" : "array",
            "description" : "<ul><li><b>Min-max</b>: Identifies and records the absolute minimum and maximum values of the selected field within the designated area or volume.<li><b>Average</b>: Calculates the <b>nodal average</b> of the selected field across the entity. This can provide a representative mean value if the mesh is uniformly distributed, but might be skewed for meshes with highly varying element sizes, as the average is not area- or volume-weighted.<li><b>Sum</b>: Calculates the sum of the nodal field values across all nodes of the assigned area or volume; for example, summing \"contact body force\" returns the total contact force acting on the assigned body.</ul>",
            "items" : {
              "$ref" : "#/components/schemas/OneOf_MarcResultControlVolumeCalculation"
            }
          },
          "connectorPointData" : {
            "title" : "Connector point data",
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/MarcConnectorPointDataItem"
            }
          }
        },
        "additionalProperties" : false
      },
      "MarcDisplacementResultControlItem" : {
        "title" : "Displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcDisplacementResultControlItem",
            "default" : "DISPLACEMENT"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "displacementType" : {
            "$ref" : "#/components/schemas/GlobalDisplacement"
          }
        },
        "additionalProperties" : false
      },
      "GlobalDisplacement" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: GlobalDisplacement",
            "default" : "GLOBAL"
          }
        },
        "additionalProperties" : false
      },
      "MarcForceResultControlItem" : {
        "title" : "Force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcForceResultControlItem",
            "default" : "FORCE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "forceType" : {
            "$ref" : "#/components/schemas/OneOf_MarcForceResultControlItemForceType"
          }
        },
        "additionalProperties" : false
      },
      "ReactionForce" : {
        "title" : "Reaction force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ReactionForce",
            "default" : "REACTION"
          }
        },
        "additionalProperties" : false
      },
      "ExternalForce" : {
        "title" : "External force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ExternalForce",
            "default" : "EXTERNAL"
          }
        },
        "additionalProperties" : false
      },
      "MarcPressureResultControlItem" : {
        "title" : "Pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcPressureResultControlItem",
            "default" : "PRESSURE"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "pressureType" : {
            "$ref" : "#/components/schemas/ExternalPressure"
          }
        },
        "additionalProperties" : false
      },
      "ExternalPressure" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ExternalPressure",
            "default" : "EXTERNAL"
          }
        },
        "additionalProperties" : false
      },
      "MarcStressResultControlItem" : {
        "title" : "Stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcStressResultControlItem",
            "default" : "STRESS"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "stressType" : {
            "$ref" : "#/components/schemas/OneOf_MarcStressResultControlItemStressType"
          }
        },
        "additionalProperties" : false
      },
      "CauchyStress" : {
        "title" : "Cauchy stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CauchyStress",
            "default" : "CAUCHY"
          }
        },
        "additionalProperties" : false
      },
      "VonMisesStress" : {
        "title" : "Von Mises stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: VonMisesStress",
            "default" : "VON_MISES"
          }
        },
        "additionalProperties" : false
      },
      "PrincipalStress" : {
        "title" : "Principal stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PrincipalStress",
            "default" : "PRINCIPAL"
          }
        },
        "additionalProperties" : false
      },
      "MarcStrainResultControlItem" : {
        "title" : "Strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcStrainResultControlItem",
            "default" : "STRAIN"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "strainType" : {
            "$ref" : "#/components/schemas/OneOf_MarcStrainResultControlItemStrainType"
          }
        },
        "additionalProperties" : false
      },
      "TotalStrain" : {
        "title" : "Total strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: TotalStrain",
            "default" : "TOTAL"
          }
        },
        "additionalProperties" : false
      },
      "ElasticStrain" : {
        "title" : "Elastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: ElasticStrain",
            "default" : "ELASTIC"
          }
        },
        "additionalProperties" : false
      },
      "PlasticStrain" : {
        "title" : "Plastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PlasticStrain",
            "default" : "PLASTIC"
          }
        },
        "additionalProperties" : false
      },
      "PrincipalTotalStrain" : {
        "title" : "Principal strain (total)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PrincipalTotalStrain",
            "default" : "PRINCIPAL_TOTAL"
          }
        },
        "additionalProperties" : false
      },
      "PrincipalElasticStrain" : {
        "title" : "Principal strain (elastic)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PrincipalElasticStrain",
            "default" : "PRINCIPAL_ELASTIC"
          }
        },
        "additionalProperties" : false
      },
      "PrincipalPlasticStrain" : {
        "title" : "Principal strain (plastic)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: PrincipalPlasticStrain",
            "default" : "PRINCIPAL_PLASTIC"
          }
        },
        "additionalProperties" : false
      },
      "EquivalentElasticStrain" : {
        "title" : "Equivalent elastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: EquivalentElasticStrain",
            "default" : "EQUIVALENT_ELASTIC"
          }
        },
        "additionalProperties" : false
      },
      "EquivalentPlasticStrain" : {
        "title" : "Equivalent plastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: EquivalentPlasticStrain",
            "default" : "EQUIVALENT_PLASTIC"
          }
        },
        "additionalProperties" : false
      },
      "CumulativePlasticStrain" : {
        "title" : "Cumulative plastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CumulativePlasticStrain",
            "default" : "CUMULATIVE_PLASTIC"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactResultControlItem" : {
        "title" : "Contact result",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactResultControlItem",
            "default" : "CONTACT"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "contactType" : {
            "$ref" : "#/components/schemas/OneOf_MarcContactResultControlItemContactType"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactNormalForce" : {
        "title" : "Normal force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactNormalForce",
            "default" : "NORMAL_FORCE"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactFrictionForce" : {
        "title" : "Friction force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactFrictionForce",
            "default" : "FRICTION_FORCE"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactNormalStress" : {
        "title" : "Normal stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactNormalStress",
            "default" : "NORMAL_STRESS"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactFrictionStress" : {
        "title" : "Friction stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactFrictionStress",
            "default" : "FRICTION_STRESS"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactGap" : {
        "title" : "Gap",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactGap",
            "default" : "GAP"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactStatus" : {
        "title" : "State",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactStatus",
            "default" : "STATUS"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactPressure" : {
        "title" : "Pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactPressure",
            "default" : "PRESSURE"
          }
        },
        "additionalProperties" : false
      },
      "MarcTemperatureResultControlItem" : {
        "title" : "Temperature",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcTemperatureResultControlItem",
            "default" : "TEMPERATURE"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          }
        },
        "additionalProperties" : false
      },
      "MarcHeatFluxResultControlItem" : {
        "title" : "Heat flux",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcHeatFluxResultControlItem",
            "default" : "HEAT_FLUX"
          },
          "name" : {
            "title" : "Name",
            "type" : "string"
          }
        },
        "additionalProperties" : false
      },
      "MarcMinMaxFieldsCalculationResultControlItem" : {
        "title" : "Min-max",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcMinMaxFieldsCalculationResultControlItem",
            "default" : "MIN_MAX_FIELDS_CALCULATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_MarcMinMaxFieldsCalculationResultControlItemFieldSelection"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "MarcDisplacementFieldSelection" : {
        "title" : "Displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcDisplacementFieldSelection",
            "default" : "DISPLACEMENT"
          },
          "displacementType" : {
            "$ref" : "#/components/schemas/MarcGlobalDisplacementFieldType"
          }
        },
        "additionalProperties" : false
      },
      "MarcGlobalDisplacementFieldType" : {
        "title" : "Displacement",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcGlobalDisplacementFieldType",
            "default" : "GLOBAL"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcPressureFieldSelection" : {
        "title" : "Pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcPressureFieldSelection",
            "default" : "PRESSURE"
          },
          "pressureType" : {
            "$ref" : "#/components/schemas/MarcExternalPressureType"
          }
        },
        "additionalProperties" : false
      },
      "MarcExternalPressureType" : {
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcExternalPressureType",
            "default" : "EXTERNAL"
          }
        },
        "additionalProperties" : false
      },
      "MarcStressFieldSelection" : {
        "title" : "Stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcStressFieldSelection",
            "default" : "STRESS"
          },
          "stressType" : {
            "$ref" : "#/components/schemas/OneOf_MarcStressFieldSelectionStressType"
          }
        },
        "additionalProperties" : false
      },
      "MarcCauchyStressType" : {
        "title" : "Cauchy stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcCauchyStressType",
            "default" : "CAUCHY"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "XX", "YY", "ZZ", "XY", "XZ", "YZ", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcVonMisesStressType" : {
        "title" : "Von Mises stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcVonMisesStressType",
            "default" : "VON_MISES"
          }
        },
        "additionalProperties" : false
      },
      "MarcPrincipalStressType" : {
        "title" : "Principal stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcPrincipalStressType",
            "default" : "PRINCIPAL"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "MIN", "MID", "MAX", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcStrainFieldSelection" : {
        "title" : "Strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcStrainFieldSelection",
            "default" : "STRAIN"
          },
          "strainType" : {
            "$ref" : "#/components/schemas/OneOf_MarcStrainFieldSelectionStrainType"
          }
        },
        "additionalProperties" : false
      },
      "MarcTotalStrainType" : {
        "title" : "Total strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcTotalStrainType",
            "default" : "TOTAL"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "XX", "YY", "ZZ", "XY", "XZ", "YZ", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcElasticStrainType" : {
        "title" : "Elastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcElasticStrainType",
            "default" : "ELASTIC"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "XX", "YY", "ZZ", "XY", "XZ", "YZ", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcPlasticStrainType" : {
        "title" : "Plastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcPlasticStrainType",
            "default" : "PLASTIC"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "XX", "YY", "ZZ", "XY", "XZ", "YZ", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcPrincipalTotalStrainType" : {
        "title" : "Principal strain (total)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcPrincipalTotalStrainType",
            "default" : "PRINCIPAL_TOTAL"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "MIN", "MID", "MAX", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcPrincipalElasticStrainType" : {
        "title" : "Principal strain (elastic)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcPrincipalElasticStrainType",
            "default" : "PRINCIPAL_ELASTIC"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "MIN", "MID", "MAX", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcPrincipalPlasticStrainType" : {
        "title" : "Principal strain (plastic)",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcPrincipalPlasticStrainType",
            "default" : "PRINCIPAL_PLASTIC"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "MIN", "MID", "MAX", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcEquivalentElasticStrainType" : {
        "title" : "Equivalent elastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcEquivalentElasticStrainType",
            "default" : "EQUIVALENT_ELASTIC"
          }
        },
        "additionalProperties" : false
      },
      "MarcEquivalentPlasticStrainType" : {
        "title" : "Equivalent plastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcEquivalentPlasticStrainType",
            "default" : "EQUIVALENT_PLASTIC"
          }
        },
        "additionalProperties" : false
      },
      "MarcCumulativePlasticStrainType" : {
        "title" : "Cumulative plastic strain",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcCumulativePlasticStrainType",
            "default" : "CUMULATIVE_PLASTIC"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactFieldSelection" : {
        "title" : "Contact result",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactFieldSelection",
            "default" : "CONTACT"
          },
          "contactType" : {
            "$ref" : "#/components/schemas/OneOf_MarcContactFieldSelectionContactType"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactNormalStressType" : {
        "title" : "Normal stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactNormalStressType",
            "default" : "NORMAL_STRESS"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcContactFrictionStressType" : {
        "title" : "Friction stress",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactFrictionStressType",
            "default" : "FRICTION_STRESS"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcContactGapType" : {
        "title" : "Gap",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactGapType",
            "default" : "GAP"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactStatusType" : {
        "title" : "State",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactStatusType",
            "default" : "STATUS"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactPressureType" : {
        "title" : "Pressure",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactPressureType",
            "default" : "PRESSURE"
          }
        },
        "additionalProperties" : false
      },
      "MarcAverageFieldsCalculationResultControlItem" : {
        "title" : "Average",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcAverageFieldsCalculationResultControlItem",
            "default" : "AVERAGE_FIELDS_CALCULATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_MarcAverageFieldsCalculationResultControlItemFieldSelection"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "MarcSumFieldsCalculationResultControlItem" : {
        "title" : "Sum",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcSumFieldsCalculationResultControlItem",
            "default" : "SUM_FIELDS_CALCULATION"
          },
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "fieldSelection" : {
            "$ref" : "#/components/schemas/OneOf_MarcSumFieldsCalculationResultControlItemFieldSelection"
          },
          "topologicalReference" : {
            "$ref" : "#/components/schemas/TopologicalReference"
          }
        },
        "additionalProperties" : false
      },
      "MarcForceFieldSelection" : {
        "title" : "Force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcForceFieldSelection",
            "default" : "FORCE"
          },
          "forceType" : {
            "$ref" : "#/components/schemas/OneOf_MarcForceFieldSelectionForceType"
          }
        },
        "additionalProperties" : false
      },
      "MarcReactionForceType" : {
        "title" : "Reaction force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcReactionForceType",
            "default" : "REACTION"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcExternalForceType" : {
        "title" : "External force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcExternalForceType",
            "default" : "EXTERNAL"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcContactForceFieldSelection" : {
        "title" : "Contact result",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactForceFieldSelection",
            "default" : "CONTACT_FORCE"
          },
          "contactType" : {
            "$ref" : "#/components/schemas/OneOf_MarcContactForceFieldSelectionContactType"
          }
        },
        "additionalProperties" : false
      },
      "MarcContactNormalForceType" : {
        "title" : "Normal force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactNormalForceType",
            "default" : "NORMAL_FORCE"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcContactFrictionForceType" : {
        "title" : "Friction force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactFrictionForceType",
            "default" : "FRICTION_FORCE"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcContactBodyForceType" : {
        "title" : "Contact body force",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: MarcContactBodyForceType",
            "default" : "BODY_FORCE"
          },
          "componentSelection" : {
            "title" : "Component selection",
            "type" : "string",
            "default" : "ALL",
            "enum" : [ "X", "Y", "Z", "ALL" ]
          }
        },
        "additionalProperties" : false
      },
      "MarcConnectorPointDataItem" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "title" : "Name",
            "pattern" : "^[A-Za-z()][-+0-9a-zA-Z_()\\h]{0,199}$",
            "type" : "string"
          },
          "results" : {
            "$ref" : "#/components/schemas/OneOf_MarcConnectorPointDataItemResults"
          },
          "geometryPrimitiveUuids" : {
            "title" : "Geometry primitives",
            "type" : "array",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            },
            "x-referencedPrimitivesOptions" : {
              "allowMultiple" : true,
              "pathToPrimitives" : "geometryPrimitives",
              "allowedReferencedPrimitiveTypes" : [ "POINT" ]
            }
          }
        },
        "additionalProperties" : false
      },
      "AllConnectorPointDataResults" : {
        "title" : "All",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: AllConnectorPointDataResults",
            "default" : "ALL"
          }
        },
        "additionalProperties" : false
      },
      "CustomConnectorPointDataResults" : {
        "title" : "Custom",
        "required" : [ "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "title" : "Type",
            "type" : "string",
            "description" : "Schema name: CustomConnectorPointDataResults",
            "default" : "CUSTOM"
          },
          "displacements" : {
            "title" : "Displacements",
            "type" : "boolean",
            "default" : false
          },
          "rotations" : {
            "title" : "Rotations",
            "type" : "boolean",
            "default" : false
          },
          "reactionForces" : {
            "title" : "Reaction Forces",
            "type" : "boolean",
            "default" : false
          },
          "reactionMoments" : {
            "title" : "Reaction Moments",
            "type" : "boolean",
            "default" : false
          },
          "externalForces" : {
            "title" : "External Forces",
            "type" : "boolean",
            "default" : false
          },
          "externalMoments" : {
            "title" : "External Moments",
            "type" : "boolean",
            "default" : false
          }
        },
        "additionalProperties" : false
      },
      "TestsolverSimulationControl" : {
        "type" : "object",
        "properties" : {
          "numProcessors" : {
            "title" : "Number of processors",
            "maximum" : 192,
            "exclusiveMaximum" : false,
            "minimum" : -1,
            "exclusiveMinimum" : false,
            "type" : "integer",
            "description" : "<p>Selecting more processor cores will speed up the simulation process. Choosing a smaller computation instance will save core hours. <a href='https://www.simscale.com/docs/simulation-setup/simulation-control-fluid/#number-of-processors' target='_blank'>Learn more</a>.</p>",
            "format" : "int64",
            "default" : -1,
            "enum" : [ -1, 1, 2, 4, 8, 16, 32, 48, 64, 96, 128, 192 ]
          },
          "maxRunTime" : {
            "$ref" : "#/components/schemas/Dimensional_Time"
          },
          "executionMode" : {
            "type" : "string",
            "default" : "SUCCESS"
          },
          "executionModeConfig" : {
            "type" : "string",
            "default" : "{}"
          }
        },
        "additionalProperties" : false
      },
      "OneOf_SurfaceNormalGradientSchemesForDefault" : {
        "title" : "Default",
        "description" : "<p>A surface normal gradient is the component, normal to the face, of the gradient of values at the centres of the 2 cells connected through that face. Choose your desired scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CORRECTED" : "#/components/schemas/CorrectedSurfaceNormalGradientScheme",
            "UNCORRECTED" : "#/components/schemas/UncorrectedSurfaceNormalGradientScheme",
            "LIMITED" : "#/components/schemas/LimitedSurfaceNormalGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CorrectedSurfaceNormalGradientScheme"
        }, {
          "$ref" : "#/components/schemas/UncorrectedSurfaceNormalGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LimitedSurfaceNormalGradientScheme"
        } ],
        "default" : {
          "type" : "LIMITED"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]" ]
      },
      "OneOf_SurfaceNormalGradientSchemesSurfaceNormalGradient_rho" : {
        "title" : "snGrad(rho)",
        "description" : "<p>A surface normal gradient is the component, normal to the face, of the gradient of values at the centres of the 2 cells connected through that face. Choose your desired scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CORRECTED" : "#/components/schemas/CorrectedSurfaceNormalGradientScheme",
            "UNCORRECTED" : "#/components/schemas/UncorrectedSurfaceNormalGradientScheme",
            "LIMITED" : "#/components/schemas/LimitedSurfaceNormalGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CorrectedSurfaceNormalGradientScheme"
        }, {
          "$ref" : "#/components/schemas/UncorrectedSurfaceNormalGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LimitedSurfaceNormalGradientScheme"
        } ],
        "default" : {
          "type" : "LIMITED"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_SurfaceNormalGradientSchemesSurfaceNormalGradient_pressureRgh" : {
        "title" : "snGrad(p_rgh)",
        "description" : "<p>A surface normal gradient is the component, normal to the face, of the gradient of values at the centres of the 2 cells connected through that face. Choose your desired scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CORRECTED" : "#/components/schemas/CorrectedSurfaceNormalGradientScheme",
            "UNCORRECTED" : "#/components/schemas/UncorrectedSurfaceNormalGradientScheme",
            "LIMITED" : "#/components/schemas/LimitedSurfaceNormalGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CorrectedSurfaceNormalGradientScheme"
        }, {
          "$ref" : "#/components/schemas/UncorrectedSurfaceNormalGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LimitedSurfaceNormalGradientScheme"
        } ],
        "default" : {
          "type" : "LIMITED"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,NONE,KEPSILON,KOMEGASST] && isCompressible == false" ]
      },
      "OneOf_SurfaceNormalGradientSchemesSurfaceNormalGradient_rhok" : {
        "title" : "snGrad(rhok)",
        "description" : "<p>A surface normal gradient is the component, normal to the face, of the gradient of values at the centres of the 2 cells connected through that face. Choose your desired scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CORRECTED" : "#/components/schemas/CorrectedSurfaceNormalGradientScheme",
            "UNCORRECTED" : "#/components/schemas/UncorrectedSurfaceNormalGradientScheme",
            "LIMITED" : "#/components/schemas/LimitedSurfaceNormalGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CorrectedSurfaceNormalGradientScheme"
        }, {
          "$ref" : "#/components/schemas/UncorrectedSurfaceNormalGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LimitedSurfaceNormalGradientScheme"
        } ],
        "default" : {
          "type" : "LIMITED"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,NONE,KEPSILON,KOMEGASST] && isCompressible == false" ]
      },
      "OneOf_AverageFieldsCalculationResultControlItemFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DISPLACEMENT" : "#/components/schemas/DisplacementFieldSelection",
            "FORCE" : "#/components/schemas/ForceFieldSelection",
            "CONTACT" : "#/components/schemas/ContactFieldSelection",
            "STRAIN" : "#/components/schemas/StrainFieldSelection",
            "STRESS" : "#/components/schemas/StressFieldSelection",
            "VELOCITY" : "#/components/schemas/VelocityFieldSelection",
            "ACCELERATION" : "#/components/schemas/AccelerationFieldSelection",
            "TEMPERATURE" : "#/components/schemas/TemperatureFieldSelection",
            "HEAT_FLUX" : "#/components/schemas/HeatFluxFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DisplacementFieldSelection"
        }, {
          "$ref" : "#/components/schemas/ForceFieldSelection"
        }, {
          "$ref" : "#/components/schemas/ContactFieldSelection"
        }, {
          "$ref" : "#/components/schemas/StrainFieldSelection"
        }, {
          "$ref" : "#/components/schemas/StressFieldSelection"
        }, {
          "$ref" : "#/components/schemas/VelocityFieldSelection"
        }, {
          "$ref" : "#/components/schemas/AccelerationFieldSelection"
        }, {
          "$ref" : "#/components/schemas/TemperatureFieldSelection"
        }, {
          "$ref" : "#/components/schemas/HeatFluxFieldSelection"
        } ],
        "default" : {
          "type" : "DISPLACEMENT"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL]" ]
      },
      "OneOf_ManualSimericsMeshSettingsRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_REFINEMENT_SIMERICS" : "#/components/schemas/RegionRefinementSimerics",
            "SURFACE_REFINEMENT_SIMERICS" : "#/components/schemas/SurfaceRefinementSimerics"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RegionRefinementSimerics"
        }, {
          "$ref" : "#/components/schemas/SurfaceRefinementSimerics"
        } ]
      },
      "OneOf_ManualSimericsMeshSettingsCellSizeSpecification" : {
        "title" : "Cell size specification",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "RELATIVE_TO_ALL_CAD_SURFACES" : "#/components/schemas/RelativeToAllCadSurfacesSettings",
            "ABSOLUTE_TO_ALL_CAD_SURFACES" : "#/components/schemas/AbsoluteToAllCadSurfacesSettings"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RelativeToAllCadSurfacesSettings"
        }, {
          "$ref" : "#/components/schemas/AbsoluteToAllCadSurfacesSettings"
        } ]
      },
      "OneOf_OgdenHyperelasticModelMarcNumberOfTerms" : {
        "title" : "Number of terms",
        "description" : "<b>Number of terms</b> defines the number of principal stretch power-law terms (up to 3) used to fit the material curve. Increasing the number of terms allows the model to more accurately capture highly non-linear experimental data across larger strain ranges.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ONE_TERM" : "#/components/schemas/OneTerm",
            "TWO_TERMS" : "#/components/schemas/TwoTerms",
            "THREE_TERMS" : "#/components/schemas/ThreeTerms"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/OneTerm"
        }, {
          "$ref" : "#/components/schemas/TwoTerms"
        }, {
          "$ref" : "#/components/schemas/ThreeTerms"
        } ],
        "default" : {
          "type" : "ONE_TERM"
        }
      },
      "OneOf_FrequencyAnalysisConnectors" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PIN_CONNECTOR" : "#/components/schemas/PinConnector",
            "BOLT_CONNECTOR" : "#/components/schemas/BoltConnector"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PinConnector"
        }, {
          "$ref" : "#/components/schemas/BoltConnector"
        } ]
      },
      "OneOf_FrequencyAnalysisBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BOLT_PRELOAD" : "#/components/schemas/BoltPreloadBC",
            "ELASTIC_SUPPORT" : "#/components/schemas/ElasticSupportBC",
            "FIXED_SUPPORT" : "#/components/schemas/FixedSupportBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueBC",
            "POINT_MASS" : "#/components/schemas/PointMassBC",
            "DISTRIBUTED_MASS" : "#/components/schemas/DistributedMassBC",
            "REMOTE_DISPLACEMENT_LOAD" : "#/components/schemas/RemoteDisplacementLoadBC",
            "SYMMETRY_PLANE" : "#/components/schemas/SymmetryPlaneBC",
            "CENTRIFUGAL_FORCE" : "#/components/schemas/CentrifugalForceBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/BoltPreloadBC"
        }, {
          "$ref" : "#/components/schemas/ElasticSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueBC"
        }, {
          "$ref" : "#/components/schemas/PointMassBC"
        }, {
          "$ref" : "#/components/schemas/DistributedMassBC"
        }, {
          "$ref" : "#/components/schemas/RemoteDisplacementLoadBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryPlaneBC"
        }, {
          "$ref" : "#/components/schemas/CentrifugalForceBC"
        } ]
      },
      "OneOf_TimeHarmonicMagneticsTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent. That is, the magnetic and thermal field are constant during the simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects where the magnetic and thermal field can change with time (e.g. due to Ohmic heating or boundary conditions).</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_DimensionalFunction_TurbulentDissipationValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_FlowRateStableOutletVBCFlowRate" : {
        "title" : "Flow rate type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MASS" : "#/components/schemas/MassFlow",
            "VOLUMETRIC" : "#/components/schemas/VolumetricFlow"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MassFlow"
        }, {
          "$ref" : "#/components/schemas/VolumetricFlow"
        } ],
        "default" : {
          "type" : "MASS"
        }
      },
      "OneOf_AdvancedMUMPSSettingsMumpsAcceleration" : {
        "title" : "Acceleration",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticAcceleration",
            "FULL_RANK" : "#/components/schemas/FullRankAcceleration",
            "LOW_RANK" : "#/components/schemas/LowRankAcceleration"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticAcceleration"
        }, {
          "$ref" : "#/components/schemas/FullRankAcceleration"
        }, {
          "$ref" : "#/components/schemas/LowRankAcceleration"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_PenaltyMethodContactStiffness" : {
        "title" : "Contact stiffness",
        "description" : "<p>Define the stiffness for the contact pair. A higher stiffness reduces interpenetration but may also lead to numerical instabilities and divergence. The independence of the results from this parameter should be checked.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "LOW_CONTACT_STIFFNESS" : "#/components/schemas/LowContactStiffness",
            "MODERATE_CONTACT_STIFFNESS" : "#/components/schemas/ModerateContactStiffness",
            "HIGH_CONTACT_STIFFNESS" : "#/components/schemas/HighContactStiffness",
            "CUSTOM_CONTACT_STIFFNESS" : "#/components/schemas/CustomContactStiffness"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/LowContactStiffness"
        }, {
          "$ref" : "#/components/schemas/ModerateContactStiffness"
        }, {
          "$ref" : "#/components/schemas/HighContactStiffness"
        }, {
          "$ref" : "#/components/schemas/CustomContactStiffness"
        } ],
        "default" : {
          "type" : "LOW_CONTACT_STIFFNESS"
        }
      },
      "OneOf_AdvancedROISettingsWindTunnelSize" : {
        "title" : "Wind tunnel size",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "WIND_TUNNEL_SIZE_MODERATE" : "#/components/schemas/WindTunnelSizeModerate",
            "WIND_TUNNEL_SIZE_LARGE" : "#/components/schemas/WindTunnelSizeLarge",
            "WIND_TUNNEL_SIZE_CUSTOM" : "#/components/schemas/WindTunnelSizeCustom"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/WindTunnelSizeModerate"
        }, {
          "$ref" : "#/components/schemas/WindTunnelSizeLarge"
        }, {
          "$ref" : "#/components/schemas/WindTunnelSizeCustom"
        } ],
        "default" : {
          "type" : "WIND_TUNNEL_SIZE_MODERATE"
        }
      },
      "OneOf_CoilTopology" : {
        "title" : "Topology",
        "description" : "<ul><li><strong>Open Coil:</strong> This coil topology has an <code>entry port</code> and an <code>exit port</code>.<p><img src=\"/spec/resources/help/imgs/emag-open-coil.png\" class=\"helpPopupImage\"/>Example of an open coil with an entry (blue) and exit (red) port.</p> Note that an entry port and exit port should lie on an outer boundary with <code>Magnetic flux tangential</code> boundaries.</li>  <li><strong>Closed Coil:</strong> This coil topology is a self-contained loop with no entry or exit ports. An <code>internal port</code> is used to specify the current flow surface within the coil. The current flows in the direction of the internal port face normal, shown as an arrow in the viewer. <p><img src=\"/spec/resources/help/imgs/emag-closed-coil.png\" class=\"helpPopupImage\"/>Example of a closed coil with an internal port (blue).</p> </li> </ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "OPEN_COIL" : "#/components/schemas/OpenCoil",
            "CLOSED_COIL" : "#/components/schemas/ClosedCoil"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/OpenCoil"
        }, {
          "$ref" : "#/components/schemas/ClosedCoil"
        } ],
        "default" : {
          "type" : "OPEN_COIL"
        }
      },
      "OneOf_CoilCoilType" : {
        "title" : "Coil type",
        "description" : "<ul><li><strong>Solid Coil:</strong> Is used for coils with usually only a few turns and large-diameter wire which requires explicit meshing. Eddy current effects are significant due to the wire's large diameter where skin depth is about the same or smaller than the wire diameter. <p><img src=\"/spec/resources/help/imgs/emag-solid-coil.png\" class=\"helpPopupImage\"/>Example of a solid coil where each wire is meshed explictly.</p>  </li> <li><strong>Stranded Coil:</strong> Employed when wires are closely packed, thin, and eddy currents can be neglected. This model represents multiple wires without the need of explicit meshing them, which save significant computational time.<p><img src=\"/spec/resources/help/imgs/emag-stranded-coil.png\" class=\"helpPopupImage\"/>Example of a stranded coil where wires are not meshed explicitly.</p></li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "STRANDED_COIL" : "#/components/schemas/StrandedCoil",
            "SOLID_COIL" : "#/components/schemas/SolidCoil",
            "LITZ_WIRE_COIL" : "#/components/schemas/LitzWireCoil"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/StrandedCoil"
        }, {
          "$ref" : "#/components/schemas/SolidCoil"
        }, {
          "$ref" : "#/components/schemas/LitzWireCoil"
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "model.type == TIME_HARMONIC_ELECTRICS" ],
          "default" : {
            "type" : "SOLID_COIL"
          }
        }, {
          "when" : [ "model.type in [MAGNETOSTATICS,TIME_HARMONIC_MAGNETICS,TIME_TRANSIENT_MAGNETICS]" ],
          "default" : {
            "type" : "STRANDED_COIL"
          }
        } ]
      },
      "OneOf_CoilExcitation" : {
        "title" : "Excitation",
        "description" : "<ul><li><strong>Current Excitation</strong><br>Use when you want to set a specific current flow through the coil. Note that the specified current is assumed to flow over the sum of all entry (or internal) faces, which act as parallel current paths. For stranded and Litz wire coils, it is the current per turn and is multiplied by the number of turns.</li><li><strong>Voltage Excitation</strong><br>Use when you want to set a specific voltage across the coil ports.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CURRENT_EXCITATION" : "#/components/schemas/CurrentExcitation",
            "VOLTAGE_EXCITATION" : "#/components/schemas/VoltageExcitation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CurrentExcitation"
        }, {
          "$ref" : "#/components/schemas/VoltageExcitation"
        } ],
        "default" : {
          "type" : "CURRENT_EXCITATION"
        }
      },
      "OneOf_DimensionalVectorFunction_AccelerationValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "COMPONENT" : "#/components/schemas/ComponentVectorFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedVectorFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ComponentVectorFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedVectorFunction"
        } ]
      },
      "OneOf_SurfaceRefinementWindComfortNewFineness" : {
        "title" : "Fineness",
        "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VERY_COARSE" : "#/components/schemas/PacefishFinenessVeryCoarse",
            "COARSE" : "#/components/schemas/PacefishFinenessCoarse",
            "MODERATE" : "#/components/schemas/PacefishFinenessModerate",
            "FINE" : "#/components/schemas/PacefishFinenessFine",
            "VERY_FINE" : "#/components/schemas/PacefishFinenessVeryFine",
            "TARGET_SIZE" : "#/components/schemas/PacefishFinenessTargetSize"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PacefishFinenessVeryCoarse"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessCoarse"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessModerate"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessFine"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessVeryFine"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessTargetSize"
        } ],
        "default" : {
          "type" : "COARSE"
        }
      },
      "OneOf_ModalSolverSolver" : {
        "title" : "Solver",
        "description" : "<p>Choose a linear equation system solver for your calculation:</p><ul><li><p><b>Multfront</b> is a direct solver of the multifrontal type. It is easy to set up and behaves well for most problems.</p></ul><ul><li><p><b>MUMPS</b> is a general purpose direct solver of the multifrontal type. It provides a lot of parameter settings to allow the best fitting to your problems needs.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MUMPS" : "#/components/schemas/MUMPSSolver",
            "MULTIFRONT" : "#/components/schemas/MultifrontalSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MUMPSSolver"
        }, {
          "$ref" : "#/components/schemas/MultifrontalSolver"
        } ],
        "default" : {
          "type" : "MUMPS"
        }
      },
      "OneOf_ModalSolverEigenSolver" : {
        "title" : "Eigensolver method",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SORENSEN" : "#/components/schemas/IRAMSorensen",
            "TRI_DIAG" : "#/components/schemas/Lanczos",
            "JACOBI" : "#/components/schemas/BatheWilson",
            "QZ" : "#/components/schemas/QZ"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IRAMSorensen"
        }, {
          "$ref" : "#/components/schemas/Lanczos"
        }, {
          "$ref" : "#/components/schemas/BatheWilson"
        }, {
          "$ref" : "#/components/schemas/QZ"
        } ],
        "default" : {
          "type" : "SORENSEN"
        }
      },
      "OneOf_MarcResultControlSolutionFields" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DISPLACEMENT" : "#/components/schemas/MarcDisplacementResultControlItem",
            "FORCE" : "#/components/schemas/MarcForceResultControlItem",
            "PRESSURE" : "#/components/schemas/MarcPressureResultControlItem",
            "STRESS" : "#/components/schemas/MarcStressResultControlItem",
            "STRAIN" : "#/components/schemas/MarcStrainResultControlItem",
            "CONTACT" : "#/components/schemas/MarcContactResultControlItem",
            "TEMPERATURE" : "#/components/schemas/MarcTemperatureResultControlItem",
            "HEAT_FLUX" : "#/components/schemas/MarcHeatFluxResultControlItem"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcDisplacementResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcForceResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcPressureResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcStressResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcStrainResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcContactResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcTemperatureResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcHeatFluxResultControlItem"
        } ]
      },
      "OneOf_MarcResultControlAreaCalculation" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MIN_MAX_FIELDS_CALCULATION" : "#/components/schemas/MarcMinMaxFieldsCalculationResultControlItem",
            "AVERAGE_FIELDS_CALCULATION" : "#/components/schemas/MarcAverageFieldsCalculationResultControlItem",
            "SUM_FIELDS_CALCULATION" : "#/components/schemas/MarcSumFieldsCalculationResultControlItem"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcMinMaxFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcAverageFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcSumFieldsCalculationResultControlItem"
        } ]
      },
      "OneOf_MarcResultControlVolumeCalculation" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MIN_MAX_FIELDS_CALCULATION" : "#/components/schemas/MarcMinMaxFieldsCalculationResultControlItem",
            "AVERAGE_FIELDS_CALCULATION" : "#/components/schemas/MarcAverageFieldsCalculationResultControlItem",
            "SUM_FIELDS_CALCULATION" : "#/components/schemas/MarcSumFieldsCalculationResultControlItem"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcMinMaxFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcAverageFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/MarcSumFieldsCalculationResultControlItem"
        } ]
      },
      "OneOf_HarmonicDisplacementResultControlItemHarmonicDisplacementType" : {
        "title" : "Displacement type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE" : "#/components/schemas/AbsoluteHarmonicDisplacementType",
            "RELATIVE" : "#/components/schemas/RelativeHarmonicDisplacementType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsoluteHarmonicDisplacementType"
        }, {
          "$ref" : "#/components/schemas/RelativeHarmonicDisplacementType"
        } ],
        "default" : {
          "type" : "ABSOLUTE"
        },
        "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
      },
      "OneOf_ConjugateHeatTransferTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent, that is, the equations solved do not include time derivatives. If you are only interested in the converged solution, consider a steady-state simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects, that is, the associated flow variables vary with respect to time.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_ConjugateHeatTransferBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "VELOCITY_OUTLET_V7" : "#/components/schemas/VelocityOutletBC",
            "PRESSURE_INLET_V31" : "#/components/schemas/PressureInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "FAN" : "#/components/schemas/FanBC",
            "SYMMETRY" : "#/components/schemas/SymmetryBC",
            "WEDGE" : "#/components/schemas/WedgeBC",
            "CUSTOM_V37" : "#/components/schemas/CustomFluidBC",
            "EMPTY_2D" : "#/components/schemas/Empty2DBC",
            "NATURAL_CONVECTION_INLET_OUTLET" : "#/components/schemas/NaturalConvectionInletOutletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/VelocityOutletBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/FanBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryBC"
        }, {
          "$ref" : "#/components/schemas/WedgeBC"
        }, {
          "$ref" : "#/components/schemas/CustomFluidBC"
        }, {
          "$ref" : "#/components/schemas/Empty2DBC"
        }, {
          "$ref" : "#/components/schemas/NaturalConvectionInletOutletBC"
        } ]
      },
      "OneOf_HarmonicResponseResultControlItemFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DISPLACEMENT" : "#/components/schemas/DisplacementFieldSelection",
            "STRAIN" : "#/components/schemas/StrainFieldSelection",
            "STRESS" : "#/components/schemas/StressFieldSelection",
            "VELOCITY" : "#/components/schemas/VelocityFieldSelection",
            "ACCELERATION" : "#/components/schemas/AccelerationFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DisplacementFieldSelection"
        }, {
          "$ref" : "#/components/schemas/StrainFieldSelection"
        }, {
          "$ref" : "#/components/schemas/StressFieldSelection"
        }, {
          "$ref" : "#/components/schemas/VelocityFieldSelection"
        }, {
          "$ref" : "#/components/schemas/AccelerationFieldSelection"
        } ],
        "default" : {
          "type" : "DISPLACEMENT"
        },
        "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
      },
      "OneOf_CompressibleTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent, that is, the equations solved do not include time derivatives. If you are only interested in the converged solution, consider a steady-state simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects, that is, the associated flow variables vary with respect to time.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_CompressibleBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "VELOCITY_OUTLET_V7" : "#/components/schemas/VelocityOutletBC",
            "PRESSURE_INLET_V31" : "#/components/schemas/PressureInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "FAN" : "#/components/schemas/FanBC",
            "SYMMETRY" : "#/components/schemas/SymmetryBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "WEDGE" : "#/components/schemas/WedgeBC",
            "CUSTOM_V37" : "#/components/schemas/CustomFluidBC",
            "EMPTY_2D" : "#/components/schemas/Empty2DBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/VelocityOutletBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/FanBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/WedgeBC"
        }, {
          "$ref" : "#/components/schemas/CustomFluidBC"
        }, {
          "$ref" : "#/components/schemas/Empty2DBC"
        } ]
      },
      "OneOf_SurfaceRoughnessModelSurfaceRoughnessType" : {
        "title" : "Surface roughness type",
        "description" : "<p>Add a surface roughness to the selected surfaces. Three different options are available: <ul><li><b>Equivalent sand grain</b> roughness k<sub>s</sub>. This method is used to represent the actual roughness of specific materials that influence the flow close to the surface. Typical values reach from 0.00005 m for steel to 0.003 m for concrete.</li><li><b>Aerodynamic</b> roughness z<sub>0</sub>. Here, the roughness value is used to model the larger scale effects of non-modeled obstacles (such as vegetation, buildings etc.) on the Atmospheric Boundary Layer (ABL) flow. Typical values range from 0.0002 m for open sea to 1 m for dense urban areas.</li><li><b>From wind exposure</b> (only PWC). Here, the aerodynamic roughness value is automatically selected based on the selected wind exposure category for each wind direction individually. For the exact values of the aerodynamic roughness used, depending on the wind engineering standard, you can refer to this <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/wind-conditions/atmospheric-boundary-layer/' target='_blank'>documentation page</a>. This method is preferred in order to achieve <i>horizontal homogeneity</i> for the incoming ABL flow.</li></ul>. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/advanced-modelling/#surface-roughness' target='_blank'>Learn more</a>. </p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "EQUIVALENT_SAND_GRAIN_ROUGHNESS" : "#/components/schemas/EquivalentSandGrainRoughness",
            "AERODYNAMIC_ROUGHNESS" : "#/components/schemas/AerodynamicRoughness",
            "WIND_EXPOSURE_ROUGHNESS" : "#/components/schemas/WindExposureRoughness"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/EquivalentSandGrainRoughness"
        }, {
          "$ref" : "#/components/schemas/AerodynamicRoughness"
        }, {
          "$ref" : "#/components/schemas/WindExposureRoughness"
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == INCOMPRESSIBLE_PACEFISH" ],
          "default" : {
            "type" : "EQUIVALENT_SAND_GRAIN_ROUGHNESS"
          }
        }, {
          "when" : [ "type == WIND_COMFORT" ],
          "default" : {
            "type" : "WIND_EXPOSURE_ROUGHNESS"
          }
        } ]
      },
      "OneOf_MultilinearModelMarcHardeningRule" : {
        "title" : "Hardening rule",
        "description" : "This determines how the yield surface evolves during cyclic loading; <b>Isotropic</b> expands the surface uniformly, <b>Kinematic</b> shifts it to account for the Bauschinger effect, and <b>Combined</b> utilizes both behaviors for maximum accuracy.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC" : "#/components/schemas/IsotropicPlasticHardeningMarc",
            "KINEMATIC" : "#/components/schemas/KinematicPlasticHardeningMarc",
            "COMBINED" : "#/components/schemas/CombinedPlasticHardeningMarc"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicPlasticHardeningMarc"
        }, {
          "$ref" : "#/components/schemas/KinematicPlasticHardeningMarc"
        }, {
          "$ref" : "#/components/schemas/CombinedPlasticHardeningMarc"
        } ],
        "default" : {
          "type" : "ISOTROPIC"
        }
      },
      "OneOf_FlowRateMeanOutletVBCFlowRate" : {
        "title" : "Mean flow rate type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MASS" : "#/components/schemas/MassFlow",
            "VOLUMETRIC" : "#/components/schemas/VolumetricFlow"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MassFlow"
        }, {
          "$ref" : "#/components/schemas/VolumetricFlow"
        } ],
        "default" : {
          "type" : "MASS"
        }
      },
      "OneOf_MarcStressResultControlItemStressType" : {
        "title" : "Stress type",
        "description" : "<ul><li><b>Cauchy stress</b>: Also known as \"true stress,\" it represents the force per unit of current (deformed) area. This is the standard stress measure for large deformation nonlinear analysis. Tensor quantity.<li><b>Von Mises stress</b>: A scalar value used to predict yielding of ductile materials; it represents the \"distortional energy\" within the body.<li><b>Principal stress</b>: The normal stresses acting on planes where the shear stresses are zero (&sigma;<sub>1</sub>, &sigma;<sub>2</sub>, &sigma;<sub>3</sub>), indicating the extreme tension or compression values.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CAUCHY" : "#/components/schemas/CauchyStress",
            "VON_MISES" : "#/components/schemas/VonMisesStress",
            "PRINCIPAL" : "#/components/schemas/PrincipalStress"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CauchyStress"
        }, {
          "$ref" : "#/components/schemas/VonMisesStress"
        }, {
          "$ref" : "#/components/schemas/PrincipalStress"
        } ],
        "default" : {
          "type" : "CAUCHY"
        }
      },
      "OneOf_DimensionalFunction_TotalThermalTransmittanceValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_EmbeddedBoundaryExternalFlowBoundaryCondition" : {
        "title" : "External flow bc",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "WALL_V34" : "#/components/schemas/WallBC",
            "NATURAL_CONVECTION_INLET_OUTLET" : "#/components/schemas/NaturalConvectionInletOutletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/NaturalConvectionInletOutletBC"
        } ],
        "default" : {
          "type" : "NATURAL_CONVECTION_INLET_OUTLET"
        },
        "x-showWhen" : [ "allowExternalFlow == true" ]
      },
      "OneOf_EmbeddedBoundaryBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "VELOCITY_OUTLET_V7" : "#/components/schemas/VelocityOutletBC",
            "PRESSURE_INLET_V31" : "#/components/schemas/PressureInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "FAN" : "#/components/schemas/FanBC",
            "SYMMETRY" : "#/components/schemas/SymmetryBC",
            "NATURAL_CONVECTION_INLET_OUTLET" : "#/components/schemas/NaturalConvectionInletOutletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/VelocityOutletBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/FanBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryBC"
        }, {
          "$ref" : "#/components/schemas/NaturalConvectionInletOutletBC"
        } ]
      },
      "OneOf_EmbeddedBoundaryTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent, that is, the equations solved do not include time derivatives. If you are only interested in the converged solution, consider a steady-state simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects, that is, the associated flow variables vary with respect to time.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_LanczosSubspaceSettings" : {
        "title" : "Subspace settings",
        "description" : "<p>Specify the subspace used by the eigensolver. This setting should only be changed if the errors during the solution procedure occur that recommend to change it. In general, the more frequencies are computed, the larger the subspace should be.<br> <li><b>Automatic</b>: The solver selects an appropriate subspace itself based on the model and other inputs.</li><li><b>Dimension</b>: Directly specify the subspace dimension. This should be only done after checking the error log, which gives hints on selecting this setting.</li><li><b>Coefficient</b>: Multiplier for setting the subspace dimension proportional to the number of computed frequencies</li></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticSubspaceSettings",
            "SUBSPACE_DIMENSION" : "#/components/schemas/SubspaceDimension",
            "SUBSPACE_COEFFICIENT" : "#/components/schemas/SubspaceCoefficient"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticSubspaceSettings"
        }, {
          "$ref" : "#/components/schemas/SubspaceDimension"
        }, {
          "$ref" : "#/components/schemas/SubspaceCoefficient"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_AreaIntegralResultControlWriteControl" : {
        "title" : "Write control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_STEP" : "#/components/schemas/TimeStepWriteControl",
            "OUTPUT_TIME" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TimeStepWriteControl"
        }, {
          "$ref" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl"
        } ],
        "default" : {
          "type" : "TIME_STEP"
        }
      },
      "OneOf_PCGSolverPreconditioner" : {
        "title" : "Preconditioner",
        "description" : "<p>Choose a preconditioner for your solver. A preconditioner improves the convergence speed of your system. Therefore, it is generally recommended. The DIC preconditioner is a very common diagonal incomplete Cholesky preconditioner.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DIC" : "#/components/schemas/DICPreconditioner",
            "GAMG" : "#/components/schemas/GAMGSolver",
            "ILUCP" : "#/components/schemas/ILUCpPreconditioner"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DICPreconditioner"
        }, {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/ILUCpPreconditioner"
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]" ],
          "default" : {
            "type" : "DIC"
          }
        }, {
          "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "ILUCP"
          }
        } ]
      },
      "OneOf_AreaAverageResultControlWriteControl" : {
        "title" : "Write control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_STEP" : "#/components/schemas/TimeStepWriteControl",
            "OUTPUT_TIME" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl",
            "NUMBER_OF_ITERATIONS_STEADY_STATE" : "#/components/schemas/NumberIterationsWriteControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TimeStepWriteControl"
        }, {
          "$ref" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl"
        }, {
          "$ref" : "#/components/schemas/NumberIterationsWriteControl"
        } ],
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER]", "type in [CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,MULTIPHASE]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == SIMERICS_ANALYSIS" ],
          "default" : {
            "type" : "NUMBER_OF_ITERATIONS_STEADY_STATE"
          }
        }, {
          "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,MULTIPHASE,CONVECTIVE_HEAT_TRANSFER]", "type in [CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "TIME_STEP"
          }
        } ]
      },
      "OneOf_FluxSchemesForDefault" : {
        "title" : "Default",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TADMOR" : "#/components/schemas/TadmorFluxScheme",
            "KURGANOV" : "#/components/schemas/KurganovFluxScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TadmorFluxScheme"
        }, {
          "$ref" : "#/components/schemas/KurganovFluxScheme"
        } ],
        "default" : {
          "type" : "KURGANOV"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE" ]
      },
      "OneOf_TrueSemiImplicitSolver" : {
        "title" : "Solver",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "SMOOTH"
        }
      },
      "OneOf_ForcesMomentsResultControlWriteControl" : {
        "title" : "Write control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_STEP" : "#/components/schemas/TimeStepWriteControl",
            "OUTPUT_TIME" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl",
            "HIGH_RESOLUTION" : "#/components/schemas/HighResolution",
            "MODERATE_RESOLUTION" : "#/components/schemas/ModerateResolution",
            "COARSE_RESOLUTION" : "#/components/schemas/CoarseResolution",
            "CUSTOM_RESOLUTION" : "#/components/schemas/CustomResolution"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TimeStepWriteControl"
        }, {
          "$ref" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl"
        }, {
          "$ref" : "#/components/schemas/HighResolution"
        }, {
          "$ref" : "#/components/schemas/ModerateResolution"
        }, {
          "$ref" : "#/components/schemas/CoarseResolution"
        }, {
          "$ref" : "#/components/schemas/CustomResolution"
        } ],
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,INCOMPRESSIBLE_PACEFISH,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,WIND_COMFORT]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]" ],
          "default" : {
            "type" : "TIME_STEP"
          }
        }, {
          "when" : [ "type in [INCOMPRESSIBLE_PACEFISH,WIND_COMFORT]" ],
          "default" : {
            "type" : "MODERATE_RESOLUTION"
          }
        } ]
      },
      "OneOf_IncompressiblePacefishMeshSettingsNew" : {
        "title" : "Mesh settings",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PACEFISH_MESH_LEGACY" : "#/components/schemas/PacefishMeshLegacy",
            "PACEFISH_AUTOMESH" : "#/components/schemas/PacefishAutomesh"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PacefishMeshLegacy"
        }, {
          "$ref" : "#/components/schemas/PacefishAutomesh"
        } ],
        "default" : {
          "type" : "PACEFISH_AUTOMESH"
        }
      },
      "OneOf_FieldChangeRetimingEventFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DISPLACEMENT" : "#/components/schemas/DisplacementField",
            "CAUCHY_STRESS_TENSOR" : "#/components/schemas/CauchyStressTensorField",
            "INTERN_VARIABLES" : "#/components/schemas/InternVariablesField"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DisplacementField"
        }, {
          "$ref" : "#/components/schemas/CauchyStressTensorField"
        }, {
          "$ref" : "#/components/schemas/InternVariablesField"
        } ],
        "default" : {
          "type" : "DISPLACEMENT"
        }
      },
      "OneOf_FieldChangeRetimingEventTimestepCalculationType" : {
        "title" : "Time step calculation",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MIXED" : "#/components/schemas/MixedTimestepCalculationType",
            "FIELD_CHANGE_TARGET" : "#/components/schemas/FieldChangeTargetCalculationType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MixedTimestepCalculationType"
        }, {
          "$ref" : "#/components/schemas/FieldChangeTargetCalculationType"
        } ],
        "default" : {
          "type" : "FIELD_CHANGE_TARGET"
        }
      },
      "OneOf_DimensionalFunction_RotationSpeedValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_ContactFieldSelectionContactType" : {
        "title" : "Contact result type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PRESSURE" : "#/components/schemas/ContactPressureType",
            "NORMAL_FORCE" : "#/components/schemas/ContactNormalForceType",
            "GAP" : "#/components/schemas/ContactGapType",
            "STATE" : "#/components/schemas/ContactStateType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ContactPressureType"
        }, {
          "$ref" : "#/components/schemas/ContactNormalForceType"
        }, {
          "$ref" : "#/components/schemas/ContactGapType"
        }, {
          "$ref" : "#/components/schemas/ContactStateType"
        } ],
        "default" : {
          "type" : "PRESSURE"
        }
      },
      "OneOf_VoltageExcitationVoltageType" : {
        "title" : "U(t) Voltage",
        "description" : "<ul><li><strong>Constant:</strong> Definition of a constant voltage value.</li> <li><strong>Sinusoidal:</strong> Definition of a voltage that changes sinusoidally with time.</li> <li><strong>Table:</strong> Definition of voltage values at specific time intervals.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VOLTAGE_TYPE_CONSTANT" : "#/components/schemas/ElectromagneticVoltageTypeConstant",
            "VOLTAGE_TYPE_SINUSOIDAL" : "#/components/schemas/ElectromagneticVoltageTypeSinusoidal",
            "VOLTAGE_TYPE_TABLE" : "#/components/schemas/ElectromagneticVoltageTypeTable"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ElectromagneticVoltageTypeConstant"
        }, {
          "$ref" : "#/components/schemas/ElectromagneticVoltageTypeSinusoidal"
        }, {
          "$ref" : "#/components/schemas/ElectromagneticVoltageTypeTable"
        } ],
        "default" : {
          "type" : "VOLTAGE_TYPE_CONSTANT"
        },
        "x-showWhen" : [ "model.type == MAGNETOSTATICS", "model.type == TIME_TRANSIENT_MAGNETICS" ]
      },
      "OneOf_PhysicalContactConnections" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FRICTIONLESS_CONTACT" : "#/components/schemas/FrictionlessContact",
            "FRICTION_CONTACT" : "#/components/schemas/FrictionContact"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FrictionlessContact"
        }, {
          "$ref" : "#/components/schemas/FrictionContact"
        } ]
      },
      "OneOf_ResidualsConvergenceMethodConvergenceCriteria" : {
        "title" : "Convergence criteria",
        "description" : "<p>Defines whether the tolerances are measured relative to the overall solution, as absolute values, or dynamically adjusted.</p><ul><li><b>Relative:</b> Standard for general use. Tolerances are measured as a fraction of the current reference value (e.g., maximum applied force or displacement).</li><li><b>Absolute:</b> Necessary when the reference forces are near zero (e.g., free expansion). Tolerances are defined as fixed values in model units.</li><li><b>Adaptive:</b> Allows Marc to dynamically loosen or tighten tolerances based on solution progress, balancing robustness and computational efficiency.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "RELATIVE" : "#/components/schemas/RelativeConvergenceResiduals",
            "ABSOLUTE" : "#/components/schemas/AbsoluteConvergenceResiduals",
            "ADAPTIVE" : "#/components/schemas/AdaptiveConvergenceResiduals"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RelativeConvergenceResiduals"
        }, {
          "$ref" : "#/components/schemas/AbsoluteConvergenceResiduals"
        }, {
          "$ref" : "#/components/schemas/AdaptiveConvergenceResiduals"
        } ],
        "default" : {
          "type" : "RELATIVE"
        }
      },
      "OneOf_RotatingSBMRotation" : {
        "title" : "Rotation",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ANGULAR_ROTATION" : "#/components/schemas/AngularRotation",
            "VECTOR_ROTATION" : "#/components/schemas/VectorRotation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AngularRotation"
        }, {
          "$ref" : "#/components/schemas/VectorRotation"
        } ]
      },
      "OneOf_SimericsMaterialsFluids" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "INCOMPRESSIBLE" : "#/components/schemas/IncompressibleMaterial",
            "COMPRESSIBLE" : "#/components/schemas/FluidCompressibleMaterial"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IncompressibleMaterial"
        }, {
          "$ref" : "#/components/schemas/FluidCompressibleMaterial"
        } ]
      },
      "OneOf_MarcConnectionGroupConnections" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BONDED" : "#/components/schemas/MarcBondedContactConnection",
            "TOUCHING" : "#/components/schemas/MarcTouchingContactConnection",
            "BONDED_AND_TOUCHING" : "#/components/schemas/MarcBondedAndTouchingContactConnection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcBondedContactConnection"
        }, {
          "$ref" : "#/components/schemas/MarcTouchingContactConnection"
        }, {
          "$ref" : "#/components/schemas/MarcBondedAndTouchingContactConnection"
        } ]
      },
      "OneOf_PBICGSolverPreconditioner" : {
        "title" : "Preconditioner",
        "description" : "<p>Choose a preconditioner for your solver. A preconditioner improves the convergence speed of your system. Therefore, it is generally recommended. DILU is a very common diagonal incomplete lower-upper decomposition preconditioner.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DILU" : "#/components/schemas/DILUPreconditioner",
            "ILUCP" : "#/components/schemas/ILUCpPreconditioner"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DILUPreconditioner"
        }, {
          "$ref" : "#/components/schemas/ILUCpPreconditioner"
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]", "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# in [velocitySolver,radiativeIntensityRaySolver,turbulentKineticEnergySolver,omegaDissipationRateSolver,passiveScalarSolver,specificHumiditySolver]" ],
          "default" : {
            "type" : "DILU"
          }
        }, {
          "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1# == temperatureSolver" ],
          "default" : {
            "type" : "ILUCP"
          }
        } ]
      },
      "OneOf_BilinearModelMarcHardeningModel" : {
        "title" : "Hardening model",
        "description" : "Choose <b>Perfectly plastic</b> if the material maintains a constant stress level after yielding, or <b>Strain hardening</b> if the material's strength increases as it undergoes further plastic deformation.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PERFECT_PLASTICITY" : "#/components/schemas/PerfectPlasticityModelMarc",
            "STRAIN_HARDENING" : "#/components/schemas/StrainHardeningModelMarc"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PerfectPlasticityModelMarc"
        }, {
          "$ref" : "#/components/schemas/StrainHardeningModelMarc"
        } ],
        "default" : {
          "type" : "PERFECT_PLASTICITY"
        }
      },
      "OneOf_BilinearModelMarcHardeningRule" : {
        "title" : "Hardening rule",
        "description" : "This determines how the yield surface evolves during cyclic loading; <b>Isotropic</b> expands the surface uniformly, <b>Kinematic</b> shifts it to account for the Bauschinger effect, and <b>Combined</b> utilizes both behaviors for maximum accuracy.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC" : "#/components/schemas/IsotropicPlasticHardeningMarc",
            "KINEMATIC" : "#/components/schemas/KinematicPlasticHardeningMarc",
            "COMBINED" : "#/components/schemas/CombinedPlasticHardeningMarc"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicPlasticHardeningMarc"
        }, {
          "$ref" : "#/components/schemas/KinematicPlasticHardeningMarc"
        }, {
          "$ref" : "#/components/schemas/CombinedPlasticHardeningMarc"
        } ],
        "default" : {
          "type" : "ISOTROPIC"
        },
        "x-showWhen" : [ "1/hardeningModel/type == STRAIN_HARDENING" ]
      },
      "OneOf_PowerLawMediumPorousMediaHeatTransfer" : {
        "title" : "Heat transfer",
        "description" : "The heat transfer modelling inside the porous media matrix:<br><li><b>Fluid only</b>: This model uses exclusively the fluid thermal properties in the porous media region. <li><b>Effective conductivity</b>: This model takes the effective thermal conductivity for the fluid-solid porous matrix as a constant value or a tabulated velocity function.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FLUID_ONLY_HEAT_TRANSFER" : "#/components/schemas/FluidOnlyHeatTransfer",
            "EFFECTIVE_CONDUCTIVITY_HEAT_TRANSFER" : "#/components/schemas/EffectiveConductivityHeatTransfer"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FluidOnlyHeatTransfer"
        }, {
          "$ref" : "#/components/schemas/EffectiveConductivityHeatTransfer"
        } ],
        "default" : {
          "type" : "FLUID_ONLY_HEAT_TRANSFER"
        },
        "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
      },
      "OneOf_DimensionalFunction_ElectricConductivityValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DimensionalFunction_DimensionlessValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_FreestreamVBCAmbientPressure" : {
        "title" : "(P<t>) Ambient pressure",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "HYDROSTATIC_ISOTHERMAL_FREESTREAM_PRESSURE" : "#/components/schemas/HydrostaticIsothermalFreestreamPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/HydrostaticIsothermalFreestreamPBC"
        } ],
        "x-conditionalHelp" : [ {
          "when" : [ "1/ambientPressure/type == FIXED_VALUE" ]
        }, {
          "when" : [ "1/ambientPressure/type == HYDROSTATIC_ISOTHERMAL_FREESTREAM_PRESSURE" ]
        } ],
        "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == EMBEDDED_BOUNDARY && isCompressible == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == true" ],
          "default" : {
            "type" : "HYDROSTATIC_ISOTHERMAL_FREESTREAM_PRESSURE"
          }
        }, {
          "when" : [ "type == EMBEDDED_BOUNDARY && isCompressible == false", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == false" ],
          "default" : {
            "type" : "FIXED_VALUE"
          }
        } ]
      },
      "OneOf_PBICGStabSolverPreconditioner" : {
        "title" : "Preconditioner",
        "description" : "<p>Choose a preconditioner for your solver. A preconditioner improves the convergence speed of your system. Therefore, it is generally recommended. DILU is a very common diagonal incomplete lower-upper decomposition preconditioner.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DILU" : "#/components/schemas/DILUPreconditioner",
            "DIC" : "#/components/schemas/DICPreconditioner",
            "ILUCP" : "#/components/schemas/ILUCpPreconditioner"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DILUPreconditioner"
        }, {
          "$ref" : "#/components/schemas/DICPreconditioner"
        }, {
          "$ref" : "#/components/schemas/ILUCpPreconditioner"
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "1# == voltageSolver" ],
          "default" : {
            "type" : "DIC"
          }
        }, {
          "when" : [ "1# != voltageSolver" ],
          "default" : {
            "type" : "DILU"
          }
        } ]
      },
      "OneOf_FlowRateInletVBCFlowRate" : {
        "title" : "Flow rate type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MASS" : "#/components/schemas/MassFlow",
            "VOLUMETRIC" : "#/components/schemas/VolumetricFlow"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MassFlow"
        }, {
          "$ref" : "#/components/schemas/VolumetricFlow"
        } ],
        "default" : {
          "type" : "MASS"
        }
      },
      "OneOf_DimensionalFunction_TemperatureValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_FlowRateMeanInletVBCFlowRate" : {
        "title" : "Mean flow rate type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MASS" : "#/components/schemas/MassFlow",
            "VOLUMETRIC" : "#/components/schemas/VolumetricFlow"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MassFlow"
        }, {
          "$ref" : "#/components/schemas/VolumetricFlow"
        } ],
        "default" : {
          "type" : "MASS"
        }
      },
      "OneOf_HingeConstraintBCAxisDefinition" : {
        "title" : "Axis definition",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUSTOM" : "#/components/schemas/CustomAxisDefinition",
            "AUTOMATIC" : "#/components/schemas/AutomaticAxisDefinition"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CustomAxisDefinition"
        }, {
          "$ref" : "#/components/schemas/AutomaticAxisDefinition"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_RestrictedDimensionalFunction_FrequencyValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "RESTRICTED_TABLE_DEFINED" : "#/components/schemas/RestrictedTableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/RestrictedTableDefinedFunction"
        } ]
      },
      "OneOf_OrthotropicSpringStiffnessStiffnessDefinition" : {
        "title" : "Stiffness definition",
        "description" : "<p>The resulting stiffness of the elastic support can be defined either via the <b>total stiffness</b> expressed as force per length or the <b>distributed stiffness</b> expressed as force per length per area.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL_ORTHOTROPIC" : "#/components/schemas/TotalOrthotropicStiffnessDefinition",
            "DISTRIBUTED_ORTHOTROPIC" : "#/components/schemas/DistributedOrthotropicStiffnessDefinition"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TotalOrthotropicStiffnessDefinition"
        }, {
          "$ref" : "#/components/schemas/DistributedOrthotropicStiffnessDefinition"
        } ],
        "default" : {
          "type" : "TOTAL_ORTHOTROPIC"
        }
      },
      "OneOf_LinearElasticMarcMaterialBehaviorPoissonsRatio" : {
        "title" : "(ν) Poisson's ratio",
        "maximum" : 0.5,
        "exclusiveMaximum" : true,
        "minimum" : -1.0,
        "exclusiveMinimum" : true,
        "description" : "<p>Provide the <i>Poisson's ratio</i> value which describes the compression or elongation of a material transverse to axial strain. <i>Poisson's ratio</i> can have a value within range from -1 to 0.5. </p><br /><b>Important remarks:</b><br /> <ul><li>Value less than 0 means that material is auxetic.</li><li>Most of the metals such as steel and aluminum have value between 0.2 to 0.35 and are considered compressible.<li>Value of 0.5 means that the material is incompressible such as rubber and some types of foams. Please avoid giving this value since it leads to convergence problem. You can give 0.499 rather than 0.5.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_CombinedVoceChabocheHardeningMarcBackstressTerms" : {
        "title" : "Back stress terms",
        "description" : "The number of superposed Armstrong-Frederick backstress terms used to represent the kinematic hardening. Additional terms allow a more accurate fit of the material's hardening behavior under cyclic and non-proportional loading, at the cost of more material parameters to calibrate.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ONE_TERM" : "#/components/schemas/OneBackstressTerm",
            "TWO_TERMS" : "#/components/schemas/TwoBackstressTerms",
            "THREE_TERMS" : "#/components/schemas/ThreeBackstressTerms"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/OneBackstressTerm"
        }, {
          "$ref" : "#/components/schemas/TwoBackstressTerms"
        }, {
          "$ref" : "#/components/schemas/ThreeBackstressTerms"
        } ],
        "default" : {
          "type" : "ONE_TERM"
        }
      },
      "OneOf_HyperElasticMaterialBehaviorHyperElasticModel" : {
        "title" : "Hyper elastic model",
        "description" : "<p>Choose the hyperelastic material model that should be used. All models derive the stress-strain relation from a strain energy function defined by the material model parameters.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MOONEY_RIVLIN" : "#/components/schemas/MooneyRivlinHyperElasticModel",
            "NEO_HOOKE" : "#/components/schemas/NeoHookeHyperElasticModel",
            "SIGNORINI" : "#/components/schemas/SignoriniHyperElasticModel",
            "YEOH" : "#/components/schemas/YeohHyperElasticModel",
            "OGDEN" : "#/components/schemas/OgdenHyperElasticModel"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MooneyRivlinHyperElasticModel"
        }, {
          "$ref" : "#/components/schemas/NeoHookeHyperElasticModel"
        }, {
          "$ref" : "#/components/schemas/SignoriniHyperElasticModel"
        }, {
          "$ref" : "#/components/schemas/YeohHyperElasticModel"
        }, {
          "$ref" : "#/components/schemas/OgdenHyperElasticModel"
        } ],
        "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
      },
      "OneOf_MarcContactResultControlItemContactType" : {
        "title" : "Contact result type",
        "description" : "<ul><li><b>Normal force</b>: The compressive force acting perpendicular to the contact interface between two bodies.<li><b>Friction force</b>: The tangential shear force generated at a contact interface that resists relative sliding between two bodies due to friction.<li><b>Normal stress</b>: The contact pressure distributed over the interface area, acting perpendicular to the surfaces.<li><b>Friction stress</b>: The shear stress distributed over the contact interface resulting from friction.<li><b>Gap</b>: The physical distance between two potential contact surfaces; a value of zero (or a very small tolerance) indicates the surfaces are in contact.<li><b>State</b>: A status indicator showing whether a contact pair is open (no contact), closed (sticking), or sliding.<li><b>Pressure</b>: The magnitude of the normal compressive stress exerted by one body onto another at the contact interface.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NORMAL_FORCE" : "#/components/schemas/MarcContactNormalForce",
            "FRICTION_FORCE" : "#/components/schemas/MarcContactFrictionForce",
            "NORMAL_STRESS" : "#/components/schemas/MarcContactNormalStress",
            "FRICTION_STRESS" : "#/components/schemas/MarcContactFrictionStress",
            "GAP" : "#/components/schemas/MarcContactGap",
            "STATUS" : "#/components/schemas/MarcContactStatus",
            "PRESSURE" : "#/components/schemas/MarcContactPressure"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcContactNormalForce"
        }, {
          "$ref" : "#/components/schemas/MarcContactFrictionForce"
        }, {
          "$ref" : "#/components/schemas/MarcContactNormalStress"
        }, {
          "$ref" : "#/components/schemas/MarcContactFrictionStress"
        }, {
          "$ref" : "#/components/schemas/MarcContactGap"
        }, {
          "$ref" : "#/components/schemas/MarcContactStatus"
        }, {
          "$ref" : "#/components/schemas/MarcContactPressure"
        } ],
        "default" : {
          "type" : "NORMAL_FORCE"
        }
      },
      "OneOf_MarcNonlinearSolverSettingsConvergenceMethod" : {
        "title" : "Convergence method",
        "description" : "<p>Selects the physical quantity used to determine if the simulation has converged. The force residual or the displacement changes must satisfy their respective tolerances.</p><ul><li><b>Displacement:</b> Monitors the change in nodal displacements between iterations; convergence is achieved when displacements stabilize.</li><li><b>Force:</b> Monitors the force residuals; convergence is achieved when the out-of-balance force residuals become small enough relative to the applied loads.</li><li><b>Both:</b> Both the force residual and displacement changes must satisfy their respective tolerances.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "RESIDUALS" : "#/components/schemas/ResidualsConvergenceMethod",
            "DISPLACEMENTS" : "#/components/schemas/DisplacementsConvergenceMethod",
            "STRAIN_ENERGY" : "#/components/schemas/StrainEnergyConvergenceMethod",
            "RESIDUALS_OR_DISPLACEMENTS" : "#/components/schemas/ResidualsOrDisplacementsConvergenceMethod"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ResidualsConvergenceMethod"
        }, {
          "$ref" : "#/components/schemas/DisplacementsConvergenceMethod"
        }, {
          "$ref" : "#/components/schemas/StrainEnergyConvergenceMethod"
        }, {
          "$ref" : "#/components/schemas/ResidualsOrDisplacementsConvergenceMethod"
        } ],
        "default" : {
          "type" : "RESIDUALS_OR_DISPLACEMENTS"
        }
      },
      "OneOf_OgdenHyperElasticModelOrder" : {
        "title" : "Order",
        "description" : "Number of terms in the Ogden model.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIRST_ORDER_OGDEN" : "#/components/schemas/FirstOrderOgden",
            "SECOND_ORDER_OGDEN" : "#/components/schemas/SecondOrderOgden",
            "THIRD_ORDER_OGDEN" : "#/components/schemas/ThirdOrderOgden"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FirstOrderOgden"
        }, {
          "$ref" : "#/components/schemas/SecondOrderOgden"
        }, {
          "$ref" : "#/components/schemas/ThirdOrderOgden"
        } ],
        "default" : {
          "type" : "FIRST_ORDER_OGDEN"
        }
      },
      "OneOf_DarcyForchheimerMediumOrientation" : {
        "title" : "Orientation",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CARTESIAN" : "#/components/schemas/CartesianOrientation",
            "CUSTOM" : "#/components/schemas/CustomOrientation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CartesianOrientation"
        }, {
          "$ref" : "#/components/schemas/CustomOrientation"
        } ]
      },
      "OneOf_DarcyForchheimerMediumPorousMediaHeatTransfer" : {
        "title" : "Heat transfer",
        "description" : "The heat transfer modelling inside the porous media matrix:<br><li><b>Fluid only</b>: This model uses exclusively the fluid thermal properties in the porous media region. <li><b>Effective conductivity</b>: This model takes the effective thermal conductivity for the fluid-solid porous matrix as a constant value or a tabulated velocity function.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FLUID_ONLY_HEAT_TRANSFER" : "#/components/schemas/FluidOnlyHeatTransfer",
            "EFFECTIVE_CONDUCTIVITY_HEAT_TRANSFER" : "#/components/schemas/EffectiveConductivityHeatTransfer"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FluidOnlyHeatTransfer"
        }, {
          "$ref" : "#/components/schemas/EffectiveConductivityHeatTransfer"
        } ],
        "default" : {
          "type" : "FLUID_ONLY_HEAT_TRANSFER"
        },
        "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
      },
      "OneOf_DimensionalFunction_PressureValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_ElementTechnologyDefinitionMethod" : {
        "title" : "Definition",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticElementDefinitionMethod",
            "CUSTOM" : "#/components/schemas/CustomElementDefinitionMethod"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticElementDefinitionMethod"
        }, {
          "$ref" : "#/components/schemas/CustomElementDefinitionMethod"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_ConstTransportThermo" : {
        "title" : "Thermo",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ECONST" : "#/components/schemas/EConstThermo",
            "HCONST" : "#/components/schemas/HConstThermo"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/EConstThermo"
        }, {
          "$ref" : "#/components/schemas/HConstThermo"
        } ],
        "default" : {
          "type" : "HCONST"
        }
      },
      "OneOf_StaticAnalysisConnectionGroups" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONTACT" : "#/components/schemas/Contact",
            "PHYSICAL_CONTACT_V36" : "#/components/schemas/PhysicalContact"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/Contact"
        }, {
          "$ref" : "#/components/schemas/PhysicalContact"
        } ]
      },
      "OneOf_StaticAnalysisConnectors" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PIN_CONNECTOR" : "#/components/schemas/PinConnector",
            "BOLT_CONNECTOR" : "#/components/schemas/BoltConnector"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PinConnector"
        }, {
          "$ref" : "#/components/schemas/BoltConnector"
        } ]
      },
      "OneOf_StaticAnalysisBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BOLT_PRELOAD" : "#/components/schemas/BoltPreloadBC",
            "ELASTIC_SUPPORT" : "#/components/schemas/ElasticSupportBC",
            "FIXED_SUPPORT" : "#/components/schemas/FixedSupportBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueBC",
            "POINT_MASS" : "#/components/schemas/PointMassBC",
            "DISTRIBUTED_MASS" : "#/components/schemas/DistributedMassBC",
            "REMOTE_DISPLACEMENT_LOAD" : "#/components/schemas/RemoteDisplacementLoadBC",
            "ROTATING_MOTION" : "#/components/schemas/RotatingMotionBC",
            "SYMMETRY_PLANE" : "#/components/schemas/SymmetryPlaneBC",
            "CYCLIC_SYMMETRY" : "#/components/schemas/CyclicSymmetryBC",
            "CENTRIFUGAL_FORCE" : "#/components/schemas/CentrifugalForceBC",
            "FOLLOWER_PRESSURE" : "#/components/schemas/FollowerPressureBC",
            "FORCE_LOAD" : "#/components/schemas/ForceLoadBC",
            "NODAL_LOAD" : "#/components/schemas/NodalLoadBC",
            "PRESSURE" : "#/components/schemas/PressureBC",
            "REMOTE_FORCE_LOAD" : "#/components/schemas/RemoteForceLoadBC",
            "SURFACE_LOAD" : "#/components/schemas/SurfaceLoadBC",
            "VOLUME_LOAD" : "#/components/schemas/VolumeLoadBC",
            "HINGE_CONSTRAINT" : "#/components/schemas/HingeConstraintBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/BoltPreloadBC"
        }, {
          "$ref" : "#/components/schemas/ElasticSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueBC"
        }, {
          "$ref" : "#/components/schemas/PointMassBC"
        }, {
          "$ref" : "#/components/schemas/DistributedMassBC"
        }, {
          "$ref" : "#/components/schemas/RemoteDisplacementLoadBC"
        }, {
          "$ref" : "#/components/schemas/RotatingMotionBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryPlaneBC"
        }, {
          "$ref" : "#/components/schemas/CyclicSymmetryBC"
        }, {
          "$ref" : "#/components/schemas/CentrifugalForceBC"
        }, {
          "$ref" : "#/components/schemas/FollowerPressureBC"
        }, {
          "$ref" : "#/components/schemas/ForceLoadBC"
        }, {
          "$ref" : "#/components/schemas/NodalLoadBC"
        }, {
          "$ref" : "#/components/schemas/PressureBC"
        }, {
          "$ref" : "#/components/schemas/RemoteForceLoadBC"
        }, {
          "$ref" : "#/components/schemas/SurfaceLoadBC"
        }, {
          "$ref" : "#/components/schemas/VolumeLoadBC"
        }, {
          "$ref" : "#/components/schemas/HingeConstraintBC"
        } ]
      },
      "OneOf_FieldCalculationsWallHeatFluxResultControlReferenceTemperatureResultType" : {
        "title" : "Reference temperature",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "WALL_NEXT_CELL_HEAT_TRANSFER_COEFFICIENT" : "#/components/schemas/WallNextCellHeatTransferCoefficientResultType",
            "REFERENCE_TEMPERATURE_HEAT_TRANSFER_COEFFICIENT" : "#/components/schemas/FixedTemperatureHeatTransferCoefficientResultType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/WallNextCellHeatTransferCoefficientResultType"
        }, {
          "$ref" : "#/components/schemas/FixedTemperatureHeatTransferCoefficientResultType"
        } ],
        "default" : {
          "type" : "REFERENCE_TEMPERATURE_HEAT_TRANSFER_COEFFICIENT"
        },
        "x-showWhen" : [ "1/computeHeatTransferCoefficient == true" ]
      },
      "OneOf_ContactConnections" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BONDED_CONTACT" : "#/components/schemas/BondedContact",
            "SLIDING_CONTACT" : "#/components/schemas/SlidingContact"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/BondedContact"
        }, {
          "$ref" : "#/components/schemas/SlidingContact"
        } ]
      },
      "OneOf_PacefishAutomeshNewFineness" : {
        "title" : "Fineness",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VERY_COARSE" : "#/components/schemas/PacefishFinenessVeryCoarse",
            "COARSE" : "#/components/schemas/PacefishFinenessCoarse",
            "MODERATE" : "#/components/schemas/PacefishFinenessModerate",
            "FINE" : "#/components/schemas/PacefishFinenessFine",
            "VERY_FINE" : "#/components/schemas/PacefishFinenessVeryFine",
            "TARGET_SIZE" : "#/components/schemas/PacefishFinenessTargetSize"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PacefishFinenessVeryCoarse"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessCoarse"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessModerate"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessFine"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessVeryFine"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessTargetSize"
        } ],
        "default" : {
          "type" : "COARSE"
        }
      },
      "OneOf_PacefishAutomeshAutomaticGapClosing" : {
        "title" : "Automatic gap closing",
        "description" : "<p><b><u>Automatic gap closing</u></b> has two purposes:</p><ul><li><b>Closing gaps:</b> Openings (such as doors or windows) smaller than the <u>Automatic gap closing</u> value are closed. Select <u>Minimum gap size</u> to set the value manually.</li><li><b>Memory efficiency:</b> An <u>Automatic gap closing</u> value above the <u>Smallest cell size</u>, typically 4x, greatly reduces memory demand.</li></ul><p><b>Note:</b> Make sure openings relevant to the flow are larger than this value.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SMALLEST_CELL_SIZE" : "#/components/schemas/SmallestCell",
            "MINIMUM_GAP_SIZE" : "#/components/schemas/MinimumGapSize"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SmallestCell"
        }, {
          "$ref" : "#/components/schemas/MinimumGapSize"
        } ],
        "default" : {
          "type" : "SMALLEST_CELL_SIZE"
        }
      },
      "OneOf_PacefishAutomeshReferenceLengthComputation" : {
        "title" : "Reference length computation",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_REFERENCE_LENGTH" : "#/components/schemas/AutomaticReferenceLength",
            "MANUAL_REFERENCE_LENGTH" : "#/components/schemas/ManualReferenceLength"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticReferenceLength"
        }, {
          "$ref" : "#/components/schemas/ManualReferenceLength"
        } ],
        "default" : {
          "type" : "AUTOMATIC_REFERENCE_LENGTH"
        }
      },
      "OneOf_PacefishAutomeshReynoldsScalingType" : {
        "title" : "Reynolds scaling",
        "description" : "Use this factor to scale the Reynolds number of your simulation. For example, to change the Reynolds number from 10<sup>8</sup> to 10<sup>6</sup>, set this factor to 0.01. <a href= https://www.simscale.com/docs/incompressible-lbm-lattice-boltzmann-advanced/#reynolds-scaling-factor' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_REYNOLDS_SCALING" : "#/components/schemas/AutomaticReynoldsScaling",
            "MANUAL_REYNOLDS_SCALING" : "#/components/schemas/ManualReynoldsScaling"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticReynoldsScaling"
        }, {
          "$ref" : "#/components/schemas/ManualReynoldsScaling"
        } ],
        "default" : {
          "type" : "AUTOMATIC_REYNOLDS_SCALING"
        }
      },
      "OneOf_PacefishAutomeshPrimaryTopology" : {
        "title" : "Region of interest",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BUILDINGS_OF_INTEREST" : "#/components/schemas/BuildingsOfInterest",
            "REGION" : "#/components/schemas/Region"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/BuildingsOfInterest"
        }, {
          "$ref" : "#/components/schemas/Region"
        } ],
        "default" : {
          "type" : "BUILDINGS_OF_INTEREST"
        }
      },
      "OneOf_PacefishAutomeshRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_PACEFISH_V38" : "#/components/schemas/NewRegionRefinementPacefishV38",
            "SURFACE_PACEFISH_V38" : "#/components/schemas/NewSurfaceRefinementPacefishV38"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewRegionRefinementPacefishV38"
        }, {
          "$ref" : "#/components/schemas/NewSurfaceRefinementPacefishV38"
        } ]
      },
      "OneOf_DisplacementFieldSelectionDisplacementType" : {
        "title" : "Displacement type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE" : "#/components/schemas/AbsoluteHarmonicDisplacementFieldType",
            "RELATIVE" : "#/components/schemas/RelativeHarmonicDisplacementFieldType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsoluteHarmonicDisplacementFieldType"
        }, {
          "$ref" : "#/components/schemas/RelativeHarmonicDisplacementFieldType"
        } ],
        "default" : {
          "type" : "ABSOLUTE"
        },
        "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
      },
      "OneOf_PartialVectorFunctionX" : {
        "title" : "X",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PRESCRIBED" : "#/components/schemas/PrescribedOptionalFunction",
            "UNCONSTRAINED" : "#/components/schemas/UnconstrainedOptionalFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PrescribedOptionalFunction"
        }, {
          "$ref" : "#/components/schemas/UnconstrainedOptionalFunction"
        } ]
      },
      "OneOf_PartialVectorFunctionY" : {
        "title" : "Y",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PRESCRIBED" : "#/components/schemas/PrescribedOptionalFunction",
            "UNCONSTRAINED" : "#/components/schemas/UnconstrainedOptionalFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PrescribedOptionalFunction"
        }, {
          "$ref" : "#/components/schemas/UnconstrainedOptionalFunction"
        } ]
      },
      "OneOf_PartialVectorFunctionZ" : {
        "title" : "Z",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PRESCRIBED" : "#/components/schemas/PrescribedOptionalFunction",
            "UNCONSTRAINED" : "#/components/schemas/UnconstrainedOptionalFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PrescribedOptionalFunction"
        }, {
          "$ref" : "#/components/schemas/UnconstrainedOptionalFunction"
        } ]
      },
      "OneOf_FixedPointNonLinearityResolutionGeometryReactualization" : {
        "title" : "Geometry update",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticReactualization",
            "MANUAL" : "#/components/schemas/ManualReactualization",
            "NONE" : "#/components/schemas/NoneReactualization"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticReactualization"
        }, {
          "$ref" : "#/components/schemas/ManualReactualization"
        }, {
          "$ref" : "#/components/schemas/NoneReactualization"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_MarcConnectorPointDataItemResults" : {
        "title" : "Results",
        "description" : "<ul><li><b>All</b>: Exports all available physical quantities associated with the connector elements for comprehensive tracking - displacements, rotations, forces and moments.<li><b>Custom</b>: Allows for the selection of specific output variables (like force or displacement) to be recorded at the connector locations.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ALL" : "#/components/schemas/AllConnectorPointDataResults",
            "CUSTOM" : "#/components/schemas/CustomConnectorPointDataResults"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AllConnectorPointDataResults"
        }, {
          "$ref" : "#/components/schemas/CustomConnectorPointDataResults"
        } ],
        "default" : {
          "type" : "ALL"
        }
      },
      "OneOf_DimensionalFunction_ThermalConductivityValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_IsotropicSpringStiffnessStiffnessDefinition" : {
        "title" : "Stiffness definition",
        "description" : "<p>The resulting stiffness of the elastic support can be defined either via the <b>total stiffness</b> expressed as force per length or the <b>distributed stiffness</b> expressed as force per length per area.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL_ISOTROPIC" : "#/components/schemas/TotalIsotropicStiffnessDefinition",
            "DISTRIBUTED_ISOTROPIC" : "#/components/schemas/DistributedIsotropicStiffnessDefinition"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TotalIsotropicStiffnessDefinition"
        }, {
          "$ref" : "#/components/schemas/DistributedIsotropicStiffnessDefinition"
        } ],
        "default" : {
          "type" : "TOTAL_ISOTROPIC"
        }
      },
      "OneOf_ElectromagneticResultControlProbePointFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MAGNETIC_FLUX_DENSITY" : "#/components/schemas/MagneticFluxDensityFieldSelection",
            "MAGNETIC_FIELD" : "#/components/schemas/MagneticFieldFieldSelection",
            "ELECTRIC_CURRENT_DENSITY" : "#/components/schemas/ElectricCurrentDensityFieldSelection",
            "ELECTRIC_POTENTIAL" : "#/components/schemas/ElectricPotentialFieldSelection",
            "ELECTRIC_FIELD" : "#/components/schemas/ElectricFieldFieldSelection",
            "ELECTRIC_DISPLACEMENT_FIELD" : "#/components/schemas/ElectricDisplacementFieldFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MagneticFluxDensityFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MagneticFieldFieldSelection"
        }, {
          "$ref" : "#/components/schemas/ElectricCurrentDensityFieldSelection"
        }, {
          "$ref" : "#/components/schemas/ElectricPotentialFieldSelection"
        }, {
          "$ref" : "#/components/schemas/ElectricFieldFieldSelection"
        }, {
          "$ref" : "#/components/schemas/ElectricDisplacementFieldFieldSelection"
        } ]
      },
      "OneOf_ResidualsOrDisplacementsConvergenceMethodConvergenceCriteria" : {
        "title" : "Convergence criteria",
        "description" : "<p>Defines whether the tolerances are measured relative to the overall solution, as absolute values, or dynamically adjusted.</p><ul><li><b>Relative:</b> Standard for general use. Tolerances are measured as a fraction of the current reference value (e.g., maximum applied force or displacement).</li><li><b>Absolute:</b> Necessary when the reference forces are near zero (e.g., free expansion). Tolerances are defined as fixed values in model units.</li><li><b>Adaptive:</b> Allows Marc to dynamically loosen or tighten tolerances based on solution progress, balancing robustness and computational efficiency.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "RELATIVE" : "#/components/schemas/RelativeConvergenceResidualsOrDisplacements",
            "ABSOLUTE" : "#/components/schemas/AbsoluteConvergenceResidualsOrDisplacements",
            "ADAPTIVE" : "#/components/schemas/AdaptiveConvergenceResidualsOrDisplacements"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RelativeConvergenceResidualsOrDisplacements"
        }, {
          "$ref" : "#/components/schemas/AbsoluteConvergenceResidualsOrDisplacements"
        }, {
          "$ref" : "#/components/schemas/AdaptiveConvergenceResidualsOrDisplacements"
        } ],
        "default" : {
          "type" : "RELATIVE"
        }
      },
      "OneOf_StrainFieldSelectionStrainType" : {
        "title" : "(ε) Strain type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL_LINEAR" : "#/components/schemas/TotalLinearStrainType",
            "TOTAL_NONLINEAR" : "#/components/schemas/TotalNonLinearStrainType",
            "TOTAL_EQUI_PLASTIC" : "#/components/schemas/TotalEquivalentPlasticStrainType",
            "UNELASTIC" : "#/components/schemas/UnelasticStrainType",
            "PRINCIPAL" : "#/components/schemas/PrincipalStrainType",
            "PRINCIPAL_GREEN_LAGRANGE" : "#/components/schemas/PrincipalGreenLagrangeStrainType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TotalLinearStrainType"
        }, {
          "$ref" : "#/components/schemas/TotalNonLinearStrainType"
        }, {
          "$ref" : "#/components/schemas/TotalEquivalentPlasticStrainType"
        }, {
          "$ref" : "#/components/schemas/UnelasticStrainType"
        }, {
          "$ref" : "#/components/schemas/PrincipalStrainType"
        }, {
          "$ref" : "#/components/schemas/PrincipalGreenLagrangeStrainType"
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ],
          "default" : {
            "type" : "TOTAL_NONLINEAR"
          }
        }, {
          "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false", "type == HARMONIC_ANALYSIS" ],
          "default" : {
            "type" : "TOTAL_LINEAR"
          }
        } ]
      },
      "OneOf_BatheWilsonSubspaceSettings" : {
        "title" : "Subspace settings",
        "description" : "<p>Specify the subspace used by the eigensolver. This setting should only be changed if the errors during the solution procedure occur that recommend to change it. In general, the more frequencies are computed, the larger the subspace should be.<br> <li><b>Automatic</b>: The solver selects an appropriate subspace itself based on the model and other inputs.</li><li><b>Dimension</b>: Directly specify the subspace dimension. This should be only done after checking the error log, which gives hints on selecting this setting.</li><li><b>Coefficient</b>: Multiplier for setting the subspace dimension proportional to the number of computed frequencies</li></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticSubspaceSettings",
            "SUBSPACE_DIMENSION" : "#/components/schemas/SubspaceDimension",
            "SUBSPACE_COEFFICIENT" : "#/components/schemas/SubspaceCoefficient"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticSubspaceSettings"
        }, {
          "$ref" : "#/components/schemas/SubspaceDimension"
        }, {
          "$ref" : "#/components/schemas/SubspaceCoefficient"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_PrescribedOptionalFunctionValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_SutherlandTransportThermo" : {
        "title" : "Thermo",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ECONST" : "#/components/schemas/EConstThermo",
            "HCONST" : "#/components/schemas/HConstThermo"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/EConstThermo"
        }, {
          "$ref" : "#/components/schemas/HConstThermo"
        } ],
        "default" : {
          "type" : "HCONST"
        }
      },
      "OneOf_JohnsonCookElastoPlasticModelPoissonsRatio" : {
        "title" : "(ν) Poisson's ratio",
        "maximum" : 0.5,
        "exclusiveMaximum" : true,
        "minimum" : -1.0,
        "exclusiveMinimum" : true,
        "description" : "<p>Provide the <i>Poisson's ratio</i> value which describes the compression or elongation of a material transverse to axial strain. <i>Poisson's ratio</i> can have a value within range from -1 to 0.5. </p><br /><b>Important remarks:</b><br /> <ul><li>Value less than 0 means that material is auxetic.</li><li>Most of the metals such as steel and aluminum have value between 0.2 to 0.35 and are considered compressible.<li>Value of 0.5 means that the material is incompressible such as rubber and some types of foams. Please avoid giving this value since it leads to convergence problem. You can give 0.499 rather than 0.5.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_MarcForceResultControlItemForceType" : {
        "title" : "Force type",
        "description" : "<ul><li><b>Reaction force</b>: The forces exerted by constraints (supports) to prevent motion; the sum of reaction forces typically balances the total external load.<li><b>External force</b>: The nodal representation of all applied loads, such as point loads and distributed loads, acting on the structure.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REACTION" : "#/components/schemas/ReactionForce",
            "EXTERNAL" : "#/components/schemas/ExternalForce"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ReactionForce"
        }, {
          "$ref" : "#/components/schemas/ExternalForce"
        } ],
        "default" : {
          "type" : "REACTION"
        }
      },
      "OneOf_StressFieldSelectionStressType" : {
        "title" : "Stress type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRESCA" : "#/components/schemas/TrescaStressType",
            "CAUCHY" : "#/components/schemas/CauchyStressType",
            "PRINCIPAL" : "#/components/schemas/PrincipalStressType",
            "VON_MISES" : "#/components/schemas/VonMisesStressType",
            "SIGNED_VON_MISES" : "#/components/schemas/SignedVonMisesStressType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TrescaStressType"
        }, {
          "$ref" : "#/components/schemas/CauchyStressType"
        }, {
          "$ref" : "#/components/schemas/PrincipalStressType"
        }, {
          "$ref" : "#/components/schemas/VonMisesStressType"
        }, {
          "$ref" : "#/components/schemas/SignedVonMisesStressType"
        } ],
        "default" : {
          "type" : "CAUCHY"
        }
      },
      "OneOf_ExplicitTimeIntegrationTypeScheme" : {
        "title" : "Scheme",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CENTRAL_DIFF" : "#/components/schemas/CentralDiffTimeIntegrationScheme",
            "TCHAMWA" : "#/components/schemas/TchamwaTimeIntegrationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CentralDiffTimeIntegrationScheme"
        }, {
          "$ref" : "#/components/schemas/TchamwaTimeIntegrationScheme"
        } ]
      },
      "OneOf_FixedValueRHBCHumidityValue" : {
        "title" : "Humidity type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "RELATIVE_HUMIDITY_VALUE" : "#/components/schemas/RelativeHumidityValue",
            "SPECIFIC_HUMIDITY_VALUE" : "#/components/schemas/SpecificHumidityValue",
            "ABSOLUTE_HUMIDITY_VALUE" : "#/components/schemas/AbsoluteHumidityValue"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RelativeHumidityValue"
        }, {
          "$ref" : "#/components/schemas/SpecificHumidityValue"
        }, {
          "$ref" : "#/components/schemas/AbsoluteHumidityValue"
        } ],
        "default" : {
          "type" : "RELATIVE_HUMIDITY_VALUE"
        }
      },
      "OneOf_PrimaryNetworkDamageModelPrimaryNetwork" : {
        "title" : "Damage model",
        "description" : "This setting activates the <b>Ogden-Roxburgh</b> (pseudo-elastic) model to simulate the <b>Mullins effect</b>, where the material undergoes significant softening during the first loading cycle. It is used to capture energy dissipation and the permanent loss of stiffness common in filled elastomers and many thermoplastics.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "OGDEN_ROXBURGH" : "#/components/schemas/OgdenRoxburgh",
            "OFF" : "#/components/schemas/NoDamage"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/OgdenRoxburgh"
        }, {
          "$ref" : "#/components/schemas/NoDamage"
        } ],
        "default" : {
          "type" : "OGDEN_ROXBURGH"
        }
      },
      "OneOf_MinMaxFieldsCalculationResultControlItemFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DISPLACEMENT" : "#/components/schemas/DisplacementFieldSelection",
            "FORCE" : "#/components/schemas/ForceFieldSelection",
            "CONTACT" : "#/components/schemas/ContactFieldSelection",
            "STRAIN" : "#/components/schemas/StrainFieldSelection",
            "STRESS" : "#/components/schemas/StressFieldSelection",
            "VELOCITY" : "#/components/schemas/VelocityFieldSelection",
            "ACCELERATION" : "#/components/schemas/AccelerationFieldSelection",
            "TEMPERATURE" : "#/components/schemas/TemperatureFieldSelection",
            "HEAT_FLUX" : "#/components/schemas/HeatFluxFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DisplacementFieldSelection"
        }, {
          "$ref" : "#/components/schemas/ForceFieldSelection"
        }, {
          "$ref" : "#/components/schemas/ContactFieldSelection"
        }, {
          "$ref" : "#/components/schemas/StrainFieldSelection"
        }, {
          "$ref" : "#/components/schemas/StressFieldSelection"
        }, {
          "$ref" : "#/components/schemas/VelocityFieldSelection"
        }, {
          "$ref" : "#/components/schemas/AccelerationFieldSelection"
        }, {
          "$ref" : "#/components/schemas/TemperatureFieldSelection"
        }, {
          "$ref" : "#/components/schemas/HeatFluxFieldSelection"
        } ],
        "default" : {
          "type" : "DISPLACEMENT"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL]" ]
      },
      "OneOf_FluidSolversVelocitySolver" : {
        "title" : "(U) Velocity",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
      },
      "OneOf_FluidSolversVelocityFinalSolver" : {
        "title" : "(U) Velocity final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type == MULTIPHASE", "type == INCOMPRESSIBLE && algorithm == PIMPLE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversDensitySolver" : {
        "title" : "(ρ) Density",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAMG" : "#/components/schemas/GAMGSolver",
            "PCG" : "#/components/schemas/PCGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/PCGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == TRANSIENT && isCompressible == true" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == COMPRESSIBLE" ],
          "default" : {
            "type" : "PCG"
          }
        }, {
          "when" : [ "type in [CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER]" ],
          "default" : {
            "type" : "GAMG"
          }
        } ]
      },
      "OneOf_FluidSolversDensityFinalSolver" : {
        "title" : "(ρ) Density final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAMG" : "#/components/schemas/GAMGSolver",
            "PCG" : "#/components/schemas/PCGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/PCGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER && timeDependency.type == TRANSIENT", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == TRANSIENT && isCompressible == true" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == COMPRESSIBLE" ],
          "default" : {
            "type" : "PCG"
          }
        }, {
          "when" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ],
          "default" : {
            "type" : "GAMG"
          }
        } ]
      },
      "OneOf_FluidSolversPressureSolver" : {
        "title" : "(P) Pressure",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAMG" : "#/components/schemas/GAMGSolver",
            "PCG" : "#/components/schemas/PCGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/PCGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "GAMG"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversPressureFinalSolver" : {
        "title" : "(P) Pressure final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAMG" : "#/components/schemas/GAMGSolver",
            "PCG" : "#/components/schemas/PCGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/PCGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "GAMG"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && algorithm in [PIMPLE,PISO,ICO]", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversTemperatureSolver" : {
        "title" : "(T) Temperature",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false", "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "PBICGStab"
          }
        }, {
          "when" : [ "type == CONVECTIVE_HEAT_TRANSFER" ],
          "default" : {
            "type" : "SMOOTH"
          }
        } ]
      },
      "OneOf_FluidSolversTemperatureFinalSolver" : {
        "title" : "(T) Temperature final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversPressureRghSolver" : {
        "title" : "(P) Modified pressure",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAMG" : "#/components/schemas/GAMGSolver",
            "PCG" : "#/components/schemas/PCGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/PCGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,MULTIPHASE,EMBEDDED_BOUNDARY]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,MULTIPHASE,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "GAMG"
          }
        } ]
      },
      "OneOf_FluidSolversPressureRghFinalSolver" : {
        "title" : "(P) Modified pressure final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAMG" : "#/components/schemas/GAMGSolver",
            "PCG" : "#/components/schemas/PCGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/PCGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "GAMG"
        },
        "x-showWhen" : [ "type == MULTIPHASE", "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversSolidEnthalpySolver" : {
        "title" : "(h<s>) Solid enthalpy",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAMG" : "#/components/schemas/GAMGSolver",
            "PCG" : "#/components/schemas/PCGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/PCGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PCG"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_FluidSolversSolidEnthalpyFinalSolver" : {
        "title" : "(h<s>) Solid enthalpy final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAMG" : "#/components/schemas/GAMGSolver",
            "PCG" : "#/components/schemas/PCGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/PCGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PCG"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversEnthalpySolver" : {
        "title" : "(h) Enthalpy",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "SMOOTH"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER]", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true" ]
      },
      "OneOf_FluidSolversEnthalpyFinalSolver" : {
        "title" : "(h) Enthalpy final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "SMOOTH"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == TRANSIENT && isCompressible == true", "type == CONJUGATE_HEAT_TRANSFER && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversInternalEnergySolver" : {
        "title" : "(e) Internal energy",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "SMOOTH"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER]", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true" ]
      },
      "OneOf_FluidSolversInternalEnergyFinalSolver" : {
        "title" : "(e) Internal energy final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "SMOOTH"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == TRANSIENT && isCompressible == true", "type == CONJUGATE_HEAT_TRANSFER && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversTurbulentKineticEnergySolver" : {
        "title" : "(k) Turb. kinetic energy",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE]", "type == MULTIPHASE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST]", "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && turbulenceModel in [KEPSILON,KOMEGASST]" ]
      },
      "OneOf_FluidSolversTurbulentKineticEnergyFinalSolver" : {
        "title" : "(k) Turb. kinetic energy final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type == MULTIPHASE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST]", "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE] && algorithm == PIMPLE", "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && turbulenceModel in [KEPSILON,KOMEGASST] && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversNuTildaSolver" : {
        "title" : "(ῦ) nuTilda",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICG"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && algorithm in [PIMPLE,PISO] && turbulenceModel == SPALARTALLMARAS", "type in [COMPRESSIBLE,MULTIPHASE] && turbulenceModel == SPALARTALLMARAS", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == SPALARTALLMARAS" ]
      },
      "OneOf_FluidSolversNuTildaFinalSolver" : {
        "title" : "(ῦ) nuTilda final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICG"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel == SPALARTALLMARAS && algorithm == PIMPLE", "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel == SPALARTALLMARAS" ]
      },
      "OneOf_FluidSolversOmegaDissipationRateSolver" : {
        "title" : "(ω) Specific dissipation rate",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,MULTIPHASE] && turbulenceModel in [KOMEGA,KOMEGASST]", "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && turbulenceModel == KOMEGASST" ]
      },
      "OneOf_FluidSolversOmegaDissipationRateFinalSolver" : {
        "title" : "(ω) Specific dissipation rate final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type == MULTIPHASE && turbulenceModel in [KOMEGA,KOMEGASST]", "type == INCOMPRESSIBLE && turbulenceModel in [KOMEGA,KOMEGASST] && algorithm == PIMPLE", "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && turbulenceModel == KOMEGASST && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversEpsilonDissipationRateSolver" : {
        "title" : "(ε) Dissipation rate",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,REALIZABLEKE]", "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER] && turbulenceModel == KEPSILON" ]
      },
      "OneOf_FluidSolversEpsilonDissipationRateFinalSolver" : {
        "title" : "(ε) Dissipation rate final",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type == MULTIPHASE && turbulenceModel == KEPSILON", "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,REALIZABLEKE] && algorithm == PIMPLE", "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && turbulenceModel == KEPSILON && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_FluidSolversPassiveScalarSolver" : {
        "title" : "Passive scalar solver",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICG"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && numOfPassiveSpecies > 0", "type == EMBEDDED_BOUNDARY && numOfPassiveSpecies > 0" ]
      },
      "OneOf_FluidSolversRadiativeIntensityRaySolver" : {
        "title" : "(I) Radiative intensity ray",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICGStab"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true && radiationModel == FV_DOM", "type == EMBEDDED_BOUNDARY && enableRadiation == true" ]
      },
      "OneOf_FluidSolversSpecificHumiditySolver" : {
        "title" : "Specific humidity solver",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PBICG" : "#/components/schemas/PBICGSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PBICGSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "PBICG"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == true && enableHumidityModel == true", "type == EMBEDDED_BOUNDARY && isCompressible == true && enableHumidityModel == true" ]
      },
      "OneOf_FluidSolversVoltageSolver" : {
        "title" : "(V) Voltage",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAMG" : "#/components/schemas/GAMGSolver",
            "PBICGStab" : "#/components/schemas/PBICGStabSolver",
            "SMOOTH" : "#/components/schemas/SmoothSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GAMGSolver"
        }, {
          "$ref" : "#/components/schemas/PBICGStabSolver"
        }, {
          "$ref" : "#/components/schemas/SmoothSolver"
        } ],
        "default" : {
          "type" : "GAMG"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableJouleHeating == true", "type == EMBEDDED_BOUNDARY && enableJouleHeating == true" ]
      },
      "OneOf_PlateDataHoleShape" : {
        "title" : "Hole shape",
        "description" : "Shape of holes in perforated plate.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GENERAL" : "#/components/schemas/GeneralHoleShape",
            "CIRCULAR" : "#/components/schemas/CircularHoleShape"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GeneralHoleShape"
        }, {
          "$ref" : "#/components/schemas/CircularHoleShape"
        } ]
      },
      "OneOf_DimensionalFunction_ElectricPotentialValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_ERPCalculationResultControlItemFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE_ERP" : "#/components/schemas/AbsoluteERPFieldSelection",
            "RELATIVE_ERP" : "#/components/schemas/RelativeERPFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsoluteERPFieldSelection"
        }, {
          "$ref" : "#/components/schemas/RelativeERPFieldSelection"
        } ],
        "default" : {
          "type" : "RELATIVE_ERP"
        }
      },
      "OneOf_VelocityFieldSelectionVelocityType" : {
        "title" : "Velocity type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE" : "#/components/schemas/AbsoluteHarmonicVelocityFieldType",
            "RELATIVE" : "#/components/schemas/RelativeHarmonicVelocityFieldType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsoluteHarmonicVelocityFieldType"
        }, {
          "$ref" : "#/components/schemas/RelativeHarmonicVelocityFieldType"
        } ],
        "default" : {
          "type" : "ABSOLUTE"
        },
        "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
      },
      "OneOf_ComponentVectorFunctionX" : {
        "title" : "X",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_ComponentVectorFunctionY" : {
        "title" : "Y",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_ComponentVectorFunctionZ" : {
        "title" : "Z",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_PressureOutletBCPressure" : {
        "title" : "Pressure type",
        "description" : "Please choose a boundary condition for pressure (p). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure-inlet-and-pressure-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValuePBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/MeanValuePBC"
        } ],
        "x-showWhen" : [ "type == COMPRESSIBLE", "type == SIMERICS_ANALYSIS && isCompressible == true", "type == SIMERICS_ANALYSIS && cavitationModel == CONSTANT_GAS_MASS_FRACTION" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COMPRESSIBLE,SIMERICS_ANALYSIS]" ],
          "default" : {
            "type" : "FIXED_VALUE"
          }
        } ]
      },
      "OneOf_PressureOutletBCPressureRgh" : {
        "title" : "Pressure type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValuePBC",
            "HYDROSTATIC_ISOTHERMAL_PRESSURE" : "#/components/schemas/HydrostaticIsothermalPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/MeanValuePBC"
        }, {
          "$ref" : "#/components/schemas/HydrostaticIsothermalPBC"
        } ],
        "x-conditionalHelp" : [ {
          "when" : [ "1/pressureRgh/type in [FIXED_VALUE,FIXED_MEAN]" ]
        }, {
          "when" : [ "1/pressureRgh/type == HYDROSTATIC_ISOTHERMAL_PRESSURE" ]
        } ],
        "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,MULTIPHASE]", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == true", "type == EMBEDDED_BOUNDARY && isCompressible == true" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "HYDROSTATIC_ISOTHERMAL_PRESSURE"
          }
        }, {
          "when" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]" ],
          "default" : {
            "type" : "FIXED_VALUE"
          }
        } ]
      },
      "OneOf_PressureOutletBCGaugePressure" : {
        "title" : "Pressure type",
        "description" : "Please choose a boundary condition for gauge pressure (p). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure-inlet-and-pressure-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValuePBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/MeanValuePBC"
        } ],
        "default" : {
          "type" : "FIXED_VALUE"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE", "type == SIMERICS_ANALYSIS && isCompressible == false && isMultiphase == true", "type == SIMERICS_ANALYSIS && isCompressible == false && cavitationModel != CONSTANT_GAS_MASS_FRACTION" ]
      },
      "OneOf_PressureOutletBCPhaseFractionsV2" : {
        "title" : "Phase fraction type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "OUTLET_BACK_FLOW_PF_VALUES" : "#/components/schemas/OutletBackFlowPFValues",
            "OUTLET_FLOW_DRIVEN_PF" : "#/components/schemas/OutletFlowDrivenPF"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/OutletBackFlowPFValues"
        }, {
          "$ref" : "#/components/schemas/OutletFlowDrivenPF"
        } ],
        "default" : {
          "type" : "OUTLET_FLOW_DRIVEN_PF"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMultiphase == true" ]
      },
      "OneOf_PressureOutletBCGaugePressureRgh" : {
        "title" : "Pressure type",
        "description" : "Please choose a boundary condition for modified gauge pressure (p_rgh). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure-inlet-and-pressure-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValuePBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/MeanValuePBC"
        } ],
        "default" : {
          "type" : "FIXED_VALUE"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == false", "type == EMBEDDED_BOUNDARY && isCompressible == false", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false" ]
      },
      "OneOf_PressureOutletBCNetRadiativeHeatFlux" : {
        "title" : "Radiative behaviour",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE" : "#/components/schemas/GreybodyDiffusiveRSBC",
            "OPEN_WINDOW" : "#/components/schemas/OpenWindowRSBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRSBC"
        }, {
          "$ref" : "#/components/schemas/OpenWindowRSBC"
        } ],
        "default" : {
          "type" : "OPEN_WINDOW"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true" ]
      },
      "OneOf_PressureOutletBCRadiativeIntensityRay" : {
        "title" : "Radiative behaviour",
        "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE_RAY" : "#/components/schemas/GreybodyDiffusiveRayBC",
            "OPEN_BOUNDARY_RAY" : "#/components/schemas/OpenBoundaryRayBC",
            "SEMI_OPEN_BOUNDARY_RAY" : "#/components/schemas/SemiOpenBoundaryRayBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRayBC"
        }, {
          "$ref" : "#/components/schemas/OpenBoundaryRayBC"
        }, {
          "$ref" : "#/components/schemas/SemiOpenBoundaryRayBC"
        } ],
        "default" : {
          "type" : "OPEN_BOUNDARY_RAY"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableSolarLoad == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableSolarLoad == true" ]
      },
      "OneOf_NaturalConvectionInletOutletBCPressureRgh" : {
        "title" : "(P) Modified pressure",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AMBIENT_PRESSURE" : "#/components/schemas/AmbientPBC",
            "HYDROSTATIC_ISOTHERMAL_TOTAL_PRESSURE" : "#/components/schemas/HydrostaticIsothermalTotalPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AmbientPBC"
        }, {
          "$ref" : "#/components/schemas/HydrostaticIsothermalTotalPBC"
        } ],
        "default" : {
          "type" : "HYDROSTATIC_ISOTHERMAL_TOTAL_PRESSURE"
        },
        "x-conditionalHelp" : [ {
          "when" : [ "1/pressureRgh/type == AMBIENT_PRESSURE" ]
        }, {
          "when" : [ "1/pressureRgh/type == HYDROSTATIC_ISOTHERMAL_TOTAL_PRESSURE" ]
        } ],
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true", "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && isCompressible == true", "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_NaturalConvectionInletOutletBCTurbulence" : {
        "title" : "Ambient turbulence",
        "description" : "These options specify <b>inlet</b> boundary conditions for <b>turbulence quantities</b>: </p><ul><li><p><b>Automatic</b> considers a value of <i>0.05</i> for <b>turbulent intensity</b> (<i>I</i>). The <b>turbulent mixing length </b>(<i>L</i>) is calculated as <i>0.07D<sub>h</sub></i>, where <i>D<sub>h</sub></i> is the <b>hydraulic diameter</b> of the boundary face.</p><li><p><b>Turbulent intensity and mixing length</b> allows to specify these values directly.</p><li><p><b>Fixed value</b> allows to specify the values of the <b>turbulent kinetic energy </b>(<i>k</i>) and the <b>turbulent dissipation rate</b> (&#120656) or the <b>specific dissipation rate</b> (&#969).</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_TURBULENCE" : "#/components/schemas/AutomaticTurbulence",
            "TURBULENT_INTENSITY_AND_REFERENCE_LENGTH_TURBULENCE" : "#/components/schemas/TurbulentIntensityAndReferenceLengthTurbulence",
            "FIXED_VALUE_TURBULENCE" : "#/components/schemas/FixedValueTurbulence"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticTurbulence"
        }, {
          "$ref" : "#/components/schemas/TurbulentIntensityAndReferenceLengthTurbulence"
        }, {
          "$ref" : "#/components/schemas/FixedValueTurbulence"
        } ],
        "default" : {
          "type" : "AUTOMATIC_TURBULENCE"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE]" ]
      },
      "OneOf_NaturalConvectionInletOutletBCNetRadiativeHeatFlux" : {
        "title" : "Radiative behaviour",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE" : "#/components/schemas/GreybodyDiffusiveRSBC",
            "OPEN_WINDOW" : "#/components/schemas/OpenWindowRSBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRSBC"
        }, {
          "$ref" : "#/components/schemas/OpenWindowRSBC"
        } ],
        "default" : {
          "type" : "OPEN_WINDOW"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true" ]
      },
      "OneOf_HeatExchangerSourceHeatExchangerMode" : {
        "title" : "Heat exchanger type",
        "description" : "The overall conductance (U) of the heat exchanger can be modelled in two different ways:<br><li><b>Heat transfer coefficients</b>: In this model the overall conductance (U) is computed using the heat transfer coefficient (h), the surface area density or surface to volume ratio (&rho;) and the exchanger volume (V) as U = h &rho; V. <li><b>Heat exchanger performance</b>: This model takes the overall conductance (U) as the heat exchanger performance (P).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "HEAT_TRANSFER_COEFFICIENTS" : "#/components/schemas/HeatTransferCoefficients",
            "HEAT_EXCHANGER_PERFORMANCE" : "#/components/schemas/HeatExchangerPerformance"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/HeatTransferCoefficients"
        }, {
          "$ref" : "#/components/schemas/HeatExchangerPerformance"
        } ]
      },
      "OneOf_DimensionalFunction_MagneticFluxDensityValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DimensionalVectorFunction_PressureValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "COMPONENT" : "#/components/schemas/ComponentVectorFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedVectorFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ComponentVectorFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedVectorFunction"
        } ]
      },
      "OneOf_DimensionalVectorFunction_SpeedValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "COMPONENT" : "#/components/schemas/ComponentVectorFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedVectorFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ComponentVectorFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedVectorFunction"
        } ]
      },
      "OneOf_MarcAnalysisBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValueBCMarc",
            "PRESSURE" : "#/components/schemas/PressureBCMarc",
            "SYMMETRY" : "#/components/schemas/SymmetryBCMarc",
            "POINT_DISPLACEMENT" : "#/components/schemas/PointDisplacementBCMarc",
            "POINT_LOAD" : "#/components/schemas/PointLoadBCMarc",
            "TEMPERATURE" : "#/components/schemas/TemperatureBCMarc",
            "CONVECTION_RADIATION" : "#/components/schemas/ConvectionRadiationBCMarc",
            "SURFACE_HEAT_FLUX" : "#/components/schemas/SurfaceHeatFluxBCMarc",
            "VOLUME_HEAT_FLUX" : "#/components/schemas/VolumeHeatFluxBCMarc",
            "BOLT_PRELOAD" : "#/components/schemas/BoltPreloadBCMarc"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValueBCMarc"
        }, {
          "$ref" : "#/components/schemas/PressureBCMarc"
        }, {
          "$ref" : "#/components/schemas/SymmetryBCMarc"
        }, {
          "$ref" : "#/components/schemas/PointDisplacementBCMarc"
        }, {
          "$ref" : "#/components/schemas/PointLoadBCMarc"
        }, {
          "$ref" : "#/components/schemas/TemperatureBCMarc"
        }, {
          "$ref" : "#/components/schemas/ConvectionRadiationBCMarc"
        }, {
          "$ref" : "#/components/schemas/SurfaceHeatFluxBCMarc"
        }, {
          "$ref" : "#/components/schemas/VolumeHeatFluxBCMarc"
        }, {
          "$ref" : "#/components/schemas/BoltPreloadBCMarc"
        } ]
      },
      "OneOf_MomentFieldSelectionMomentType" : {
        "title" : "Moment type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REACTION" : "#/components/schemas/ReactionMomentType",
            "NODAL" : "#/components/schemas/NodalMomentType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ReactionMomentType"
        }, {
          "$ref" : "#/components/schemas/NodalMomentType"
        } ],
        "default" : {
          "type" : "NODAL"
        }
      },
      "OneOf_MarcLinearSolverSettingsLinearSolver" : {
        "title" : "Type",
        "description" : "<p>Defines the numerical method used to solve the linear system of equations $Ax=b$ within each iteration. Choosing the right solver depends on the model size, available memory, and the presence of instabilities.</p><ul><li><b>Direct (MUMPS):</b> A robust, multi-frontal direct solver suitable for a wide range of problems, especially those with material nonlinearities or contact. It is generally more memory-intensive than iterative solvers but highly <b>reliable for complex nonlinearities.</b></li><li><b>Direct (Pardiso):</b> A <b>high-performance direct solver</b> optimized for multi-core CPUs, offering efficient memory usage and fast solution times for large-scale linear and nonlinear problems. It is a good alternative to MUMPS for large models.</li><li><b>Iterative:</b> Best <b>for very large, bulky models</b> due to lower memory demand. This solver might be less robust in highly nonlinear scenarios compared to the direct solvers.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MUMPS_DIRECT" : "#/components/schemas/MumpsDirectSolver",
            "PARDISO_DIRECT" : "#/components/schemas/PardisoDirectSolver",
            "SPARSE_ITERATIVE" : "#/components/schemas/SparseIterative"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MumpsDirectSolver"
        }, {
          "$ref" : "#/components/schemas/PardisoDirectSolver"
        }, {
          "$ref" : "#/components/schemas/SparseIterative"
        } ],
        "default" : {
          "type" : "MUMPS_DIRECT"
        }
      },
      "OneOf_ExternalWallHeatFluxTBCHeatFlux" : {
        "title" : "(q) Heat flux",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DERIVED" : "#/components/schemas/DerivedHeatFlux",
            "FIXED" : "#/components/schemas/FixedHeatFlux",
            "FIXED_POWER" : "#/components/schemas/FixedPowerHeatFlux"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DerivedHeatFlux"
        }, {
          "$ref" : "#/components/schemas/FixedHeatFlux"
        }, {
          "$ref" : "#/components/schemas/FixedPowerHeatFlux"
        } ],
        "x-conditionalHelp" : [ {
          "when" : [ "1/heatFlux/type == FIXED" ]
        }, {
          "when" : [ "1/heatFlux/type == FIXED_POWER" ]
        }, {
          "when" : [ "1/heatFlux/type == DERIVED" ]
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == SIMERICS_ANALYSIS && isCompressible == true" ],
          "default" : {
            "type" : "FIXED"
          }
        }, {
          "when" : [ "type in [CONJUGATE_HEAT_TRANSFER,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER]" ],
          "default" : {
            "type" : "DERIVED"
          }
        } ]
      },
      "OneOf_DimensionalFunction_HeatFluxValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_ContactConductanceLayerInterfaceThermal" : {
        "title" : "Interface type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SPECIFIC_CONDUCTANCE" : "#/components/schemas/SpecificConductanceInterfaceThermal",
            "TOTAL_CONDUCTANCE" : "#/components/schemas/TotalConductanceInterfaceThermal"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SpecificConductanceInterfaceThermal"
        }, {
          "$ref" : "#/components/schemas/TotalConductanceInterfaceThermal"
        } ]
      },
      "OneOf_FrictionlessContactContactSolutionMethod" : {
        "title" : "Solution method",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUGMENTED_LAGRANGE" : "#/components/schemas/AugmentedLagrangeMethod",
            "PENALTY_METHOD" : "#/components/schemas/PenaltyMethod"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AugmentedLagrangeMethod"
        }, {
          "$ref" : "#/components/schemas/PenaltyMethod"
        } ],
        "default" : {
          "type" : "PENALTY_METHOD"
        }
      },
      "OneOf_FrictionlessContactFictitiousClearance" : {
        "title" : "Fictitious clearance",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NO_FICTITIOUS_CLEARANCE" : "#/components/schemas/NoFictitiousClearance",
            "WITH_FICTITIOUS_CLEARANCE" : "#/components/schemas/WithFictitiousClearance"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoFictitiousClearance"
        }, {
          "$ref" : "#/components/schemas/WithFictitiousClearance"
        } ],
        "default" : {
          "type" : "NO_FICTITIOUS_CLEARANCE"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_TangentJacobianMatrixChangeJacobianMatrix" : {
        "title" : "Change jacobian matrix",
        "description" : "<p>Choose if the Jacobian matrix should automatically change from tangent stiffnes matrix to elastic matrix if the time increment is falling below a given threshold. On the assumption that below a given time increment value the nonlinearities are not evolving within the time step one can strongly save computation time by switching to the elastic matrix.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRUE" : "#/components/schemas/TrueChangeJacobianMatrix",
            "FALSE" : "#/components/schemas/FalseChangeJacobianMatrix"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TrueChangeJacobianMatrix"
        }, {
          "$ref" : "#/components/schemas/FalseChangeJacobianMatrix"
        } ],
        "default" : {
          "type" : "FALSE"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS]", "type == THERMAL_MECHANICAL && 2# == mechanicalResolutionType" ]
      },
      "OneOf_ProbePointsResultControlWriteControl" : {
        "title" : "Write control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_STEP" : "#/components/schemas/TimeStepWriteControl",
            "OUTPUT_TIME" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl",
            "HIGH_RESOLUTION" : "#/components/schemas/HighResolution",
            "MODERATE_RESOLUTION" : "#/components/schemas/ModerateResolution",
            "COARSE_RESOLUTION" : "#/components/schemas/CoarseResolution",
            "CUSTOM_RESOLUTION" : "#/components/schemas/CustomResolution"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TimeStepWriteControl"
        }, {
          "$ref" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl"
        }, {
          "$ref" : "#/components/schemas/HighResolution"
        }, {
          "$ref" : "#/components/schemas/ModerateResolution"
        }, {
          "$ref" : "#/components/schemas/CoarseResolution"
        }, {
          "$ref" : "#/components/schemas/CustomResolution"
        } ],
        "x-showWhen" : [ "type != SIMERICS_ANALYSIS" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "TIME_STEP"
          }
        }, {
          "when" : [ "type in [INCOMPRESSIBLE_PACEFISH,WIND_COMFORT]" ],
          "default" : {
            "type" : "MODERATE_RESOLUTION"
          }
        } ]
      },
      "OneOf_IsotropicDirectionalDependencyPoissonsRatio" : {
        "title" : "(ν) Poisson's ratio",
        "maximum" : 0.5,
        "exclusiveMaximum" : true,
        "minimum" : -1.0,
        "exclusiveMinimum" : true,
        "description" : "<p>Provide the <i>Poisson's ratio</i> value which describes the compression or elongation of a material transverse to axial strain. <i>Poisson's ratio</i> can have a value within range from -1 to 0.5. </p><br /><b>Important remarks:</b><br /> <ul><li>Value less than 0 means that material is auxetic.</li><li>Most of the metals such as steel and aluminum have value between 0.2 to 0.35 and are considered compressible.<li>Value of 0.5 means that the material is incompressible such as rubber and some types of foams. Please avoid giving this value since it leads to convergence problem. You can give 0.499 rather than 0.5.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ],
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_MarcMaterialMarcMaterialBehavior" : {
        "title" : "Behavior",
        "description" : "<ul><li><b>Linear elastic</b>: This behavior assumes a linear relationship between stress and strain according to Hooke's Law, where the material returns to its original shape upon unloading. It is defined by constant values for Young's modulus and Poisson's ratio and is typically used for materials experiencing small deformations below their yield point.</li><li><b>Hyperelastic</b>: Hyperelastic models describe materials like rubber or elastomers that can undergo very large, recoverable (elastic) strains. These models are defined through strain energy functions (e.g., Mooney-Rivlin or Ogden) to capture non-linear elastic behavior and near-incompressibility.</li><li><b>Elastoplastic</b>: This behavior models materials that deform elastically until a specific yield stress is reached, after which permanent (plastic) deformation occurs. It utilizes a yield criterion (such as von Mises) and a hardening rule to define how the material's strength increases with continued plastic straining. This behavior is typically used to model materials like metals or structural alloys.</li><li><b>Viscoplastic</b>: This multi-network model utilizes a parallel combination of hyperelastic, viscoelastic, and viscoplastic elements to capture the complex, rate-dependent response of polymers like thermoplastics and elastomers. It is specifically designed to simulate phenomena such as creep, stress relaxation, and stiffness degradation (damage) under cyclic loading conditions. It is the ideal choice for thermoplastics and elastomers.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "LINEAR_ELASTIC_MARC" : "#/components/schemas/LinearElasticMarcMaterialBehavior",
            "HYPERELASTIC_MARC" : "#/components/schemas/HyperelasticMarcMaterialBehavior",
            "ELASTOPLASTIC_MARC" : "#/components/schemas/ElastoplasticMarcMaterialBehavior",
            "VISCOPLASTIC_MARC" : "#/components/schemas/ViscoplasticMarcMaterialBehavior"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/LinearElasticMarcMaterialBehavior"
        }, {
          "$ref" : "#/components/schemas/HyperelasticMarcMaterialBehavior"
        }, {
          "$ref" : "#/components/schemas/ElastoplasticMarcMaterialBehavior"
        }, {
          "$ref" : "#/components/schemas/ViscoplasticMarcMaterialBehavior"
        } ],
        "default" : {
          "type" : "LINEAR_ELASTIC_MARC"
        }
      },
      "OneOf_DimensionalFunction_ElectricResistivityValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DimensionalFunction_AccelerationValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_ForceFieldSelectionForceType" : {
        "title" : "Force type",
        "description" : "<ul><li><b>Reaction force</b>: Reaction forces computed on the nodes of the model. The field is non-zero only on faces with imposed displacement boundary conditions, such as Fixed support, Fixed value, or Symmetry plane. Expressed in global components X, Y, Z.<li><b>Nodal force</b>: Applied forces as computed on the nodes of the model. The field is non-zero on entities with imposed displacement and load boundary conditions, such as Force, Pressure, etc. Expressed in global components X, Y, Z.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REACTION" : "#/components/schemas/ReactionForceType",
            "NODAL" : "#/components/schemas/NodalForceType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ReactionForceType"
        }, {
          "$ref" : "#/components/schemas/NodalForceType"
        } ],
        "default" : {
          "type" : "REACTION"
        }
      },
      "OneOf_PacefishMeshLegacyRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_PACEFISH" : "#/components/schemas/RegionRefinementPacefish",
            "SURFACE_PACEFISH" : "#/components/schemas/SurfaceRefinementPacefish"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RegionRefinementPacefish"
        }, {
          "$ref" : "#/components/schemas/SurfaceRefinementPacefish"
        } ]
      },
      "OneOf_DimensionalFunction_LengthValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_GeneralDarcyForchheimerPacefishDarcyForchheimerType" : {
        "title" : "Permeability type",
        "description" : "The type of Darcy-Forchheimer porous object defines its directional behaviour.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC" : "#/components/schemas/IsotropicDarcyForchheimer",
            "RECTIFYING" : "#/components/schemas/RectifyingDarcyForchheimer"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicDarcyForchheimer"
        }, {
          "$ref" : "#/components/schemas/RectifyingDarcyForchheimer"
        } ],
        "default" : {
          "type" : "ISOTROPIC"
        }
      },
      "OneOf_ModalBaseControlEigenfrequencyScope" : {
        "title" : "Eigenfrequency Scope",
        "description" : "<p>Select the method to build the modal base, by controlling the search of the natural frequencies:<br> <li><b>Twice the maximum loading frequency</b>: From zero to twice the maximum excitation frequency defined under <b>Harmonic response</b>.</li><li><b>First modes</b>: The first <i>Number of modes</i> will be searched and computed in the order of low to high frequency.</li><li><b>Frequency range</b>: All the modes within the specified frequency range will be searched and computed. The frequency range is defined by a <i>Start frequency</i> and an <i>End frequency</i>.</li><li><b>Center frequency</b>: Compute the <i>Number of modes</i> closest to the frequency defined by the <i>Center frequency</i>.</li></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TWICE_MAX_LOADING_FREQUENCY" : "#/components/schemas/TwiceMaxLoadingFrequency",
            "FIRSTMODE" : "#/components/schemas/FirstMode",
            "RANGE" : "#/components/schemas/FrequencyRange",
            "CENTER" : "#/components/schemas/CenterFrequency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TwiceMaxLoadingFrequency"
        }, {
          "$ref" : "#/components/schemas/FirstMode"
        }, {
          "$ref" : "#/components/schemas/FrequencyRange"
        }, {
          "$ref" : "#/components/schemas/CenterFrequency"
        } ],
        "default" : {
          "type" : "TWICE_MAX_LOADING_FREQUENCY"
        }
      },
      "OneOf_MarcSimulationControlTimestepDefinition" : {
        "title" : "Time step definition",
        "description" : "<p>Choose between an automatic and a manual method to define the time increments during the simulation.</p><ul><li><b>Automatic:</b> The solver dynamically adjusts the time step size based on convergence behavior and error tolerances. This is recommended for most nonlinear simulations to ensure stability during complex events like contact changes or material yielding.</li><li><b>Manual:</b> Specifies a fixed time step size for the duration of the simulation or specific intervals defined via a table. Use this option when the loading rate is constant and well-understood, or when a specific temporal resolution is required regardless of convergence ease. Cut-backs of the time steps are still allowed in case of non-convergence, up to the max number set by the user.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticTimeStepDefintion",
            "MANUAL" : "#/components/schemas/ManualTimeStepDefintion"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticTimeStepDefintion"
        }, {
          "$ref" : "#/components/schemas/ManualTimeStepDefintion"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_EmbeddedBoundaryMeshingSizing" : {
        "title" : "Sizing",
        "description" : "<p>Define how to control the global mesh sizing:</p><ul> <li><p><b>Automatic:</b> Element sizing is controlled by <b>automatic fineness levels</b> that take the geometrical properties into account.</p></li> <li><p><b>Manual:</b> Element sizing is controlled by <b>maximum and minimum edge length</b>.</p></li>  <li><p><b>Custom:</b> Element sizing is controlled by the specified <b>number of cells in the three spatial directions</b> and the <b>number refinement levels</b> applied on the surfaces.</p></li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_EBM_MESH_SIZING" : "#/components/schemas/AutomaticEmbeddedBoundaryMeshSizing",
            "MANUAL_EBM_MESH_SIZING" : "#/components/schemas/ManualEmbeddedBoundaryMeshSizing",
            "CUSTOM_EBM_MESH_SIZING" : "#/components/schemas/CustomEmbeddedBoundaryMeshSizing"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticEmbeddedBoundaryMeshSizing"
        }, {
          "$ref" : "#/components/schemas/ManualEmbeddedBoundaryMeshSizing"
        }, {
          "$ref" : "#/components/schemas/CustomEmbeddedBoundaryMeshSizing"
        } ],
        "default" : {
          "type" : "AUTOMATIC_EBM_MESH_SIZING"
        }
      },
      "OneOf_EmbeddedBoundaryMeshingRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_REFINEMENT_EBM" : "#/components/schemas/RegionRefinementEBM",
            "LOCAL_SIZING_EBM" : "#/components/schemas/LocalElementSizeEBM"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RegionRefinementEBM"
        }, {
          "$ref" : "#/components/schemas/LocalElementSizeEBM"
        } ]
      },
      "OneOf_IsotropicPlasticHardeningPoissonsRatio" : {
        "title" : "(ν) Poisson's ratio",
        "maximum" : 0.5,
        "exclusiveMaximum" : true,
        "minimum" : -1.0,
        "exclusiveMinimum" : true,
        "description" : "<p>Provide the <i>Poisson's ratio</i> value which describes the compression or elongation of a material transverse to axial strain. <i>Poisson's ratio</i> can have a value within range from -1 to 0.5. </p><br /><b>Important remarks:</b><br /> <ul><li>Value less than 0 means that material is auxetic.</li><li>Most of the metals such as steel and aluminum have value between 0.2 to 0.35 and are considered compressible.<li>Value of 0.5 means that the material is incompressible such as rubber and some types of foams. Please avoid giving this value since it leads to convergence problem. You can give 0.499 rather than 0.5.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ],
        "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
      },
      "OneOf_MarcStrainFieldSelectionStrainType" : {
        "title" : "(ε) Strain type",
        "description" : "<ul><li><b>Total strain</b>: Represents the sum of all strain components (elastic, plastic, and thermal) relative to the original configuration. It describes the complete deformation state of the material. Tensor quantity.<li><b>Elastic strain</b>: The recoverable portion of the strain that disappears upon unloading, calculated using the material's elastic constitutive laws. Tensor quantity.<li><b>Plastic strain</b>: The permanent, non-recoverable deformation that occurs once the material exceeds its yield point. Tensor quantity.<li><b>Principal strain (total)</b>: The strains oriented along the axes where shear strain is zero. These represent the <b>maximum, intermediate, and minimum normal strains</b> in the material. Derived from the total strain tensor field.<li><b>Principal strain (elastic)</b>: The strains oriented along the axes where shear strain is zero. These represent the <b>maximum, intermediate, and minimum normal strains</b> in the material. Derived from the elastic strain tensor field.<li><b>Principal strain (plastic)</b>: The strains oriented along the axes where shear strain is zero. These represent the <b>maximum, intermediate, and minimum normal strains</b> in the material. Derived from the plastic strain tensor field.<li><b>Equivalent elastic strain</b>: A scalar value derived from the elastic strain tensor components, used to represent the magnitude of elastic deformation in a single value.<li><b>Equivalent plastic strain</b>: A scalar measure (the von Mises equivalent) derived from the current plastic strain tensor, representing the magnitude of plastic deformation in a single value. It can decrease under load reversal.<li><b>Cumulative plastic strain</b>: A scalar measure representing the total accumulated plastic deformation over the load history, computed as a running sum of plastic strain increments. Unlike equivalent plastic strain, it never decreases, even when the material unloads or the load reverses direction.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL" : "#/components/schemas/MarcTotalStrainType",
            "ELASTIC" : "#/components/schemas/MarcElasticStrainType",
            "PLASTIC" : "#/components/schemas/MarcPlasticStrainType",
            "PRINCIPAL_TOTAL" : "#/components/schemas/MarcPrincipalTotalStrainType",
            "PRINCIPAL_ELASTIC" : "#/components/schemas/MarcPrincipalElasticStrainType",
            "PRINCIPAL_PLASTIC" : "#/components/schemas/MarcPrincipalPlasticStrainType",
            "EQUIVALENT_ELASTIC" : "#/components/schemas/MarcEquivalentElasticStrainType",
            "EQUIVALENT_PLASTIC" : "#/components/schemas/MarcEquivalentPlasticStrainType",
            "CUMULATIVE_PLASTIC" : "#/components/schemas/MarcCumulativePlasticStrainType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcTotalStrainType"
        }, {
          "$ref" : "#/components/schemas/MarcElasticStrainType"
        }, {
          "$ref" : "#/components/schemas/MarcPlasticStrainType"
        }, {
          "$ref" : "#/components/schemas/MarcPrincipalTotalStrainType"
        }, {
          "$ref" : "#/components/schemas/MarcPrincipalElasticStrainType"
        }, {
          "$ref" : "#/components/schemas/MarcPrincipalPlasticStrainType"
        }, {
          "$ref" : "#/components/schemas/MarcEquivalentElasticStrainType"
        }, {
          "$ref" : "#/components/schemas/MarcEquivalentPlasticStrainType"
        }, {
          "$ref" : "#/components/schemas/MarcCumulativePlasticStrainType"
        } ]
      },
      "OneOf_AMIRotatingZoneMotionType" : {
        "title" : "Motion type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "OSCILLATING_ROTATING_MOTION" : "#/components/schemas/OscillatingRotatingMotionType",
            "ROTATING_MOTION" : "#/components/schemas/RotatingMotionType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/OscillatingRotatingMotionType"
        }, {
          "$ref" : "#/components/schemas/RotatingMotionType"
        } ],
        "default" : {
          "type" : "ROTATING_MOTION"
        }
      },
      "OneOf_StatisticalAveragingResultControlV2SamplingInterval" : {
        "title" : "Sampling interval",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "HIGH_RESOLUTION" : "#/components/schemas/HighResolution",
            "MODERATE_RESOLUTION" : "#/components/schemas/ModerateResolution",
            "COARSE_RESOLUTION" : "#/components/schemas/CoarseResolution",
            "CUSTOM_RESOLUTION" : "#/components/schemas/CustomResolution"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/HighResolution"
        }, {
          "$ref" : "#/components/schemas/ModerateResolution"
        }, {
          "$ref" : "#/components/schemas/CoarseResolution"
        }, {
          "$ref" : "#/components/schemas/CustomResolution"
        } ],
        "default" : {
          "type" : "MODERATE_RESOLUTION"
        }
      },
      "OneOf_MarcContactFieldSelectionContactType" : {
        "title" : "Contact result type",
        "description" : "<ul><li><b>Normal stress</b>: The contact pressure distributed over the interface area, acting perpendicular to the surfaces.<li><b>Friction stress</b>: The shear stress distributed over the contact interface resulting from friction.<li><b>Gap</b>: The physical distance between two potential contact surfaces; a value of zero (or a very small tolerance) indicates the surfaces are in contact.<li><b>State</b>: A status indicator showing whether a contact pair is open (no contact), closed (sticking), or sliding.<li><b>Pressure</b>: The magnitude of the normal compressive stress exerted by one body onto another at the contact interface.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NORMAL_STRESS" : "#/components/schemas/MarcContactNormalStressType",
            "FRICTION_STRESS" : "#/components/schemas/MarcContactFrictionStressType",
            "GAP" : "#/components/schemas/MarcContactGapType",
            "STATUS" : "#/components/schemas/MarcContactStatusType",
            "PRESSURE" : "#/components/schemas/MarcContactPressureType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcContactNormalStressType"
        }, {
          "$ref" : "#/components/schemas/MarcContactFrictionStressType"
        }, {
          "$ref" : "#/components/schemas/MarcContactGapType"
        }, {
          "$ref" : "#/components/schemas/MarcContactStatusType"
        }, {
          "$ref" : "#/components/schemas/MarcContactPressureType"
        } ]
      },
      "OneOf_TurbulentHeatFluxTBCHeatSource" : {
        "title" : "Heat source",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FLUX" : "#/components/schemas/FluxHeatSource",
            "POWER" : "#/components/schemas/PowerHeatSource"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FluxHeatSource"
        }, {
          "$ref" : "#/components/schemas/PowerHeatSource"
        } ],
        "default" : {
          "type" : "FLUX"
        }
      },
      "OneOf_MrtSolarParametersFractionBodySurface" : {
        "title" : "Fraction body surface",
        "description" : "The fraction of body exposed to radiation (feff) refers to the portion of the body in the range [0, 1] exposed to direct solar radiation (e.g. 0.696 for a seated person and 0.725 for a standing person)",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SITTING_FRACTION_BODY_SURFACE" : "#/components/schemas/SittingFractionBodySurface",
            "STANDING_FRACTION_BODY_SURFACE" : "#/components/schemas/StandingFractionBodySurface",
            "CUSTOM_FRACTION_BODY_SURFACE" : "#/components/schemas/CustomFractionBodySurface"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SittingFractionBodySurface"
        }, {
          "$ref" : "#/components/schemas/StandingFractionBodySurface"
        }, {
          "$ref" : "#/components/schemas/CustomFractionBodySurface"
        } ],
        "default" : {
          "type" : "SITTING_FRACTION_BODY_SURFACE"
        }
      },
      "OneOf_DimensionalFunction_DynamicViscosityValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_MarcStressFieldSelectionStressType" : {
        "title" : "Stress type",
        "description" : "<ul><li><b>Cauchy stress</b>: Also known as \"true stress,\" it represents the force per unit of current (deformed) area. This is the standard stress measure for large deformation nonlinear analysis. Tensor quantity.<li><b>Von Mises stress</b>: A scalar value used to predict yielding of ductile materials; it represents the \"distortional energy\" within the body.<li><b>Principal stress</b>: The normal stresses acting on planes where the shear stresses are zero (&sigma;<sub>1</sub>, &sigma;<sub>2</sub>, &sigma;<sub>3</sub>), indicating the extreme tension or compression values.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CAUCHY" : "#/components/schemas/MarcCauchyStressType",
            "VON_MISES" : "#/components/schemas/MarcVonMisesStressType",
            "PRINCIPAL" : "#/components/schemas/MarcPrincipalStressType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcCauchyStressType"
        }, {
          "$ref" : "#/components/schemas/MarcVonMisesStressType"
        }, {
          "$ref" : "#/components/schemas/MarcPrincipalStressType"
        } ]
      },
      "OneOf_InletOutletRHBCHumidityValue" : {
        "title" : "Ambient humidity type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "RELATIVE_HUMIDITY_VALUE" : "#/components/schemas/RelativeHumidityValue",
            "SPECIFIC_HUMIDITY_VALUE" : "#/components/schemas/SpecificHumidityValue",
            "ABSOLUTE_HUMIDITY_VALUE" : "#/components/schemas/AbsoluteHumidityValue"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RelativeHumidityValue"
        }, {
          "$ref" : "#/components/schemas/SpecificHumidityValue"
        }, {
          "$ref" : "#/components/schemas/AbsoluteHumidityValue"
        } ]
      },
      "OneOf_MarcForceFieldSelectionForceType" : {
        "title" : "Force type",
        "description" : "<ul><li><b>Reaction force</b>: The forces exerted by constraints (supports) to prevent motion; the sum of reaction forces typically balances the total external load.<li><b>External force</b>: The nodal representation of all applied loads, such as point loads and distributed loads, acting on the structure.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REACTION" : "#/components/schemas/MarcReactionForceType",
            "EXTERNAL" : "#/components/schemas/MarcExternalForceType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcReactionForceType"
        }, {
          "$ref" : "#/components/schemas/MarcExternalForceType"
        } ],
        "default" : {
          "type" : "REACTION"
        }
      },
      "OneOf_DimensionalFunction_VolumetricFlowRateValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DimensionalFunction_ThermalTransmittanceValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_CoulombFrictionNonlinearityResolution" : {
        "title" : "Nonlinearity resolution",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NEWTON_V29" : "#/components/schemas/NewtonFrictionNonLinearityResolution",
            "FIXED_POINT" : "#/components/schemas/FixedPointFrictionNonLinearityResolution"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewtonFrictionNonLinearityResolution"
        }, {
          "$ref" : "#/components/schemas/FixedPointFrictionNonLinearityResolution"
        } ],
        "default" : {
          "type" : "FIXED_POINT"
        }
      },
      "OneOf_ConstAnIsoTransportOrientation" : {
        "title" : "Orientation",
        "description" : "<p>Defines the direction on which the thermal conductivity will act:<br> <ul><li><strong>Cartesian</strong>: the conductivities &kappa;<sub>x</sub>, &kappa;<sub>y</sub>, and &kappa;<sub>z</sub> are aligned with the X, Y, and Z-axis, respectively.</li><li><strong>Custom</strong>: the conductivities &kappa;<sub>x</sub> and &kappa;<sub>y</sub> are aligned with the unit vectors x and y, respectively, and the conductivity &kappa;<sub>z</sub> is aligned with the resultant of the cross product of unit vectors x and y.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CARTESIAN" : "#/components/schemas/CartesianOrientation",
            "CUSTOM" : "#/components/schemas/CustomOrientation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CartesianOrientation"
        }, {
          "$ref" : "#/components/schemas/CustomOrientation"
        } ],
        "default" : {
          "type" : "CARTESIAN"
        }
      },
      "OneOf_VoceChabocheModelMarcHardeningRule" : {
        "title" : "Hardening rule",
        "description" : "This determines which hardening mechanisms are active for the Voce-Chaboche model; <b>Isotropic</b> expands the yield surface uniformly following a Voce saturation law, <b>Kinematic</b> translates it via one or more superposed Armstrong-Frederick backstresses to capture the Bauschinger effect, and <b>Combined</b> uses both.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC" : "#/components/schemas/IsotropicVoceHardeningMarc",
            "KINEMATIC" : "#/components/schemas/KinematicChabocheHardeningMarc",
            "COMBINED" : "#/components/schemas/CombinedVoceChabocheHardeningMarc"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicVoceHardeningMarc"
        }, {
          "$ref" : "#/components/schemas/KinematicChabocheHardeningMarc"
        }, {
          "$ref" : "#/components/schemas/CombinedVoceChabocheHardeningMarc"
        } ],
        "default" : {
          "type" : "ISOTROPIC"
        }
      },
      "OneOf_WindComfortMeshWindComfortFineness" : {
        "title" : "Fineness",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VERY_COARSE" : "#/components/schemas/PacefishFinenessVeryCoarse",
            "COARSE" : "#/components/schemas/PacefishFinenessCoarse",
            "MODERATE" : "#/components/schemas/PacefishFinenessModerate",
            "FINE" : "#/components/schemas/PacefishFinenessFine",
            "VERY_FINE" : "#/components/schemas/PacefishFinenessVeryFine",
            "TARGET_SIZE" : "#/components/schemas/PacefishFinenessTargetSize"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PacefishFinenessVeryCoarse"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessCoarse"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessModerate"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessFine"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessVeryFine"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessTargetSize"
        } ],
        "default" : {
          "type" : "COARSE"
        }
      },
      "OneOf_WindComfortMeshAutomaticGapClosing" : {
        "title" : "Automatic gap closing",
        "description" : "<p><b><u>Automatic gap closing</u></b> has two purposes:</p><ul><li><b>Closing gaps:</b> Openings (such as doors or windows) smaller than the <u>Automatic gap closing</u> value are closed. Select <u>Minimum gap size</u> to set the value manually.</li><li><b>Memory efficiency:</b> An <u>Automatic gap closing</u> value above the <u>Smallest cell size</u>, typically 4x, greatly reduces memory demand.</li></ul><p><b>Note:</b> Make sure openings relevant to the flow are larger than this value.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SMALLEST_CELL_SIZE" : "#/components/schemas/SmallestCell",
            "MINIMUM_GAP_SIZE" : "#/components/schemas/MinimumGapSize"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SmallestCell"
        }, {
          "$ref" : "#/components/schemas/MinimumGapSize"
        } ],
        "default" : {
          "type" : "SMALLEST_CELL_SIZE"
        }
      },
      "OneOf_WindComfortMeshReynoldsScalingType" : {
        "title" : "Reynolds scaling",
        "description" : "Use this factor to scale the Reynolds number of your simulation. For example, to change the Reynolds number from 10<sup>8</sup> to 10<sup>6</sup>, set this factor to 0.01. <a href= https://www.simscale.com/docs/incompressible-lbm-lattice-boltzmann-advanced/#reynolds-scaling-factor' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_REYNOLDS_SCALING" : "#/components/schemas/AutomaticReynoldsScaling",
            "MANUAL_REYNOLDS_SCALING" : "#/components/schemas/ManualReynoldsScaling"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticReynoldsScaling"
        }, {
          "$ref" : "#/components/schemas/ManualReynoldsScaling"
        } ],
        "default" : {
          "type" : "AUTOMATIC_REYNOLDS_SCALING"
        }
      },
      "OneOf_WindComfortMeshRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SURFACE_REFINEMENT_WIND_COMFORT" : "#/components/schemas/SurfaceRefinementWindComfort",
            "REGION_REFINEMENT_WIND_COMFORT" : "#/components/schemas/RegionRefinementWindComfort"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SurfaceRefinementWindComfort"
        }, {
          "$ref" : "#/components/schemas/RegionRefinementWindComfort"
        } ]
      },
      "OneOf_SumFieldsCalculationResultControlItemFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FORCE" : "#/components/schemas/ForceFieldSelection",
            "MOMENT" : "#/components/schemas/MomentFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ForceFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MomentFieldSelection"
        } ],
        "default" : {
          "type" : "DISPLACEMENT"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_SolidNumericsSolver" : {
        "title" : "Solver",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MUMPS" : "#/components/schemas/MUMPSSolver",
            "MULTIFRONT" : "#/components/schemas/MultifrontalSolver",
            "PETSC" : "#/components/schemas/PETSCSolver",
            "CHRONOS" : "#/components/schemas/ChronosSolver"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MUMPSSolver"
        }, {
          "$ref" : "#/components/schemas/MultifrontalSolver"
        }, {
          "$ref" : "#/components/schemas/PETSCSolver"
        }, {
          "$ref" : "#/components/schemas/ChronosSolver"
        } ],
        "x-conditionalHelp" : [ {
          "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ]
        }, {
          "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == HEAT_TRANSFER" ]
        }, {
          "when" : [ "type in [HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS]" ]
        } ],
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL,FREQUENCY_ANALYSIS]", "type == HARMONIC_ANALYSIS && 1/harmonicSolutionMethod == DIRECT" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL,FREQUENCY_ANALYSIS]", "type == STATIC_ANALYSIS && nonLinearAnalysis == true" ],
          "default" : {
            "type" : "MUMPS"
          }
        }, {
          "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false" ],
          "default" : {
            "type" : "CHRONOS"
          }
        } ]
      },
      "OneOf_SolidNumericsEigenSolver" : {
        "title" : "Eigensolver method",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SORENSEN" : "#/components/schemas/IRAMSorensen",
            "TRI_DIAG" : "#/components/schemas/Lanczos",
            "JACOBI" : "#/components/schemas/BatheWilson",
            "QZ" : "#/components/schemas/QZ"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IRAMSorensen"
        }, {
          "$ref" : "#/components/schemas/Lanczos"
        }, {
          "$ref" : "#/components/schemas/BatheWilson"
        }, {
          "$ref" : "#/components/schemas/QZ"
        } ],
        "default" : {
          "type" : "SORENSEN"
        },
        "x-showWhen" : [ "type == FREQUENCY_ANALYSIS" ]
      },
      "OneOf_SolidNumericsMechanicalTimeIntegrationType" : {
        "title" : "Time integration type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "IMPLICIT" : "#/components/schemas/ImplicitTimeIntegrationType",
            "EXPLICIT" : "#/components/schemas/ExplicitTimeIntegrationType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ImplicitTimeIntegrationType"
        }, {
          "$ref" : "#/components/schemas/ExplicitTimeIntegrationType"
        } ],
        "default" : {
          "type" : "IMPLICIT"
        },
        "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == THERMAL_MECHANICAL && inertiaEffect == DYNAMIC" ]
      },
      "OneOf_SolidNumericsMechanicalResolutionType" : {
        "title" : "Nonlinear resolution type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NEWTON" : "#/components/schemas/NewtonResolutionType",
            "NEWTON_KRYLOV" : "#/components/schemas/NewtonKrylovResolutionType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewtonResolutionType"
        }, {
          "$ref" : "#/components/schemas/NewtonKrylovResolutionType"
        } ],
        "default" : {
          "type" : "NEWTON"
        },
        "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
      },
      "OneOf_SolidNumericsMechanicalLineSearch" : {
        "title" : "Mechanical line search",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FALSE" : "#/components/schemas/FalseLineSearch",
            "TRUE" : "#/components/schemas/TrueLineSearch"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FalseLineSearch"
        }, {
          "$ref" : "#/components/schemas/TrueLineSearch"
        } ],
        "default" : {
          "type" : "FALSE"
        },
        "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
      },
      "OneOf_SolidNumericsThermalResolutionType" : {
        "title" : "Thermal Nonlinear resolution",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NEWTON" : "#/components/schemas/NewtonResolutionType",
            "NEWTON_KRYLOV" : "#/components/schemas/NewtonKrylovResolutionType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewtonResolutionType"
        }, {
          "$ref" : "#/components/schemas/NewtonKrylovResolutionType"
        } ],
        "default" : {
          "type" : "NEWTON"
        },
        "x-showWhen" : [ "type == HEAT_TRANSFER && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
      },
      "OneOf_SolidNumericsThermalLineSearch" : {
        "title" : "Thermal line search",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FALSE" : "#/components/schemas/FalseLineSearch",
            "TRUE" : "#/components/schemas/TrueLineSearch"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FalseLineSearch"
        }, {
          "$ref" : "#/components/schemas/TrueLineSearch"
        } ],
        "default" : {
          "type" : "FALSE"
        },
        "x-showWhen" : [ "type == HEAT_TRANSFER && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
      },
      "OneOf_DimensionalFunction_ElectricCurrentValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_ForceResultControlItemForceType" : {
        "title" : "Force type",
        "description" : "<ul><li><b>Reaction force</b>: Reaction forces computed on the nodes of the model. The field is non-zero only on faces with imposed displacement boundary conditions, such as Fixed support, Fixed value, or Symmetry plane. Expressed in global components X, Y, Z.<li><b>Nodal force</b>: Applied forces as computed on the nodes of the model. The field is non-zero on entities with imposed displacement and load boundary conditions, such as Force, Pressure, etc. Expressed in global components X, Y, Z.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REACTION" : "#/components/schemas/GlobalReactionForceType",
            "NODAL" : "#/components/schemas/GlobalNodalForceType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GlobalReactionForceType"
        }, {
          "$ref" : "#/components/schemas/GlobalNodalForceType"
        } ],
        "default" : {
          "type" : "REACTION"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_AutoTimestepDefinitionRetimingEvent" : {
        "title" : "Retiming event",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ERROR" : "#/components/schemas/ErrorRetimingEvent",
            "COLLISION" : "#/components/schemas/CollisionRetimingEvent",
            "FIELD_CHANGE" : "#/components/schemas/FieldChangeRetimingEvent",
            "NON_MONOTOMOUS_RESIDUAL" : "#/components/schemas/NonMonotomousResidualRetimingEvent"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ErrorRetimingEvent"
        }, {
          "$ref" : "#/components/schemas/CollisionRetimingEvent"
        }, {
          "$ref" : "#/components/schemas/FieldChangeRetimingEvent"
        }, {
          "$ref" : "#/components/schemas/NonMonotomousResidualRetimingEvent"
        } ],
        "default" : {
          "type" : "ERROR"
        }
      },
      "OneOf_RegionRefinementWindComfortNewFineness" : {
        "title" : "Fineness",
        "description" : "<p>This parameter determines the <b>fineness of the mesh</b> and affects the overall number of cells. It is recommended to start with the <i>coarse</i> setting. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/mesh-settings/' target='_blank'>Find out more.</a></p><p><b>Note:</b> This setting will impact the accuracy of your results as well as computing time and result size. A finer mesh will be more demanding in terms of machine size and memory but lead to more accurate results in most cases.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VERY_COARSE" : "#/components/schemas/PacefishFinenessVeryCoarse",
            "COARSE" : "#/components/schemas/PacefishFinenessCoarse",
            "MODERATE" : "#/components/schemas/PacefishFinenessModerate",
            "FINE" : "#/components/schemas/PacefishFinenessFine",
            "VERY_FINE" : "#/components/schemas/PacefishFinenessVeryFine",
            "TARGET_SIZE" : "#/components/schemas/PacefishFinenessTargetSize"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PacefishFinenessVeryCoarse"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessCoarse"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessModerate"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessFine"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessVeryFine"
        }, {
          "$ref" : "#/components/schemas/PacefishFinenessTargetSize"
        } ],
        "default" : {
          "type" : "COARSE"
        }
      },
      "OneOf_MarcBondedContactConnectionPositionTolerance" : {
        "title" : "Position tolerance",
        "description" : "<p>Define how gaps and small interferences should be treated:</p><ul><li><b>Set Value:</b> Define a numerical distance (<b>tolerance</b>) below which contact is established. If the gap between a contacting node and its target body is larger than the tolerance, the glued contact constraint will not be activated on this node. This check happens on each iteration. For this option the &quot;stress-free projection&quot; of contact nodes on the target surfaces is activated. Small gaps will be closed without adding stresses.<br/>Use this option for cases where small CAD inaccuracies, manufacturing tolerances or mesh discretization errors might appear.</li><li><b>Off:</b> No specific contact tolerance is used. The program uses an automatic value based on element size (1/10th of the typical element size) to overcome small gaps or penetrations due to mesh approximations on curved surfaces. No &quot;stress-free projection&quot; is active for this setting.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SET_VALUE" : "#/components/schemas/SetValuePositionTolerance",
            "OFF" : "#/components/schemas/OffPositionTolerance"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SetValuePositionTolerance"
        }, {
          "$ref" : "#/components/schemas/OffPositionTolerance"
        } ],
        "default" : {
          "type" : "OFF"
        }
      },
      "OneOf_DimensionalFunction_SpeedValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DarcyMediumPorousMaterialType" : {
        "title" : "Porous material type",
        "description" : "Select the porous material behavior: <p><ul><li><b>Homogeneous:</b> Uniform resistance to fluid flow in all directions.</li><li><b>Directional:</b> Resistance to fluid flow in one or two directions.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "HOMOGENEOUS" : "#/components/schemas/HomogeneousMaterialStructure",
            "DIRECTIONAL" : "#/components/schemas/DirectionalMaterialStructure"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/HomogeneousMaterialStructure"
        }, {
          "$ref" : "#/components/schemas/DirectionalMaterialStructure"
        } ],
        "default" : {
          "type" : "HOMOGENEOUS"
        }
      },
      "OneOf_NonMonotomousResidualRetimingEventTimestepCalculationType" : {
        "title" : "Time step calculation",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NEWTON_ITERATION" : "#/components/schemas/NewtonIterationTimestepCalculationType",
            "MANUAL" : "#/components/schemas/ManualTimestepCalculationType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewtonIterationTimestepCalculationType"
        }, {
          "$ref" : "#/components/schemas/ManualTimestepCalculationType"
        } ],
        "default" : {
          "type" : "NEWTON_ITERATION"
        }
      },
      "OneOf_NewtonKrylovResolutionTypeConvergenceCriteria" : {
        "title" : "Convergence criteria",
        "description" : "Select the convergence criterion for the nonlinear solution method.</p>Important remarks: <br /><ul><li>When <b>Absolute</b> is selected, the convergence is reached if the maximum absolute residual of a given Newton iteration is lower than the defined tolerance.</li><li>If <b>Relative</b> is chosen, then the maximum relative residual i.e. the maximum absolute residual divided by external loads and support reactions, is checked during the Newton iteration. Please note that using the <b>Relative</b> criterion leads to a failed convergence if no external load is present (e.g. two far objects coming into contact). In this case, the <b>Adaptive</b> criterion should be used.</li><li>By selecting the <b>Adaptive</b> option, a combination of both <b>Relative</b> and <b>Absolute</b> criteria is used. That is, in each Newton iteration the <b>Relative</b> is used by default unless the external loads and support reactions have vanished, at which point we check the <b>Absolute</b> one instead.</li></li></ul></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ADAPTIVE" : "#/components/schemas/AdaptiveConvergenceCriteria",
            "RELATIVE" : "#/components/schemas/RelativeConvergenceCriteria",
            "ABSOLUTE" : "#/components/schemas/AbsoluteConvergenceCriteria"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AdaptiveConvergenceCriteria"
        }, {
          "$ref" : "#/components/schemas/RelativeConvergenceCriteria"
        }, {
          "$ref" : "#/components/schemas/AbsoluteConvergenceCriteria"
        } ],
        "default" : {
          "type" : "ADAPTIVE"
        }
      },
      "OneOf_NewtonKrylovResolutionTypeJacobianMatrix" : {
        "title" : "Jacobian matrix",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TANGENT" : "#/components/schemas/TangentJacobianMatrix",
            "ELASTIC" : "#/components/schemas/ElasticJacobianMatrix"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TangentJacobianMatrix"
        }, {
          "$ref" : "#/components/schemas/ElasticJacobianMatrix"
        } ],
        "default" : {
          "type" : "TANGENT"
        }
      },
      "OneOf_DirectionalMaterialStructureMode" : {
        "title" : "Mode",
        "description" : "Choose the direction for applying fluid resistance: <p><ul> <li><b>Allowed:</b> Fluid resistance is applied in the chosen direction, while fluid flow is blocked in the other two orthogonal directions.</li> <li><b>Blocked:</b> Fluid flow is blocked in the chosen direction, and fluid resistance is applied in the other two orthogonal directions.</li> </ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ALLOWED_DIRECTION" : "#/components/schemas/AllowedDirection",
            "BLOCKED_DIRECTION" : "#/components/schemas/BlockedDirection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AllowedDirection"
        }, {
          "$ref" : "#/components/schemas/BlockedDirection"
        } ],
        "default" : {
          "type" : "ALLOWED_DIRECTION"
        }
      },
      "OneOf_DirectionalMaterialStructureOrientation" : {
        "title" : "Orientation",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CARTESIAN" : "#/components/schemas/CartesianOrientation",
            "CUSTOM" : "#/components/schemas/CustomOrientation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CartesianOrientation"
        }, {
          "$ref" : "#/components/schemas/CustomOrientation"
        } ]
      },
      "OneOf_CurrentExcitationCurrentType" : {
        "title" : "I(t) Current",
        "description" : "<ul><li><strong>Constant:</strong> Definition of a constant current value.</li> <li><strong>Sinusoidal:</strong> Definition of a current that changes sinusoidally with time.</li> <li><strong>Table:</strong> Definition of current values at specific time intervals.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CURRENT_TYPE_CONSTANT" : "#/components/schemas/ElectromagneticCurrentTypeConstant",
            "CURRENT_TYPE_SINUSOIDAL" : "#/components/schemas/ElectromagneticCurrentTypeSinusoidal",
            "CURRENT_TYPE_TABLE" : "#/components/schemas/ElectromagneticCurrentTypeTable"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ElectromagneticCurrentTypeConstant"
        }, {
          "$ref" : "#/components/schemas/ElectromagneticCurrentTypeSinusoidal"
        }, {
          "$ref" : "#/components/schemas/ElectromagneticCurrentTypeTable"
        } ],
        "default" : {
          "type" : "CURRENT_TYPE_CONSTANT"
        },
        "x-showWhen" : [ "model.type == MAGNETOSTATICS", "model.type == TIME_TRANSIENT_MAGNETICS" ]
      },
      "OneOf_HConstThermoEquationOfState" : {
        "title" : "Equation of state",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PERFECT_GAS" : "#/components/schemas/PerfectGasEquationOfState",
            "REAL_GAS" : "#/components/schemas/RealGasEquationOfState",
            "RHO_CONST" : "#/components/schemas/RhoConstEquationOfState",
            "PERFECT_FLUID" : "#/components/schemas/PerfectFluidEquationOfState",
            "INCOMPRESSIBLE_PERFECT_GAS" : "#/components/schemas/IncompressiblePerfectGasEquationOfState",
            "ADIABATIC_PERFECT_FLUID" : "#/components/schemas/AdiabaticPerfectFluidEquationOfState",
            "PENG_ROBINSON_GAS" : "#/components/schemas/PengRobinsonGasEquationOfState"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PerfectGasEquationOfState"
        }, {
          "$ref" : "#/components/schemas/RealGasEquationOfState"
        }, {
          "$ref" : "#/components/schemas/RhoConstEquationOfState"
        }, {
          "$ref" : "#/components/schemas/PerfectFluidEquationOfState"
        }, {
          "$ref" : "#/components/schemas/IncompressiblePerfectGasEquationOfState"
        }, {
          "$ref" : "#/components/schemas/AdiabaticPerfectFluidEquationOfState"
        }, {
          "$ref" : "#/components/schemas/PengRobinsonGasEquationOfState"
        } ],
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER]", "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,SIMERICS_ANALYSIS]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER]", "type == CONJUGATE_HEAT_TRANSFER && 2/type in [CONST,SUTHERLAND]", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && 2/type == CONST", "type == EMBEDDED_BOUNDARY && 2/type == CONST", "type == SIMERICS_ANALYSIS && 2/type == CONST" ],
          "default" : {
            "type" : "PERFECT_GAS"
          }
        }, {
          "when" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && 2/type in [CONST_ISO,CONST_AN_ISO,CONST_CROSS_PLANE_ORTHO]", "type == CONJUGATE_HEAT_TRANSFER && 2/type in [CONST_ISO,CONST_AN_ISO,CONST_CROSS_PLANE_ORTHO]", "type == EMBEDDED_BOUNDARY && 2/type in [CONST_ISO,CONST_AN_ISO,CONST_CROSS_PLANE_ORTHO]", "type == SIMERICS_ANALYSIS && 2/type == CONST_ISO" ],
          "default" : {
            "type" : "RHO_CONST"
          }
        } ]
      },
      "OneOf_DistributedMassBCMassDefinition" : {
        "title" : "Mass definition",
        "description" : "Define how the distributed mass is specified: either as a total mass that will be distributed across the selected surface, or as an area density that represents mass per unit area.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL_MASS" : "#/components/schemas/TotalMass",
            "AREA_DENSITY_MASS" : "#/components/schemas/AreaDensityMass"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TotalMass"
        }, {
          "$ref" : "#/components/schemas/AreaDensityMass"
        } ],
        "default" : {
          "type" : "TOTAL_MASS"
        }
      },
      "OneOf_DimensionalFunction_ElectricFieldStrengthValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_FrictionContactContactSolutionMethod" : {
        "title" : "Solution method",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUGMENTED_LAGRANGE" : "#/components/schemas/AugmentedLagrangeMethod",
            "PENALTY_METHOD" : "#/components/schemas/PenaltyMethod"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AugmentedLagrangeMethod"
        }, {
          "$ref" : "#/components/schemas/PenaltyMethod"
        } ],
        "default" : {
          "type" : "PENALTY_METHOD"
        }
      },
      "OneOf_FrictionContactFrictionCoefficient" : {
        "title" : "Friction coefficient",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FRICTION_AUGMENTATION_COEF" : "#/components/schemas/FrictionAugmentedLagrangeCoef",
            "FRICTION_PENALTY_COEF" : "#/components/schemas/FrictionPenaltyCoef"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FrictionAugmentedLagrangeCoef"
        }, {
          "$ref" : "#/components/schemas/FrictionPenaltyCoef"
        } ],
        "default" : {
          "type" : "FRICTION_PENALTY_COEF"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_FrictionContactFictitiousClearance" : {
        "title" : "Fictitious clearance",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NO_FICTITIOUS_CLEARANCE" : "#/components/schemas/NoFictitiousClearance",
            "WITH_FICTITIOUS_CLEARANCE" : "#/components/schemas/WithFictitiousClearance"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoFictitiousClearance"
        }, {
          "$ref" : "#/components/schemas/WithFictitiousClearance"
        } ],
        "default" : {
          "type" : "NO_FICTITIOUS_CLEARANCE"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_ErrorRetimingEventTimestepCalculationType" : {
        "title" : "Time step calculation",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NEWTON_ITERATION" : "#/components/schemas/NewtonIterationTimestepCalculationType",
            "MANUAL" : "#/components/schemas/ManualTimestepCalculationType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewtonIterationTimestepCalculationType"
        }, {
          "$ref" : "#/components/schemas/ManualTimestepCalculationType"
        } ],
        "default" : {
          "type" : "MANUAL"
        }
      },
      "OneOf_WallBCVelocity" : {
        "title" : "(U) Velocity",
        "description" : "<p>Please choose the wall boundary condition sub-type based on the wall movement (U). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/wall/' target='_blank'>Learn more</a>.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MOVING_WALL_VELOCITY" : "#/components/schemas/MovingWallVBC",
            "NO_SLIP" : "#/components/schemas/NoSlipVBC",
            "ROTATING_WALL_VELOCITY" : "#/components/schemas/RotatingWallVBC",
            "SLIP" : "#/components/schemas/SlipVBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MovingWallVBC"
        }, {
          "$ref" : "#/components/schemas/NoSlipVBC"
        }, {
          "$ref" : "#/components/schemas/RotatingWallVBC"
        }, {
          "$ref" : "#/components/schemas/SlipVBC"
        } ],
        "default" : {
          "type" : "NO_SLIP"
        }
      },
      "OneOf_WallBCTemperature" : {
        "title" : "(T) Temperature",
        "description" : "Please choose a boundary condition for temperature (T).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "EXTERNAL_WALL_HEAT_FLUX_TEMPERATURE" : "#/components/schemas/ExternalWallHeatFluxTBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueTBC",
            "ADIABATIC" : "#/components/schemas/AdiabaticTBC",
            "TOTAL_TEMPERATURE" : "#/components/schemas/TotalTBC",
            "TURBULENT_HEAT_FLUX_TEMPERATURE" : "#/components/schemas/TurbulentHeatFluxTBC",
            "CONVECTIVE_HEAT_TRANSFER" : "#/components/schemas/ConvectionTBC",
            "RADIATIVE_HEAT_TRANSFER" : "#/components/schemas/RadiationTBC",
            "CONVECTIVE_RADIATIVE_HEAT_TRANSFER" : "#/components/schemas/ConvectionRadiationTBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ExternalWallHeatFluxTBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueTBC"
        }, {
          "$ref" : "#/components/schemas/AdiabaticTBC"
        }, {
          "$ref" : "#/components/schemas/TotalTBC"
        }, {
          "$ref" : "#/components/schemas/TurbulentHeatFluxTBC"
        }, {
          "$ref" : "#/components/schemas/ConvectionTBC"
        }, {
          "$ref" : "#/components/schemas/RadiationTBC"
        }, {
          "$ref" : "#/components/schemas/ConvectionRadiationTBC"
        } ],
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == SIMERICS_ANALYSIS && isCompressible == true" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type != SIMERICS_ANALYSIS" ],
          "default" : {
            "type" : "FIXED_VALUE"
          }
        }, {
          "when" : [ "type == SIMERICS_ANALYSIS" ],
          "default" : {
            "type" : "ADIABATIC"
          }
        } ]
      },
      "OneOf_WallBCRelativeHumidity" : {
        "title" : "Humidity type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientHumidityBC",
            "WATER_VAPOR_FLUX" : "#/components/schemas/WaterVaporFluxHumidityBC",
            "SURFACE_WATER_VAPOR_FLUX" : "#/components/schemas/SurfaceWaterVaporFluxHumidityBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ZeroGradientHumidityBC"
        }, {
          "$ref" : "#/components/schemas/WaterVaporFluxHumidityBC"
        }, {
          "$ref" : "#/components/schemas/SurfaceWaterVaporFluxHumidityBC"
        } ],
        "default" : {
          "type" : "ZERO_GRADIENT"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == true && enableHumidityModel == true", "type == EMBEDDED_BOUNDARY && isCompressible == true && enableHumidityModel == true" ]
      },
      "OneOf_WallBCPhaseFraction" : {
        "title" : "Phase fraction",
        "description" : "Please choose a boundary condition for phase fraction (alpha).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT_CONTACT_ANGLE" : "#/components/schemas/ConstantContactAnglePFBC",
            "DYNAMIC_CONTACT_ANGLE" : "#/components/schemas/DynamicContactAnglePFBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientPFBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantContactAnglePFBC"
        }, {
          "$ref" : "#/components/schemas/DynamicContactAnglePFBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientPFBC"
        } ],
        "default" : {
          "type" : "ZERO_GRADIENT"
        },
        "x-showWhen" : [ "type == MULTIPHASE" ]
      },
      "OneOf_WallBCNetRadiativeHeatFlux" : {
        "title" : "Radiative behaviour",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE" : "#/components/schemas/GreybodyDiffusiveRSBC",
            "OPEN_WINDOW" : "#/components/schemas/OpenWindowRSBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRSBC"
        }, {
          "$ref" : "#/components/schemas/OpenWindowRSBC"
        } ],
        "default" : {
          "type" : "GREYBODY_DIFFUSIVE"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true" ]
      },
      "OneOf_WallBCRadiativeIntensityRay" : {
        "title" : "Radiative behaviour",
        "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE_RAY" : "#/components/schemas/GreybodyDiffusiveRayBC",
            "OPEN_BOUNDARY_RAY" : "#/components/schemas/OpenBoundaryRayBC",
            "SEMI_OPEN_BOUNDARY_RAY" : "#/components/schemas/SemiOpenBoundaryRayBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRayBC"
        }, {
          "$ref" : "#/components/schemas/OpenBoundaryRayBC"
        }, {
          "$ref" : "#/components/schemas/SemiOpenBoundaryRayBC"
        } ],
        "default" : {
          "type" : "GREYBODY_DIFFUSIVE_RAY"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableSolarLoad == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableSolarLoad == true" ]
      },
      "OneOf_WallBCElectricBoundaryCondition" : {
        "title" : "Electric condition",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NO_CURRENT" : "#/components/schemas/NoCurrentEBC",
            "CURRENT_INFLOW" : "#/components/schemas/CurrentInflowEBC",
            "CURRENT_OUTFLOW" : "#/components/schemas/CurrentOutflowEBC",
            "FIXED_ELECTRIC_POTENTIAL" : "#/components/schemas/FixedElectricPotentialEBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoCurrentEBC"
        }, {
          "$ref" : "#/components/schemas/CurrentInflowEBC"
        }, {
          "$ref" : "#/components/schemas/CurrentOutflowEBC"
        }, {
          "$ref" : "#/components/schemas/FixedElectricPotentialEBC"
        } ],
        "default" : {
          "type" : "NO_CURRENT"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableJouleHeating == true", "type == EMBEDDED_BOUNDARY && enableJouleHeating == true" ]
      },
      "OneOf_ElectromagneticMaterialMaterialBehavior" : {
        "title" : "Material behavior",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SOFT_MAGNETIC" : "#/components/schemas/SoftMagneticMaterial",
            "PERMANENT_MAGNET" : "#/components/schemas/PermanentMagnetMaterial"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SoftMagneticMaterial"
        }, {
          "$ref" : "#/components/schemas/PermanentMagnetMaterial"
        } ],
        "default" : {
          "type" : "SOFT_MAGNETIC"
        },
        "x-showWhen" : [ "model.type in [MAGNETOSTATICS,TIME_HARMONIC_MAGNETICS,TIME_TRANSIENT_MAGNETICS]" ]
      },
      "OneOf_ElectromagneticMaterialElectricConductivityType" : {
        "title" : "Electric conductivity type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC_ELECTRIC_CONDUCTIVITY" : "#/components/schemas/IsotropicElectricConductivityMethod"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicElectricConductivityMethod"
        } ],
        "default" : {
          "type" : "ISOTROPIC_ELECTRIC_CONDUCTIVITY"
        },
        "x-showWhen" : [ "model.type in [MAGNETOSTATICS,TIME_HARMONIC_MAGNETICS,TIME_TRANSIENT_MAGNETICS,TIME_HARMONIC_ELECTRICS]" ]
      },
      "OneOf_ElectromagneticMaterialMagneticPermeabilityType" : {
        "title" : "Magnetic permeability type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC_RELATIVE_MAGNETIC_PERMEABILITY" : "#/components/schemas/IsotropicRelativePermeabilityMethod",
            "NONLINEAR_ISOTROPIC" : "#/components/schemas/NonlinearIsotropicPermeability"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicRelativePermeabilityMethod"
        }, {
          "$ref" : "#/components/schemas/NonlinearIsotropicPermeability"
        } ],
        "default" : {
          "type" : "ISOTROPIC_RELATIVE_MAGNETIC_PERMEABILITY"
        },
        "x-showWhen" : [ "model.type in [MAGNETOSTATICS,TIME_HARMONIC_MAGNETICS,TIME_TRANSIENT_MAGNETICS]" ]
      },
      "OneOf_ElectromagneticMaterialDielectricStrengthType" : {
        "title" : "Dielectric strength type",
        "description" : "Dielectric strength is the maximum electric field a dielectric material can withstand without electrical breakdown, beyond which it becomes conductive.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NONE" : "#/components/schemas/NoDielectricStrength",
            "ISOTROPIC" : "#/components/schemas/IsotropicDielectricStrength"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoDielectricStrength"
        }, {
          "$ref" : "#/components/schemas/IsotropicDielectricStrength"
        } ],
        "default" : {
          "type" : "NONE"
        },
        "x-showWhen" : [ "model.type == ELECTROSTATICS && model.breakdown == true" ]
      },
      "OneOf_ElectromagneticMaterialCoreLossesType" : {
        "title" : "Core losses",
        "description" : "Core losses calculate the losses in magnetic materials, including hysteresis and eddy current losses. <p>Note: Once a core loss model is enabled, eddy currents are suppressed within that body.</p>  For more information on each model, please refer to our <a href='https://www.simscale.com/docs/analysis-types/electromagnetics/#core-losses' target='_blank'>documentation</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NONE" : "#/components/schemas/NoCoreLoss",
            "ELECTRICAL_STEEL" : "#/components/schemas/ElectricalSteelCoreLoss",
            "POWER_FERRITE" : "#/components/schemas/PowerFerriteCoreLoss"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoCoreLoss"
        }, {
          "$ref" : "#/components/schemas/ElectricalSteelCoreLoss"
        }, {
          "$ref" : "#/components/schemas/PowerFerriteCoreLoss"
        } ],
        "default" : {
          "type" : "NONE"
        },
        "x-showWhen" : [ "model.type in [TIME_HARMONIC_MAGNETICS,TIME_TRANSIENT_MAGNETICS]" ]
      },
      "OneOf_ElectromagneticMaterialDielectricLossType" : {
        "title" : "Dielectric loss type",
        "description" : "Specify the dielectric loss type. It models dielectric heating losses in insulating materials under time-varying electric fields. For details, see our <a href='https://www.simscale.com/docs/analysis-types/electromagnetics/#dielectric-losses' target='_blank'>documentation</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NONE" : "#/components/schemas/NoDielectricLosses",
            "ISOTROPIC_LOSS_TANGENT" : "#/components/schemas/IsotropicLossTangent"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoDielectricLosses"
        }, {
          "$ref" : "#/components/schemas/IsotropicLossTangent"
        } ],
        "default" : {
          "type" : "NONE"
        },
        "x-showWhen" : [ "model.type in [TIME_HARMONIC_ELECTRICS]" ]
      },
      "OneOf_ElasticSupportBCSpringStiffness" : {
        "title" : "Spring stiffness",
        "description" : "<p>The stiffness can either be assumed equal in all directions by selecting <b>isotropic</b> or it can depend on the force direction by selecting <b>orthotropic</b>. For an orthotropic stiffness the stiffness value along each global coordinate direction can be given independently.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC" : "#/components/schemas/IsotropicSpringStiffness",
            "ORTHOTROPIC" : "#/components/schemas/OrthotropicSpringStiffness"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicSpringStiffness"
        }, {
          "$ref" : "#/components/schemas/OrthotropicSpringStiffness"
        } ],
        "default" : {
          "type" : "ISOTROPIC"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS]" ]
      },
      "OneOf_StrainResultControlItemStrainType" : {
        "title" : "(ε) Strain type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL_NONLINEAR" : "#/components/schemas/GlobalTotalNonlinearStrainType",
            "TOTAL_EQUI_PLASTIC" : "#/components/schemas/GlobalTotalEquivalentPlasticStrainType",
            "UNELASTIC" : "#/components/schemas/GlobalUnelasticStrainType",
            "TOTAL" : "#/components/schemas/GlobalTotalStrainType",
            "PRINCIPAL" : "#/components/schemas/GlobalPrincipalStrainType",
            "PRINCIPAL_GREEN_LAGRANGE" : "#/components/schemas/GlobalPrincipalGreenLagrangeStrainType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GlobalTotalNonlinearStrainType"
        }, {
          "$ref" : "#/components/schemas/GlobalTotalEquivalentPlasticStrainType"
        }, {
          "$ref" : "#/components/schemas/GlobalUnelasticStrainType"
        }, {
          "$ref" : "#/components/schemas/GlobalTotalStrainType"
        }, {
          "$ref" : "#/components/schemas/GlobalPrincipalStrainType"
        }, {
          "$ref" : "#/components/schemas/GlobalPrincipalGreenLagrangeStrainType"
        } ],
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,THERMAL_MECHANICAL]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS]" ],
          "default" : {
            "type" : "TOTAL_NONLINEAR"
          }
        }, {
          "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ],
          "default" : {
            "type" : "TOTAL_NONLINEAR"
          }
        }, {
          "when" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false" ],
          "default" : {
            "type" : "TOTAL"
          }
        } ]
      },
      "OneOf_HeatTransferTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent, that is, the equations solved do not include time derivatives. If you are only interested in the converged solution, consider a steady-state simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects, that is, the associated flow variables vary with respect to time.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_HeatTransferBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_TEMPERATURE_VALUE" : "#/components/schemas/FixedTemperatureValueBC",
            "CYCLIC_SYMMETRY" : "#/components/schemas/CyclicSymmetryBC",
            "SURFACE_HEAT_FLUX" : "#/components/schemas/SurfaceHeatFluxBC",
            "CONVECTIVE_HEAT_FLUX" : "#/components/schemas/ConvectiveHeatFluxBC",
            "VOLUME_HEAT_FLUX" : "#/components/schemas/VolumeHeatFluxBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedTemperatureValueBC"
        }, {
          "$ref" : "#/components/schemas/CyclicSymmetryBC"
        }, {
          "$ref" : "#/components/schemas/SurfaceHeatFluxBC"
        }, {
          "$ref" : "#/components/schemas/ConvectiveHeatFluxBC"
        }, {
          "$ref" : "#/components/schemas/VolumeHeatFluxBC"
        } ]
      },
      "OneOf_DimensionalFunction_TurbulenceKineticEnergyValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DirectionalDependencyDarcyForchheimerType" : {
        "title" : "Permeability type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC" : "#/components/schemas/IsotropicDarcyForchheimer",
            "RECTIFYING" : "#/components/schemas/RectifyingDarcyForchheimer"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicDarcyForchheimer"
        }, {
          "$ref" : "#/components/schemas/RectifyingDarcyForchheimer"
        } ]
      },
      "OneOf_DimensionalFunction_TimeValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_LitzWireCoilStrandCrossSectionType" : {
        "title" : "Strand cross-section type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ROUND" : "#/components/schemas/Round",
            "SQUARE" : "#/components/schemas/Square"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/Round"
        }, {
          "$ref" : "#/components/schemas/Square"
        } ],
        "default" : {
          "type" : "ROUND"
        }
      },
      "OneOf_DimensionalVectorFunction_ForceValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "COMPONENT" : "#/components/schemas/ComponentVectorFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedVectorFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ComponentVectorFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedVectorFunction"
        } ]
      },
      "OneOf_DivergenceSchemesForDefault" : {
        "title" : "Default",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWINDV_UNLIMITED" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,MULTIPHASE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER]", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_velocity" : {
        "title" : "div(phi,U)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWINDV_UNLIMITED" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "GAUSS_LIMITEDLINEARV_1" : "#/components/schemas/GaussLimitedLinearV1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme",
            "GAUSS_LINEARUPWINDV_GRAD_U_" : "#/components/schemas/GaussLinearUpwindVGradUDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinearV1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindVGradUDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER]", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == INCOMPRESSIBLE" ],
          "default" : {
            "type" : "GAUSS_LINEARUPWINDV_GRAD_U_"
          }
        } ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_kineticEnergy" : {
        "title" : "div(phi,K)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == COMPRESSIBLE" ],
          "default" : {
            "type" : "GAUSS_LINEAR"
          }
        } ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_enthalpy" : {
        "title" : "div(phi,h)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == COMPRESSIBLE" ],
          "default" : {
            "type" : "GAUSS_UPWIND"
          }
        } ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_internalEnergy" : {
        "title" : "div(phi,e)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true" ]
      },
      "OneOf_DivergenceSchemesDiv_Phiv_pressure" : {
        "title" : "div(phiv,p)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_turbulentKineticEnergy" : {
        "title" : "div(phi,k)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE]", "type == MULTIPHASE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST]", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && turbulenceModel in [KEPSILON,KOMEGASST]" ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_omegaDissipationRate" : {
        "title" : "div(phi,omega)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,MULTIPHASE] && turbulenceModel in [KOMEGA,KOMEGASST]", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && turbulenceModel == KOMEGASST" ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_epsilonDissipationRate" : {
        "title" : "div(phi,epsilon)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,REALIZABLEKE]", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel == KEPSILON", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == KEPSILON && timeDependency.type == STATIONARY", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == KEPSILON && timeDependency.type == TRANSIENT && isCompressible == false" ]
      },
      "OneOf_DivergenceSchemesDiv_R" : {
        "title" : "div(R)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWINDV_UNLIMITED" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,NONE,KEPSILON] && algorithm in [PISO,SIMPLE]" ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_R" : {
        "title" : "div(phi,R)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,NONE,KEPSILON] && algorithm in [PISO,SIMPLE]" ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_nuTilda" : {
        "title" : "div(phi,nuTilda)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel == SPALARTALLMARAS", "type == INCOMPRESSIBLE && turbulenceModel in [SMAGORINSKY,NONE,KEPSILON] && algorithm in [PISO,SIMPLE]", "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel == SPALARTALLMARAS" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0" ],
          "default" : {
            "type" : "GAUSS_UPWIND"
          }
        }, {
          "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies == 0 && algorithm != PIMPLE && turbulenceModel != SPALARTALLMARAS" ],
          "default" : {
            "type" : "BOUNDED_GAUSS_UPWIND"
          }
        }, {
          "when" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies == 0 && algorithm == PIMPLE && turbulenceModel == SPALARTALLMARAS" ],
          "default" : {
            "type" : "GAUSS_LINEAR"
          }
        }, {
          "when" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]" ],
          "default" : {
            "type" : "GAUSS_LINEAR"
          }
        } ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_temperature" : {
        "title" : "div(phi,T)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false" ]
      },
      "OneOf_DivergenceSchemesDiv_Phi_passiveScalar" : {
        "title" : "div(phi,T*)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0" ]
      },
      "OneOf_DivergenceSchemesDiv_tauMC" : {
        "title" : "div(tauMC)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWINDV_UNLIMITED" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel == NONE" ]
      },
      "OneOf_DivergenceSchemesDiv_phid_pressure" : {
        "title" : "div(phid,p)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_DivergenceSchemesDiv_velocity" : {
        "title" : "div(U)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWINDV_UNLIMITED" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindVUnlimitedDivergenceScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_DivergenceSchemesDiv_phi_Ekp" : {
        "title" : "div(phi,Ekp)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        } ],
        "default" : {
          "type" : "BOUNDED_GAUSS_UPWIND"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true" ]
      },
      "OneOf_DivergenceSchemesDiv_phirb_alpha" : {
        "title" : "div(phirb,alpha)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme",
            "GAUSS_INTERFACECOMPRESSION" : "#/components/schemas/GaussInterfaceCompressionDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussInterfaceCompressionDivergenceScheme"
        } ],
        "default" : {
          "type" : "GAUSS_INTERFACECOMPRESSION"
        },
        "x-showWhen" : [ "type == MULTIPHASE" ]
      },
      "OneOf_DivergenceSchemesDiv_phi_alpha" : {
        "title" : "div(phi,alpha)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme",
            "GAUSS_INTERFACECOMPRESSION" : "#/components/schemas/GaussInterfaceCompressionDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussInterfaceCompressionDivergenceScheme"
        } ],
        "default" : {
          "type" : "GAUSS_VANLEER"
        },
        "x-showWhen" : [ "type == MULTIPHASE" ]
      },
      "OneOf_DivergenceSchemesDiv_rhoPhi_velocity" : {
        "title" : "div(rhoPhi,U)",
        "description" : "<p>With this option, you can choose your desired divergence scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearDivergenceScheme",
            "GAUSS_LINEARUPWIND_UNLIMITED" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme",
            "GAUSS_LINEARUPWIND_LIMITEDGRAD" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme",
            "GAUSS_LIMITEDLINEAR_1" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme",
            "GAUSS_LIMITEDLINEARV_1" : "#/components/schemas/GaussLimitedLinearV1DivergenceScheme",
            "BOUNDED_GAUSS_UPWIND" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme",
            "GAUSS_UPWIND" : "#/components/schemas/GaussUpwindDivergenceScheme",
            "GAUSS_VANLEER" : "#/components/schemas/GaussVanleerDivergenceScheme",
            "GAUSS_LINEARUPWINDV_GRAD_U_" : "#/components/schemas/GaussLinearUpwindVGradUDivergenceScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindUnlimitedDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindLimitedGradDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinear1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLimitedLinearV1DivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/BoundedGaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussUpwindDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussVanleerDivergenceScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUpwindVGradUDivergenceScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LIMITEDLINEAR_1"
        },
        "x-showWhen" : [ "type == MULTIPHASE" ]
      },
      "OneOf_TimeDifferentiationSchemesForDefault" : {
        "title" : "Default",
        "description" : "<p>With this option, you can choose your desired time-differentiation scheme:</p><ul><li><p>For steady-state simulations, choose <b>steadyState</b>.</p><li><p><b>Euler</b> is a first-order implicit and bounded scheme. If unsure, try this scheme first.</p><li><p><b>localEuler</b> is a local time-step scheme, which is first-order implicit and bounded.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "EULER" : "#/components/schemas/EulerTimeDifferentiationScheme",
            "LOCAL_EULER" : "#/components/schemas/LocalEulerTimeDifferentiationScheme",
            "STEADYSTATE" : "#/components/schemas/SteadystateTimeDifferentiationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/EulerTimeDifferentiationScheme"
        }, {
          "$ref" : "#/components/schemas/LocalEulerTimeDifferentiationScheme"
        }, {
          "$ref" : "#/components/schemas/SteadystateTimeDifferentiationScheme"
        } ],
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ],
          "default" : {
            "type" : "EULER"
          }
        }, {
          "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == STATIONARY" ],
          "default" : {
            "type" : "STEADYSTATE"
          }
        }, {
          "when" : [ "type == MULTIPHASE && useLocalTimeStepping == false" ],
          "default" : {
            "type" : "EULER"
          }
        }, {
          "when" : [ "type == MULTIPHASE && useLocalTimeStepping == true" ],
          "default" : {
            "type" : "LOCAL_EULER"
          }
        } ]
      },
      "OneOf_CoupledConjugateHeatTransferMaterialsFluids" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "INCOMPRESSIBLE" : "#/components/schemas/IncompressibleMaterial",
            "COMPRESSIBLE" : "#/components/schemas/FluidCompressibleMaterial"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IncompressibleMaterial"
        }, {
          "$ref" : "#/components/schemas/FluidCompressibleMaterial"
        } ]
      },
      "OneOf_BondedContactPositionTolerance" : {
        "title" : "Position tolerance",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SET_VALUE" : "#/components/schemas/SetValuePositionTolerance",
            "OFF" : "#/components/schemas/OffPositionTolerance"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SetValuePositionTolerance"
        }, {
          "$ref" : "#/components/schemas/OffPositionTolerance"
        } ],
        "default" : {
          "type" : "SET_VALUE"
        }
      },
      "OneOf_MarcBondedAndTouchingContactConnectionPositionTolerance" : {
        "title" : "Position tolerance",
        "description" : "<p>Define how gaps and small interferences should be treated:</p><ul><li><b>Set Value:</b> Define a numerical distance (<b>tolerance</b>) below which contact is established. If the gap between a contacting node and its target body is larger than the tolerance, the glued contact constraint will not be activated on this node. This check happens on each iteration. For this option the &quot;stress-free projection&quot; of contact nodes on the target surfaces is activated. Small gaps will be closed without adding stresses.<br/>Use this option for cases where small CAD inaccuracies, manufacturing tolerances or mesh discretization errors might appear.</li><li><b>Off:</b> No specific contact tolerance is used. The program uses an automatic value based on element size (1/10th of the typical element size) to overcome small gaps or penetrations due to mesh approximations on curved surfaces. No &quot;stress-free projection&quot; is active for this setting.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SET_VALUE" : "#/components/schemas/SetValuePositionTolerance",
            "OFF" : "#/components/schemas/OffPositionTolerance"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SetValuePositionTolerance"
        }, {
          "$ref" : "#/components/schemas/OffPositionTolerance"
        } ],
        "default" : {
          "type" : "OFF"
        }
      },
      "OneOf_SimericsAnalysisTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent, that is, the equations solved do not include time derivatives. If you are only interested in the converged solution, consider a steady-state simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects, that is, the associated flow variables vary with respect to time.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_SimericsAnalysisBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "VELOCITY_OUTLET_V7" : "#/components/schemas/VelocityOutletBC",
            "PRESSURE_INLET_V31" : "#/components/schemas/PressureInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "SYMMETRY" : "#/components/schemas/SymmetryBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/VelocityOutletBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryBC"
        } ]
      },
      "OneOf_SimericsAnalysisMeshSettings" : {
        "title" : "Mesh settings",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_SETTINGS" : "#/components/schemas/AutomaticSimericsMeshSettings",
            "MANUAL_SETTINGS" : "#/components/schemas/ManualSimericsMeshSettings"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticSimericsMeshSettings"
        }, {
          "$ref" : "#/components/schemas/ManualSimericsMeshSettings"
        } ],
        "default" : {
          "type" : "AUTOMATIC_SETTINGS"
        }
      },
      "OneOf_NewSurfaceRefinementPacefishV38MeshSizing" : {
        "title" : "Sizing",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticMeshSizing",
            "MANUAL_SURFACE_PACEFISH" : "#/components/schemas/ManualSurfaceSizingPacefish"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshSizing"
        }, {
          "$ref" : "#/components/schemas/ManualSurfaceSizingPacefish"
        } ]
      },
      "OneOf_SolidSimulationControlTimestepDefinition" : {
        "title" : "Time step definition",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_V27" : "#/components/schemas/AutoTimestepDefinition",
            "MANUAL_V19" : "#/components/schemas/ManualTimestepDefinition"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutoTimestepDefinition"
        }, {
          "$ref" : "#/components/schemas/ManualTimestepDefinition"
        } ],
        "default" : {
          "type" : "AUTOMATIC_V27"
        },
        "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS", "type == THERMAL_MECHANICAL && timeDependency.type == TRANSIENT && nonLinearAnalysis == true" ]
      },
      "OneOf_SolidSimulationControlPseudoTimeStepping" : {
        "title" : "Pseudo time stepping",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SINGLE_STEP" : "#/components/schemas/SingleStepPseudoTimeStepping",
            "STEPPING_LIST_V18" : "#/components/schemas/SteppingListPseudoTimeStepping"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SingleStepPseudoTimeStepping"
        }, {
          "$ref" : "#/components/schemas/SteppingListPseudoTimeStepping"
        } ],
        "default" : {
          "type" : "SINGLE_STEP"
        },
        "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == false", "type == HEAT_TRANSFER && timeDependency.type == TRANSIENT", "type == THERMAL_MECHANICAL && nonLinearAnalysis == false && inertiaEffect == STATIC && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_SolidSimulationControlWriteControlDefinition" : {
        "title" : "Write control definition",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "WRITE_INTERVAL" : "#/components/schemas/WriteIntervalWriteControl",
            "ALL_COMPUTED" : "#/components/schemas/AllComputedWriteControl",
            "INITIAL" : "#/components/schemas/InitialTimestepsWriteControl",
            "USER_DEFINED_V21" : "#/components/schemas/UserDefinedWriteControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/WriteIntervalWriteControl"
        }, {
          "$ref" : "#/components/schemas/AllComputedWriteControl"
        }, {
          "$ref" : "#/components/schemas/InitialTimestepsWriteControl"
        }, {
          "$ref" : "#/components/schemas/UserDefinedWriteControl"
        } ],
        "default" : {
          "type" : "INITIAL"
        },
        "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS", "type == HEAT_TRANSFER && timeDependency.type == TRANSIENT", "type == THERMAL_MECHANICAL && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_SolidSimulationControlExcitationFrequencies" : {
        "title" : "Excitation frequencies",
        "description" : "<p>Set the frequencies for the harmonic excitation. Setting it to <b>single frequency</b> will only compute harmonic excitation on that frequency. To have harmonic excitations on multiple frequencies, please choose <b>frequency list</b>. </p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SINGLE" : "#/components/schemas/SingleFrequency",
            "LIST_V20" : "#/components/schemas/FrequencyList"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SingleFrequency"
        }, {
          "$ref" : "#/components/schemas/FrequencyList"
        } ],
        "default" : {
          "type" : "SINGLE"
        },
        "x-showWhen" : [ "type == HARMONIC_ANALYSIS && numerics.harmonicSolutionMethod == DIRECT" ]
      },
      "OneOf_SolidSimulationControlEigenfrequencyScope" : {
        "title" : "Eigenfrequency Scope",
        "description" : "<p>Select how you want to control natural frequencies to be computed:<br> <li><b>First modes</b>: The first <i>Number of modes</i> will be searched and computed, in the order of low to high frequency.</li><li><b>Frequency range</b>: All the modes within the range of frequencies will be searched and computed. The frequency range is specified by a <i>Start frequency</i> and an <i>End frequency</i>.</li><li><b>Center frequency</b>: Compute the <i>Number of modes</i> closest to the frequency defined by <i>Center frequency</i>.</li></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIRSTMODE" : "#/components/schemas/FirstMode",
            "RANGE" : "#/components/schemas/FrequencyRange",
            "CENTER" : "#/components/schemas/CenterFrequency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FirstMode"
        }, {
          "$ref" : "#/components/schemas/FrequencyRange"
        }, {
          "$ref" : "#/components/schemas/CenterFrequency"
        } ],
        "default" : {
          "type" : "FIRSTMODE"
        },
        "x-showWhen" : [ "type == FREQUENCY_ANALYSIS" ]
      },
      "OneOf_AccelerationFieldSelectionAccelerationType" : {
        "title" : "Acceleration type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE" : "#/components/schemas/AbsoluteHarmonicAccelerationFieldType",
            "RELATIVE" : "#/components/schemas/RelativeHarmonicAccelerationFieldType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsoluteHarmonicAccelerationFieldType"
        }, {
          "$ref" : "#/components/schemas/RelativeHarmonicAccelerationFieldType"
        } ],
        "default" : {
          "type" : "ABSOLUTE"
        },
        "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
      },
      "OneOf_MultiphaseBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "VELOCITY_OUTLET_V7" : "#/components/schemas/VelocityOutletBC",
            "PRESSURE_INLET_V31" : "#/components/schemas/PressureInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "SYMMETRY" : "#/components/schemas/SymmetryBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "WEDGE" : "#/components/schemas/WedgeBC",
            "CUSTOM_V37" : "#/components/schemas/CustomFluidBC",
            "EMPTY_2D" : "#/components/schemas/Empty2DBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/VelocityOutletBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/WedgeBC"
        }, {
          "$ref" : "#/components/schemas/CustomFluidBC"
        }, {
          "$ref" : "#/components/schemas/Empty2DBC"
        } ]
      },
      "OneOf_ElasticityMarcPoissonsRatio" : {
        "title" : "(ν) Poisson's ratio",
        "maximum" : 0.5,
        "exclusiveMaximum" : true,
        "minimum" : -1.0,
        "exclusiveMinimum" : true,
        "description" : "<p>Provide the <i>Poisson's ratio</i> value which describes the compression or elongation of a material transverse to axial strain. <i>Poisson's ratio</i> can have a value within range from -1 to 0.5. </p><br /><b>Important remarks:</b><br /> <ul><li>Value less than 0 means that material is auxetic.</li><li>Most of the metals such as steel and aluminum have value between 0.2 to 0.35 and are considered compressible.<li>Value of 0.5 means that the material is incompressible such as rubber and some types of foams. Please avoid giving this value since it leads to convergence problem. You can give 0.499 rather than 0.5.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_RegionInterfaceInterfaceThermal" : {
        "title" : "Interface type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "COUPLED" : "#/components/schemas/CoupledInterfaceThermal",
            "ADIABATIC" : "#/components/schemas/AdiabaticInterfaceThermal",
            "TOTAL_RESISTANCE" : "#/components/schemas/TotalResistanceInterfaceThermal",
            "SPECIFIC_CONDUCTANCE" : "#/components/schemas/SpecificConductanceInterfaceThermal",
            "CONTACT_INTERFACE_MATERIAL" : "#/components/schemas/ContactInterfaceMaterialInterfaceThermal"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CoupledInterfaceThermal"
        }, {
          "$ref" : "#/components/schemas/AdiabaticInterfaceThermal"
        }, {
          "$ref" : "#/components/schemas/TotalResistanceInterfaceThermal"
        }, {
          "$ref" : "#/components/schemas/SpecificConductanceInterfaceThermal"
        }, {
          "$ref" : "#/components/schemas/ContactInterfaceMaterialInterfaceThermal"
        } ],
        "default" : {
          "type" : "COUPLED"
        },
        "x-conditionalHelp" : [ {
          "when" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER" ]
        } ]
      },
      "OneOf_CustomFluidBCVelocity" : {
        "title" : "Velocity type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ADVECTIVE" : "#/components/schemas/AdvectiveVBC",
            "SYMMETRY" : "#/components/schemas/SymmetryVBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientVBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueVBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValueVBC",
            "FLOW_RATE_INLET_VELOCITY" : "#/components/schemas/FlowRateInletVBC",
            "FLOW_RATE_MEAN_INLET_VELOCITY" : "#/components/schemas/FlowRateMeanInletVBC",
            "FREESTREAM" : "#/components/schemas/FreestreamVBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletVBC",
            "MOVING_WALL_VELOCITY" : "#/components/schemas/MovingWallVBC",
            "NO_SLIP" : "#/components/schemas/NoSlipVBC",
            "OUTLET_MEAN_PHASE" : "#/components/schemas/OutletMeanPhaseVBC",
            "PRESSURE_INLET_VELOCITY" : "#/components/schemas/PressureInletVBC",
            "PRESSURE_INLET_OUTLET_VELOCITY" : "#/components/schemas/PressureInletOutletVBC",
            "ROTATING_WALL_VELOCITY" : "#/components/schemas/RotatingWallVBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientVBC",
            "SLIP" : "#/components/schemas/SlipVBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AdvectiveVBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryVBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientVBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueVBC"
        }, {
          "$ref" : "#/components/schemas/MeanValueVBC"
        }, {
          "$ref" : "#/components/schemas/FlowRateInletVBC"
        }, {
          "$ref" : "#/components/schemas/FlowRateMeanInletVBC"
        }, {
          "$ref" : "#/components/schemas/FreestreamVBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletVBC"
        }, {
          "$ref" : "#/components/schemas/MovingWallVBC"
        }, {
          "$ref" : "#/components/schemas/NoSlipVBC"
        }, {
          "$ref" : "#/components/schemas/OutletMeanPhaseVBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletVBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletOutletVBC"
        }, {
          "$ref" : "#/components/schemas/RotatingWallVBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientVBC"
        }, {
          "$ref" : "#/components/schemas/SlipVBC"
        } ],
        "default" : {
          "type" : "NO_SLIP"
        }
      },
      "OneOf_CustomFluidBCPressure" : {
        "title" : "Pressure type",
        "description" : "Please choose a boundary condition for pressure (p). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure-inlet-and-pressure-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ADVECTIVE" : "#/components/schemas/AdvectivePBC",
            "SYMMETRY" : "#/components/schemas/SymmetryPBC",
            "FAN_PRESSURE" : "#/components/schemas/FanPBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientPBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "FREESTREAM" : "#/components/schemas/FreestreamPBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValuePBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientPBC",
            "TOTAL_PRESSURE" : "#/components/schemas/TotalPBC",
            "WAVE_TRANSMISSIVE" : "#/components/schemas/WaveTransmissivePBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AdvectivePBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryPBC"
        }, {
          "$ref" : "#/components/schemas/FanPBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientPBC"
        }, {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/FreestreamPBC"
        }, {
          "$ref" : "#/components/schemas/MeanValuePBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientPBC"
        }, {
          "$ref" : "#/components/schemas/TotalPBC"
        }, {
          "$ref" : "#/components/schemas/WaveTransmissivePBC"
        } ],
        "default" : {
          "type" : "ZERO_GRADIENT"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE" ]
      },
      "OneOf_CustomFluidBCPressureRgh" : {
        "title" : "Pressure type",
        "description" : "Please choose a boundary condition for modified pressure (p_rgh). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure-inlet-and-pressure-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SYMMETRY" : "#/components/schemas/SymmetryPBC",
            "FAN_PRESSURE" : "#/components/schemas/FanPBC",
            "FIXED_FLUX_PRESSURE" : "#/components/schemas/FixedFluxPBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientPBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "FREESTREAM" : "#/components/schemas/FreestreamPBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValuePBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientPBC",
            "TOTAL_PRESSURE" : "#/components/schemas/TotalPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SymmetryPBC"
        }, {
          "$ref" : "#/components/schemas/FanPBC"
        }, {
          "$ref" : "#/components/schemas/FixedFluxPBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientPBC"
        }, {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/FreestreamPBC"
        }, {
          "$ref" : "#/components/schemas/MeanValuePBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientPBC"
        }, {
          "$ref" : "#/components/schemas/TotalPBC"
        } ],
        "default" : {
          "type" : "FIXED_FLUX_PRESSURE"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true", "type in [CONJUGATE_HEAT_TRANSFER,MULTIPHASE]" ]
      },
      "OneOf_CustomFluidBCGaugePressure" : {
        "title" : "Pressure type",
        "description" : "Please choose a boundary condition for gauge pressure (p). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure-inlet-and-pressure-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SYMMETRY" : "#/components/schemas/SymmetryPBC",
            "FAN_PRESSURE" : "#/components/schemas/FanPBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientPBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "FREESTREAM" : "#/components/schemas/FreestreamPBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValuePBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientPBC",
            "TOTAL_PRESSURE" : "#/components/schemas/TotalPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SymmetryPBC"
        }, {
          "$ref" : "#/components/schemas/FanPBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientPBC"
        }, {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/FreestreamPBC"
        }, {
          "$ref" : "#/components/schemas/MeanValuePBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientPBC"
        }, {
          "$ref" : "#/components/schemas/TotalPBC"
        } ],
        "default" : {
          "type" : "ZERO_GRADIENT"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE" ]
      },
      "OneOf_CustomFluidBCGaugePressureRgh" : {
        "title" : "Pressure type",
        "description" : "Please choose a boundary condition for modified gauge pressure (p_rgh). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure-inlet-and-pressure-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SYMMETRY" : "#/components/schemas/SymmetryPBC",
            "FAN_PRESSURE" : "#/components/schemas/FanPBC",
            "FIXED_FLUX_PRESSURE" : "#/components/schemas/FixedFluxPBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientPBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "FREESTREAM" : "#/components/schemas/FreestreamPBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValuePBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientPBC",
            "TOTAL_PRESSURE" : "#/components/schemas/TotalPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SymmetryPBC"
        }, {
          "$ref" : "#/components/schemas/FanPBC"
        }, {
          "$ref" : "#/components/schemas/FixedFluxPBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientPBC"
        }, {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/FreestreamPBC"
        }, {
          "$ref" : "#/components/schemas/MeanValuePBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientPBC"
        }, {
          "$ref" : "#/components/schemas/TotalPBC"
        } ],
        "default" : {
          "type" : "FIXED_FLUX_PRESSURE"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false" ]
      },
      "OneOf_CustomFluidBCTemperature" : {
        "title" : "Temperature type",
        "description" : "Please choose a boundary condition for temperature (T).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "EXTERNAL_WALL_HEAT_FLUX_TEMPERATURE" : "#/components/schemas/ExternalWallHeatFluxTBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientTBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueTBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletTBC",
            "ADIABATIC" : "#/components/schemas/AdiabaticTBC",
            "SYMMETRY" : "#/components/schemas/SymmetryTBC",
            "TOTAL_TEMPERATURE" : "#/components/schemas/TotalTBC",
            "TURBULENT_HEAT_FLUX_TEMPERATURE" : "#/components/schemas/TurbulentHeatFluxTBC",
            "WALL_HEAT_TRANSFER" : "#/components/schemas/WallHeatTransferTBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ExternalWallHeatFluxTBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientTBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueTBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletTBC"
        }, {
          "$ref" : "#/components/schemas/AdiabaticTBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryTBC"
        }, {
          "$ref" : "#/components/schemas/TotalTBC"
        }, {
          "$ref" : "#/components/schemas/TurbulentHeatFluxTBC"
        }, {
          "$ref" : "#/components/schemas/WallHeatTransferTBC"
        } ],
        "default" : {
          "type" : "FIXED_VALUE"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ]
      },
      "OneOf_CustomFluidBCTurbulentKineticEnergy" : {
        "title" : "Turb. kinetic energy type",
        "description" : "Please choose a boundary condition for turbulent kinetic energy (k).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SYMMETRY" : "#/components/schemas/SymmetryTKEBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientTKEBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueTKEBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletTKEBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientTKEBC",
            "TURBULENT_INTENSITY_KINETIC_ENERGY_INLET" : "#/components/schemas/IntensityKineticEnergyInletTKEBC",
            "WALL_FUNCTION" : "#/components/schemas/WallFunctionTKEBC",
            "FULL_RESOLUTION" : "#/components/schemas/FullResolutionTKEBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SymmetryTKEBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientTKEBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueTKEBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletTKEBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientTKEBC"
        }, {
          "$ref" : "#/components/schemas/IntensityKineticEnergyInletTKEBC"
        }, {
          "$ref" : "#/components/schemas/WallFunctionTKEBC"
        }, {
          "$ref" : "#/components/schemas/FullResolutionTKEBC"
        } ],
        "default" : {
          "type" : "WALL_FUNCTION"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE]", "type == MULTIPHASE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST]", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && turbulenceModel in [KEPSILON,KOMEGASST]" ]
      },
      "OneOf_CustomFluidBCOmegaDissipationRate" : {
        "title" : "Specific dissipation rate type",
        "description" : "Specific dissipation rate (omega) represents the specific rate of dissipation of turbulent kinetic energy (k). <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-omega-sst/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SYMMETRY" : "#/components/schemas/SymmetryOBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientOBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueOBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletOBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientOBC",
            "WALL_FUNCTION" : "#/components/schemas/WallFunctionOBC",
            "FULL_RESOLUTION" : "#/components/schemas/FullResolutionOBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SymmetryOBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientOBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueOBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletOBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientOBC"
        }, {
          "$ref" : "#/components/schemas/WallFunctionOBC"
        }, {
          "$ref" : "#/components/schemas/FullResolutionOBC"
        } ],
        "default" : {
          "type" : "WALL_FUNCTION"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,MULTIPHASE] && turbulenceModel in [KOMEGA,KOMEGASST]", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER] && turbulenceModel == KOMEGASST" ]
      },
      "OneOf_CustomFluidBCEpsilonDissipationRate" : {
        "title" : "Dissipation rate type",
        "description" : "Dissipation rate (epsilon) represents the rate of dissipation of turbulent kinetic energy (k). <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SYMMETRY" : "#/components/schemas/SymmetryEBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientEBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueEBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletEBC",
            "TURBULENCE_MIXING_LENGTH_DISSIPATION_RATE_INLET" : "#/components/schemas/MixingLengthInletEBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientEBC",
            "WALL_FUNCTION" : "#/components/schemas/WallFunctionEBC",
            "FULL_RESOLUTION" : "#/components/schemas/FullResolutionEBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SymmetryEBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientEBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueEBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletEBC"
        }, {
          "$ref" : "#/components/schemas/MixingLengthInletEBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientEBC"
        }, {
          "$ref" : "#/components/schemas/WallFunctionEBC"
        }, {
          "$ref" : "#/components/schemas/FullResolutionEBC"
        } ],
        "default" : {
          "type" : "WALL_FUNCTION"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,REALIZABLEKE]", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel == KEPSILON" ]
      },
      "OneOf_CustomFluidBCEddyViscosity" : {
        "title" : "(ν<t>) Eddy viscosity",
        "description" : "Dynamic eddy viscosity (muSgs) is a sub-grid scale viscosity used to model the unresolved turbulent eddies in Large Eddy Simulations. Choose a boundary type.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CALCULATED" : "#/components/schemas/CalculatedEVBC",
            "SYMMETRY" : "#/components/schemas/SymmetryEVBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientEVBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueEVBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletEVBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientEVBC",
            "WALL_FUNCTION" : "#/components/schemas/WallFunctionEVBC",
            "FULL_RESOLUTION" : "#/components/schemas/FullResolutionEVBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CalculatedEVBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryEVBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientEVBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueEVBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletEVBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientEVBC"
        }, {
          "$ref" : "#/components/schemas/WallFunctionEVBC"
        }, {
          "$ref" : "#/components/schemas/FullResolutionEVBC"
        } ],
        "default" : {
          "type" : "WALL_FUNCTION"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,MULTIPHASE] && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS]", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS] && isCompressible == false" ]
      },
      "OneOf_CustomFluidBCEddyViscosityCompressible" : {
        "title" : "(ν<t>) Eddy viscosity",
        "description" : "Dissipation rate (epsilon) represents the rate of dissipation of turbulent kinetic energy (k). <a href='https://www.simscale.com/docs/simulation-setup/global-settings/k-epsilon/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CALCULATED" : "#/components/schemas/CalculatedEVCBC",
            "SYMMETRY" : "#/components/schemas/SymmetryEVCBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientEVCBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueEVCBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletEVCBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientEVCBC",
            "WALL_FUNCTION" : "#/components/schemas/WallFunctionEVCBC",
            "FULL_RESOLUTION" : "#/components/schemas/FullResolutionEVCBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CalculatedEVCBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryEVCBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientEVCBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueEVCBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletEVCBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientEVCBC"
        }, {
          "$ref" : "#/components/schemas/WallFunctionEVCBC"
        }, {
          "$ref" : "#/components/schemas/FullResolutionEVCBC"
        } ],
        "default" : {
          "type" : "WALL_FUNCTION"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS]", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS] && isCompressible == true", "type == CONJUGATE_HEAT_TRANSFER && turbulenceModel == SMAGORINSKY" ]
      },
      "OneOf_CustomFluidBCNuTilda" : {
        "title" : "(ῦ) nuTilda",
        "description" : "nuTilda is a Spalart-Allmaras variable which is a function of eddy viscosity. Choose a boundary type.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SYMMETRY" : "#/components/schemas/SymmetryNBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientNBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueNBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletNBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientNBC",
            "WALL_FUNCTION" : "#/components/schemas/WallFunctionNBC",
            "FULL_RESOLUTION" : "#/components/schemas/FullResolutionNBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SymmetryNBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientNBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueNBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletNBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientNBC"
        }, {
          "$ref" : "#/components/schemas/WallFunctionNBC"
        }, {
          "$ref" : "#/components/schemas/FullResolutionNBC"
        } ],
        "default" : {
          "type" : "WALL_FUNCTION"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel == SPALARTALLMARAS" ]
      },
      "OneOf_CustomFluidBCTurbulentThermalDiffusivity" : {
        "title" : "(α<t>) Turb. thermal diffusivity",
        "description" : "Dynamic turbulent thermal diffusivity (alpha_t) represents the rate of turbulent heat transfer.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CALCULATED" : "#/components/schemas/CalculatedTDBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientTDBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueTDBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientTDBC",
            "SYMMETRY" : "#/components/schemas/SymmetryTDBC",
            "WALL_FUNCTION" : "#/components/schemas/WallFunctionTDBC",
            "FULL_RESOLUTION" : "#/components/schemas/FullResolutionTDBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CalculatedTDBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientTDBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueTDBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientTDBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryTDBC"
        }, {
          "$ref" : "#/components/schemas/WallFunctionTDBC"
        }, {
          "$ref" : "#/components/schemas/FullResolutionTDBC"
        } ],
        "default" : {
          "type" : "WALL_FUNCTION"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && turbulenceModel in [KEPSILON,KOMEGASST]", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [KEPSILON,KOMEGASST] && isCompressible == true" ]
      },
      "OneOf_CustomFluidBCTurbulentThermalDiffusivityCompressible" : {
        "title" : "(α<t>) Turb. thermal diffusivity",
        "description" : "Dynamic turbulent thermal diffusivity (alpha_Sgs) represents the rate of turbulent heat transfer.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CALCULATED" : "#/components/schemas/CalculatedTDCBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientTDCBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueTDCBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientTDCBC",
            "SYMMETRY" : "#/components/schemas/SymmetryTDCBC",
            "WALL_FUNCTION" : "#/components/schemas/WallFunctionTDCBC",
            "FULL_RESOLUTION" : "#/components/schemas/FullResolutionTDCBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CalculatedTDCBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientTDCBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueTDCBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientTDCBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryTDCBC"
        }, {
          "$ref" : "#/components/schemas/WallFunctionTDCBC"
        }, {
          "$ref" : "#/components/schemas/FullResolutionTDCBC"
        } ],
        "default" : {
          "type" : "WALL_FUNCTION"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS]", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS] && isCompressible == true", "type == CONJUGATE_HEAT_TRANSFER && turbulenceModel == SMAGORINSKY" ]
      },
      "OneOf_CustomFluidBCTurbulentDynamicViscosity" : {
        "title" : "(μ<t>) Turb. dynamic viscosity",
        "description" : "Turbulent dynamic viscosity is a model viscosity. It is required to account for the transport and dissipation effects lost in averaging the turbulence. Choose a boundary type.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CALCULATED" : "#/components/schemas/CalculatedDVBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientDVBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueDVBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletDVBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientDVBC",
            "SYMMETRY" : "#/components/schemas/SymmetryDVBC",
            "WALL_FUNCTION" : "#/components/schemas/WallFunctionDVBC",
            "FULL_RESOLUTION" : "#/components/schemas/FullResolutionDVBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CalculatedDVBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientDVBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueDVBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletDVBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientDVBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryDVBC"
        }, {
          "$ref" : "#/components/schemas/WallFunctionDVBC"
        }, {
          "$ref" : "#/components/schemas/FullResolutionDVBC"
        } ],
        "default" : {
          "type" : "WALL_FUNCTION"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && turbulenceModel in [KEPSILON,KOMEGASST]", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [NONE,KEPSILON,KOMEGASST] && isCompressible == true" ]
      },
      "OneOf_CustomFluidBCPassiveScalars" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientPSBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValuePSBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletPSBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientPSBC",
            "SYMMETRY" : "#/components/schemas/SymmetryPSBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedGradientPSBC"
        }, {
          "$ref" : "#/components/schemas/FixedValuePSBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletPSBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientPSBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryPSBC"
        } ],
        "default" : {
          "type" : "ZERO_GRADIENT"
        }
      },
      "OneOf_CustomFluidBCPhaseFraction" : {
        "title" : "Phase fraction",
        "description" : "Please choose a boundary condition for phase fraction (alpha).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT_CONTACT_ANGLE" : "#/components/schemas/ConstantContactAnglePFBC",
            "DYNAMIC_CONTACT_ANGLE" : "#/components/schemas/DynamicContactAnglePFBC",
            "FIXED_GRADIENT" : "#/components/schemas/FixedGradientPFBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValuePFBC",
            "FLOW_DEPENDENT_VALUE" : "#/components/schemas/FlowDependentValuePFBC",
            "INLET_OUTLET" : "#/components/schemas/InletOutletPFBC",
            "ZERO_GRADIENT" : "#/components/schemas/ZeroGradientPFBC",
            "SYMMETRY" : "#/components/schemas/SymmetryPFBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantContactAnglePFBC"
        }, {
          "$ref" : "#/components/schemas/DynamicContactAnglePFBC"
        }, {
          "$ref" : "#/components/schemas/FixedGradientPFBC"
        }, {
          "$ref" : "#/components/schemas/FixedValuePFBC"
        }, {
          "$ref" : "#/components/schemas/FlowDependentValuePFBC"
        }, {
          "$ref" : "#/components/schemas/InletOutletPFBC"
        }, {
          "$ref" : "#/components/schemas/ZeroGradientPFBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryPFBC"
        } ],
        "default" : {
          "type" : "ZERO_GRADIENT"
        },
        "x-showWhen" : [ "type == MULTIPHASE" ]
      },
      "OneOf_CustomFluidBCNetRadiativeHeatFlux" : {
        "title" : "Radiative behaviour",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE" : "#/components/schemas/GreybodyDiffusiveRSBC",
            "OPEN_WINDOW" : "#/components/schemas/OpenWindowRSBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRSBC"
        }, {
          "$ref" : "#/components/schemas/OpenWindowRSBC"
        } ],
        "default" : {
          "type" : "GREYBODY_DIFFUSIVE"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true" ]
      },
      "OneOf_TemporalResponseResultControlItemFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DISPLACEMENT" : "#/components/schemas/DisplacementFieldSelection",
            "CONTACT" : "#/components/schemas/ContactFieldSelection",
            "STRAIN" : "#/components/schemas/StrainFieldSelection",
            "STRESS" : "#/components/schemas/StressFieldSelection",
            "VELOCITY" : "#/components/schemas/VelocityFieldSelection",
            "ACCELERATION" : "#/components/schemas/AccelerationFieldSelection",
            "TEMPERATURE" : "#/components/schemas/TemperatureFieldSelection",
            "HEAT_FLUX" : "#/components/schemas/HeatFluxFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DisplacementFieldSelection"
        }, {
          "$ref" : "#/components/schemas/ContactFieldSelection"
        }, {
          "$ref" : "#/components/schemas/StrainFieldSelection"
        }, {
          "$ref" : "#/components/schemas/StressFieldSelection"
        }, {
          "$ref" : "#/components/schemas/VelocityFieldSelection"
        }, {
          "$ref" : "#/components/schemas/AccelerationFieldSelection"
        }, {
          "$ref" : "#/components/schemas/TemperatureFieldSelection"
        }, {
          "$ref" : "#/components/schemas/HeatFluxFieldSelection"
        } ],
        "default" : {
          "type" : "DISPLACEMENT"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HEAT_TRANSFER,THERMAL_MECHANICAL]" ]
      },
      "OneOf_AdvancedConceptsThermalContactResistance" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "THIN_RESISTANCE_LAYER" : "#/components/schemas/ThinResistanceLayer",
            "CONTACT_RESISTANCE_LAYER" : "#/components/schemas/ContactResistanceLayer",
            "CONTACT_CONDUCTANCE_LAYER" : "#/components/schemas/ContactConductanceLayer"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ThinResistanceLayer"
        }, {
          "$ref" : "#/components/schemas/ContactResistanceLayer"
        }, {
          "$ref" : "#/components/schemas/ContactConductanceLayer"
        } ]
      },
      "OneOf_AdvancedConceptsHumiditySources" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SPECIES_MASS_FLOW_RATE" : "#/components/schemas/SpeciesHumiditySource",
            "VOLUMETRIC_SPECIES_MASS_FLOW_RATE" : "#/components/schemas/VolumetricSpeciesHumiditySource"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SpeciesHumiditySource"
        }, {
          "$ref" : "#/components/schemas/VolumetricSpeciesHumiditySource"
        } ]
      },
      "OneOf_AdvancedConceptsMomentumSources" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AVERAGE_VELOCITY" : "#/components/schemas/AverageVelocityMomentumSource",
            "FAN_PRESSURE_DROP" : "#/components/schemas/FanPressureDropMomentumSource",
            "FRICTION_VELOCITY_SOURCE" : "#/components/schemas/FrictionVelocityMomentumSource"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AverageVelocityMomentumSource"
        }, {
          "$ref" : "#/components/schemas/FanPressureDropMomentumSource"
        }, {
          "$ref" : "#/components/schemas/FrictionVelocityMomentumSource"
        } ]
      },
      "OneOf_AdvancedConceptsPassiveScalarSources" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE" : "#/components/schemas/AbsolutePassiveScalarSource",
            "SPECIFIC" : "#/components/schemas/SpecificPassiveScalarSource"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsolutePassiveScalarSource"
        }, {
          "$ref" : "#/components/schemas/SpecificPassiveScalarSource"
        } ]
      },
      "OneOf_AdvancedConceptsPorousMediums" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DARCY" : "#/components/schemas/DarcyMedium",
            "PRESSURE_LOSS_FUNCTION" : "#/components/schemas/PressureLossFunctionMedium",
            "DARCY_FORCHHEIMER" : "#/components/schemas/DarcyForchheimerMedium",
            "FIXED_COEFFICIENTS" : "#/components/schemas/FixedCoeffMedium",
            "POWER_LAW" : "#/components/schemas/PowerLawMedium",
            "PRESSURE_LOSS_CURVE" : "#/components/schemas/PressureLossCurve",
            "PERFORATED_PLATE" : "#/components/schemas/PerforatedPlate"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DarcyMedium"
        }, {
          "$ref" : "#/components/schemas/PressureLossFunctionMedium"
        }, {
          "$ref" : "#/components/schemas/DarcyForchheimerMedium"
        }, {
          "$ref" : "#/components/schemas/FixedCoeffMedium"
        }, {
          "$ref" : "#/components/schemas/PowerLawMedium"
        }, {
          "$ref" : "#/components/schemas/PressureLossCurve"
        }, {
          "$ref" : "#/components/schemas/PerforatedPlate"
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == SIMERICS_ANALYSIS" ],
          "default" : {
            "type" : "DARCY"
          }
        } ]
      },
      "OneOf_AdvancedConceptsPowerSources" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE_V23" : "#/components/schemas/AbsolutePowerSource",
            "SPECIFIC_V23" : "#/components/schemas/SpecificPowerSource",
            "HEAT_EXCHANGER_SOURCE" : "#/components/schemas/HeatExchangerSource",
            "TR_ABSOLUTE_POWER_SOURCE" : "#/components/schemas/TrAbsolutePowerSource",
            "TR_SPECIFIC_POWER_SOURCE" : "#/components/schemas/TrSpecificPowerSource"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsolutePowerSource"
        }, {
          "$ref" : "#/components/schemas/SpecificPowerSource"
        }, {
          "$ref" : "#/components/schemas/HeatExchangerSource"
        }, {
          "$ref" : "#/components/schemas/TrAbsolutePowerSource"
        }, {
          "$ref" : "#/components/schemas/TrSpecificPowerSource"
        } ]
      },
      "OneOf_AdvancedConceptsRotatingZones" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ARBITRARY_MESH_INTERFACE" : "#/components/schemas/AMIRotatingZone",
            "MULTI_REFERENCE_FRAME" : "#/components/schemas/MRFRotatingZone"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AMIRotatingZone"
        }, {
          "$ref" : "#/components/schemas/MRFRotatingZone"
        } ]
      },
      "OneOf_AdvancedConceptsSolidBodyMotions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "LINEAR_MOTION" : "#/components/schemas/LinearSBM",
            "OSCILLATING_ROTATING_MOTION" : "#/components/schemas/OscillatingRotatingSBM",
            "OSCILLATING_LINEAR_MOTION" : "#/components/schemas/OscillatingLinearSBM",
            "ROTATING_MOTION" : "#/components/schemas/RotatingSBM",
            "SHIP_DESIGN_ANALYSIS" : "#/components/schemas/ShipDesignAnalysisSBM"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/LinearSBM"
        }, {
          "$ref" : "#/components/schemas/OscillatingRotatingSBM"
        }, {
          "$ref" : "#/components/schemas/OscillatingLinearSBM"
        }, {
          "$ref" : "#/components/schemas/RotatingSBM"
        }, {
          "$ref" : "#/components/schemas/ShipDesignAnalysisSBM"
        } ]
      },
      "OneOf_AdvancedConceptsThermalResistanceNetworks" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "STAR_NETWORK" : "#/components/schemas/StarThermalResistanceNetwork",
            "TWO_RESISTOR_NETWORK" : "#/components/schemas/TwoResistorNetwork"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/StarThermalResistanceNetwork"
        }, {
          "$ref" : "#/components/schemas/TwoResistorNetwork"
        } ]
      },
      "OneOf_MarcMinMaxFieldsCalculationResultControlItemFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DISPLACEMENT" : "#/components/schemas/MarcDisplacementFieldSelection",
            "PRESSURE" : "#/components/schemas/MarcPressureFieldSelection",
            "STRESS" : "#/components/schemas/MarcStressFieldSelection",
            "STRAIN" : "#/components/schemas/MarcStrainFieldSelection",
            "CONTACT" : "#/components/schemas/MarcContactFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcDisplacementFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MarcPressureFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MarcStressFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MarcStrainFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MarcContactFieldSelection"
        } ],
        "default" : {
          "type" : "DISPLACEMENT"
        }
      },
      "OneOf_DimensionalFunction_SpecificEnergyValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_SlidingContactPositionTolerance" : {
        "title" : "Position tolerance",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SET_VALUE" : "#/components/schemas/SetValuePositionTolerance",
            "OFF" : "#/components/schemas/OffPositionTolerance"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SetValuePositionTolerance"
        }, {
          "$ref" : "#/components/schemas/OffPositionTolerance"
        } ],
        "default" : {
          "type" : "SET_VALUE"
        }
      },
      "OneOf_VelocityOutletBCVelocity" : {
        "title" : "Velocity type",
        "description" : "Please choose the type of velocity boundary condition. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/velocity-inlet-and-velocity-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValueVBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValueVBC",
            "FREESTREAM" : "#/components/schemas/FreestreamVBC",
            "OUTLET_MEAN_PHASE" : "#/components/schemas/OutletMeanPhaseVBC",
            "FLOW_RATE_OUTLET_VELOCITY" : "#/components/schemas/FlowRateOutletVBC",
            "FLOW_RATE_MEAN_OUTLET_VELOCITY" : "#/components/schemas/FlowRateMeanOutletVBC",
            "FLOW_RATE_STABLE_OUTLET_VELOCITY" : "#/components/schemas/FlowRateStableOutletVBC",
            "MEAN_VALUE_OUTLET_VELOCITY" : "#/components/schemas/MeanValueOutletVBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValueVBC"
        }, {
          "$ref" : "#/components/schemas/MeanValueVBC"
        }, {
          "$ref" : "#/components/schemas/FreestreamVBC"
        }, {
          "$ref" : "#/components/schemas/OutletMeanPhaseVBC"
        }, {
          "$ref" : "#/components/schemas/FlowRateOutletVBC"
        }, {
          "$ref" : "#/components/schemas/FlowRateMeanOutletVBC"
        }, {
          "$ref" : "#/components/schemas/FlowRateStableOutletVBC"
        }, {
          "$ref" : "#/components/schemas/MeanValueOutletVBC"
        } ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == MULTIPHASE" ],
          "default" : {
            "type" : "FIXED_VALUE"
          }
        }, {
          "when" : [ "type in [SIMERICS_ANALYSIS,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "FLOW_RATE_STABLE_OUTLET_VELOCITY"
          }
        }, {
          "when" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ],
          "default" : {
            "type" : "MEAN_VALUE_OUTLET_VELOCITY"
          }
        } ]
      },
      "OneOf_VelocityOutletBCPhaseFraction" : {
        "title" : "Phase fraction",
        "description" : "Please choose a boundary condition for phase fraction (alpha).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValuePFBC",
            "FLOW_DEPENDENT_VALUE" : "#/components/schemas/FlowDependentValuePFBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValuePFBC"
        }, {
          "$ref" : "#/components/schemas/FlowDependentValuePFBC"
        } ],
        "default" : {
          "type" : "FIXED_VALUE"
        },
        "x-showWhen" : [ "type == MULTIPHASE" ]
      },
      "OneOf_VelocityOutletBCPhaseFractionsV2" : {
        "title" : "Phase fraction type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "OUTLET_BACK_FLOW_PF_VALUES" : "#/components/schemas/OutletBackFlowPFValues",
            "OUTLET_FLOW_DRIVEN_PF" : "#/components/schemas/OutletFlowDrivenPF"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/OutletBackFlowPFValues"
        }, {
          "$ref" : "#/components/schemas/OutletFlowDrivenPF"
        } ],
        "default" : {
          "type" : "OUTLET_FLOW_DRIVEN_PF"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMultiphase == true" ]
      },
      "OneOf_VelocityOutletBCNetRadiativeHeatFlux" : {
        "title" : "Radiative behaviour",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE" : "#/components/schemas/GreybodyDiffusiveRSBC",
            "OPEN_WINDOW" : "#/components/schemas/OpenWindowRSBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRSBC"
        }, {
          "$ref" : "#/components/schemas/OpenWindowRSBC"
        } ],
        "default" : {
          "type" : "OPEN_WINDOW"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true" ]
      },
      "OneOf_VelocityOutletBCRadiativeIntensityRay" : {
        "title" : "Radiative behaviour",
        "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE_RAY" : "#/components/schemas/GreybodyDiffusiveRayBC",
            "OPEN_BOUNDARY_RAY" : "#/components/schemas/OpenBoundaryRayBC",
            "SEMI_OPEN_BOUNDARY_RAY" : "#/components/schemas/SemiOpenBoundaryRayBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRayBC"
        }, {
          "$ref" : "#/components/schemas/OpenBoundaryRayBC"
        }, {
          "$ref" : "#/components/schemas/SemiOpenBoundaryRayBC"
        } ],
        "default" : {
          "type" : "OPEN_BOUNDARY_RAY"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableSolarLoad == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableSolarLoad == true" ]
      },
      "OneOf_FluidModelDeltaCoefficient" : {
        "title" : "Delta coefficient",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PRANDTL" : "#/components/schemas/PrandtlLesDelta",
            "SMOOTH" : "#/components/schemas/SmoothLesDelta",
            "CUBE_ROOT_VOL" : "#/components/schemas/CubeRootVolLesDelta"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PrandtlLesDelta"
        }, {
          "$ref" : "#/components/schemas/SmoothLesDelta"
        }, {
          "$ref" : "#/components/schemas/CubeRootVolLesDelta"
        } ],
        "default" : {
          "type" : "CUBE_ROOT_VOL"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS]" ]
      },
      "OneOf_OrthotropicDirectionalDependencyPoissonsRatioXY" : {
        "title" : "(ν) Poisson's ratio in XY",
        "maximum" : 0.5,
        "exclusiveMaximum" : true,
        "minimum" : -1.0,
        "exclusiveMinimum" : true,
        "description" : "<p>Provide the <i>Poisson's ratio</i> value which describes the compression or elongation of a material transverse to axial strain on a <b>XY cartesian plane</b>. <i>Poisson's ratio</i> can have a value within range from -1 to 0.5. </p><br /><b>Important remarks:</b><br /> <ul><li>Value less than 0 means that material is auxetic.</li><li>Most of the metals such as steel and aluminum have value between 0.2 to 0.35 and are considered compressible.<li>Value of 0.5 means that the material is incompressible such as rubber and some types of foams. Please avoid giving this value since it leads to convergence problem. You can give 0.499 rather than 0.5.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ],
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_OrthotropicDirectionalDependencyPoissonsRatioYZ" : {
        "title" : "(ν) Poisson's ratio in YZ",
        "maximum" : 0.5,
        "exclusiveMaximum" : true,
        "minimum" : -1.0,
        "exclusiveMinimum" : true,
        "description" : "<p>Provide the <i>Poisson's ratio</i> value which describes the compression or elongation of a material transverse to axial strain on a <b>YZ cartesian plane</b>. <i>Poisson's ratio</i> can have a value within range from -1 to 0.5. </p><br /><b>Important remarks:</b><br /> <ul><li>Value less than 0 means that material is auxetic.</li><li>Most of the metals such as steel and aluminum have value between 0.2 to 0.35 and are considered compressible.<li>Value of 0.5 means that the material is incompressible such as rubber and some types of foams. Please avoid giving this value since it leads to convergence problem. You can give 0.499 rather than 0.5.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ],
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_OrthotropicDirectionalDependencyPoissonsRatioXZ" : {
        "title" : "(ν) Poisson's ratio in XZ",
        "maximum" : 0.5,
        "exclusiveMaximum" : true,
        "minimum" : -1.0,
        "exclusiveMinimum" : true,
        "description" : "<p>Provide the <i>Poisson's ratio</i> value which describes the compression or elongation of a material transverse to axial strain on a <b>XZ cartesian plane</b>. <i>Poisson's ratio</i> can have a value within range from -1 to 0.5. </p><br /><b>Important remarks:</b><br /> <ul><li>Value less than 0 means that material is auxetic.</li><li>Most of the metals such as steel and aluminum have value between 0.2 to 0.35 and are considered compressible.<li>Value of 0.5 means that the material is incompressible such as rubber and some types of foams. Please avoid giving this value since it leads to convergence problem. You can give 0.499 rather than 0.5.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ],
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_MarcSumFieldsCalculationResultControlItemFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FORCE" : "#/components/schemas/MarcForceFieldSelection",
            "CONTACT_FORCE" : "#/components/schemas/MarcContactForceFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcForceFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MarcContactForceFieldSelection"
        } ],
        "default" : {
          "type" : "FORCE"
        }
      },
      "OneOf_ElastoplasticNetworkPlasticityModelElastoplasticNetwork" : {
        "title" : "Elastoplastic model",
        "description" : "Selecting <b>Arruda-Boyce Plasticity</b> adds a network based on the \"eight-chain\" statistical model to account for the permanent, rate-independent alignment of molecular chains. This is the preferred choice for modeling the yielding and orientation-hardening behavior of polymers at large strains.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ARRUDA_BOYCE_PLASTIC" : "#/components/schemas/ArrudaBoycePlasticElastoplasticNetwork",
            "OFF" : "#/components/schemas/NoElastoplasticity"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ArrudaBoycePlasticElastoplasticNetwork"
        }, {
          "$ref" : "#/components/schemas/NoElastoplasticity"
        } ],
        "default" : {
          "type" : "OFF"
        }
      },
      "OneOf_FieldCalculationsPressureResultControlPressureType" : {
        "title" : "Pressure type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL_PRESSURE" : "#/components/schemas/TotalPressurePressureType",
            "STATIC_PRESSURE" : "#/components/schemas/StaticPressurePressureType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TotalPressurePressureType"
        }, {
          "$ref" : "#/components/schemas/StaticPressurePressureType"
        } ],
        "default" : {
          "type" : "TOTAL_PRESSURE"
        }
      },
      "OneOf_FieldCalculationsPressureResultControlResultType" : {
        "title" : "Result type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PRESSURE_VALUE" : "#/components/schemas/PressureValueResultType",
            "PRESSURE_COEFFICIENT" : "#/components/schemas/PressureCoefficientResultType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PressureValueResultType"
        }, {
          "$ref" : "#/components/schemas/PressureCoefficientResultType"
        } ],
        "default" : {
          "type" : "PRESSURE_VALUE"
        }
      },
      "OneOf_AdvancedPETSCSettingsPreconditioner" : {
        "title" : "Preconditioner",
        "description" : "Choose the preconditioner for the iterative solver:<ul><li><p><b>incomplete LDLT</b> performs an incomplete Cholesky decomposition.</p></ul><ul><li><p><b>MUMPS LDLT</b> performs a complete Cholesky decomposition in single precision via the MUMPS package.</p></ul><ul><li><p><b>Jacobi</b> is a standard diagonal preconditioner.</p></ul><ul><li><p><b>SOR</b> uses the method of <i>Successive Over-Relaxation</i>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MUMPS_LDLT" : "#/components/schemas/MUMPSPreconditoner",
            "INCOMPLETE_LDLT_V33" : "#/components/schemas/IncompletePreconditionerV33",
            "JACOBI" : "#/components/schemas/JacobiPreconditioner",
            "SOR" : "#/components/schemas/SorPreconditioner",
            "INACTIVE" : "#/components/schemas/InactivePreconditioner"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MUMPSPreconditoner"
        }, {
          "$ref" : "#/components/schemas/IncompletePreconditionerV33"
        }, {
          "$ref" : "#/components/schemas/JacobiPreconditioner"
        }, {
          "$ref" : "#/components/schemas/SorPreconditioner"
        }, {
          "$ref" : "#/components/schemas/InactivePreconditioner"
        } ],
        "default" : {
          "type" : "MUMPS_LDLT"
        }
      },
      "OneOf_PressureInletBCPressure" : {
        "title" : "Pressure type",
        "description" : "Please choose a boundary condition for pressure (p). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure-inlet-and-pressure-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "TOTAL_PRESSURE" : "#/components/schemas/TotalPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/TotalPBC"
        } ],
        "default" : {
          "type" : "TOTAL_PRESSURE"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE", "type == SIMERICS_ANALYSIS && isCompressible == true", "type == SIMERICS_ANALYSIS && cavitationModel == CONSTANT_GAS_MASS_FRACTION" ]
      },
      "OneOf_PressureInletBCPressureRgh" : {
        "title" : "Pressure type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL_PRESSURE" : "#/components/schemas/TotalPBC",
            "HYDROSTATIC_ISOTHERMAL_TOTAL_PRESSURE" : "#/components/schemas/HydrostaticIsothermalTotalPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TotalPBC"
        }, {
          "$ref" : "#/components/schemas/HydrostaticIsothermalTotalPBC"
        } ],
        "x-conditionalHelp" : [ {
          "when" : [ "1/pressureRgh/type == TOTAL_PRESSURE" ]
        }, {
          "when" : [ "1/pressureRgh/type == HYDROSTATIC_ISOTHERMAL_TOTAL_PRESSURE" ]
        } ],
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true", "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && isCompressible == true", "type in [CONJUGATE_HEAT_TRANSFER,MULTIPHASE]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "HYDROSTATIC_ISOTHERMAL_TOTAL_PRESSURE"
          }
        }, {
          "when" : [ "type in [CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,MULTIPHASE]" ],
          "default" : {
            "type" : "TOTAL_PRESSURE"
          }
        } ]
      },
      "OneOf_PressureInletBCGaugePressure" : {
        "title" : "Pressure type",
        "description" : "Please choose a boundary condition for gauge pressure (p). <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/pressure-inlet-and-pressure-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValuePBC",
            "TOTAL_PRESSURE" : "#/components/schemas/TotalPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValuePBC"
        }, {
          "$ref" : "#/components/schemas/TotalPBC"
        } ],
        "x-showWhen" : [ "type == INCOMPRESSIBLE", "type == SIMERICS_ANALYSIS && isCompressible == false && isMultiphase == true", "type == SIMERICS_ANALYSIS && isCompressible == false && cavitationModel != CONSTANT_GAS_MASS_FRACTION" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == INCOMPRESSIBLE" ],
          "default" : {
            "type" : "TOTAL_PRESSURE"
          }
        }, {
          "when" : [ "type == SIMERICS_ANALYSIS" ],
          "default" : {
            "type" : "FIXED_VALUE"
          }
        } ]
      },
      "OneOf_PressureInletBCTurbulence" : {
        "title" : "Turbulence",
        "description" : "These options specify <b>inlet</b> boundary conditions for <b>turbulence quantities</b>: </p><ul><li><p><b>Automatic</b> considers a value of <i>0.05</i> for <b>turbulent intensity</b> (<i>I</i>). The <b>turbulent mixing length </b>(<i>L</i>) is calculated as <i>0.07D<sub>h</sub></i>, where <i>D<sub>h</sub></i> is the <b>hydraulic diameter</b> of the boundary face.</p><li><p><b>Turbulent intensity and mixing length</b> allows to specify these values directly.</p><li><p><b>Fixed value</b> allows to specify the values of the <b>turbulent kinetic energy </b>(<i>k</i>) and the <b>turbulent dissipation rate</b> (&#120656) or the <b>specific dissipation rate</b> (&#969).</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_TURBULENCE" : "#/components/schemas/AutomaticTurbulence",
            "TURBULENT_INTENSITY_AND_REFERENCE_LENGTH_TURBULENCE" : "#/components/schemas/TurbulentIntensityAndReferenceLengthTurbulence",
            "FIXED_VALUE_TURBULENCE" : "#/components/schemas/FixedValueTurbulence"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticTurbulence"
        }, {
          "$ref" : "#/components/schemas/TurbulentIntensityAndReferenceLengthTurbulence"
        }, {
          "$ref" : "#/components/schemas/FixedValueTurbulence"
        } ],
        "default" : {
          "type" : "AUTOMATIC_TURBULENCE"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE]" ]
      },
      "OneOf_PressureInletBCTemperature" : {
        "title" : "(T) Temperature",
        "description" : "Please choose a boundary condition for temperature (T).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValueTBC",
            "TOTAL_TEMPERATURE" : "#/components/schemas/TotalTBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValueTBC"
        }, {
          "$ref" : "#/components/schemas/TotalTBC"
        } ],
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == SIMERICS_ANALYSIS && isCompressible == true" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "FIXED_VALUE"
          }
        }, {
          "when" : [ "type == SIMERICS_ANALYSIS" ],
          "default" : {
            "type" : "TOTAL_TEMPERATURE"
          }
        } ]
      },
      "OneOf_PressureInletBCNetRadiativeHeatFlux" : {
        "title" : "Radiative behaviour",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE" : "#/components/schemas/GreybodyDiffusiveRSBC",
            "OPEN_WINDOW" : "#/components/schemas/OpenWindowRSBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRSBC"
        }, {
          "$ref" : "#/components/schemas/OpenWindowRSBC"
        } ],
        "default" : {
          "type" : "OPEN_WINDOW"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true" ]
      },
      "OneOf_PressureInletBCRadiativeIntensityRay" : {
        "title" : "Radiative behaviour",
        "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE_RAY" : "#/components/schemas/GreybodyDiffusiveRayBC",
            "OPEN_BOUNDARY_RAY" : "#/components/schemas/OpenBoundaryRayBC",
            "SEMI_OPEN_BOUNDARY_RAY" : "#/components/schemas/SemiOpenBoundaryRayBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRayBC"
        }, {
          "$ref" : "#/components/schemas/OpenBoundaryRayBC"
        }, {
          "$ref" : "#/components/schemas/SemiOpenBoundaryRayBC"
        } ],
        "default" : {
          "type" : "OPEN_BOUNDARY_RAY"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableSolarLoad == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableSolarLoad == true" ]
      },
      "OneOf_ElectromagneticAnalysisModel" : {
        "title" : "Model",
        "description" : "<ul><li><strong>Electrostatics</strong><br>Use for problems where <em>electric fields</em> and charges are stationary, and no time-varying electromagnetic fields are present.</li><li><strong>Magnetostatics</strong><br>Use for problems where <em>magnetic fields</em> are constant over time and thus no eddy currents are present.</li> <li><strong>Time-Harmonic Magnetics</strong><br>Use for problems where <em>magnetic fields and electric currents</em> are sinusoidally varying.</li> <li><strong>Time-Transient Magnetics</strong><br>Use for problems where <em>magnetic fields and electric currents</em> are time-dependent.</li></ul><a href= https://www.simscale.com/docs/analysis-types/electromagnetics/' target='_blank'>Learn more</a>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ELECTROSTATICS" : "#/components/schemas/Electrostatics",
            "TIME_HARMONIC_ELECTRICS" : "#/components/schemas/TimeHarmonicElectrics",
            "MAGNETOSTATICS" : "#/components/schemas/Magnetostatics",
            "TIME_HARMONIC_MAGNETICS" : "#/components/schemas/TimeHarmonicMagnetics",
            "TIME_TRANSIENT_MAGNETICS" : "#/components/schemas/TimeTransientMagnetics"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/Electrostatics"
        }, {
          "$ref" : "#/components/schemas/TimeHarmonicElectrics"
        }, {
          "$ref" : "#/components/schemas/Magnetostatics"
        }, {
          "$ref" : "#/components/schemas/TimeHarmonicMagnetics"
        }, {
          "$ref" : "#/components/schemas/TimeTransientMagnetics"
        } ],
        "default" : {
          "type" : "MAGNETOSTATICS"
        }
      },
      "OneOf_ElectromagneticAnalysisBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MAGNETIC_FIELD_NORMAL" : "#/components/schemas/MagneticFieldNormal",
            "MAGNETIC_FLUX_TANGENTIAL" : "#/components/schemas/MagneticFluxTangential",
            "FIXED_POTENTIAL" : "#/components/schemas/FixedPotential",
            "FLOATING_POTENTIAL" : "#/components/schemas/FloatingPotential",
            "CHARGE_DENSITY" : "#/components/schemas/ChargeDensity",
            "TOTAL_CHARGE" : "#/components/schemas/TotalCharge",
            "FIXED_TEMPERATURE" : "#/components/schemas/FixedTemperature",
            "SURFACE_HEAT_FLUX" : "#/components/schemas/SurfaceHeatFlux",
            "VOLUME_HEAT_FLUX" : "#/components/schemas/VolumeHeatFlux",
            "CONVECTIVE_HEAT_FLUX" : "#/components/schemas/ConvectiveHeatFlux",
            "RADIATION_HEAT_FLUX" : "#/components/schemas/RadiationHeatFlux"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MagneticFieldNormal"
        }, {
          "$ref" : "#/components/schemas/MagneticFluxTangential"
        }, {
          "$ref" : "#/components/schemas/FixedPotential"
        }, {
          "$ref" : "#/components/schemas/FloatingPotential"
        }, {
          "$ref" : "#/components/schemas/ChargeDensity"
        }, {
          "$ref" : "#/components/schemas/TotalCharge"
        }, {
          "$ref" : "#/components/schemas/FixedTemperature"
        }, {
          "$ref" : "#/components/schemas/SurfaceHeatFlux"
        }, {
          "$ref" : "#/components/schemas/VolumeHeatFlux"
        }, {
          "$ref" : "#/components/schemas/ConvectiveHeatFlux"
        }, {
          "$ref" : "#/components/schemas/RadiationHeatFlux"
        } ]
      },
      "OneOf_ForceMomentCoefficientsResultControlWriteControl" : {
        "title" : "Write control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_STEP" : "#/components/schemas/TimeStepWriteControl",
            "OUTPUT_TIME" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TimeStepWriteControl"
        }, {
          "$ref" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl"
        } ],
        "default" : {
          "type" : "TIME_STEP"
        }
      },
      "OneOf_FlowDomainBoundariesXMIN" : {
        "title" : "External Domain Face A",
        "description" : "This shows the face of the external flow domain to which this boundary condition is assigned. The name of the face reflects its alignment with respect to the orientation cube seen in the viewer.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "ATMOSPHERIC_BOUNDARY_LAYER_INLET" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
        } ],
        "default" : {
          "type" : "VELOCITY_INLET_V3",
          "name" : "Velocity inlet (A)",
          "velocity" : {
            "type" : "FIXED_VALUE_NO_EXPRESSION",
            "value" : {
              "unit" : "m/s",
              "value" : {
                "type" : "CONSTANT",
                "value" : 10
              }
            }
          },
          "turbulenceIntensity" : {
            "type" : "FIXED_VALUE",
            "value" : {
              "unit" : "",
              "value" : {
                "type" : "CONSTANT",
                "value" : 0.01
              }
            }
          },
          "dissipationType" : {
            "type" : "AUTOMATIC_DISSIPATION"
          }
        }
      },
      "OneOf_FlowDomainBoundariesXMAX" : {
        "title" : "External Domain Face B",
        "description" : "This shows the face of the external flow domain to which this boundary condition is assigned. The name of the face reflects its alignment with respect to the orientation cube seen in the viewer.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "ATMOSPHERIC_BOUNDARY_LAYER_INLET" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
        } ],
        "default" : {
          "type" : "PRESSURE_OUTLET_V30",
          "name" : "Pressure outlet (B)"
        }
      },
      "OneOf_FlowDomainBoundariesYMIN" : {
        "title" : "External Domain Face C",
        "description" : "This shows the face of the external flow domain to which this boundary condition is assigned. The name of the face reflects its alignment with respect to the orientation cube seen in the viewer.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "ATMOSPHERIC_BOUNDARY_LAYER_INLET" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
        } ],
        "default" : {
          "type" : "WALL_V34",
          "name" : "Side (C)",
          "velocity" : {
            "type" : "SLIP"
          }
        }
      },
      "OneOf_FlowDomainBoundariesYMAX" : {
        "title" : "External Domain Face D",
        "description" : "This shows the face of the external flow domain to which this boundary condition is assigned. The name of the face reflects its alignment with respect to the orientation cube seen in the viewer.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "ATMOSPHERIC_BOUNDARY_LAYER_INLET" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
        } ],
        "default" : {
          "type" : "WALL_V34",
          "name" : "Side (D)",
          "velocity" : {
            "type" : "SLIP"
          }
        }
      },
      "OneOf_FlowDomainBoundariesZMIN" : {
        "title" : "External Domain Face E",
        "description" : "This shows the face of the external flow domain to which this boundary condition is assigned. The name of the face reflects its alignment with respect to the orientation cube seen in the viewer.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "ATMOSPHERIC_BOUNDARY_LAYER_INLET" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
        } ],
        "default" : {
          "type" : "WALL_V34",
          "name" : "Ground (E)",
          "velocity" : {
            "type" : "NO_SLIP",
            "noSlipWallRoughnessType" : {
              "type" : "NO_SLIP_WALL_EQUIVALENT_SAND_ROUGHNESS",
              "surfaceRoughness" : {
                "value" : 0,
                "unit" : "m"
              }
            }
          }
        }
      },
      "OneOf_FlowDomainBoundariesZMAX" : {
        "title" : "External Domain Face F",
        "description" : "This shows the face of the external flow domain to which this boundary condition is assigned. The name of the face reflects its alignment with respect to the orientation cube seen in the viewer.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "ATMOSPHERIC_BOUNDARY_LAYER_INLET" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/AtmosphericBoundaryLayerInletBC"
        } ],
        "default" : {
          "type" : "WALL_V34",
          "name" : "Top (F)",
          "velocity" : {
            "type" : "SLIP"
          }
        }
      },
      "OneOf_MarcContactForceFieldSelectionContactType" : {
        "title" : "Contact result type",
        "description" : "<ul><li><b>Normal force</b>: The compressive force acting perpendicular to the contact interface between two bodies.<li><b>Friction force</b>: The tangential shear force generated at a contact interface that resists relative sliding between two bodies due to friction.<li><b>Contact body force</b>: Computes the total resultant force vector acting on a specific body due to all its active contact interactions. Available in volume sum only.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NORMAL_FORCE" : "#/components/schemas/MarcContactNormalForceType",
            "FRICTION_FORCE" : "#/components/schemas/MarcContactFrictionForceType",
            "BODY_FORCE" : "#/components/schemas/MarcContactBodyForceType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcContactNormalForceType"
        }, {
          "$ref" : "#/components/schemas/MarcContactFrictionForceType"
        }, {
          "$ref" : "#/components/schemas/MarcContactBodyForceType"
        } ]
      },
      "OneOf_PermanentMagnetMaterialMagnetizationDirectionType" : {
        "title" : "Magnetization direction type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GLOBAL_CARTESIAN" : "#/components/schemas/GlobalCartesianMagnetizationDirectionMethod",
            "FACE_NORMAL" : "#/components/schemas/FaceNormalMagnetizationDirectionMethod"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GlobalCartesianMagnetizationDirectionMethod"
        }, {
          "$ref" : "#/components/schemas/FaceNormalMagnetizationDirectionMethod"
        } ],
        "default" : {
          "type" : "GLOBAL_CARTESIAN"
        }
      },
      "OneOf_FluidSimulationControlAdjustableTimestep" : {
        "title" : "Adjustable time step",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "INACTIVE_TIMESTEP" : "#/components/schemas/InactiveAdjustableTimestep",
            "ACTIVE_TIMESTEP" : "#/components/schemas/ActiveAdjustableTimestep"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/InactiveAdjustableTimestep"
        }, {
          "$ref" : "#/components/schemas/ActiveAdjustableTimestep"
        } ],
        "default" : {
          "type" : "ACTIVE_TIMESTEP"
        },
        "x-showWhen" : [ "type == MULTIPHASE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type == CONJUGATE_HEAT_TRANSFER && timeDependency.type == TRANSIENT", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && timeDependency.type == TRANSIENT", "type == EMBEDDED_BOUNDARY && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && timeDependency.type == TRANSIENT", "type == INCOMPRESSIBLE && timeDependency.type == TRANSIENT && algorithm == PIMPLE" ]
      },
      "OneOf_FluidSimulationControlWriteControl" : {
        "title" : "Write control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_STEP" : "#/components/schemas/TimeStepWriteControl",
            "CLOCK_TIME" : "#/components/schemas/ClockTimeWriteControl",
            "RUNTIME" : "#/components/schemas/RunTimeWriteControl",
            "CPU_TIME" : "#/components/schemas/CpuTimeWriteControl",
            "ADJUSTABLE_RUNTIME" : "#/components/schemas/AdjustableRuntimeWriteControl",
            "NUMBER_OF_ITERATIONS_STEADY_STATE" : "#/components/schemas/NumberIterationsWriteControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TimeStepWriteControl"
        }, {
          "$ref" : "#/components/schemas/ClockTimeWriteControl"
        }, {
          "$ref" : "#/components/schemas/RunTimeWriteControl"
        }, {
          "$ref" : "#/components/schemas/CpuTimeWriteControl"
        }, {
          "$ref" : "#/components/schemas/AdjustableRuntimeWriteControl"
        }, {
          "$ref" : "#/components/schemas/NumberIterationsWriteControl"
        } ],
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,MULTIPHASE]", "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == SIMERICS_ANALYSIS" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type == SIMERICS_ANALYSIS && timeDependency.type == STATIONARY" ],
          "default" : {
            "type" : "NUMBER_OF_ITERATIONS_STEADY_STATE"
          }
        }, {
          "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,COMPRESSIBLE,INCOMPRESSIBLE,MULTIPHASE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == STATIONARY", "type == SIMERICS_ANALYSIS && timeDependency.type == TRANSIENT" ],
          "default" : {
            "type" : "TIME_STEP"
          }
        }, {
          "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY,COMPRESSIBLE,INCOMPRESSIBLE,MULTIPHASE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER] && timeDependency.type == TRANSIENT" ],
          "default" : {
            "type" : "ADJUSTABLE_RUNTIME"
          }
        } ]
      },
      "OneOf_FluidSimulationControlDecomposeAlgorithm" : {
        "title" : "Decompose algorithm",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SCOTCH" : "#/components/schemas/ScotchDecomposeAlgorithm",
            "HIERARCHICAL" : "#/components/schemas/HierarchicalDecomposeAlgorithm",
            "SIMPLE" : "#/components/schemas/SimpleDecomposeAlgorithm"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ScotchDecomposeAlgorithm"
        }, {
          "$ref" : "#/components/schemas/HierarchicalDecomposeAlgorithm"
        }, {
          "$ref" : "#/components/schemas/SimpleDecomposeAlgorithm"
        } ],
        "default" : {
          "type" : "SCOTCH"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
      },
      "OneOf_MarcStrainResultControlItemStrainType" : {
        "title" : "(ε) Strain type",
        "description" : "<ul><li><b>Total strain</b>: Represents the sum of all strain components (elastic, plastic, and thermal) relative to the original configuration. It describes the complete deformation state of the material. Tensor quantity.<li><b>Elastic strain</b>: The recoverable portion of the strain that disappears upon unloading, calculated using the material's elastic constitutive laws. Tensor quantity.<li><b>Plastic strain</b>: The permanent, non-recoverable deformation that occurs once the material exceeds its yield point. Tensor quantity.<li><b>Principal strain (total)</b>: The strains oriented along the axes where shear strain is zero. These represent the <b>maximum, intermediate, and minimum normal strains</b> in the material. Derived from the total strain tensor field.<li><b>Principal strain (elastic)</b>: The strains oriented along the axes where shear strain is zero. These represent the <b>maximum, intermediate, and minimum normal strains</b> in the material. Derived from the elastic strain tensor field.<li><b>Principal strain (plastic)</b>: The strains oriented along the axes where shear strain is zero. These represent the <b>maximum, intermediate, and minimum normal strains</b> in the material. Derived from the plastic strain tensor field.<li><b>Equivalent elastic strain</b>: A scalar value derived from the elastic strain tensor components, used to represent the magnitude of elastic deformation in a single value.<li><b>Equivalent plastic strain</b>: A scalar measure (the von Mises equivalent) derived from the current plastic strain tensor, representing the magnitude of plastic deformation in a single value. It can decrease under load reversal.<li><b>Cumulative plastic strain</b>: A scalar measure representing the total accumulated plastic deformation over the load history, computed as a running sum of plastic strain increments. Unlike equivalent plastic strain, it never decreases, even when the material unloads or the load reverses direction.</ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL" : "#/components/schemas/TotalStrain",
            "ELASTIC" : "#/components/schemas/ElasticStrain",
            "PLASTIC" : "#/components/schemas/PlasticStrain",
            "PRINCIPAL_TOTAL" : "#/components/schemas/PrincipalTotalStrain",
            "PRINCIPAL_ELASTIC" : "#/components/schemas/PrincipalElasticStrain",
            "PRINCIPAL_PLASTIC" : "#/components/schemas/PrincipalPlasticStrain",
            "EQUIVALENT_ELASTIC" : "#/components/schemas/EquivalentElasticStrain",
            "EQUIVALENT_PLASTIC" : "#/components/schemas/EquivalentPlasticStrain",
            "CUMULATIVE_PLASTIC" : "#/components/schemas/CumulativePlasticStrain"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TotalStrain"
        }, {
          "$ref" : "#/components/schemas/ElasticStrain"
        }, {
          "$ref" : "#/components/schemas/PlasticStrain"
        }, {
          "$ref" : "#/components/schemas/PrincipalTotalStrain"
        }, {
          "$ref" : "#/components/schemas/PrincipalElasticStrain"
        }, {
          "$ref" : "#/components/schemas/PrincipalPlasticStrain"
        }, {
          "$ref" : "#/components/schemas/EquivalentElasticStrain"
        }, {
          "$ref" : "#/components/schemas/EquivalentPlasticStrain"
        }, {
          "$ref" : "#/components/schemas/CumulativePlasticStrain"
        } ],
        "default" : {
          "type" : "TOTAL"
        }
      },
      "OneOf_InterpolationSchemesForDefault" : {
        "title" : "Default",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]" ]
      },
      "OneOf_InterpolationSchemesInterpolate_HbyA" : {
        "title" : "interpolate(HbyA)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel == NONE && algorithm == ICO", "type == INCOMPRESSIBLE && turbulenceModel in [KOMEGA,KOMEGASST] && algorithm in [PISO,SIMPLE]", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,NONE,KEPSILON,KOMEGASST] && isCompressible == false" ]
      },
      "OneOf_InterpolationSchemesInterpolate_velocity" : {
        "title" : "interpolate U",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,NONE,KEPSILON] && algorithm in [PIMPLE,PISO,SIMPLE]", "type == INCOMPRESSIBLE && turbulenceModel in [KOMEGA,KOMEGASST] && algorithm == PIMPLE" ]
      },
      "OneOf_InterpolationSchemesInterpolate_kappa" : {
        "title" : "interpolate(kappa)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_InterpolationSchemesInterpolate_rho" : {
        "title" : "interpolate(rho)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_InterpolationSchemesInterpolate_thermo_rho_Cp" : {
        "title" : "interpolate(thermo:rho*Cp)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_InterpolationSchemesInterpolate_map_Kappa" : {
        "title" : "interpolate(mag(Kappa))",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_InterpolationSchemesInterpolate_rho_Hbya" : {
        "title" : "interpolate(rho*HbyA)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_InterpolationSchemesInterpolate_rho_0_velocity0" : {
        "title" : "interpolate(rho_0*U_0)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_InterpolationSchemesInterpolate_grad_enthalpy" : {
        "title" : "interpolate(grad(h))",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_InterpolationSchemesInterpolate_rho_rAU" : {
        "title" : "interpolate(rho*rAU)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_InterpolationSchemesInterpolate_rAU" : {
        "title" : "interpolate rAU",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,NONE,KEPSILON,KOMEGASST] && isCompressible == false" ]
      },
      "OneOf_InterpolationSchemesInterpolate_velocity0" : {
        "title" : "interpolate(U_0)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,NONE,KEPSILON,KOMEGASST] && timeDependency.type == TRANSIENT && isCompressible == false" ]
      },
      "OneOf_InterpolationSchemesReconstruct_velocity" : {
        "title" : "reconstruct(U)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_InterpolationSchemesReconstruct_temperature" : {
        "title" : "reconstruct(T)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_InterpolationSchemesReconstruct_rho" : {
        "title" : "reconstruct(rho)",
        "description" : "<p>With this option you can choose your desired interpolation scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUBIC" : "#/components/schemas/CubicInterpolationScheme",
            "LINEAR" : "#/components/schemas/LinearInterpolationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CubicInterpolationScheme"
        }, {
          "$ref" : "#/components/schemas/LinearInterpolationScheme"
        } ],
        "default" : {
          "type" : "LINEAR"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_IncompressibleMaterialFluidType" : {
        "title" : "Fluid type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "LIQUID" : "#/components/schemas/FluidTypeLiquid",
            "GAS" : "#/components/schemas/FluidTypeGas"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FluidTypeLiquid"
        }, {
          "$ref" : "#/components/schemas/FluidTypeGas"
        } ],
        "default" : {
          "type" : "LIQUID"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS" ]
      },
      "OneOf_IncompressibleMaterialViscosityModel" : {
        "title" : "Viscosity model",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NEWTONIAN" : "#/components/schemas/NewtonianViscosityModel",
            "POWER_LAW" : "#/components/schemas/PowerLawViscosityModel",
            "STD_HERSCHEL_BULKLEY" : "#/components/schemas/StandardHerschelBulkleyViscosityModel",
            "HERSCHEL_BULKLEY" : "#/components/schemas/HerschelBulkleyViscosityModel",
            "CROSS_POWER_LAW" : "#/components/schemas/CrossPowerLawViscosityModel",
            "BIRD_CARREAU" : "#/components/schemas/BirdCarreauViscosityModel"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewtonianViscosityModel"
        }, {
          "$ref" : "#/components/schemas/PowerLawViscosityModel"
        }, {
          "$ref" : "#/components/schemas/StandardHerschelBulkleyViscosityModel"
        }, {
          "$ref" : "#/components/schemas/HerschelBulkleyViscosityModel"
        }, {
          "$ref" : "#/components/schemas/CrossPowerLawViscosityModel"
        }, {
          "$ref" : "#/components/schemas/BirdCarreauViscosityModel"
        } ],
        "default" : {
          "type" : "NEWTONIAN"
        }
      },
      "OneOf_NewRegionRefinementPacefishV38MeshSizing" : {
        "title" : "Sizing",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticMeshSizing",
            "MANUAL_REGION_PACEFISH" : "#/components/schemas/ManualRegionSizingPacefish"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticMeshSizing"
        }, {
          "$ref" : "#/components/schemas/ManualRegionSizingPacefish"
        } ]
      },
      "OneOf_ConstCrossPlaneOrthotropicTransportOrientation" : {
        "title" : "Orientation",
        "description" : "<p>Defines the direction on which the thermal conductivity will act:<br> <ul><li><strong>x-, y-, z-Axis</strong>: the cross-plane conductivity acts along the selected coordinate axis and the in-plane conductivity acts on the plane orthogonal to that axis.</li><li><strong>Custom</strong>: the cross-plane conductivity is aligned with the cross-plane orientation defined by the X, Y, Z components, and the in-plane conductivity acts on the plane orthogonal to the cross-plane orientation.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "XAXIS" : "#/components/schemas/XAxis",
            "YAXIS" : "#/components/schemas/YAxis",
            "ZAXIS" : "#/components/schemas/ZAxis",
            "CROSS_PLANE" : "#/components/schemas/CrossPlaneCustomOrientation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/XAxis"
        }, {
          "$ref" : "#/components/schemas/YAxis"
        }, {
          "$ref" : "#/components/schemas/ZAxis"
        }, {
          "$ref" : "#/components/schemas/CrossPlaneCustomOrientation"
        } ],
        "default" : {
          "type" : "ZAXIS"
        }
      },
      "OneOf_SolidResultControlSolutionFields" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONTACT" : "#/components/schemas/ContactResultControlItem",
            "DISPLACEMENT" : "#/components/schemas/DisplacementResultControlItem",
            "HARMONIC_DISPLACEMENT" : "#/components/schemas/HarmonicDisplacementResultControlItem",
            "NORMALIZED_DISPLACEMENT" : "#/components/schemas/NormalizedDisplacementResultControlItem",
            "FORCE" : "#/components/schemas/ForceResultControlItem",
            "STRAIN" : "#/components/schemas/StrainResultControlItem",
            "STRESS" : "#/components/schemas/StressResultControlItem",
            "VELOCITY" : "#/components/schemas/VelocityResultControlItem",
            "HARMONIC_VELOCITY" : "#/components/schemas/HarmonicVelocityResultControlItem",
            "ACCELERATION" : "#/components/schemas/AccelerationResultControlItem",
            "HARMONIC_ACCELERATION" : "#/components/schemas/HarmonicAccelerationResultControlItem",
            "TEMPERATURE" : "#/components/schemas/TemperatureResultControlItem",
            "HEAT_FLUX" : "#/components/schemas/HeatFluxResultControlItem",
            "ERP_DENSITY" : "#/components/schemas/ERPDensityResultControlItem"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ContactResultControlItem"
        }, {
          "$ref" : "#/components/schemas/DisplacementResultControlItem"
        }, {
          "$ref" : "#/components/schemas/HarmonicDisplacementResultControlItem"
        }, {
          "$ref" : "#/components/schemas/NormalizedDisplacementResultControlItem"
        }, {
          "$ref" : "#/components/schemas/ForceResultControlItem"
        }, {
          "$ref" : "#/components/schemas/StrainResultControlItem"
        }, {
          "$ref" : "#/components/schemas/StressResultControlItem"
        }, {
          "$ref" : "#/components/schemas/VelocityResultControlItem"
        }, {
          "$ref" : "#/components/schemas/HarmonicVelocityResultControlItem"
        }, {
          "$ref" : "#/components/schemas/AccelerationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/HarmonicAccelerationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/TemperatureResultControlItem"
        }, {
          "$ref" : "#/components/schemas/HeatFluxResultControlItem"
        }, {
          "$ref" : "#/components/schemas/ERPDensityResultControlItem"
        } ]
      },
      "OneOf_SolidResultControlEdgeCalculation" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MIN_MAX_FIELDS_CALCULATION" : "#/components/schemas/MinMaxFieldsCalculationResultControlItem",
            "AVERAGE_FIELDS_CALCULATION" : "#/components/schemas/AverageFieldsCalculationResultControlItem",
            "SUM_FIELDS_CALCULATION" : "#/components/schemas/SumFieldsCalculationResultControlItem"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MinMaxFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/AverageFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/SumFieldsCalculationResultControlItem"
        } ]
      },
      "OneOf_SolidResultControlAreaCalculation" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MIN_MAX_FIELDS_CALCULATION" : "#/components/schemas/MinMaxFieldsCalculationResultControlItem",
            "AVERAGE_FIELDS_CALCULATION" : "#/components/schemas/AverageFieldsCalculationResultControlItem",
            "SUM_FIELDS_CALCULATION" : "#/components/schemas/SumFieldsCalculationResultControlItem",
            "HEAT_FLOW_CALCULATION" : "#/components/schemas/HeatFlowCalculationResultControlItem",
            "ERP_CALCULATION" : "#/components/schemas/ERPCalculationResultControlItem"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MinMaxFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/AverageFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/SumFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/HeatFlowCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/ERPCalculationResultControlItem"
        } ]
      },
      "OneOf_SolidResultControlVolumeCalculation" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MIN_MAX_FIELDS_CALCULATION" : "#/components/schemas/MinMaxFieldsCalculationResultControlItem",
            "AVERAGE_FIELDS_CALCULATION" : "#/components/schemas/AverageFieldsCalculationResultControlItem",
            "SUM_FIELDS_CALCULATION" : "#/components/schemas/SumFieldsCalculationResultControlItem"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MinMaxFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/AverageFieldsCalculationResultControlItem"
        }, {
          "$ref" : "#/components/schemas/SumFieldsCalculationResultControlItem"
        } ]
      },
      "OneOf_SolidResultControlPointData" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TEMPORAL_RESPONSE" : "#/components/schemas/TemporalResponseResultControlItem",
            "HARMONIC_RESPONSE" : "#/components/schemas/HarmonicResponseResultControlItem"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TemporalResponseResultControlItem"
        }, {
          "$ref" : "#/components/schemas/HarmonicResponseResultControlItem"
        } ]
      },
      "OneOf_DerivedHeatFluxWallThermal" : {
        "title" : "Wall thermal",
        "description" : "This option allows you to model a thin layer resistance on the boundary. <a href='https://www.simscale.com/docs/simulation-setup/advanced-concepts/contact-resistance/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NO_RESISTANCE" : "#/components/schemas/NoWallThermal",
            "TOTAL_RESISTANCE" : "#/components/schemas/TotalResistanceWallThermal",
            "SPECIFIC_CONDUCTANCE" : "#/components/schemas/SpecificConductanceWallThermal",
            "CONTACT_INTERFACE_MATERIAL" : "#/components/schemas/LayerWallThermal"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoWallThermal"
        }, {
          "$ref" : "#/components/schemas/TotalResistanceWallThermal"
        }, {
          "$ref" : "#/components/schemas/SpecificConductanceWallThermal"
        }, {
          "$ref" : "#/components/schemas/LayerWallThermal"
        } ],
        "default" : {
          "type" : "NO_RESISTANCE"
        }
      },
      "OneOf_FlowRateOutletVBCFlowRate" : {
        "title" : "Flow rate type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MASS" : "#/components/schemas/MassFlow",
            "VOLUMETRIC" : "#/components/schemas/VolumetricFlow"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MassFlow"
        }, {
          "$ref" : "#/components/schemas/VolumetricFlow"
        } ],
        "default" : {
          "type" : "MASS"
        }
      },
      "OneOf_AdvancedModellingPorousObjects" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GENERAL_POROSITY" : "#/components/schemas/GeneralDarcyForchheimerPacefish",
            "POROUS_TREE" : "#/components/schemas/PorousTree"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GeneralDarcyForchheimerPacefish"
        }, {
          "$ref" : "#/components/schemas/PorousTree"
        } ]
      },
      "OneOf_LinearElasticMaterialBehaviorDirectionalDependency" : {
        "title" : "Directional dependency",
        "description" : "<p>Choose the directional dependency for this property:<br /><ul><li><i>Isotropic material</i>: all the material properties <b>are the same in all directions</li><li><i>Orthotropic material</i>: <b>different material properties</b> in <b>different orthogonal directions</b> (e.g. glass-reinforced plastic, or wood)</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC" : "#/components/schemas/IsotropicDirectionalDependency",
            "ORTHOTROPIC" : "#/components/schemas/OrthotropicDirectionalDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicDirectionalDependency"
        }, {
          "$ref" : "#/components/schemas/OrthotropicDirectionalDependency"
        } ],
        "default" : {
          "type" : "ISOTROPIC"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_LinearElasticMaterialBehaviorDamping" : {
        "title" : "Damping",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NONE" : "#/components/schemas/NoneDamping",
            "RAYLEIGH" : "#/components/schemas/RayleighDamping",
            "HYSTERETIC" : "#/components/schemas/HystereticDamping",
            "GLOBAL_DAMPING_VALUE" : "#/components/schemas/GlobalDampingValue"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoneDamping"
        }, {
          "$ref" : "#/components/schemas/RayleighDamping"
        }, {
          "$ref" : "#/components/schemas/HystereticDamping"
        }, {
          "$ref" : "#/components/schemas/GlobalDampingValue"
        } ],
        "x-conditionalHelp" : [ {
          "when" : [ "type == HARMONIC_ANALYSIS && globalPhysics.enableGlobalDamping == true && numerics.harmonicSolutionMethod == DIRECT" ]
        }, {
          "when" : [ "type == HARMONIC_ANALYSIS && globalPhysics.enableGlobalDamping == false && numerics.harmonicSolutionMethod == DIRECT" ]
        }, {
          "when" : [ "type == HARMONIC_ANALYSIS && globalPhysics.enableGlobalDamping == true && numerics.harmonicSolutionMethod == MODAL_BASED" ]
        }, {
          "when" : [ "type == HARMONIC_ANALYSIS && globalPhysics.enableGlobalDamping == false && numerics.harmonicSolutionMethod == MODAL_BASED" ]
        }, {
          "when" : [ "type in [DYNAMIC_ANALYSIS,THERMAL_MECHANICAL]" ]
        } ],
        "x-showWhen" : [ "type in [HARMONIC_ANALYSIS,DYNAMIC_ANALYSIS]", "type == THERMAL_MECHANICAL && inertiaEffect == DYNAMIC" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [DYNAMIC_ANALYSIS,THERMAL_MECHANICAL]", "type == HARMONIC_ANALYSIS && globalPhysics.enableGlobalDamping == false" ],
          "default" : {
            "type" : "NONE"
          }
        }, {
          "when" : [ "type == HARMONIC_ANALYSIS && globalPhysics.enableGlobalDamping == true" ],
          "default" : {
            "type" : "GLOBAL_DAMPING_VALUE"
          }
        } ]
      },
      "OneOf_LinearElasticMaterialBehaviorCreepFormulation" : {
        "title" : "Creep formulation",
        "description" : "<p>Define the Creep formulation. Three different formulations are available: <b>Norton</b>, <b>Strain Hardening</b> or <b>Time Hardening</b>.<br>They are based on the <b>Power Law</b>:<br><b>&epsilon;&#775 = m*A*&sigma;<sup>n</sup>*t<sup>m-1</sup></b></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NORTON" : "#/components/schemas/NortonCreepFormulation",
            "NO_CREEP" : "#/components/schemas/NoCreepFormulation",
            "STRAIN_HARDENING" : "#/components/schemas/StrainHardeningCreepFormulation",
            "TIME_HARDENING" : "#/components/schemas/TimeHardeningCreepFormulation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NortonCreepFormulation"
        }, {
          "$ref" : "#/components/schemas/NoCreepFormulation"
        }, {
          "$ref" : "#/components/schemas/StrainHardeningCreepFormulation"
        }, {
          "$ref" : "#/components/schemas/TimeHardeningCreepFormulation"
        } ],
        "default" : {
          "type" : "NO_CREEP"
        },
        "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
      },
      "OneOf_ScalarTransportResultControlWriteControl" : {
        "title" : "Write control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_STEP" : "#/components/schemas/TimeStepWriteControl",
            "OUTPUT_TIME" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TimeStepWriteControl"
        }, {
          "$ref" : "#/components/schemas/SynchronizeWithFieldOutputWriteControl"
        } ],
        "default" : {
          "type" : "TIME_STEP"
        }
      },
      "OneOf_RestrictedDimensionalFunction_TimeValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "RESTRICTED_TABLE_DEFINED" : "#/components/schemas/RestrictedTableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/RestrictedTableDefinedFunction"
        } ]
      },
      "OneOf_ConnectionSettingsV36NonlinearityResolution" : {
        "title" : "Nonlinearity resolution",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NEWTON" : "#/components/schemas/NewtonNonLinearityResolution",
            "FIXED_POINT" : "#/components/schemas/FixedPointNonLinearityResolution"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewtonNonLinearityResolution"
        }, {
          "$ref" : "#/components/schemas/FixedPointNonLinearityResolution"
        } ],
        "default" : {
          "type" : "FIXED_POINT"
        }
      },
      "OneOf_ConnectionSettingsV36Friction" : {
        "title" : "Friction",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NO_FRICTION" : "#/components/schemas/NoFriction",
            "COULOMB_FRICTION" : "#/components/schemas/CoulombFriction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoFriction"
        }, {
          "$ref" : "#/components/schemas/CoulombFriction"
        } ],
        "default" : {
          "type" : "NO_FRICTION"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_ConnectionSettingsV36ContactNonLinearityResolution" : {
        "title" : "Contact nonlinearity resolution",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NEWTON" : "#/components/schemas/NewtonContactNonLinearityResolution",
            "FIXED_POINT" : "#/components/schemas/FixedPointContactNonLinearityResolution"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewtonContactNonLinearityResolution"
        }, {
          "$ref" : "#/components/schemas/FixedPointContactNonLinearityResolution"
        } ],
        "default" : {
          "type" : "NEWTON"
        }
      },
      "OneOf_IRAMSorensenSubspaceSettings" : {
        "title" : "Subspace settings",
        "description" : "<p>Specify the subspace used by the eigensolver. This setting should only be changed if the errors during the solution procedure occur that recommend to change it. In general, the more frequencies are computed, the larger the subspace should be.<br> <li><b>Automatic</b>: The solver selects an appropriate subspace itself based on the model and other inputs.</li><li><b>Dimension</b>: Directly specify the subspace dimension. This should be only done after checking the error log, which gives hints on selecting this setting.</li><li><b>Coefficient</b>: Multiplier for setting the subspace dimension proportional to the number of computed frequencies</li></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticSubspaceSettings",
            "SUBSPACE_DIMENSION" : "#/components/schemas/SubspaceDimension",
            "SUBSPACE_COEFFICIENT" : "#/components/schemas/SubspaceCoefficient"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticSubspaceSettings"
        }, {
          "$ref" : "#/components/schemas/SubspaceDimension"
        }, {
          "$ref" : "#/components/schemas/SubspaceCoefficient"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_SolidCompressibleMaterialTransport" : {
        "title" : "Conductivity type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONST_ISO" : "#/components/schemas/ConstIsoTransport",
            "CONST_AN_ISO" : "#/components/schemas/ConstAnIsoTransport",
            "CONST_CROSS_PLANE_ORTHO" : "#/components/schemas/ConstCrossPlaneOrthotropicTransport"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstIsoTransport"
        }, {
          "$ref" : "#/components/schemas/ConstAnIsoTransport"
        }, {
          "$ref" : "#/components/schemas/ConstCrossPlaneOrthotropicTransport"
        } ],
        "default" : {
          "type" : "CONST_ISO"
        }
      },
      "OneOf_SolidCompressibleMaterialRadiativeBehavior" : {
        "title" : "Radiative behaviour",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSPARENT_MATERIAL" : "#/components/schemas/TransparentMaterial",
            "SEMI_TRANSPARENT_MATERIAL" : "#/components/schemas/SemiTransparentMaterial",
            "OPAQUE_MATERIAL" : "#/components/schemas/OpaqueMaterial"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransparentMaterial"
        }, {
          "$ref" : "#/components/schemas/SemiTransparentMaterial"
        }, {
          "$ref" : "#/components/schemas/OpaqueMaterial"
        } ],
        "default" : {
          "type" : "OPAQUE_MATERIAL"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableSolarLoad == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableSolarLoad == true" ]
      },
      "OneOf_SolidCompressibleMaterialElectricConductivityType" : {
        "title" : "Electric conductivity type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DIELECTRIC" : "#/components/schemas/Dielectric",
            "ISOTROPIC_ELECTRIC_CONDUCTIVITY" : "#/components/schemas/IsotropicElectricConductivity",
            "ORTHOTROPIC_ELECTRIC_CONDUCTIVITY" : "#/components/schemas/OrthotropicElectricConductivity"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/Dielectric"
        }, {
          "$ref" : "#/components/schemas/IsotropicElectricConductivity"
        }, {
          "$ref" : "#/components/schemas/OrthotropicElectricConductivity"
        } ],
        "default" : {
          "type" : "DIELECTRIC"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableJouleHeating == true", "type == EMBEDDED_BOUNDARY && enableJouleHeating == true" ]
      },
      "OneOf_DimensionalVectorFunction_VolumeForceValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "COMPONENT" : "#/components/schemas/ComponentVectorFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedVectorFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ComponentVectorFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedVectorFunction"
        } ]
      },
      "OneOf_TransientResultControlWriteControl" : {
        "title" : "Write control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "HIGH_RESOLUTION" : "#/components/schemas/HighResolution",
            "MODERATE_RESOLUTION" : "#/components/schemas/ModerateResolution",
            "COARSE_RESOLUTION" : "#/components/schemas/CoarseResolution",
            "CUSTOM_RESOLUTION" : "#/components/schemas/CustomResolution"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/HighResolution"
        }, {
          "$ref" : "#/components/schemas/ModerateResolution"
        }, {
          "$ref" : "#/components/schemas/CoarseResolution"
        }, {
          "$ref" : "#/components/schemas/CustomResolution"
        } ],
        "default" : {
          "type" : "MODERATE_RESOLUTION"
        }
      },
      "OneOf_VelocityInletBCVelocity" : {
        "title" : "Velocity type",
        "description" : "Please choose the type of velocity boundary condition. <a href='https://www.simscale.com/docs/simulation-setup/boundary-conditions/velocity-inlet-and-velocity-outlet/' target='_blank'>Learn more</a>.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValueVBC",
            "FIXED_MEAN" : "#/components/schemas/MeanValueVBC",
            "FIXED_VALUE_NO_EXPRESSION" : "#/components/schemas/FixedMagnitudeVBC",
            "FLOW_RATE_INLET_VELOCITY" : "#/components/schemas/FlowRateInletVBC",
            "FLOW_RATE_MEAN_INLET_VELOCITY" : "#/components/schemas/FlowRateMeanInletVBC",
            "FREESTREAM" : "#/components/schemas/FreestreamVBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValueVBC"
        }, {
          "$ref" : "#/components/schemas/MeanValueVBC"
        }, {
          "$ref" : "#/components/schemas/FixedMagnitudeVBC"
        }, {
          "$ref" : "#/components/schemas/FlowRateInletVBC"
        }, {
          "$ref" : "#/components/schemas/FlowRateMeanInletVBC"
        }, {
          "$ref" : "#/components/schemas/FreestreamVBC"
        } ],
        "default" : {
          "type" : "FIXED_VALUE"
        }
      },
      "OneOf_VelocityInletBCTurbulence" : {
        "title" : "Turbulence",
        "description" : "These options specify <b>inlet</b> boundary conditions for <b>turbulence quantities</b>: </p><ul><li><p><b>Automatic</b> considers a value of <i>0.05</i> for <b>turbulent intensity</b> (<i>I</i>). The <b>turbulent mixing length </b>(<i>L</i>) is calculated as <i>0.07D<sub>h</sub></i>, where <i>D<sub>h</sub></i> is the <b>hydraulic diameter</b> of the boundary face.</p><li><p><b>Turbulent intensity and mixing length</b> allows to specify these values directly.</p><li><p><b>Fixed value</b> allows to specify the values of the <b>turbulent kinetic energy </b>(<i>k</i>) and the <b>turbulent dissipation rate</b> (&#120656) or the <b>specific dissipation rate</b> (&#969).</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_TURBULENCE" : "#/components/schemas/AutomaticTurbulence",
            "TURBULENT_INTENSITY_AND_REFERENCE_LENGTH_TURBULENCE" : "#/components/schemas/TurbulentIntensityAndReferenceLengthTurbulence",
            "FIXED_VALUE_TURBULENCE" : "#/components/schemas/FixedValueTurbulence"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticTurbulence"
        }, {
          "$ref" : "#/components/schemas/TurbulentIntensityAndReferenceLengthTurbulence"
        }, {
          "$ref" : "#/components/schemas/FixedValueTurbulence"
        } ],
        "default" : {
          "type" : "AUTOMATIC_TURBULENCE"
        },
        "x-showWhen" : [ "type in [INCOMPRESSIBLE,COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE]" ]
      },
      "OneOf_VelocityInletBCTemperature" : {
        "title" : "(T) Temperature",
        "description" : "Please choose a boundary condition for temperature (T).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValueTBC",
            "TOTAL_TEMPERATURE" : "#/components/schemas/TotalTBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValueTBC"
        }, {
          "$ref" : "#/components/schemas/TotalTBC"
        } ],
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]", "type == SIMERICS_ANALYSIS && isCompressible == true" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "FIXED_VALUE"
          }
        }, {
          "when" : [ "type == SIMERICS_ANALYSIS" ],
          "default" : {
            "type" : "TOTAL_TEMPERATURE"
          }
        } ]
      },
      "OneOf_VelocityInletBCTurbulenceIntensity" : {
        "title" : "Turbulence type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/TurbulenceIntensityTIBC",
            "TURBULENCE_KINETIC_ENERGY" : "#/components/schemas/TurbulenceKineticEnergyTIBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TurbulenceIntensityTIBC"
        }, {
          "$ref" : "#/components/schemas/TurbulenceKineticEnergyTIBC"
        } ],
        "default" : {
          "type" : "FIXED_VALUE"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE_PACEFISH && turbulenceModel in [KOMEGASST,KOMEGASST_DDES,KOMEGASST_IDDES]" ]
      },
      "OneOf_VelocityInletBCDissipationType" : {
        "title" : "Dissipation type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_DISSIPATION" : "#/components/schemas/AutomaticOmegaDissipation",
            "CUSTOM_DISSIPATION" : "#/components/schemas/CustomOmegaDissipation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticOmegaDissipation"
        }, {
          "$ref" : "#/components/schemas/CustomOmegaDissipation"
        } ],
        "default" : {
          "type" : "AUTOMATIC_DISSIPATION"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE_PACEFISH && turbulenceModel in [KOMEGASST,KOMEGASST_DDES,KOMEGASST_IDDES]" ]
      },
      "OneOf_VelocityInletBCNetRadiativeHeatFlux" : {
        "title" : "Radiative behaviour",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE" : "#/components/schemas/GreybodyDiffusiveRSBC",
            "OPEN_WINDOW" : "#/components/schemas/OpenWindowRSBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRSBC"
        }, {
          "$ref" : "#/components/schemas/OpenWindowRSBC"
        } ],
        "default" : {
          "type" : "OPEN_WINDOW"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true" ]
      },
      "OneOf_VelocityInletBCRadiativeIntensityRay" : {
        "title" : "Radiative behaviour",
        "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE_RAY" : "#/components/schemas/GreybodyDiffusiveRayBC",
            "OPEN_BOUNDARY_RAY" : "#/components/schemas/OpenBoundaryRayBC",
            "SEMI_OPEN_BOUNDARY_RAY" : "#/components/schemas/SemiOpenBoundaryRayBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRayBC"
        }, {
          "$ref" : "#/components/schemas/OpenBoundaryRayBC"
        }, {
          "$ref" : "#/components/schemas/SemiOpenBoundaryRayBC"
        } ],
        "default" : {
          "type" : "OPEN_BOUNDARY_RAY"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableSolarLoad == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableSolarLoad == true" ]
      },
      "OneOf_BilinearElastoPlasticModelPoissonsRatio" : {
        "title" : "(ν) Poisson's ratio",
        "maximum" : 0.5,
        "exclusiveMaximum" : true,
        "minimum" : -1.0,
        "exclusiveMinimum" : true,
        "description" : "<p>Provide the <i>Poisson's ratio</i> value which describes the compression or elongation of a material transverse to axial strain. <i>Poisson's ratio</i> can have a value within range from -1 to 0.5. </p><br /><b>Important remarks:</b><br /> <ul><li>Value less than 0 means that material is auxetic.</li><li>Most of the metals such as steel and aluminum have value between 0.2 to 0.35 and are considered compressible.<li>Value of 0.5 means that the material is incompressible such as rubber and some types of foams. Please avoid giving this value since it leads to convergence problem. You can give 0.499 rather than 0.5.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ],
        "x-showWhen" : [ "type == DYNAMIC_ANALYSIS", "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true" ]
      },
      "OneOf_BilinearElastoPlasticModelHardeningModel" : {
        "title" : "Hardening model",
        "description" : "Choose the hardening model for your problem. <br /><br />Important remarks:<br /> <ul><li>Choose <b>Strain Hardening</b> if the material response is a combination of linear elastic and plastic hardening behavior, where the material becomes progressively stiffer with increasing strain.<img src=\"/spec/resources/help/imgs/strain_hardening_help_text.png\" class=\"helpPopupImage\"/></li><li>Choose <b>Perfect Plasticity</b> if the material response is a combination of linear elastic and perfect plastic hardening behavior (constant stress for applied strain).<img src=\"/spec/resources/help/imgs/perfect_plasticity_help_text.png\" class=\"helpPopupImage\"/></li></ul> <a href='https://www.simscale.com/docs/simulation-setup/materials/plastic-materials/' target='_blank'>Learn more</a>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "STRAIN_HARDENING" : "#/components/schemas/StrainHardeningModel",
            "PERFECT_PLASTICITY" : "#/components/schemas/PerfectPlasticityModel"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/StrainHardeningModel"
        }, {
          "$ref" : "#/components/schemas/PerfectPlasticityModel"
        } ],
        "default" : {
          "type" : "STRAIN_HARDENING"
        },
        "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
      },
      "OneOf_HarmonicResponseControlExcitationFrequencies" : {
        "title" : "Excitation frequencies",
        "description" : "<p>Frequencies at which the harmonic loads are to be applied and results are to be computed. Define excitation frequencies using one of the following options:<br> <li><b>Single frequency </b>: Harmonic loads are applied at one frequency only.</li><li><b>Frequency list</b>: Harmonic loads are applied across a range of frequencies with either a constant frequency stepping interval or a variable interval defined via a table.</li><li><b>Cluster around modes</b>: Harmonic loads are applied at frequencies clustered around eigenfrequencies.</li><li><b>Cover spectrum</b>: Harmonic loads are applied at frequencies clustered around and in between eigenfrequencies to fully capture the entire spectrum.</li></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SINGLE" : "#/components/schemas/SingleFrequency",
            "LIST_V20" : "#/components/schemas/FrequencyList",
            "CLUSTER_AROUND_MODES" : "#/components/schemas/ClusterAroundModes",
            "COVER_SPECTRUM" : "#/components/schemas/CoverSpectrum"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SingleFrequency"
        }, {
          "$ref" : "#/components/schemas/FrequencyList"
        }, {
          "$ref" : "#/components/schemas/ClusterAroundModes"
        }, {
          "$ref" : "#/components/schemas/CoverSpectrum"
        } ],
        "default" : {
          "type" : "SINGLE"
        }
      },
      "OneOf_ContactResistanceLayerInterfaceThermal" : {
        "title" : "Interface type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TOTAL_RESISTANCE" : "#/components/schemas/TotalResistanceInterfaceThermal",
            "SPECIFIC_RESISTANCE" : "#/components/schemas/SpecificResistanceInterfaceThermal"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TotalResistanceInterfaceThermal"
        }, {
          "$ref" : "#/components/schemas/SpecificResistanceInterfaceThermal"
        } ]
      },
      "OneOf_GradientSchemesForDefault" : {
        "title" : "Default",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]" ]
      },
      "OneOf_GradientSchemesGrad_pressure" : {
        "title" : "grad(p)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_GradientSchemesGrad_velocity" : {
        "title" : "grad(U)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == INCOMPRESSIBLE && algorithm != ICO", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false" ]
      },
      "OneOf_GradientSchemesGrad_pressureRgh" : {
        "title" : "grad(p_rgh)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false" ]
      },
      "OneOf_GradientSchemesGrad_density" : {
        "title" : "grad(rho)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_GradientSchemesGrad_enthalpy" : {
        "title" : "grad(h)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_GradientSchemesGrad_internalEnergy" : {
        "title" : "grad(e)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_GradientSchemesGrad_turbulentKineticEnergy" : {
        "title" : "grad(k)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [KEPSILON,KOMEGASST] && isCompressible == false", "type == CONJUGATE_HEAT_TRANSFER && turbulenceModel in [KEPSILON,KOMEGASST]" ]
      },
      "OneOf_GradientSchemesGrad_epsilonDissipationRate" : {
        "title" : "grad(epsilon)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == KEPSILON && isCompressible == false", "type == CONJUGATE_HEAT_TRANSFER && turbulenceModel == KEPSILON" ]
      },
      "OneOf_GradientSchemesGrad_omegaDissipationRate" : {
        "title" : "grad(omega)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == KOMEGASST && isCompressible == false", "type == CONJUGATE_HEAT_TRANSFER && turbulenceModel == KOMEGASST" ]
      },
      "OneOf_GradientSchemesGrad_nuTilda" : {
        "title" : "grad(nuTilda)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel == SPALARTALLMARAS && algorithm == PIMPLE", "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel == SPALARTALLMARAS" ]
      },
      "OneOf_GradientSchemesGrad_temperature" : {
        "title" : "grad(T)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false" ]
      },
      "OneOf_GradientSchemesGrad_rhok" : {
        "title" : "grad(rhok)",
        "description" : "<p>With this option, you can choose your desired gradient scheme:</p><ul><li><p>If you are unsure, try <b>Gauss linear</b> first.</p><li><p>If you require a higher-order scheme you can use <b>leastSquares</b>.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR" : "#/components/schemas/GaussLinearGradientScheme",
            "CELLLIMITED_GAUSS_LINEAR" : "#/components/schemas/CelllimitedGaussLinearGradientScheme",
            "CELLLIMITED_LEASTSQUARES" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme",
            "FOURTH" : "#/components/schemas/FourthGradientScheme",
            "LEASTSQUARES" : "#/components/schemas/LeastsquaresGradientScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedGaussLinearGradientScheme"
        }, {
          "$ref" : "#/components/schemas/CelllimitedLeastSquaresGradientScheme"
        }, {
          "$ref" : "#/components/schemas/FourthGradientScheme"
        }, {
          "$ref" : "#/components/schemas/LeastsquaresGradientScheme"
        } ],
        "default" : {
          "type" : "CELLLIMITED_LEASTSQUARES"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false" ]
      },
      "OneOf_NoSlipVBCNoSlipWallRoughnessType" : {
        "title" : "Surface roughness type",
        "description" : "<p>Define a surface roughness on the wall of the virtual wind tunnel. The roughness value can be defined in two ways: <ul><li><b>Equivalent sand grain</b> roughness k<sub>s</sub>. This method is used to represent the actual roughness of specific materials that influence the flow close to the surface. Typical values reach from 0.00005 m for steel to 0.003 m for concrete.</li><li><b>Aerodynamic</b> roughness z<sub>0</sub>. Here, the roughness value is used to model the larger scale effects of non-modeled obstacles (such as vegetation, buildings etc.) on the atmospheric boundary layer flow. Typical values range from 0.0002 m for open sea to 1 m for dense urban areas.</li></ul> The roughness value will only be applied to the floor of the wind tunnel and not to potential terrain surfaces. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/advanced-modelling/#surface-roughness' target='_blank'>Learn more</a>.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NO_SLIP_WALL_EQUIVALENT_SAND_ROUGHNESS" : "#/components/schemas/NoSlipWallEquivalentSandRoughness",
            "NO_SLIP_WALL_AERODYNAMIC_ROUGHNESS" : "#/components/schemas/NoSlipWallAerodynamicRoughness"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NoSlipWallEquivalentSandRoughness"
        }, {
          "$ref" : "#/components/schemas/NoSlipWallAerodynamicRoughness"
        } ],
        "default" : {
          "type" : "NO_SLIP_WALL_EQUIVALENT_SAND_ROUGHNESS"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE_PACEFISH" ]
      },
      "OneOf_IncompressibleTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent, that is, the equations solved do not include time derivatives. If you are only interested in the converged solution, consider a steady-state simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects, that is, the associated flow variables vary with respect to time.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_IncompressibleBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "VELOCITY_OUTLET_V7" : "#/components/schemas/VelocityOutletBC",
            "PRESSURE_INLET_V31" : "#/components/schemas/PressureInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "FAN" : "#/components/schemas/FanBC",
            "SYMMETRY" : "#/components/schemas/SymmetryBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "WEDGE" : "#/components/schemas/WedgeBC",
            "CUSTOM_V37" : "#/components/schemas/CustomFluidBC",
            "EMPTY_2D" : "#/components/schemas/Empty2DBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/VelocityOutletBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/FanBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/WedgeBC"
        }, {
          "$ref" : "#/components/schemas/CustomFluidBC"
        }, {
          "$ref" : "#/components/schemas/Empty2DBC"
        } ]
      },
      "OneOf_PrandtlLesDeltaDeltaCoefficient" : {
        "title" : "Delta coefficient",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "SMOOTH" : "#/components/schemas/SmoothLesDelta",
            "CUBE_ROOT_VOL" : "#/components/schemas/CubeRootVolLesDelta"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/SmoothLesDelta"
        }, {
          "$ref" : "#/components/schemas/CubeRootVolLesDelta"
        } ],
        "default" : {
          "type" : "CUBE_ROOT_VOL"
        }
      },
      "OneOf_AutomaticSimericsMeshSettingsRefinements" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "REGION_REFINEMENT_SIMERICS" : "#/components/schemas/RegionRefinementSimerics",
            "SURFACE_REFINEMENT_SIMERICS" : "#/components/schemas/SurfaceRefinementSimerics"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RegionRefinementSimerics"
        }, {
          "$ref" : "#/components/schemas/SurfaceRefinementSimerics"
        } ]
      },
      "OneOf_DimensionalVectorFunction_TorqueValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "COMPONENT" : "#/components/schemas/ComponentVectorFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedVectorFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ComponentVectorFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedVectorFunction"
        } ]
      },
      "OneOf_HyperelasticityHyperelasticModelMarc" : {
        "title" : "Hyperelastic model",
        "description" : "<ul><li><b>Mooney</b>: Mooney (or Mooney-Rivlin) is a very common phenomenological model used for modeling the behavior of rubber-like materials at moderate strains (up to ~100%). It is based on a linear combination of two strain invariants, making it computationally stable for simpler elastomeric applications.</li><li><b>Ogden</b>: A high-fidelity model that describes the strain energy density as a function of principal stretches rather than invariants. It is highly flexible and capable of capturing complex material behavior at very large strain levels.</li><li><b>Marlow</b>: A general-purpose model that allows the strain energy density function to be constructed directly from experimental test data. It is particularly useful when only one type of test data (e.g., uniaxial tension) is available to characterize the material.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MOONEY_TYPE_MARC" : "#/components/schemas/MooneyTypeHyperelasticModelMarc",
            "OGDEN_MARC" : "#/components/schemas/OgdenHyperelasticModelMarc",
            "MARLOW_MARC" : "#/components/schemas/MarlowHyperelasticModelMarc"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MooneyTypeHyperelasticModelMarc"
        }, {
          "$ref" : "#/components/schemas/OgdenHyperelasticModelMarc"
        }, {
          "$ref" : "#/components/schemas/MarlowHyperelasticModelMarc"
        } ],
        "default" : {
          "type" : "MOONEY_TYPE_MARC"
        }
      },
      "OneOf_FixedPointContactNonLinearityResolutionIterationControl" : {
        "title" : "Iteration control",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "MAXIMUM_NUMBER" : "#/components/schemas/MaximumNumberIterationControl",
            "MULTIPLIED_SLAVE_NODE" : "#/components/schemas/MultipliedSlaveNodesIterationControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MaximumNumberIterationControl"
        }, {
          "$ref" : "#/components/schemas/MultipliedSlaveNodesIterationControl"
        } ],
        "default" : {
          "type" : "MAXIMUM_NUMBER"
        }
      },
      "OneOf_DimensionalFunction_ThermalExpansionRateValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_FluidCompressibleMaterialFluidType" : {
        "title" : "Fluid type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "LIQUID" : "#/components/schemas/FluidTypeLiquid",
            "GAS" : "#/components/schemas/FluidTypeGas"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FluidTypeLiquid"
        }, {
          "$ref" : "#/components/schemas/FluidTypeGas"
        } ],
        "default" : {
          "type" : "GAS"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS" ]
      },
      "OneOf_FluidCompressibleMaterialTransport" : {
        "title" : "Transport",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONST" : "#/components/schemas/ConstTransport",
            "SUTHERLAND" : "#/components/schemas/SutherlandTransport",
            "HERSCHEL_BULKLEY" : "#/components/schemas/HerschelBulkleyTransport"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstTransport"
        }, {
          "$ref" : "#/components/schemas/SutherlandTransport"
        }, {
          "$ref" : "#/components/schemas/HerschelBulkleyTransport"
        } ],
        "default" : {
          "type" : "CONST"
        },
        "x-conditionalHelp" : [ {
          "when" : [ "type != SIMERICS_ANALYSIS" ]
        }, {
          "when" : [ "type == SIMERICS_ANALYSIS" ]
        } ],
        "x-showWhen" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,SIMERICS_ANALYSIS,COMPRESSIBLE]" ]
      },
      "OneOf_FluidCompressibleMaterialViscosityModel" : {
        "title" : "Viscosity model",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "NEWTONIAN" : "#/components/schemas/NewtonianViscosityModel",
            "SUTHERLAND_VISCOSITY" : "#/components/schemas/SutherlandViscosity"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/NewtonianViscosityModel"
        }, {
          "$ref" : "#/components/schemas/SutherlandViscosity"
        } ],
        "default" : {
          "type" : "NEWTONIAN"
        },
        "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
      },
      "OneOf_FluidCompressibleMaterialEquationOfState" : {
        "title" : "Equation of state",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PERFECT_GAS" : "#/components/schemas/PerfectGasEquationOfState",
            "RHO_CONST" : "#/components/schemas/RhoConstEquationOfState"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PerfectGasEquationOfState"
        }, {
          "$ref" : "#/components/schemas/RhoConstEquationOfState"
        } ],
        "default" : {
          "type" : "PERFECT_GAS"
        },
        "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
      },
      "OneOf_DimensionalFunction_AngleValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_HarmonicVelocityResultControlItemHarmonicVelocityType" : {
        "title" : "Velocity type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE" : "#/components/schemas/AbsoluteHarmonicVelocityType",
            "RELATIVE" : "#/components/schemas/RelativeHarmonicVelocityType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsoluteHarmonicVelocityType"
        }, {
          "$ref" : "#/components/schemas/RelativeHarmonicVelocityType"
        } ],
        "default" : {
          "type" : "ABSOLUTE"
        },
        "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
      },
      "OneOf_ConvectiveHeatTransferTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent, that is, the equations solved do not include time derivatives. If you are only interested in the converged solution, consider a steady-state simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects, that is, the associated flow variables vary with respect to time.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_ConvectiveHeatTransferBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "VELOCITY_OUTLET_V7" : "#/components/schemas/VelocityOutletBC",
            "PRESSURE_INLET_V31" : "#/components/schemas/PressureInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "FAN" : "#/components/schemas/FanBC",
            "SYMMETRY" : "#/components/schemas/SymmetryBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "WEDGE" : "#/components/schemas/WedgeBC",
            "CUSTOM_V37" : "#/components/schemas/CustomFluidBC",
            "EMPTY_2D" : "#/components/schemas/Empty2DBC",
            "NATURAL_CONVECTION_INLET_OUTLET" : "#/components/schemas/NaturalConvectionInletOutletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/VelocityOutletBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/FanBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/WedgeBC"
        }, {
          "$ref" : "#/components/schemas/CustomFluidBC"
        }, {
          "$ref" : "#/components/schemas/Empty2DBC"
        }, {
          "$ref" : "#/components/schemas/NaturalConvectionInletOutletBC"
        } ]
      },
      "OneOf_PlasticMaterialBehaviorElastoPlasticModel" : {
        "title" : "Elasto-plastic model",
        "description" : "Choose the Elasto-plastic model for your problem. <br /><br />Important remarks:<br /><ul><li>Choose <b>Bilinear</b> if the material response is a combination of linear elastic and plastic behavior and is defined by the elastic modulus, yield strength, and, tangent modulus.<img src=\"/spec/resources/help/imgs/bilinear_help_text.png\" class=\"helpPopupImage\"/></li><li>Choose <b>Multilinear</b> if the material response is a combination of linear elastic-plastic behavior and is defined by the elastic modulus, yield strength, and, multiple tangent moduli.<img src=\"/spec/resources/help/imgs/multilinear_help_text.png\" class=\"helpPopupImage\"/></li><li>Choose <b>Johnson-Cook</b> if the material response includes strain hardening, strain rate hardening, and thermal softening effects, and is defined by parameters such as yield stress, hardening coefficient, hardening exponent, strain rate hardening coefficient, and thermal softening exponent.</li></ul> <a href='https://www.simscale.com/docs/simulation-setup/materials/plastic-materials/' target='_blank'>Learn more</a>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BILINEAR" : "#/components/schemas/BilinearElastoPlasticModel",
            "MULTILINEAR" : "#/components/schemas/MultilinearElastoPlasticModel",
            "JOHNSON_COOK" : "#/components/schemas/JohnsonCookElastoPlasticModel"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/BilinearElastoPlasticModel"
        }, {
          "$ref" : "#/components/schemas/MultilinearElastoPlasticModel"
        }, {
          "$ref" : "#/components/schemas/JohnsonCookElastoPlasticModel"
        } ],
        "default" : {
          "type" : "BILINEAR"
        },
        "x-showWhen" : [ "type == STATIC_ANALYSIS && nonLinearAnalysis == true", "type == THERMAL_MECHANICAL && nonLinearAnalysis == true", "type == DYNAMIC_ANALYSIS" ]
      },
      "OneOf_ImplicitTimeIntegrationTypeScheme" : {
        "title" : "Scheme",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "HHT" : "#/components/schemas/HhtTimeIntegrationScheme",
            "NEWMARK" : "#/components/schemas/NewmarkTimeIntegrationScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/HhtTimeIntegrationScheme"
        }, {
          "$ref" : "#/components/schemas/NewmarkTimeIntegrationScheme"
        } ],
        "default" : {
          "type" : "HHT"
        }
      },
      "OneOf_MarcAverageFieldsCalculationResultControlItemFieldSelection" : {
        "title" : "Field selection",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DISPLACEMENT" : "#/components/schemas/MarcDisplacementFieldSelection",
            "PRESSURE" : "#/components/schemas/MarcPressureFieldSelection",
            "STRESS" : "#/components/schemas/MarcStressFieldSelection",
            "STRAIN" : "#/components/schemas/MarcStrainFieldSelection",
            "CONTACT" : "#/components/schemas/MarcContactFieldSelection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/MarcDisplacementFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MarcPressureFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MarcStressFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MarcStrainFieldSelection"
        }, {
          "$ref" : "#/components/schemas/MarcContactFieldSelection"
        } ],
        "default" : {
          "type" : "DISPLACEMENT"
        }
      },
      "OneOf_PressureLossFunctionMediumPorousMaterialType" : {
        "title" : "Porous material type",
        "description" : "Select the porous material behavior: <p><ul><li><b>Homogeneous:</b> Uniform resistance to fluid flow in all directions.</li><li><b>Directional:</b> Resistance to fluid flow in one or two directions.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "HOMOGENEOUS" : "#/components/schemas/HomogeneousMaterialStructure",
            "DIRECTIONAL" : "#/components/schemas/DirectionalMaterialStructure"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/HomogeneousMaterialStructure"
        }, {
          "$ref" : "#/components/schemas/DirectionalMaterialStructure"
        } ],
        "default" : {
          "type" : "HOMOGENEOUS"
        }
      },
      "OneOf_DimensionalFunction_KinematicViscosityValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DimensionalFunction_DensityValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DynamicAnalysisConnectionGroups" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONTACT" : "#/components/schemas/Contact",
            "PHYSICAL_CONTACT_V36" : "#/components/schemas/PhysicalContact"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/Contact"
        }, {
          "$ref" : "#/components/schemas/PhysicalContact"
        } ]
      },
      "OneOf_DynamicAnalysisConnectors" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PIN_CONNECTOR" : "#/components/schemas/PinConnector",
            "BOLT_CONNECTOR" : "#/components/schemas/BoltConnector"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PinConnector"
        }, {
          "$ref" : "#/components/schemas/BoltConnector"
        } ]
      },
      "OneOf_DynamicAnalysisBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BOLT_PRELOAD" : "#/components/schemas/BoltPreloadBC",
            "ELASTIC_SUPPORT" : "#/components/schemas/ElasticSupportBC",
            "FIXED_SUPPORT" : "#/components/schemas/FixedSupportBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueBC",
            "POINT_MASS" : "#/components/schemas/PointMassBC",
            "DISTRIBUTED_MASS" : "#/components/schemas/DistributedMassBC",
            "REMOTE_DISPLACEMENT_LOAD" : "#/components/schemas/RemoteDisplacementLoadBC",
            "ROTATING_MOTION" : "#/components/schemas/RotatingMotionBC",
            "SYMMETRY_PLANE" : "#/components/schemas/SymmetryPlaneBC",
            "CYCLIC_SYMMETRY" : "#/components/schemas/CyclicSymmetryBC",
            "CENTRIFUGAL_FORCE" : "#/components/schemas/CentrifugalForceBC",
            "FOLLOWER_PRESSURE" : "#/components/schemas/FollowerPressureBC",
            "FORCE_LOAD" : "#/components/schemas/ForceLoadBC",
            "NODAL_LOAD" : "#/components/schemas/NodalLoadBC",
            "PRESSURE" : "#/components/schemas/PressureBC",
            "REMOTE_FORCE_LOAD" : "#/components/schemas/RemoteForceLoadBC",
            "SURFACE_LOAD" : "#/components/schemas/SurfaceLoadBC",
            "VOLUME_LOAD" : "#/components/schemas/VolumeLoadBC",
            "HINGE_CONSTRAINT" : "#/components/schemas/HingeConstraintBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/BoltPreloadBC"
        }, {
          "$ref" : "#/components/schemas/ElasticSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueBC"
        }, {
          "$ref" : "#/components/schemas/PointMassBC"
        }, {
          "$ref" : "#/components/schemas/DistributedMassBC"
        }, {
          "$ref" : "#/components/schemas/RemoteDisplacementLoadBC"
        }, {
          "$ref" : "#/components/schemas/RotatingMotionBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryPlaneBC"
        }, {
          "$ref" : "#/components/schemas/CyclicSymmetryBC"
        }, {
          "$ref" : "#/components/schemas/CentrifugalForceBC"
        }, {
          "$ref" : "#/components/schemas/FollowerPressureBC"
        }, {
          "$ref" : "#/components/schemas/ForceLoadBC"
        }, {
          "$ref" : "#/components/schemas/NodalLoadBC"
        }, {
          "$ref" : "#/components/schemas/PressureBC"
        }, {
          "$ref" : "#/components/schemas/RemoteForceLoadBC"
        }, {
          "$ref" : "#/components/schemas/SurfaceLoadBC"
        }, {
          "$ref" : "#/components/schemas/VolumeLoadBC"
        }, {
          "$ref" : "#/components/schemas/HingeConstraintBC"
        } ]
      },
      "OneOf_FieldCalculationsTurbulenceResultControlResultType" : {
        "title" : "Result type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "DIMENSIONLESS_WALL_DISTANCE_YPLUS" : "#/components/schemas/YPlusRASResultType",
            "REYNOLDS_STRESS_TENSOR" : "#/components/schemas/ReynoldsStressResultType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/YPlusRASResultType"
        }, {
          "$ref" : "#/components/schemas/ReynoldsStressResultType"
        } ],
        "default" : {
          "type" : "DIMENSIONLESS_WALL_DISTANCE_YPLUS"
        }
      },
      "OneOf_PerforatedPlatePorousMediaHeatTransfer" : {
        "title" : "Heat transfer",
        "description" : "The heat transfer modelling inside the porous media matrix:<br><li><b>Fluid only</b>: This model uses exclusively the fluid thermal properties in the porous media region. <li><b>Effective conductivity</b>: This model takes the effective thermal conductivity for the fluid-solid porous matrix as a constant value or a tabulated velocity function.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FLUID_ONLY_HEAT_TRANSFER" : "#/components/schemas/FluidOnlyHeatTransfer",
            "EFFECTIVE_CONDUCTIVITY_HEAT_TRANSFER" : "#/components/schemas/EffectiveConductivityHeatTransfer"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FluidOnlyHeatTransfer"
        }, {
          "$ref" : "#/components/schemas/EffectiveConductivityHeatTransfer"
        } ],
        "default" : {
          "type" : "FLUID_ONLY_HEAT_TRANSFER"
        },
        "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
      },
      "OneOf_ThermalMechanicalTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent, that is, the equations solved do not include time derivatives. If you are only interested in the converged solution, consider a steady-state simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects, that is, the associated flow variables vary with respect to time.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_ThermalMechanicalConnectionGroups" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONTACT" : "#/components/schemas/Contact",
            "PHYSICAL_CONTACT_V36" : "#/components/schemas/PhysicalContact"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/Contact"
        }, {
          "$ref" : "#/components/schemas/PhysicalContact"
        } ]
      },
      "OneOf_ThermalMechanicalBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BOLT_PRELOAD" : "#/components/schemas/BoltPreloadBC",
            "ELASTIC_SUPPORT" : "#/components/schemas/ElasticSupportBC",
            "FIXED_SUPPORT" : "#/components/schemas/FixedSupportBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueBC",
            "FIXED_TEMPERATURE_VALUE" : "#/components/schemas/FixedTemperatureValueBC",
            "POINT_MASS" : "#/components/schemas/PointMassBC",
            "DISTRIBUTED_MASS" : "#/components/schemas/DistributedMassBC",
            "REMOTE_DISPLACEMENT_LOAD" : "#/components/schemas/RemoteDisplacementLoadBC",
            "ROTATING_MOTION" : "#/components/schemas/RotatingMotionBC",
            "SYMMETRY_PLANE" : "#/components/schemas/SymmetryPlaneBC",
            "CYCLIC_SYMMETRY" : "#/components/schemas/CyclicSymmetryBC",
            "CENTRIFUGAL_FORCE" : "#/components/schemas/CentrifugalForceBC",
            "FOLLOWER_PRESSURE" : "#/components/schemas/FollowerPressureBC",
            "FORCE_LOAD" : "#/components/schemas/ForceLoadBC",
            "NODAL_LOAD" : "#/components/schemas/NodalLoadBC",
            "PRESSURE" : "#/components/schemas/PressureBC",
            "REMOTE_FORCE_LOAD" : "#/components/schemas/RemoteForceLoadBC",
            "SURFACE_LOAD" : "#/components/schemas/SurfaceLoadBC",
            "VOLUME_LOAD" : "#/components/schemas/VolumeLoadBC",
            "SURFACE_HEAT_FLUX" : "#/components/schemas/SurfaceHeatFluxBC",
            "CONVECTIVE_HEAT_FLUX" : "#/components/schemas/ConvectiveHeatFluxBC",
            "VOLUME_HEAT_FLUX" : "#/components/schemas/VolumeHeatFluxBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/BoltPreloadBC"
        }, {
          "$ref" : "#/components/schemas/ElasticSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueBC"
        }, {
          "$ref" : "#/components/schemas/FixedTemperatureValueBC"
        }, {
          "$ref" : "#/components/schemas/PointMassBC"
        }, {
          "$ref" : "#/components/schemas/DistributedMassBC"
        }, {
          "$ref" : "#/components/schemas/RemoteDisplacementLoadBC"
        }, {
          "$ref" : "#/components/schemas/RotatingMotionBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryPlaneBC"
        }, {
          "$ref" : "#/components/schemas/CyclicSymmetryBC"
        }, {
          "$ref" : "#/components/schemas/CentrifugalForceBC"
        }, {
          "$ref" : "#/components/schemas/FollowerPressureBC"
        }, {
          "$ref" : "#/components/schemas/ForceLoadBC"
        }, {
          "$ref" : "#/components/schemas/NodalLoadBC"
        }, {
          "$ref" : "#/components/schemas/PressureBC"
        }, {
          "$ref" : "#/components/schemas/RemoteForceLoadBC"
        }, {
          "$ref" : "#/components/schemas/SurfaceLoadBC"
        }, {
          "$ref" : "#/components/schemas/VolumeLoadBC"
        }, {
          "$ref" : "#/components/schemas/SurfaceHeatFluxBC"
        }, {
          "$ref" : "#/components/schemas/ConvectiveHeatFluxBC"
        }, {
          "$ref" : "#/components/schemas/VolumeHeatFluxBC"
        } ]
      },
      "OneOf_HarmonicAnalysisConnectors" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PIN_CONNECTOR" : "#/components/schemas/PinConnector",
            "BOLT_CONNECTOR" : "#/components/schemas/BoltConnector"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PinConnector"
        }, {
          "$ref" : "#/components/schemas/BoltConnector"
        } ]
      },
      "OneOf_HarmonicAnalysisBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BASE_EXCITATION" : "#/components/schemas/BaseExcitationBC",
            "BOLT_PRELOAD" : "#/components/schemas/BoltPreloadBC",
            "ELASTIC_SUPPORT" : "#/components/schemas/ElasticSupportBC",
            "FIXED_SUPPORT" : "#/components/schemas/FixedSupportBC",
            "FIXED_VALUE" : "#/components/schemas/FixedValueBC",
            "POINT_MASS" : "#/components/schemas/PointMassBC",
            "DISTRIBUTED_MASS" : "#/components/schemas/DistributedMassBC",
            "REMOTE_DISPLACEMENT_LOAD" : "#/components/schemas/RemoteDisplacementLoadBC",
            "SYMMETRY_PLANE" : "#/components/schemas/SymmetryPlaneBC",
            "CENTRIFUGAL_FORCE" : "#/components/schemas/CentrifugalForceBC",
            "FORCE_LOAD" : "#/components/schemas/ForceLoadBC",
            "NODAL_LOAD" : "#/components/schemas/NodalLoadBC",
            "PRESSURE" : "#/components/schemas/PressureBC",
            "REMOTE_FORCE_LOAD" : "#/components/schemas/RemoteForceLoadBC",
            "SURFACE_LOAD" : "#/components/schemas/SurfaceLoadBC",
            "VOLUME_LOAD" : "#/components/schemas/VolumeLoadBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/BaseExcitationBC"
        }, {
          "$ref" : "#/components/schemas/BoltPreloadBC"
        }, {
          "$ref" : "#/components/schemas/ElasticSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedSupportBC"
        }, {
          "$ref" : "#/components/schemas/FixedValueBC"
        }, {
          "$ref" : "#/components/schemas/PointMassBC"
        }, {
          "$ref" : "#/components/schemas/DistributedMassBC"
        }, {
          "$ref" : "#/components/schemas/RemoteDisplacementLoadBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryPlaneBC"
        }, {
          "$ref" : "#/components/schemas/CentrifugalForceBC"
        }, {
          "$ref" : "#/components/schemas/ForceLoadBC"
        }, {
          "$ref" : "#/components/schemas/NodalLoadBC"
        }, {
          "$ref" : "#/components/schemas/PressureBC"
        }, {
          "$ref" : "#/components/schemas/RemoteForceLoadBC"
        }, {
          "$ref" : "#/components/schemas/SurfaceLoadBC"
        }, {
          "$ref" : "#/components/schemas/VolumeLoadBC"
        } ]
      },
      "OneOf_ComputingCoreDomainDecomposition" : {
        "title" : "Domain decomposition",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC" : "#/components/schemas/AutomaticDomainDecomposition",
            "CENTRALIZED" : "#/components/schemas/CentralizedDomainDecomposition",
            "ELEMENT_GROUPS" : "#/components/schemas/ElementGroupsDomainDecomposition",
            "CUSTOM" : "#/components/schemas/CustomDomainDecomposition"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticDomainDecomposition"
        }, {
          "$ref" : "#/components/schemas/CentralizedDomainDecomposition"
        }, {
          "$ref" : "#/components/schemas/ElementGroupsDomainDecomposition"
        }, {
          "$ref" : "#/components/schemas/CustomDomainDecomposition"
        } ],
        "default" : {
          "type" : "AUTOMATIC"
        }
      },
      "OneOf_DimensionalFunction_SpecificTurbulenceDissipationRateValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_StressTensor_PressureSigmaXX" : {
        "title" : "σ<xx>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_StressTensor_PressureSigmaYY" : {
        "title" : "σ<yy>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_StressTensor_PressureSigmaZZ" : {
        "title" : "σ<zz>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_StressTensor_PressureSigmaYZ" : {
        "title" : "σ<yz>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_StressTensor_PressureSigmaXZ" : {
        "title" : "σ<xz>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_StressTensor_PressureSigmaXY" : {
        "title" : "σ<xy>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_NewtonResolutionTypeConvergenceCriteria" : {
        "title" : "Convergence criteria",
        "description" : "Select the convergence criterion for the nonlinear solution method.</p>Important remarks: <br /><ul><li>When <b>Absolute</b> is selected, the convergence is reached if the maximum absolute residual of a given Newton iteration is lower than the defined tolerance.</li><li>If <b>Relative</b> is chosen, then the maximum relative residual i.e. the maximum absolute residual divided by external loads and support reactions, is checked during the Newton iteration. Please note that using the <b>Relative</b> criterion leads to a failed convergence if no external load is present (e.g. two far objects coming into contact). In this case, the <b>Adaptive</b> criterion should be used.</li><li>By selecting the <b>Adaptive</b> option, a combination of both <b>Relative</b> and <b>Absolute</b> criteria is used. That is, in each Newton iteration the <b>Relative</b> is used by default unless the external loads and support reactions have vanished, at which point we check the <b>Absolute</b> one instead.</li></li></ul></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ADAPTIVE" : "#/components/schemas/AdaptiveConvergenceCriteria",
            "RELATIVE" : "#/components/schemas/RelativeConvergenceCriteria",
            "ABSOLUTE" : "#/components/schemas/AbsoluteConvergenceCriteria"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AdaptiveConvergenceCriteria"
        }, {
          "$ref" : "#/components/schemas/RelativeConvergenceCriteria"
        }, {
          "$ref" : "#/components/schemas/AbsoluteConvergenceCriteria"
        } ],
        "default" : {
          "type" : "ADAPTIVE"
        }
      },
      "OneOf_NewtonResolutionTypeJacobianMatrix" : {
        "title" : "Jacobian matrix",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TANGENT" : "#/components/schemas/TangentJacobianMatrix",
            "ELASTIC" : "#/components/schemas/ElasticJacobianMatrix"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TangentJacobianMatrix"
        }, {
          "$ref" : "#/components/schemas/ElasticJacobianMatrix"
        } ],
        "default" : {
          "type" : "TANGENT"
        }
      },
      "OneOf_StressResultControlItemStressType" : {
        "title" : "Stress type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRESCA" : "#/components/schemas/GlobalTrescaStressType",
            "CAUCHY" : "#/components/schemas/GlobalCauchyStressType",
            "PRINCIPAL" : "#/components/schemas/GlobalPrincipalStressType",
            "VON_MISES" : "#/components/schemas/GlobalVonMisesStressType",
            "MAX_OVER_PHASE_VON_MISES" : "#/components/schemas/GlobalMaxOverPhaseVonMisesStressType",
            "SIGNED_VON_MISES" : "#/components/schemas/GlobalSignedVonMisesStressType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GlobalTrescaStressType"
        }, {
          "$ref" : "#/components/schemas/GlobalCauchyStressType"
        }, {
          "$ref" : "#/components/schemas/GlobalPrincipalStressType"
        }, {
          "$ref" : "#/components/schemas/GlobalVonMisesStressType"
        }, {
          "$ref" : "#/components/schemas/GlobalMaxOverPhaseVonMisesStressType"
        }, {
          "$ref" : "#/components/schemas/GlobalSignedVonMisesStressType"
        } ],
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_DisplacementsConvergenceMethodConvergenceCriteria" : {
        "title" : "Convergence criteria",
        "description" : "<p>Defines whether the tolerances are measured relative to the overall solution, as absolute values, or dynamically adjusted.</p><ul><li><b>Relative:</b> Standard for general use. Tolerances are measured as a fraction of the current reference value (e.g., maximum applied force or displacement).</li><li><b>Absolute:</b> Necessary when the reference forces are near zero (e.g., free expansion). Tolerances are defined as fixed values in model units.</li><li><b>Adaptive:</b> Allows Marc to dynamically loosen or tighten tolerances based on solution progress, balancing robustness and computational efficiency.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "RELATIVE" : "#/components/schemas/RelativeConvergenceDisplacements",
            "ABSOLUTE" : "#/components/schemas/AbsoluteConvergenceDisplacements",
            "ADAPTIVE" : "#/components/schemas/AdaptiveConvergenceDisplacements"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/RelativeConvergenceDisplacements"
        }, {
          "$ref" : "#/components/schemas/AbsoluteConvergenceDisplacements"
        }, {
          "$ref" : "#/components/schemas/AdaptiveConvergenceDisplacements"
        } ],
        "default" : {
          "type" : "RELATIVE"
        }
      },
      "OneOf_ConvectiveHeatTransferMaterialsFluids" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "INCOMPRESSIBLE" : "#/components/schemas/IncompressibleMaterial",
            "COMPRESSIBLE" : "#/components/schemas/FluidCompressibleMaterial"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IncompressibleMaterial"
        }, {
          "$ref" : "#/components/schemas/FluidCompressibleMaterial"
        } ]
      },
      "OneOf_SolarCalculatorSunDirection" : {
        "title" : "Sun direction",
        "description" : "<p><b>Sun direction</b> in the solar radiation model.</p> <ul><li><b>Custom:</b> Define the sun direction vector directly.</li><li><b>Time and place:</b> Set the sun direction by defining a location, a date and a time. This assumes the Z-vector to point upwards into the sky.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_AND_PLACE" : "#/components/schemas/TimeAndPlaceSunDirection",
            "CUSTOM_SOLAR_DIRECTION" : "#/components/schemas/CustomSunDirection"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TimeAndPlaceSunDirection"
        }, {
          "$ref" : "#/components/schemas/CustomSunDirection"
        } ],
        "default" : {
          "type" : "CUSTOM_SOLAR_DIRECTION"
        }
      },
      "OneOf_SolarCalculatorSolarLoad" : {
        "title" : "Solar load",
        "description" : "<p><b>Solar load</b> in solar radiation model. <b>Diffuse solar load</b> affects all walls with a derived heat flux boundary condition externally if the outer surface absorptivity is greater than  zero. <b>Direct solar load</b> affects all walls either externally or internally if these are not shadowed by other walls, are non-transparent and have an absorptivity greater than zero. </p> <ul><li><b>Custom:</b> Define diffusive and directed solar load directly.</li><li><b>Fair weather conditions:</b> Define the external and internal solar load by a number of coefficients in the Fair weather condtions model.This assumes the Z-vector to point upwards into the sky.</li></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUSTOM_SOLAR_LOAD" : "#/components/schemas/CustomSolarLoad",
            "FAIR_WEATHER_CONDITIONS" : "#/components/schemas/FairWeatherConditions"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CustomSolarLoad"
        }, {
          "$ref" : "#/components/schemas/FairWeatherConditions"
        } ],
        "default" : {
          "type" : "CUSTOM_SOLAR_LOAD"
        }
      },
      "OneOf_FixedCoeffMediumOrientation" : {
        "title" : "Orientation",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CARTESIAN" : "#/components/schemas/CartesianOrientation",
            "CUSTOM" : "#/components/schemas/CustomOrientation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CartesianOrientation"
        }, {
          "$ref" : "#/components/schemas/CustomOrientation"
        } ]
      },
      "OneOf_FixedCoeffMediumPorousMediaHeatTransfer" : {
        "title" : "Heat transfer",
        "description" : "The heat transfer modelling inside the porous media matrix:<br><li><b>Fluid only</b>: This model uses exclusively the fluid thermal properties in the porous media region. <li><b>Effective conductivity</b>: This model takes the effective thermal conductivity for the fluid-solid porous matrix as a constant value or a tabulated velocity function.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FLUID_ONLY_HEAT_TRANSFER" : "#/components/schemas/FluidOnlyHeatTransfer",
            "EFFECTIVE_CONDUCTIVITY_HEAT_TRANSFER" : "#/components/schemas/EffectiveConductivityHeatTransfer"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FluidOnlyHeatTransfer"
        }, {
          "$ref" : "#/components/schemas/EffectiveConductivityHeatTransfer"
        } ],
        "default" : {
          "type" : "FLUID_ONLY_HEAT_TRANSFER"
        },
        "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
      },
      "OneOf_MarcOutputWritingContainerOutputWriting" : {
        "title" : "Write control method",
        "description" : "<p>Choose how to write the results for the simulation:</p><ul><li><p><b>All computed</b> writes the results for every step. This can lead to a lot of output, especially in simulations with lots of time stepping cutbacks. That takes accordingly longer to post-process.</p></ul><ul><li><p><b>Write interval</b> allows to specify the interval at which results are written.</p></ul><ul><li><p><b>Output steps</b> is used to control the total number of steps for which output is written.</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ALL_COMPUTED" : "#/components/schemas/AllComputed",
            "WRITE_INTERVAL" : "#/components/schemas/WriteInterval",
            "OUTPUT_STEPS" : "#/components/schemas/OutputSteps"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AllComputed"
        }, {
          "$ref" : "#/components/schemas/WriteInterval"
        }, {
          "$ref" : "#/components/schemas/OutputSteps"
        } ],
        "default" : {
          "type" : "ALL_COMPUTED"
        }
      },
      "OneOf_PedestrianComfortSurfaceGround" : {
        "title" : "Ground",
        "description" : "<p>Ground reference can be either <i>absolute</i> (uses bottom of region of interest as reference) or <i>relative</i> (uses each assignment as a reference) and elevates those by the height defined. <a href='https://www.simscale.com/docs/analysis-types/pedestrian-wind-comfort-analysis/pedestrian-comfort-map/#ground' target='_blank'>Learn more</a>.</p> <img src=\"/spec/resources/help/imgs/Ground_absolute_relative.jpg\", class=\"helpPopupImage\"/>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GROUND_ABSOLUTE" : "#/components/schemas/GroundAbsolute",
            "GROUND_RELATIVE" : "#/components/schemas/GroundRelative"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GroundAbsolute"
        }, {
          "$ref" : "#/components/schemas/GroundRelative"
        } ],
        "default" : {
          "type" : "GROUND_RELATIVE"
        }
      },
      "OneOf_CoupledConjugateHeatTransferTimeDependency" : {
        "title" : "Time dependency",
        "description" : "<p><strong>Steady-state</strong>: Steady-state simulations are time-independent, that is, the equations solved do not include time derivatives. If you are only interested in the converged solution, consider a steady-state simulation.</p><p><strong>Transient</strong>: Transient simulations account for time-dependent effects, that is, the associated flow variables vary with respect to time.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TRANSIENT" : "#/components/schemas/TransientTimeDependency",
            "STATIONARY" : "#/components/schemas/StationaryTimeDependency"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TransientTimeDependency"
        }, {
          "$ref" : "#/components/schemas/StationaryTimeDependency"
        } ],
        "default" : {
          "type" : "STATIONARY"
        }
      },
      "OneOf_CoupledConjugateHeatTransferBoundaryConditions" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "VELOCITY_INLET_V3" : "#/components/schemas/VelocityInletBC",
            "VELOCITY_OUTLET_V7" : "#/components/schemas/VelocityOutletBC",
            "PRESSURE_INLET_V31" : "#/components/schemas/PressureInletBC",
            "PRESSURE_OUTLET_V30" : "#/components/schemas/PressureOutletBC",
            "WALL_V34" : "#/components/schemas/WallBC",
            "FAN" : "#/components/schemas/FanBC",
            "SYMMETRY" : "#/components/schemas/SymmetryBC",
            "PERIODIC" : "#/components/schemas/PeriodicBC",
            "NATURAL_CONVECTION_INLET_OUTLET" : "#/components/schemas/NaturalConvectionInletOutletBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/VelocityInletBC"
        }, {
          "$ref" : "#/components/schemas/VelocityOutletBC"
        }, {
          "$ref" : "#/components/schemas/PressureInletBC"
        }, {
          "$ref" : "#/components/schemas/PressureOutletBC"
        }, {
          "$ref" : "#/components/schemas/WallBC"
        }, {
          "$ref" : "#/components/schemas/FanBC"
        }, {
          "$ref" : "#/components/schemas/SymmetryBC"
        }, {
          "$ref" : "#/components/schemas/PeriodicBC"
        }, {
          "$ref" : "#/components/schemas/NaturalConvectionInletOutletBC"
        } ]
      },
      "OneOf_PinKinematicBehaviorRotation" : {
        "title" : "Rotation",
        "description" : "<p>Rotation about the pin axis, between the parts (Body to body) or against the ground (Body to ground):</p><img src=\"/spec/resources/help/imgs/pin_connector_rotation_help.png\" class=\"helpPopupImage\"/><ul><li><b>Free rotation</b>: the parts turn freely, like a hinge.</li><li><b>Rigid</b>: rotation is locked.</li><li><b>With torsion spring</b>: the <b>Torsion spring stiffness</b> resists the rotation.</li></ul><p><b>Note:</b> with <b>Free rotation</b>, a part that is held only by this pin can spin about it, and the solver stops with a singular matrix. Hold the part elsewhere too (a second pin, a contact or a support), or use a soft torsion spring.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FREE" : "#/components/schemas/FreeAxialRotation",
            "RIGID" : "#/components/schemas/RigidAxialRotation",
            "TORSIONAL" : "#/components/schemas/TorsionalAxialRotation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FreeAxialRotation"
        }, {
          "$ref" : "#/components/schemas/RigidAxialRotation"
        }, {
          "$ref" : "#/components/schemas/TorsionalAxialRotation"
        } ],
        "default" : {
          "type" : "FREE"
        }
      },
      "OneOf_PinKinematicBehaviorAxialTranslation" : {
        "title" : "Axial translation",
        "description" : "<p>Movement along the pin axis, between the parts (Body to body) or against the ground (Body to ground):</p><img src=\"/spec/resources/help/imgs/pin_connector_translation_help.png\" class=\"helpPopupImage\"/><ul><li><b>Free sliding</b>: the parts slide freely along the pin.</li><li><b>Rigid</b>: sliding is locked.</li><li><b>With axial spring</b>: the <b>Axial spring stiffness</b> resists the sliding.</li></ul><p><b>Note:</b> with <b>Free sliding</b>, a part that is held only by this pin can move along the axis, and the solver stops with a singular matrix. A contact alone often does not hold it. Hold the part elsewhere, or use a soft axial spring (e.g. 10 N/m).</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FREE" : "#/components/schemas/FreeAxialTranslation",
            "RIGID" : "#/components/schemas/RigidAxialTranslation",
            "FLEXIBLE" : "#/components/schemas/FlexibleAxialTranslation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FreeAxialTranslation"
        }, {
          "$ref" : "#/components/schemas/RigidAxialTranslation"
        }, {
          "$ref" : "#/components/schemas/FlexibleAxialTranslation"
        } ],
        "default" : {
          "type" : "RIGID"
        }
      },
      "OneOf_DimensionalFunction_PowerValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_MULESSolverSemiImplicit" : {
        "title" : "Semi-implicit MULES",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FALSE_SEMI_IMPLICIT" : "#/components/schemas/FalseSemiImplicit",
            "TRUE_SEMI_IMPLICIT" : "#/components/schemas/TrueSemiImplicit"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FalseSemiImplicit"
        }, {
          "$ref" : "#/components/schemas/TrueSemiImplicit"
        } ],
        "default" : {
          "type" : "TRUE_SEMI_IMPLICIT"
        }
      },
      "OneOf_HarmonicAccelerationResultControlItemHarmonicAccelerationType" : {
        "title" : "Acceleration type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ABSOLUTE" : "#/components/schemas/AbsoluteHarmonicAccelerationType",
            "RELATIVE" : "#/components/schemas/RelativeHarmonicAccelerationType"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AbsoluteHarmonicAccelerationType"
        }, {
          "$ref" : "#/components/schemas/RelativeHarmonicAccelerationType"
        } ],
        "default" : {
          "type" : "ABSOLUTE"
        },
        "x-showWhen" : [ "type == HARMONIC_ANALYSIS" ]
      },
      "OneOf_DimensionalFunction_TemperatureGradientValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DimensionalFunction_VolumetricPowerValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DimensionalFunction_MassFlowRateValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_DimensionalVectorFunction_LengthValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "COMPONENT" : "#/components/schemas/ComponentVectorFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedVectorFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ComponentVectorFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedVectorFunction"
        } ]
      },
      "OneOf_KinematicChabocheHardeningMarcBackstressTerms" : {
        "title" : "Back stress terms",
        "description" : "The number of superposed Armstrong-Frederick backstress terms used to represent the kinematic hardening. Additional terms allow a more accurate fit of the material's hardening behavior under cyclic and non-proportional loading, at the cost of more material parameters to calibrate.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ONE_TERM" : "#/components/schemas/OneBackstressTerm",
            "TWO_TERMS" : "#/components/schemas/TwoBackstressTerms",
            "THREE_TERMS" : "#/components/schemas/ThreeBackstressTerms"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/OneBackstressTerm"
        }, {
          "$ref" : "#/components/schemas/TwoBackstressTerms"
        }, {
          "$ref" : "#/components/schemas/ThreeBackstressTerms"
        } ],
        "default" : {
          "type" : "ONE_TERM"
        }
      },
      "OneOf_RotatingMotionTypeRotation" : {
        "title" : "Rotation",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ANGULAR_ROTATION" : "#/components/schemas/AngularRotation",
            "VECTOR_ROTATION" : "#/components/schemas/VectorRotation"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AngularRotation"
        }, {
          "$ref" : "#/components/schemas/VectorRotation"
        } ]
      },
      "OneOf_SolidMaterialMaterialBehavior" : {
        "title" : "Material behavior",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "LINEAR_ELASTIC" : "#/components/schemas/LinearElasticMaterialBehavior",
            "HYPER_ELASTIC" : "#/components/schemas/HyperElasticMaterialBehavior",
            "PLASTIC" : "#/components/schemas/PlasticMaterialBehavior"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/LinearElasticMaterialBehavior"
        }, {
          "$ref" : "#/components/schemas/HyperElasticMaterialBehavior"
        }, {
          "$ref" : "#/components/schemas/PlasticMaterialBehavior"
        } ],
        "default" : {
          "type" : "LINEAR_ELASTIC"
        },
        "x-showWhen" : [ "type in [STATIC_ANALYSIS,DYNAMIC_ANALYSIS,HARMONIC_ANALYSIS,FREQUENCY_ANALYSIS,THERMAL_MECHANICAL]" ]
      },
      "OneOf_SolidMaterialConductivity" : {
        "title" : "Conductivity",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "ISOTROPIC" : "#/components/schemas/IsotropicConductivity",
            "ORTHOTROPIC" : "#/components/schemas/OrthotropicConductivity"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/IsotropicConductivity"
        }, {
          "$ref" : "#/components/schemas/OrthotropicConductivity"
        } ],
        "default" : {
          "type" : "ISOTROPIC"
        },
        "x-showWhen" : [ "type in [HEAT_TRANSFER,THERMAL_MECHANICAL]" ]
      },
      "OneOf_DimensionalFunction_SpecificHeatValue" : {
        "title" : "Value",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CONSTANT" : "#/components/schemas/ConstantFunction",
            "EXPRESSION" : "#/components/schemas/ExpressionFunction",
            "POLYNOMIAL" : "#/components/schemas/PolynomialFunction",
            "TABLE_DEFINED" : "#/components/schemas/TableDefinedFunction"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ConstantFunction"
        }, {
          "$ref" : "#/components/schemas/ExpressionFunction"
        }, {
          "$ref" : "#/components/schemas/PolynomialFunction"
        }, {
          "$ref" : "#/components/schemas/TableDefinedFunction"
        } ]
      },
      "OneOf_LaplacianSchemesForDefault" : {
        "title" : "Default",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,INCOMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE]" ]
      },
      "OneOf_LaplacianSchemesLaplacian_NuEff_velocity" : {
        "title" : "laplacian(nuEff,U)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && algorithm in [PIMPLE,PISO,SIMPLE]", "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false", "type == MULTIPHASE && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,KEPSILON,KOMEGA,KOMEGASST]" ]
      },
      "OneOf_LaplacianSchemesLaplacian_1A_U_pressure" : {
        "title" : "laplacian((1|A(U)),p)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,KOMEGASST,NONE,KEPSILON,KOMEGA] && algorithm != PIMPLE" ]
      },
      "OneOf_LaplacianSchemesLaplacian_Nu_velocity" : {
        "title" : "laplacian(nu,U)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && algorithm == ICO && turbulenceModel == NONE", "type == INCOMPRESSIBLE && algorithm in [PISO,SIMPLE] && turbulenceModel in [KOMEGA,KOMEGASST]" ]
      },
      "OneOf_LaplacianSchemesLaplacian_DREff_R" : {
        "title" : "laplacian(DREff,R)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS,NONE,KEPSILON] && algorithm in [PISO,SIMPLE]" ]
      },
      "OneOf_LaplacianSchemesLaplacian_DnuTildaEff_nuTilda" : {
        "title" : "laplacian(DnuTildaEff,nuTilda)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel == SPALARTALLMARAS", "type == INCOMPRESSIBLE && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS] && algorithm == PISO", "type == INCOMPRESSIBLE && turbulenceModel == SPALARTALLMARAS && algorithm == PIMPLE", "type == INCOMPRESSIBLE && turbulenceModel in [NONE,KEPSILON] && algorithm in [PISO,SIMPLE]" ]
      },
      "OneOf_LaplacianSchemesLaplacian_DkEff_turbulentKineticEnergy" : {
        "title" : "laplacian(DkEff,k)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,REALIZABLEKE]", "type == INCOMPRESSIBLE && turbulenceModel in [KOMEGA,KOMEGASST] && algorithm == PIMPLE", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER] && turbulenceModel in [KEPSILON,KOMEGASST]", "type == MULTIPHASE && turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST]", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [KEPSILON,KOMEGASST] && timeDependency.type == STATIONARY", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [KEPSILON,KOMEGASST] && timeDependency.type == TRANSIENT && isCompressible == false" ]
      },
      "OneOf_LaplacianSchemesLaplacian_alphaEff_enthalpy" : {
        "title" : "laplacian(alphaEff, h)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_LaplacianSchemesLaplacian_alpha_enthalpy" : {
        "title" : "laplacian(alpha, h)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_LaplacianSchemesLaplacian_muEff_velocity" : {
        "title" : "laplacian(muEff, U)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_LaplacianSchemesLaplacian_alphaEff_internalEnergy" : {
        "title" : "laplacian(alphaEff, e)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [NONE,KEPSILON,KOMEGASST] && timeDependency.type == STATIONARY && isCompressible == true", "type == COMPRESSIBLE && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == STATIONARY", "type == COMPRESSIBLE && turbulenceModel == NONE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_LaplacianSchemesLaplacian_rhorAUf_pressureRgh" : {
        "title" : "laplacian(rhorAUf, p_rgh)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == CONJUGATE_HEAT_TRANSFER" ]
      },
      "OneOf_LaplacianSchemesLaplacian_DepsilonEff_epsilonDissipationRate" : {
        "title" : "laplacian(DepsilonEff, eps)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER,MULTIPHASE] && turbulenceModel == KEPSILON", "type == INCOMPRESSIBLE && turbulenceModel in [KEPSILON,REALIZABLEKE]", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == KEPSILON && timeDependency.type != TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == KEPSILON && isCompressible == false" ]
      },
      "OneOf_LaplacianSchemesLaplacian_DomegaEff_omegaDissipationRate" : {
        "title" : "laplacian(DomegaEff,omega)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && turbulenceModel in [KOMEGA,KOMEGASST] && algorithm == PIMPLE", "type in [COMPRESSIBLE,CONJUGATE_HEAT_TRANSFER] && turbulenceModel == KOMEGASST", "type == MULTIPHASE && turbulenceModel in [KOMEGA,KOMEGASST]", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == KOMEGASST && timeDependency.type != TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel == KOMEGASST && isCompressible == false" ]
      },
      "OneOf_LaplacianSchemesLaplacian_rAUf_pressure" : {
        "title" : "laplacian(rAUf, p)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && algorithm == PIMPLE" ]
      },
      "OneOf_LaplacianSchemesLaplacian_DT_passiveScalar" : {
        "title" : "laplacian(DT, T)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == INCOMPRESSIBLE && numOfPassiveSpecies > 0", "type == CONVECTIVE_HEAT_TRANSFER && numOfPassiveSpecies > 0" ]
      },
      "OneOf_LaplacianSchemesLaplacian_Dp_pressure" : {
        "title" : "laplacian(Dp,p)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT" ]
      },
      "OneOf_LaplacianSchemesLaplacian_rhorAUf_pressure" : {
        "title" : "laplacian(rhorAUf, p)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == TRANSIENT && turbulenceModel != NONE", "type == COMPRESSIBLE && timeDependency.type == TRANSIENT", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [SMAGORINSKY,SPALARTALLMARAS] && isCompressible == true" ]
      },
      "OneOf_LaplacianSchemesLaplacian_rho_1_A_U_pressure" : {
        "title" : "laplacian(rho*(1|A(U)),p)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && timeDependency.type == STATIONARY && turbulenceModel in [NONE,KEPSILON,KOMEGASST]" ]
      },
      "OneOf_LaplacianSchemesLaplacian_mut_velocity" : {
        "title" : "laplacian(mut, U)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == COMPRESSIBLE && turbulenceModel in [KEPSILON,KOMEGASST]", "type == CONVECTIVE_HEAT_TRANSFER && turbulenceModel in [KEPSILON,KOMEGASST] && timeDependency.type == STATIONARY && isCompressible == true" ]
      },
      "OneOf_LaplacianSchemesLaplacian_alphaEff_temperature" : {
        "title" : "laplacian(alphaEff, T)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false" ]
      },
      "OneOf_LaplacianSchemesLaplacian_rAUf_pressureRgh" : {
        "title" : "laplacian(rAUf, p_rgh)",
        "description" : "<p>With this option you can choose your desired laplacian scheme.</p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GAUSS_LINEAR_CORRECTED" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme",
            "GAUSS_LINEAR_LIMITED_CORRECTED" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme",
            "GAUSS_LINEAR_UNCORRECTED" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GaussLinearCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearLimitedCorrectedLaplacianScheme"
        }, {
          "$ref" : "#/components/schemas/GaussLinearUncorrectedLaplacianScheme"
        } ],
        "default" : {
          "type" : "GAUSS_LINEAR_LIMITED_CORRECTED"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == false" ]
      },
      "OneOf_FanBCPressureRgh" : {
        "title" : "Pressure type",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FAN_PRESSURE" : "#/components/schemas/FanPBC",
            "HYDROSTATIC_ISOTHERMAL_FAN_PRESSURE" : "#/components/schemas/HydrostaticFanPBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FanPBC"
        }, {
          "$ref" : "#/components/schemas/HydrostaticFanPBC"
        } ],
        "x-conditionalHelp" : [ {
          "when" : [ "1/pressureRgh/type == HYDROSTATIC_ISOTHERMAL_FAN_PRESSURE" ]
        } ],
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && isCompressible == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && isCompressible == true", "type == CONJUGATE_HEAT_TRANSFER", "type == EMBEDDED_BOUNDARY && isCompressible == true" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
          "default" : {
            "type" : "HYDROSTATIC_ISOTHERMAL_FAN_PRESSURE"
          }
        }, {
          "when" : [ "type in [CONJUGATE_HEAT_TRANSFER,CONVECTIVE_HEAT_TRANSFER]" ],
          "default" : {
            "type" : "FAN_PRESSURE"
          }
        } ]
      },
      "OneOf_FanBCTurbulence" : {
        "title" : "Turbulence",
        "description" : "These options specify <b>inlet</b> boundary conditions for <b>turbulence quantities</b>: </p><ul><li><p><b>Automatic</b> considers a value of <i>0.05</i> for <b>turbulent intensity</b> (<i>I</i>). The <b>turbulent mixing length </b>(<i>L</i>) is calculated as <i>0.07D<sub>h</sub></i>, where <i>D<sub>h</sub></i> is the <b>hydraulic diameter</b> of the boundary face.</p><li><p><b>Turbulent intensity and mixing length</b> allows to specify these values directly.</p><li><p><b>Fixed value</b> allows to specify the values of the <b>turbulent kinetic energy </b>(<i>k</i>) and the <b>turbulent dissipation rate</b> (&#120656) or the <b>specific dissipation rate</b> (&#969).</p></ul>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AUTOMATIC_TURBULENCE" : "#/components/schemas/AutomaticTurbulence",
            "TURBULENT_INTENSITY_AND_REFERENCE_LENGTH_TURBULENCE" : "#/components/schemas/TurbulentIntensityAndReferenceLengthTurbulence",
            "FIXED_VALUE_TURBULENCE" : "#/components/schemas/FixedValueTurbulence"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AutomaticTurbulence"
        }, {
          "$ref" : "#/components/schemas/TurbulentIntensityAndReferenceLengthTurbulence"
        }, {
          "$ref" : "#/components/schemas/FixedValueTurbulence"
        } ],
        "default" : {
          "type" : "AUTOMATIC_TURBULENCE"
        },
        "x-showWhen" : [ "turbulenceModel in [KEPSILON,KOMEGA,KOMEGASST,REALIZABLEKE] && 1/direction == IN" ]
      },
      "OneOf_FanBCTemperature" : {
        "title" : "(T) Temperature",
        "description" : "Please choose a boundary condition for temperature (T).",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FIXED_VALUE" : "#/components/schemas/FixedValueTBC",
            "AMBIENT_TEMPERATURE" : "#/components/schemas/AmbientTBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedValueTBC"
        }, {
          "$ref" : "#/components/schemas/AmbientTBC"
        } ],
        "x-showWhen" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,CONJUGATE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ],
        "x-conditionalDefaults" : [ {
          "when" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1/direction == IN" ],
          "default" : {
            "type" : "FIXED_VALUE"
          }
        }, {
          "when" : [ "type in [COMPRESSIBLE,CONVECTIVE_HEAT_TRANSFER,COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY] && 1/direction == OUT" ],
          "default" : {
            "type" : "AMBIENT_TEMPERATURE"
          }
        } ]
      },
      "OneOf_FanBCNetRadiativeHeatFlux" : {
        "title" : "Radiative behaviour",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE" : "#/components/schemas/GreybodyDiffusiveRSBC",
            "OPEN_WINDOW" : "#/components/schemas/OpenWindowRSBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRSBC"
        }, {
          "$ref" : "#/components/schemas/OpenWindowRSBC"
        } ],
        "default" : {
          "type" : "OPEN_WINDOW"
        },
        "x-showWhen" : [ "type == CONVECTIVE_HEAT_TRANSFER && enableRadiation == true", "type == CONJUGATE_HEAT_TRANSFER && enableRadiation == true" ]
      },
      "OneOf_FanBCRadiativeIntensityRay" : {
        "title" : "Radiative behaviour",
        "description" : "<p><b>Radiative behaviour of the wall</b>. The Kirchhoff's law of thermal radiation is applied in all options. This means that the <b>absorptivity of the surface is equal to its emissivity</b>. <br> <ul><li><b>Opaque</b> is applied to surfaces with transmissivity equal to 0. The radiation that hits the surface will be absorbed and reflected, but not transmitted, e.g.: brick or concrete walls.</li><li><b>Transparent</b> is applied to surfaces with transmissivity equal to 1. The radiation that hits the surface will be fully transmitted to the other side, e.g.: inlets, outlets or regular windows.</li><li><b>Semi-transparent</b> is applied to non-fully transparent surfaces. The radiation that hits the surface will be absorbed, reflected and transmitted, e.g. some stained glass windows.</li></ul></p>",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "GREYBODY_DIFFUSIVE_RAY" : "#/components/schemas/GreybodyDiffusiveRayBC",
            "OPEN_BOUNDARY_RAY" : "#/components/schemas/OpenBoundaryRayBC",
            "SEMI_OPEN_BOUNDARY_RAY" : "#/components/schemas/SemiOpenBoundaryRayBC"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/GreybodyDiffusiveRayBC"
        }, {
          "$ref" : "#/components/schemas/OpenBoundaryRayBC"
        }, {
          "$ref" : "#/components/schemas/SemiOpenBoundaryRayBC"
        } ],
        "default" : {
          "type" : "OPEN_BOUNDARY_RAY"
        },
        "x-showWhen" : [ "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableRadiation == true", "type == COUPLED_CONJUGATE_HEAT_TRANSFER && enableSolarLoad == true", "type == EMBEDDED_BOUNDARY && enableRadiation == true", "type == EMBEDDED_BOUNDARY && enableSolarLoad == true" ]
      },
      "OneOf_PlasticityMarcPlasticityModel" : {
        "title" : "Plasticity model",
        "description" : "This setting defines how the post-yield behavior is mathematically represented; <b>Bilinear</b> uses a single tangent modulus for simplified hardening, <b>Multilinear</b> allows for a precise fit of experimental data points, and <b>Voce-Chaboche</b> uses a combined isotropic/kinematic hardening law suited for cyclic and non-proportional loading.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "BILINEAR" : "#/components/schemas/BilinearModelMarc",
            "MULTILINEAR" : "#/components/schemas/MultilinearModelMarc",
            "VOCE_CHABOCHE" : "#/components/schemas/VoceChabocheModelMarc"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/BilinearModelMarc"
        }, {
          "$ref" : "#/components/schemas/MultilinearModelMarc"
        }, {
          "$ref" : "#/components/schemas/VoceChabocheModelMarc"
        } ],
        "default" : {
          "type" : "BILINEAR"
        }
      },
      "OneOf_SpatialDiscretizationSchemesVelocity" : {
        "title" : "(U) Velocity",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "UPWIND_1ST" : "#/components/schemas/FirstOrderUpwindSpatialScheme",
            "UPWIND_2ND" : "#/components/schemas/SecondOrderUpwindSpatialScheme",
            "CENTRAL_DIFFERENCE" : "#/components/schemas/CentralDifferenceSpatialScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FirstOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/SecondOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/CentralDifferenceSpatialScheme"
        } ],
        "default" : {
          "type" : "UPWIND_2ND"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS" ]
      },
      "OneOf_SpatialDiscretizationSchemesDensity" : {
        "title" : "(ρ) Density",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "UPWIND_1ST" : "#/components/schemas/FirstOrderUpwindSpatialScheme",
            "UPWIND_2ND" : "#/components/schemas/SecondOrderUpwindSpatialScheme",
            "CENTRAL_DIFFERENCE" : "#/components/schemas/CentralDifferenceSpatialScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FirstOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/SecondOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/CentralDifferenceSpatialScheme"
        } ],
        "default" : {
          "type" : "UPWIND_1ST"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS" ]
      },
      "OneOf_SpatialDiscretizationSchemesTurbulentKineticEnergy" : {
        "title" : "(k) Turb. kinetic energy",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "UPWIND_1ST" : "#/components/schemas/FirstOrderUpwindSpatialScheme",
            "UPWIND_2ND" : "#/components/schemas/SecondOrderUpwindSpatialScheme",
            "CENTRAL_DIFFERENCE" : "#/components/schemas/CentralDifferenceSpatialScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FirstOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/SecondOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/CentralDifferenceSpatialScheme"
        } ],
        "default" : {
          "type" : "UPWIND_1ST"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS && turbulenceModel != NONE" ]
      },
      "OneOf_SpatialDiscretizationSchemesTurbulentEnergyDissipationRate" : {
        "title" : "(ε) Turb. energy dissipation rate",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "UPWIND_1ST" : "#/components/schemas/FirstOrderUpwindSpatialScheme",
            "UPWIND_2ND" : "#/components/schemas/SecondOrderUpwindSpatialScheme",
            "CENTRAL_DIFFERENCE" : "#/components/schemas/CentralDifferenceSpatialScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FirstOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/SecondOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/CentralDifferenceSpatialScheme"
        } ],
        "default" : {
          "type" : "UPWIND_1ST"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS && turbulenceModel != NONE" ]
      },
      "OneOf_SpatialDiscretizationSchemesVolumeOfFluid" : {
        "title" : "(α) Volume of fluid",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "UPWIND_1ST" : "#/components/schemas/FirstOrderUpwindSpatialScheme",
            "UPWIND_2ND" : "#/components/schemas/SecondOrderUpwindSpatialScheme",
            "CENTRAL_DIFFERENCE" : "#/components/schemas/CentralDifferenceSpatialScheme",
            "HIGH_RESOLUTION" : "#/components/schemas/HighResolutionSpatialScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FirstOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/SecondOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/CentralDifferenceSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/HighResolutionSpatialScheme"
        } ],
        "default" : {
          "type" : "HIGH_RESOLUTION"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMultiphase == true" ]
      },
      "OneOf_SpatialDiscretizationSchemesInternalEnergy" : {
        "title" : "(e) Internal energy",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "UPWIND_1ST" : "#/components/schemas/FirstOrderUpwindSpatialScheme",
            "UPWIND_2ND" : "#/components/schemas/SecondOrderUpwindSpatialScheme",
            "CENTRAL_DIFFERENCE" : "#/components/schemas/CentralDifferenceSpatialScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FirstOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/SecondOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/CentralDifferenceSpatialScheme"
        } ],
        "default" : {
          "type" : "UPWIND_1ST"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isCompressible == true" ]
      },
      "OneOf_SpatialDiscretizationSchemesGasMixtureTransport" : {
        "title" : "(ṁ) Gas mixture transport",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "UPWIND_1ST" : "#/components/schemas/FirstOrderUpwindSpatialScheme",
            "UPWIND_2ND" : "#/components/schemas/SecondOrderUpwindSpatialScheme",
            "CENTRAL_DIFFERENCE" : "#/components/schemas/CentralDifferenceSpatialScheme"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FirstOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/SecondOrderUpwindSpatialScheme"
        }, {
          "$ref" : "#/components/schemas/CentralDifferenceSpatialScheme"
        } ],
        "default" : {
          "type" : "UPWIND_1ST"
        },
        "x-showWhen" : [ "type == SIMERICS_ANALYSIS && isMulticomponent == true" ]
      },
      "OneOf_ViscoelasticNetworkCreepModelViscoelasticNetwork" : {
        "title" : "Creep model",
        "description" : "By selecting the <b>Prony series</b>, you enable a viscoelastic network that models time-dependent behavior such as stress relaxation and creep. This model uses a series of decay constants (relaxation times) to define how the material's internal stresses dissipate over time under sustained loading.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PRONY_SERIES" : "#/components/schemas/PronySeries",
            "OFF" : "#/components/schemas/NoCreep"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/PronySeries"
        }, {
          "$ref" : "#/components/schemas/NoCreep"
        } ],
        "default" : {
          "type" : "OFF"
        }
      },
      "OneOf_PorousTreeTreeType" : {
        "title" : "Type of tree",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "CUSTOM_TREE" : "#/components/schemas/CustomTree",
            "PLANE_TREE" : "#/components/schemas/PlaneTree",
            "OAK" : "#/components/schemas/Oak",
            "SYCAMORE" : "#/components/schemas/Sycamore",
            "SILVER_BIRCH" : "#/components/schemas/SilverBirch",
            "CHESTNUT" : "#/components/schemas/Chestnut"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CustomTree"
        }, {
          "$ref" : "#/components/schemas/PlaneTree"
        }, {
          "$ref" : "#/components/schemas/Oak"
        }, {
          "$ref" : "#/components/schemas/Sycamore"
        }, {
          "$ref" : "#/components/schemas/SilverBirch"
        }, {
          "$ref" : "#/components/schemas/Chestnut"
        } ],
        "default" : {
          "type" : "CUSTOM_TREE"
        }
      },
      "OneOf_FluidResultControlsForcesMoments" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FORCES_AND_MOMENTS" : "#/components/schemas/ForcesMomentsResultControl",
            "FORCE_AND_MOMENT_COEFFICIENTS" : "#/components/schemas/ForceMomentCoefficientsResultControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/ForcesMomentsResultControl"
        }, {
          "$ref" : "#/components/schemas/ForceMomentCoefficientsResultControl"
        } ]
      },
      "OneOf_FluidResultControlsSurfaceData" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "AREA_AVERAGE" : "#/components/schemas/AreaAverageResultControl",
            "AREA_INTEGRAL" : "#/components/schemas/AreaIntegralResultControl",
            "PRESSURE_DIFFERENCE" : "#/components/schemas/PressureDifferenceResultControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AreaAverageResultControl"
        }, {
          "$ref" : "#/components/schemas/AreaIntegralResultControl"
        }, {
          "$ref" : "#/components/schemas/PressureDifferenceResultControl"
        } ]
      },
      "OneOf_FluidResultControlsFieldCalculations" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "PRESSURE" : "#/components/schemas/FieldCalculationsPressureResultControl",
            "TURBULENCE" : "#/components/schemas/FieldCalculationsTurbulenceResultControl",
            "VELOCITY" : "#/components/schemas/FieldCalculationsVelocityResultControl",
            "FRICTION_VELOCITY_U_TAU" : "#/components/schemas/FieldCalculationsFrictionVelocityResultControl",
            "SURFACE_NORMALS" : "#/components/schemas/FieldCalculationsSurfaceNormalsResultControl",
            "WALL_FLUXES" : "#/components/schemas/FieldCalculationsWallFluxesResultControl",
            "AGE_OF_FLUID" : "#/components/schemas/FieldCalculationsMeanAgeOfFluidResultControl",
            "THERMAL_COMFORT" : "#/components/schemas/FieldCalculationsThermalComfortResultControl",
            "ADJOINT_SENSITIVITIES" : "#/components/schemas/FieldCalculationsAdjointSensitivitiesResultControl",
            "WALL_HEAT_FLUX" : "#/components/schemas/FieldCalculationsWallHeatFluxResultControl",
            "MEAN_RADIANT_TEMPERATURE" : "#/components/schemas/FieldCalculationsMeanRadiantTemperatureResultControl",
            "OPERATIVE_TEMPERATURE" : "#/components/schemas/FieldCalculationsOperativeTemperatureResultControl",
            "RESOLVED_TURBULENT_KINETIC_ENERGY" : "#/components/schemas/FieldCalculationsResolvedTKEResultControl",
            "TOTAL_TURBULENT_KINETIC_ENERGY" : "#/components/schemas/FieldCalculationsTotalTKEResultControl",
            "MODELED_TURBULENCE_INTENSITY" : "#/components/schemas/FieldCalculationsModeledTIResultControl",
            "RESOLVED_TURBULENCE_INTENSITY" : "#/components/schemas/FieldCalculationsResolvedTIResultControl",
            "TOTAL_TURBULENCE_INTENSITY" : "#/components/schemas/FieldCalculationsTotalTIResultControl"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FieldCalculationsPressureResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsTurbulenceResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsVelocityResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsFrictionVelocityResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsSurfaceNormalsResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsWallFluxesResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsMeanAgeOfFluidResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsThermalComfortResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsAdjointSensitivitiesResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsWallHeatFluxResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsMeanRadiantTemperatureResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsOperativeTemperatureResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsResolvedTKEResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsTotalTKEResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsModeledTIResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsResolvedTIResultControl"
        }, {
          "$ref" : "#/components/schemas/FieldCalculationsTotalTIResultControl"
        } ]
      },
      "OneOf_PressureLossCurvePorousMediaHeatTransfer" : {
        "title" : "Heat transfer",
        "description" : "The heat transfer modelling inside the porous media matrix:<br><li><b>Fluid only</b>: This model uses exclusively the fluid thermal properties in the porous media region. <li><b>Effective conductivity</b>: This model takes the effective thermal conductivity for the fluid-solid porous matrix as a constant value or a tabulated velocity function.",
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "FLUID_ONLY_HEAT_TRANSFER" : "#/components/schemas/FluidOnlyHeatTransfer",
            "EFFECTIVE_CONDUCTIVITY_HEAT_TRANSFER" : "#/components/schemas/EffectiveConductivityHeatTransfer"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FluidOnlyHeatTransfer"
        }, {
          "$ref" : "#/components/schemas/EffectiveConductivityHeatTransfer"
        } ],
        "default" : {
          "type" : "FLUID_ONLY_HEAT_TRANSFER"
        },
        "x-showWhen" : [ "type in [COUPLED_CONJUGATE_HEAT_TRANSFER,EMBEDDED_BOUNDARY]" ]
      },
      "DataType" : {
        "type" : "string",
        "enum" : [ "POINT", "CELL" ]
      },
      "RenderMode" : {
        "type" : "string",
        "enum" : [ "SURFACES_WITH_WIREFRAME", "WIREFRAME", "SURFACES", "SURFACES_WITH_MESH", "MESH" ]
      },
      "Color" : {
        "required" : [ "b", "g", "r" ],
        "type" : "object",
        "properties" : {
          "r" : {
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "format" : "double"
          },
          "g" : {
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "format" : "double"
          },
          "b" : {
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "format" : "double"
          }
        }
      },
      "CuttingPlane" : {
        "required" : [ "center", "clipping", "name", "normal", "projectVectorsOntoPlane" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "center" : {
            "$ref" : "#/components/schemas/Vector3D"
          },
          "normal" : {
            "$ref" : "#/components/schemas/Vector3D"
          },
          "opacity" : {
            "$ref" : "#/components/schemas/Opacity"
          },
          "clipping" : {
            "type" : "boolean",
            "default" : true
          },
          "vectorGridSpacing" : {
            "maximum" : 0.04,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : true,
            "type" : "number",
            "description" : "This field is required if projectVectorsOntoPlane is set to true.",
            "format" : "double",
            "default" : 0.02
          },
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "vectorField" : {
            "$ref" : "#/components/schemas/VectorField"
          },
          "solidColor" : {
            "$ref" : "#/components/schemas/Color"
          },
          "projectVectorsOntoPlane" : {
            "type" : "boolean",
            "description" : "If a vectorField is provided, this flag will project the vector field onto the cutting plane.",
            "default" : false
          },
          "renderMode" : {
            "$ref" : "#/components/schemas/RenderMode"
          }
        }
      },
      "IsoSurface" : {
        "properties" : {
          "isoScalar" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "isoValue" : {
            "type" : "number",
            "description" : "The iso scalar value. Should be within the selected scalar range. Default value is the average between the min and max in the range.",
            "format" : "float"
          },
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "solidColor" : {
            "$ref" : "#/components/schemas/Color"
          },
          "vectorField" : {
            "$ref" : "#/components/schemas/VectorField"
          },
          "opacity" : {
            "$ref" : "#/components/schemas/Opacity"
          }
        }
      },
      "IsoVolume" : {
        "properties" : {
          "isoScalar" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "minimumIsoValue" : {
            "type" : "number",
            "description" : "The iso scalar minimum value. Should be within the selected scalar range and smaller than the maximumIsoValue. Default value is the third of the range between min and max.",
            "format" : "float"
          },
          "maximumIsoValue" : {
            "type" : "number",
            "description" : "The iso scalar maximum value. Should be within the selected scalar range and larger than the minimumIsoValue. Default value is 2 thirds of the range between min and max.",
            "format" : "float"
          },
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "solidColor" : {
            "$ref" : "#/components/schemas/Color"
          },
          "vectorField" : {
            "$ref" : "#/components/schemas/VectorField"
          },
          "opacity" : {
            "$ref" : "#/components/schemas/Opacity"
          }
        }
      },
      "Displacement" : {
        "required" : [ "field", "scaleFactor" ],
        "type" : "object",
        "properties" : {
          "field" : {
            "$ref" : "#/components/schemas/VectorField"
          },
          "scaleFactor" : {
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "format" : "double",
            "default" : 1.0
          }
        }
      },
      "ParticleTrace" : {
        "required" : [ "seedSettings", "traceBothDirections", "visualizationStyle" ],
        "type" : "object",
        "properties" : {
          "seedSettings" : {
            "$ref" : "#/components/schemas/SeedSettings"
          },
          "visualizationStyle" : {
            "$ref" : "#/components/schemas/OneOfVisualizationStyle"
          },
          "traceBothDirections" : {
            "type" : "boolean",
            "description" : "If set to true, the trace will be computed both forwards and backwards from the seed points.",
            "default" : true
          },
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "solidColor" : {
            "$ref" : "#/components/schemas/Color"
          }
        }
      },
      "SeedSettings" : {
        "required" : [ "center", "horizontalDimension", "normal", "verticalDimension" ],
        "properties" : {
          "center" : {
            "$ref" : "#/components/schemas/Vector3D"
          },
          "normal" : {
            "$ref" : "#/components/schemas/Vector3D"
          },
          "horizontalDimension" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "description" : "Number of seed points in the horizontal direction.",
            "default" : 10
          },
          "verticalDimension" : {
            "maximum" : 500,
            "minimum" : 1,
            "type" : "integer",
            "description" : "Number of seed points in the vertical direction.",
            "default" : 10
          },
          "spacing" : {
            "type" : "number",
            "description" : "The distance between the seed points. Default is size * 4.",
            "format" : "float"
          },
          "size" : {
            "type" : "number",
            "description" : "The radius of the particle trace geometry (cylinder, sphere, comet). Default is the extent of the bounding box of the moddel divided by 800.",
            "format" : "float"
          }
        }
      },
      "OneOfVisualizationStyle" : {
        "discriminator" : {
          "propertyName" : "representation",
          "mapping" : {
            "CYLINDERS" : "#/components/schemas/CylindersVisualizationStyle",
            "SPHERES" : "#/components/schemas/SpheresVisualizationStyle",
            "COMETS" : "#/components/schemas/CometsVisualizationStyle"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/CylindersVisualizationStyle"
        }, {
          "$ref" : "#/components/schemas/SpheresVisualizationStyle"
        }, {
          "$ref" : "#/components/schemas/CometsVisualizationStyle"
        } ]
      },
      "CylindersVisualizationStyle" : {
        "required" : [ "representation" ],
        "type" : "object",
        "properties" : {
          "representation" : {
            "type" : "string",
            "description" : "The representation to use for particle traces.",
            "default" : "CYLINDERS"
          }
        }
      },
      "SpheresVisualizationStyle" : {
        "required" : [ "numPulses", "representation" ],
        "type" : "object",
        "properties" : {
          "representation" : {
            "type" : "string",
            "description" : "The representation to use for particle traces.",
            "default" : "SPHERES"
          },
          "numPulses" : {
            "maximum" : 200,
            "minimum" : 5,
            "type" : "integer",
            "description" : "This value specifies how many pulses there should be in the model.",
            "default" : 15
          }
        }
      },
      "CometsVisualizationStyle" : {
        "required" : [ "numPulses", "relativeCometLength", "representation" ],
        "type" : "object",
        "properties" : {
          "representation" : {
            "type" : "string",
            "description" : "The representation to use for particle traces.",
            "default" : "COMETS"
          },
          "numPulses" : {
            "maximum" : 200,
            "minimum" : 5,
            "type" : "integer",
            "description" : "This value specifies how many pulses there should be in the model.",
            "default" : 15
          },
          "relativeCometLength" : {
            "maximum" : 0.1,
            "exclusiveMaximum" : false,
            "minimum" : 1.0E-5,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The length of the tail of the comets. It is specified in time and is a fraction of the global total time range for all particles in this particle trace. For example, if the total trace time is 2, and the relativeCometLength is 0.01, then the length of the tail will be 0.02.",
            "format" : "double",
            "default" : 1.0E-5
          }
        }
      },
      "Filters" : {
        "type" : "object",
        "properties" : {
          "cuttingPlanes" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/CuttingPlane"
            }
          },
          "isoSurfaces" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IsoSurface"
            }
          },
          "isoVolumes" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/IsoVolume"
            }
          },
          "displacement" : {
            "$ref" : "#/components/schemas/Displacement"
          },
          "particleTraces" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ParticleTrace"
            }
          }
        }
      },
      "ModelSettings" : {
        "required" : [ "hideSelectedParts" ],
        "type" : "object",
        "properties" : {
          "parts" : {
            "type" : "array",
            "description" : "The parts to show or hide in the report (see hideSelectedParts).",
            "items" : {
              "$ref" : "#/components/schemas/Part"
            }
          },
          "hideSelectedParts" : {
            "type" : "boolean",
            "description" : "If set to true, the parts array indicates the hidden parts, while the rest of the model parts are visible (blacklist). On the other hand, if set to false, then the parts array indicate the visible parts while the rest of the model parts are hidden (whitelist). If the parts array is empty, then setting this value to true will hide all the model parts, while setting it to false will show all the model parts.",
            "default" : false
          },
          "showVolumes" : {
            "type" : "boolean",
            "description" : "If set to false, then volumes will be hidden unless they are mentioned explicitly, i.e. when a volume is included in the parts array, and hideSelectedParts is set to false.",
            "default" : false
          },
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "scalarSettings" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ScalarSettings"
            }
          },
          "vectorSettings" : {
            "type" : "array",
            "description" : "The settings for the different vectors of the model.",
            "items" : {
              "$ref" : "#/components/schemas/VectorSettings"
            }
          },
          "opacity" : {
            "$ref" : "#/components/schemas/Opacity"
          },
          "renderMode" : {
            "$ref" : "#/components/schemas/RenderMode"
          },
          "solidColor" : {
            "$ref" : "#/components/schemas/Color"
          }
        }
      },
      "OneOfCameraSettings" : {
        "discriminator" : {
          "propertyName" : "settingType",
          "mapping" : {
            "USER_INPUT" : "#/components/schemas/UserInputCameraSettings",
            "TOP_VIEW" : "#/components/schemas/TopViewPredefinedCameraSettings",
            "FORTY_FIVE_FORTY_FIVE_VIEW" : "#/components/schemas/FortyFiveViewPredefinedCameraSettings"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/UserInputCameraSettings"
        }, {
          "$ref" : "#/components/schemas/TopViewPredefinedCameraSettings"
        }, {
          "$ref" : "#/components/schemas/FortyFiveViewPredefinedCameraSettings"
        } ]
      },
      "OneOfAnimationOutputSettings" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_STEP" : "#/components/schemas/TimeStepAnimationOutputSettings",
            "PARTICLE_TRACE" : "#/components/schemas/ParticleTraceAnimationOutputSettings",
            "SHAPE" : "#/components/schemas/ShapeAnimationOutputSettings"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/TimeStepAnimationOutputSettings"
        }, {
          "$ref" : "#/components/schemas/ParticleTraceAnimationOutputSettings"
        }, {
          "$ref" : "#/components/schemas/ShapeAnimationOutputSettings"
        } ]
      },
      "AnimationOutputSettings" : {
        "required" : [ "format", "frameRate", "name", "resolution", "showCube", "showLegend" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "format" : {
            "type" : "string",
            "default" : "GIF",
            "enum" : [ "GIF", "MP4" ]
          },
          "resolution" : {
            "$ref" : "#/components/schemas/ResolutionInfo"
          },
          "frameRate" : {
            "maximum" : 60,
            "minimum" : 1,
            "type" : "integer",
            "default" : 20
          },
          "showLegend" : {
            "type" : "boolean",
            "default" : true
          },
          "showCube" : {
            "type" : "boolean",
            "default" : true
          },
          "backgroundColor" : {
            "$ref" : "#/components/schemas/Color"
          }
        }
      },
      "TimeStepAnimationOutputSettings" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/AnimationOutputSettings"
        }, {
          "required" : [ "fromFrameIndex", "skipFrames", "type" ],
          "type" : "object",
          "properties" : {
            "type" : {
              "type" : "string",
              "default" : "TIME_STEP"
            },
            "fromFrameIndex" : {
              "minimum" : 0,
              "type" : "integer",
              "default" : 0
            },
            "toFrameIndex" : {
              "minimum" : 0,
              "type" : "integer",
              "description" : "Index of the last frame to include (inclusive). Defaults to the last available frame when not provided."
            },
            "skipFrames" : {
              "minimum" : 0,
              "type" : "integer",
              "default" : 0
            }
          }
        } ]
      },
      "ParticleTraceAnimationOutputSettings" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/AnimationOutputSettings"
        }, {
          "required" : [ "steps", "type" ],
          "type" : "object",
          "properties" : {
            "type" : {
              "type" : "string",
              "default" : "PARTICLE_TRACE"
            },
            "frameIndex" : {
              "minimum" : 0,
              "type" : "integer",
              "description" : "Default is the last frame (time step) in the result."
            },
            "steps" : {
              "maximum" : 10000,
              "minimum" : 1,
              "type" : "integer",
              "description" : "The number of steps to generate for the particle trace animation.",
              "default" : 300
            }
          }
        } ]
      },
      "ShapeAnimationOutputSettings" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/AnimationOutputSettings"
        }, {
          "required" : [ "range", "steps" ],
          "type" : "object",
          "properties" : {
            "type" : {
              "type" : "string",
              "default" : "SHAPE"
            },
            "frameIndex" : {
              "minimum" : 0,
              "type" : "integer",
              "description" : "Frame (or frequency) for which to create a mode shape animation.Default is the last frame in the result."
            },
            "steps" : {
              "maximum" : 100,
              "minimum" : 1,
              "type" : "integer",
              "description" : "The number of steps to generate for the shape animation",
              "default" : 30
            },
            "range" : {
              "type" : "string",
              "description" : "How to deform the model for the animation. FULL implies animating from the original, undeformed shape to the maximum displaced position, then back to original shape; do the same for the negative maximum deformation, then back (x_0 -> +x_max -> x_0 -> -x_max -> x_0). HALF implies animating from the original, undeformed shape to the maximum displaced position, then back to original shape (x_0 -> +x_max -> x_0). QUARTER implies animating from the original, undeformed shape to the maxiumum displaced position (x_0 -> +x_max)",
              "default" : "FULL",
              "enum" : [ "FULL", "HALF", "QUARTER" ]
            },
            "backgroundColor" : {
              "$ref" : "#/components/schemas/Color"
            }
          }
        } ]
      },
      "ScreenshotOutputSettings" : {
        "required" : [ "format", "name", "resolution", "showCube", "showLegend" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "format" : {
            "type" : "string",
            "default" : "PNG",
            "enum" : [ "PNG" ]
          },
          "resolution" : {
            "$ref" : "#/components/schemas/ResolutionInfo"
          },
          "frameIndex" : {
            "minimum" : 0,
            "type" : "integer",
            "description" : "Default to the last timestep or frame in the result."
          },
          "showLegend" : {
            "type" : "boolean",
            "default" : true
          },
          "showCube" : {
            "type" : "boolean",
            "default" : true
          },
          "backgroundColor" : {
            "$ref" : "#/components/schemas/Color"
          }
        }
      },
      "Part" : {
        "required" : [ "partIdentifier" ],
        "type" : "object",
        "properties" : {
          "partIdentifier" : {
            "type" : "string",
            "description" : "The identifier of the part in the result."
          },
          "parentIdentifier" : {
            "type" : "string",
            "description" : "The identifier of the parent of the part in the result. This value is necessary in cases where multiple parts appear in the result with the same name/identifier."
          },
          "opacity" : {
            "$ref" : "#/components/schemas/Opacity"
          },
          "renderMode" : {
            "$ref" : "#/components/schemas/RenderMode"
          },
          "solidColor" : {
            "$ref" : "#/components/schemas/Color"
          }
        }
      },
      "ReportProperties" : {
        "discriminator" : {
          "propertyName" : "reportType",
          "mapping" : {
            "ANIMATION" : "#/components/schemas/AnimationReportProperties",
            "SCREENSHOT" : "#/components/schemas/ScreenshotReportProperties",
            "STATISTICS" : "#/components/schemas/StatisticsReportProperties",
            "STATISTICS_GLOBAL_MIN_MAX" : "#/components/schemas/StatisticsGlobalMinMaxReportProperties"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AnimationReportProperties"
        }, {
          "$ref" : "#/components/schemas/ScreenshotReportProperties"
        }, {
          "$ref" : "#/components/schemas/StatisticsReportProperties"
        }, {
          "$ref" : "#/components/schemas/StatisticsGlobalMinMaxReportProperties"
        } ]
      },
      "ReportPropertiesPublic" : {
        "description" : "Public counterpart of ReportProperties whose STATISTICS variant omits the server-resolved resolution hints (cadAssociations, topologyLabelByName). Used by the public ReportResponse; the report request and the internal report representation use ReportProperties, which carries those fields.\n",
        "discriminator" : {
          "propertyName" : "reportType",
          "mapping" : {
            "ANIMATION" : "#/components/schemas/AnimationReportProperties",
            "SCREENSHOT" : "#/components/schemas/ScreenshotReportProperties",
            "STATISTICS" : "#/components/schemas/StatisticsReportPropertiesPublic",
            "STATISTICS_GLOBAL_MIN_MAX" : "#/components/schemas/StatisticsGlobalMinMaxReportPropertiesPublic"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AnimationReportProperties"
        }, {
          "$ref" : "#/components/schemas/ScreenshotReportProperties"
        }, {
          "$ref" : "#/components/schemas/StatisticsReportPropertiesPublic"
        }, {
          "$ref" : "#/components/schemas/StatisticsGlobalMinMaxReportPropertiesPublic"
        } ]
      },
      "StepSelector" : {
        "required" : [ "selection" ],
        "type" : "object",
        "properties" : {
          "selection" : {
            "type" : "string",
            "enum" : [ "FIRST", "LAST", "ALL", "INDICES" ]
          },
          "indices" : {
            "type" : "array",
            "description" : "The 0-based step indices to scan; used only when selection is INDICES.",
            "items" : {
              "minimum" : 0,
              "type" : "integer"
            }
          }
        },
        "description" : "Selects which solution steps to scan. A step is one entry in the result sequence: a time-step for a transient analysis, or a frequency for a harmonic analysis. Set selection to FIRST or LAST for a single boundary step, ALL for every step, or INDICES for a specific set given in indices (0-based). indices applies only when selection is INDICES.\n"
      },
      "StatisticsGlobalMinMaxReportProperties" : {
        "required" : [ "reportType", "scalarField", "steps" ],
        "type" : "object",
        "properties" : {
          "reportType" : {
            "type" : "string",
            "default" : "STATISTICS_GLOBAL_MIN_MAX"
          },
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "steps" : {
            "$ref" : "#/components/schemas/StepSelector"
          },
          "topologyLabelByName" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            },
            "description" : "Mesh-part-name to user-facing label mapping, used to report the extreme's part by label rather than internal mesh name."
          }
        },
        "description" : "Configuration for a global min/max report: find the smallest and largest value of one scalar field across the entire model, over the selected steps, reporting each extreme's value, coordinates, part, and the step it occurred at.\n"
      },
      "StatisticsGlobalMinMaxReportPropertiesPublic" : {
        "required" : [ "reportType", "scalarField", "steps" ],
        "type" : "object",
        "properties" : {
          "reportType" : {
            "type" : "string",
            "default" : "STATISTICS_GLOBAL_MIN_MAX"
          },
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "steps" : {
            "$ref" : "#/components/schemas/StepSelector"
          }
        },
        "description" : "The global min/max report configuration as returned in a report response: the scalar field whose extremes were sought and the solution steps that were scanned.\n"
      },
      "AnimationReportProperties" : {
        "required" : [ "cameraSettings", "modelSettings", "outputSettings", "reportType" ],
        "type" : "object",
        "properties" : {
          "reportType" : {
            "type" : "string",
            "default" : "ANIMATION"
          },
          "modelSettings" : {
            "$ref" : "#/components/schemas/ModelSettings"
          },
          "filters" : {
            "$ref" : "#/components/schemas/Filters"
          },
          "cameraSettings" : {
            "$ref" : "#/components/schemas/OneOfCameraSettings"
          },
          "outputSettings" : {
            "$ref" : "#/components/schemas/OneOfAnimationOutputSettings"
          }
        }
      },
      "ScreenshotReportProperties" : {
        "required" : [ "cameraSettings", "modelSettings", "outputSettings", "reportType" ],
        "type" : "object",
        "properties" : {
          "reportType" : {
            "type" : "string",
            "default" : "SCREENSHOT"
          },
          "modelSettings" : {
            "$ref" : "#/components/schemas/ModelSettings"
          },
          "filters" : {
            "$ref" : "#/components/schemas/Filters"
          },
          "cameraSettings" : {
            "$ref" : "#/components/schemas/OneOfCameraSettings"
          },
          "outputSettings" : {
            "$ref" : "#/components/schemas/ScreenshotOutputSettings"
          }
        }
      },
      "StatisticsReportPropertiesPublic" : {
        "required" : [ "reportType", "scalarField" ],
        "type" : "object",
        "properties" : {
          "reportType" : {
            "type" : "string",
            "default" : "STATISTICS"
          },
          "partIdentifiers" : {
            "minItems" : 1,
            "type" : "array",
            "description" : "Names of individual model parts for which to compute statistics independently. Each name must exactly match a part name present in the simulation result. Each part produces a separate entry in the statisticsResult, keyed by part name.\n",
            "items" : {
              "type" : "string"
            }
          },
          "partGroupIdentifiers" : {
            "minItems" : 1,
            "type" : "array",
            "description" : "Named groups of parts whose bulk values are aggregated into a single combined result entry. Useful when several parts form a logical unit (e.g. all wall patches) and a single aggregated metric is needed. Each group produces one entry in the statisticsResult, keyed by the group identifier.\n",
            "items" : {
              "$ref" : "#/components/schemas/StatisticsPartGroup"
            }
          },
          "cuttingPlanes" : {
            "minItems" : 1,
            "type" : "array",
            "description" : "Cutting planes for which to compute statistics. A cutting plane is an infinite plane defined by a point and a normal vector that slices through the model. Statistics are computed over the intersection geometry. Each plane produces one entry in the statisticsResult, keyed by the plane identifier.\n",
            "items" : {
              "$ref" : "#/components/schemas/StatisticsCuttingPlane"
            }
          },
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "frameIndex" : {
            "minimum" : 0,
            "type" : "integer",
            "description" : "Zero-based time step index at which to evaluate the field. When not provided, statistics are computed at the last available time step.\n"
          }
        },
        "description" : "Configuration for a statistics (bulk calculation) report. Computes scalar field statistics (minimum, maximum, average, integral, and area/volume-weighted equivalents) over model geometry at a chosen time step.\nAt least one of partIdentifiers, partGroupIdentifiers, or cuttingPlanes must be provided.\nParts are named surfaces or volumes that exist in the simulation result (e.g. wall patches in a CFD model or solid bodies in a structural model). Use partIdentifiers to get independent results per part, or partGroupIdentifiers to combine several parts into one aggregated result.\nCutting planes are user-defined infinite planes that slice through the model geometry. They are specified by a point on the plane and a normal vector, and statistics are computed over the intersection.\n",
        "anyOf" : [ {
          "required" : [ "partIdentifiers" ]
        }, {
          "required" : [ "partGroupIdentifiers" ]
        }, {
          "required" : [ "cuttingPlanes" ]
        } ]
      },
      "StatisticsReportProperties" : {
        "required" : [ "reportType", "scalarField" ],
        "type" : "object",
        "properties" : {
          "reportType" : {
            "type" : "string",
            "default" : "STATISTICS"
          },
          "partIdentifiers" : {
            "minItems" : 1,
            "type" : "array",
            "description" : "Names of individual model parts for which to compute statistics independently. Each name must exactly match a part name present in the simulation result model. Each part produces a separate entry in the statisticsResult, keyed by part name.\n",
            "items" : {
              "type" : "string"
            }
          },
          "partGroupIdentifiers" : {
            "minItems" : 1,
            "type" : "array",
            "description" : "Named groups of parts whose bulk values are aggregated into a single combined result entry. Useful when several parts form a logical unit (e.g. all wall patches) and a single aggregated metric is needed. Each group produces one entry in the statisticsResult, keyed by the group identifier.\n",
            "items" : {
              "$ref" : "#/components/schemas/StatisticsPartGroup"
            }
          },
          "cuttingPlanes" : {
            "minItems" : 1,
            "type" : "array",
            "description" : "Cutting planes for which to compute statistics. A cutting plane is an infinite plane defined by a point and a normal vector that slices through the model. Statistics are computed over the intersection geometry. Each plane produces one entry in the statisticsResult, keyed by the plane identifier.\n",
            "items" : {
              "$ref" : "#/components/schemas/StatisticsCuttingPlane"
            }
          },
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "frameIndex" : {
            "minimum" : 0,
            "type" : "integer",
            "description" : "Zero-based time step index at which to evaluate the field. When not provided, statistics are computed at the last available time step.\n"
          },
          "cadAssociations" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "array",
              "items" : {
                "type" : "string"
              }
            },
            "description" : "Filtered CAD-Mesh name mapping for the requested parts only. Each key is a CAD entity name provided by the user and each value is the list of mesh names it maps to. A value of \"<defeatured>\" means the CAD entity has no mesh equivalent. Absent when no CAD-Mesh mapping is available or when all requested names are already mesh names.\n"
          },
          "topologyLabelByName" : {
            "type" : "object",
            "additionalProperties" : {
              "type" : "string"
            },
            "description" : "Mesh-part-name to user-facing label mapping for the mesh topology, used to label cutting-plane regions with a human-readable name (e.g. \"region4\" -> \"Air domain\"). Populated only for cutting-plane requests; absent otherwise.\n"
          }
        },
        "description" : "Configuration for a statistics (bulk calculation) report. Computes scalar field statistics (minimum, maximum, average, integral, and area/volume-weighted equivalents) over model geometry at a chosen time step. Also carries the server-resolved resolution hints (cadAssociations, topologyLabelByName) that postproc-manager populates and postproc-result-query consumes; these hints are stripped from the public API response, which uses the reduced StatisticsReportPropertiesPublic projection.\nAt least one of partIdentifiers, partGroupIdentifiers, or cuttingPlanes must be provided.\n",
        "anyOf" : [ {
          "required" : [ "partIdentifiers" ]
        }, {
          "required" : [ "partGroupIdentifiers" ]
        }, {
          "required" : [ "cuttingPlanes" ]
        } ]
      },
      "StatisticsPartGroup" : {
        "required" : [ "identifier", "partNames" ],
        "type" : "object",
        "properties" : {
          "identifier" : {
            "type" : "string",
            "description" : "Unique label for this group. Used as the key for this group's entry in the statisticsResult map returned when the report is finished.\n"
          },
          "partNames" : {
            "minItems" : 1,
            "type" : "array",
            "description" : "Names of the model parts to include in this group. Each name must exactly match a part name present in the simulation result. Parts not found in the model are skipped.\n",
            "items" : {
              "type" : "string"
            }
          }
        },
        "description" : "A named group of model parts whose bulk values are aggregated into a single result entry. All parts in the group are combined before computing statistics, so the result reflects the collective geometry rather than individual parts.\n"
      },
      "StatisticsCuttingPlane" : {
        "required" : [ "identifier", "normal", "position" ],
        "type" : "object",
        "properties" : {
          "identifier" : {
            "type" : "string",
            "description" : "Unique label for this cutting plane. Used as the key for this plane's entry in the statisticsResult map returned when the report is finished.\n"
          },
          "position" : {
            "$ref" : "#/components/schemas/Vector3D"
          },
          "normal" : {
            "$ref" : "#/components/schemas/Vector3D"
          }
        },
        "description" : "A cutting plane defined by a point and a normal vector. The plane is infinite and slices through the model geometry; statistics are computed over the resulting intersection.\n"
      },
      "StatisticsMetric" : {
        "description" : "A scalar statistics metric value paired with its unit. The value is null when the metric could not be computed. Integral metrics carry a composite unit (fieldUnit x surfaceAreaUnit or fieldUnit x volumeUnit); all other metrics carry the plain scalar field unit.\n",
        "allOf" : [ {
          "$ref" : "#/components/schemas/MeasuredScalar"
        } ]
      },
      "StatisticsCentroidMetric" : {
        "description" : "Centroid [x, y, z] coordinates paired with their length unit.\n",
        "allOf" : [ {
          "$ref" : "#/components/schemas/MeasuredVector"
        } ]
      },
      "StatisticsBulkValues" : {
        "type" : "object",
        "properties" : {
          "elementMin" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "elementMax" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "elementAverage" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "elementIntegral" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "elementAreaWeightedAverage" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "nodeAverage" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "nodeMin" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "nodeMax" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "volumeElementIntegral" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "volumeElementAverage" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "volumeElementVolumeAreaWeightedAverage" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "volumeElementMin" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "volumeElementMax" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "massFlowRate" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "volumetricFlowRate" : {
            "$ref" : "#/components/schemas/StatisticsMetric"
          },
          "centroid" : {
            "$ref" : "#/components/schemas/StatisticsCentroidMetric"
          },
          "boundingBoxMin" : {
            "$ref" : "#/components/schemas/StatisticsCentroidMetric"
          },
          "boundingBoxMax" : {
            "$ref" : "#/components/schemas/StatisticsCentroidMetric"
          }
        },
        "description" : "Bulk statistical values (metrics, centroid and bounding box) computed over a region of the model - a part, a part group, a whole cutting plane, or a single cutting-plane region. Each numeric metric is an object with a 'value' and a 'unit' field. Integral metrics carry composite units; all others carry the plain scalar field unit.\n"
      },
      "GlobalMinMaxResult" : {
        "type" : "object",
        "properties" : {
          "field" : {
            "type" : "string",
            "description" : "The label of the scalar field whose global minimum and maximum are reported here."
          },
          "dataType" : {
            "$ref" : "#/components/schemas/DataType"
          },
          "minimum" : {
            "$ref" : "#/components/schemas/GlobalMinMaxExtreme"
          },
          "maximum" : {
            "$ref" : "#/components/schemas/GlobalMinMaxExtreme"
          }
        },
        "description" : "The global minimum and maximum of a scalar field across the entire model over the selected steps.\n"
      },
      "GlobalMinMaxExtreme" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "$ref" : "#/components/schemas/MeasuredScalar"
          },
          "coordinates" : {
            "$ref" : "#/components/schemas/MeasuredVector"
          },
          "partName" : {
            "type" : "string",
            "description" : "The mesh part name the extreme was found on; null if the part could not be resolved."
          },
          "partLabel" : {
            "type" : "string",
            "description" : "The user-facing label of that part (resolved from the mesh topology); null when no label is available or the part could not be resolved."
          },
          "step" : {
            "type" : "object",
            "properties" : {
              "index" : {
                "type" : "integer",
                "description" : "Zero-based step index."
              },
              "name" : {
                "type" : "string",
                "description" : "The step's label (often the time value or frequency)."
              }
            },
            "description" : "The step at which this extreme occurred (a time-step for transient analyses, a frequency for harmonic, etc)."
          }
        },
        "description" : "A single located extreme (the minimum or the maximum) with its value, coordinates, part, and step. Whether the value is node- or cell-based is given by the result's dataType."
      },
      "MeasuredScalar" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "type" : "number",
            "description" : "The numeric value, or null when it could not be computed.",
            "format" : "double"
          },
          "unit" : {
            "type" : "string"
          }
        },
        "description" : "A scalar quantity paired with its unit string."
      },
      "MeasuredVector" : {
        "type" : "object",
        "properties" : {
          "value" : {
            "maxItems" : 3,
            "minItems" : 3,
            "type" : "array",
            "items" : {
              "type" : "number",
              "format" : "double"
            }
          },
          "unit" : {
            "type" : "string"
          }
        },
        "description" : "A 3-component spatial vector (e.g. a position or a centroid) paired with its length unit."
      },
      "StatisticsResultEntry" : {
        "description" : "Bulk values for a single part, part group, or cutting plane. For a cutting plane it additionally carries the per-region breakdown in 'regions'; for parts and part groups 'regions' is absent.\n",
        "allOf" : [ {
          "$ref" : "#/components/schemas/StatisticsBulkValues"
        }, {
          "type" : "object",
          "properties" : {
            "regions" : {
              "type" : "array",
              "description" : "For a cutting plane, the per-region breakdown: one entry per distinct area produced by the cut (one per intersected part, or several when a single part is cut in more than one place). The enclosing entry's own metrics remain the whole-plane aggregate over all regions; this array only adds the per-region split. Absent for part and part-group entries.\n",
              "items" : {
                "$ref" : "#/components/schemas/StatisticsCuttingPlaneRegionEntry"
              }
            }
          }
        } ]
      },
      "StatisticsCuttingPlaneRegionEntry" : {
        "description" : "Bulk values for a single cutting-plane region (one distinct area produced by the cut), labelled with the part from which it originates. Regions do not nest (a region has no 'regions' of its own).\n",
        "allOf" : [ {
          "$ref" : "#/components/schemas/StatisticsBulkValues"
        }, {
          "type" : "object",
          "properties" : {
            "partName" : {
              "type" : "string",
              "description" : "The mesh part name the plane intersected to produce this region; null when the part could not be resolved.\n"
            },
            "partLabel" : {
              "type" : "string",
              "description" : "The user-facing label of the intersected part, resolved from the mesh topology (e.g. \"Air domain\", \"solid1\"); null when no label could be resolved for the part.\n"
            }
          }
        } ]
      },
      "ReportFromStateProperties" : {
        "type" : "object",
        "discriminator" : {
          "propertyName" : "reportType",
          "mapping" : {
            "ANIMATION" : "#/components/schemas/AnimationReportFromStateProperties",
            "SCREENSHOT" : "#/components/schemas/ScreenshotReportFromStateProperties"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/AnimationReportFromStateProperties"
        }, {
          "$ref" : "#/components/schemas/ScreenshotReportFromStateProperties"
        } ]
      },
      "StateOverrides" : {
        "type" : "object",
        "properties" : {
          "modelSettings" : {
            "$ref" : "#/components/schemas/ModelSettingsOverride"
          },
          "filters" : {
            "$ref" : "#/components/schemas/FiltersOverride"
          }
        },
        "description" : "Render-time overrides applied on top of the fetched post-processor state, mirroring the report's own model/filter structure so each override is unambiguous. Additive - further sections (filters, ...) can be added over time without changing the report-from-state contract."
      },
      "ModelSettingsOverride" : {
        "type" : "object",
        "properties" : {
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "colorLegendScaling" : {
            "type" : "string",
            "description" : "Overrides how the color legend range is scaled for the active scalar (see ScalarSettings.colorLegendScaling): FULL_RANGE (whole dataset), VISIBLE_ITEMS (currently visible items only), or VISIBLE_ITEMS_WITH_INNER_VOLUME (visible items plus the inner volume behind visible faces).",
            "enum" : [ "FULL_RANGE", "VISIBLE_ITEMS", "VISIBLE_ITEMS_WITH_INNER_VOLUME" ]
          },
          "outOfRangeColors" : {
            "$ref" : "#/components/schemas/OutOfRangeColorOverride"
          }
        },
        "description" : "Partial model settings applied as an override on top of the state's own model settings. All properties are optional; only those provided are overridden."
      },
      "OutOfRangeColorOverride" : {
        "required" : [ "scalarField" ],
        "type" : "object",
        "properties" : {
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "belowRangeColor" : {
            "$ref" : "#/components/schemas/Color"
          },
          "aboveRangeColor" : {
            "$ref" : "#/components/schemas/Color"
          }
        },
        "description" : "Out-of-range colors apply to an individual scalar, overriding what the state saved for it (including states/views with out-of-range colors switched off). This override requires the target field name. The colors are a per-scalar setting, a state can carry settings for several scalars. The target scalar can be one that has been applied to the model itself, globally, or one that was applied on a cutting plane, isosurface, isovolume or particle-trace. The override is considered valid only if the target scalar is in fact applied to either the model or a filter in the state/view, otherwise it will be rejected. This applies to automatic, manual and default states/vies."
      },
      "FiltersOverride" : {
        "type" : "object",
        "properties" : {
          "displacement" : {
            "$ref" : "#/components/schemas/Displacement"
          }
        },
        "description" : "Partial filter settings applied as an override on top of the state's own filters. All properties are optional; only those provided are overridden."
      },
      "AnimationReportFromStateProperties" : {
        "required" : [ "outputSettings", "reportType", "stateMetadata" ],
        "type" : "object",
        "properties" : {
          "reportType" : {
            "type" : "string",
            "default" : "ANIMATION"
          },
          "stateMetadata" : {
            "$ref" : "#/components/schemas/StateMetadata"
          },
          "outputSettings" : {
            "$ref" : "#/components/schemas/OneOfAnimationOutputSettings"
          },
          "cameraOverride" : {
            "$ref" : "#/components/schemas/OneOfCameraSettings"
          },
          "stateOverrides" : {
            "$ref" : "#/components/schemas/StateOverrides"
          }
        }
      },
      "ScreenshotReportFromStateProperties" : {
        "required" : [ "outputSettings", "reportType", "stateMetadata" ],
        "type" : "object",
        "properties" : {
          "reportType" : {
            "type" : "string",
            "default" : "SCREENSHOT"
          },
          "stateMetadata" : {
            "$ref" : "#/components/schemas/StateMetadata"
          },
          "outputSettings" : {
            "$ref" : "#/components/schemas/ScreenshotOutputSettings"
          },
          "cameraOverride" : {
            "$ref" : "#/components/schemas/OneOfCameraSettings"
          },
          "stateOverrides" : {
            "$ref" : "#/components/schemas/StateOverrides"
          },
          "persist" : {
            "type" : "boolean",
            "description" : "When false, the rendered screenshot is not registered back into the project (ephemeral). Defaults to true.",
            "default" : true
          }
        }
      },
      "ReportFromStateRequest" : {
        "required" : [ "name", "reportFromStateProperties", "resultIds" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 200,
            "minLength" : 1,
            "type" : "string",
            "description" : "The name of the report."
          },
          "description" : {
            "maxLength" : 1000,
            "minLength" : 1,
            "type" : "string",
            "description" : "The description of the report."
          },
          "resultIds" : {
            "maxItems" : 1,
            "minItems" : 1,
            "type" : "array",
            "description" : "The IDs of the results for which the report should be created.",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "reportFromStateProperties" : {
            "$ref" : "#/components/schemas/ReportFromStateProperties"
          },
          "reportId" : {
            "type" : "string",
            "description" : "If provided, the newly created report will have this value for its UUID.",
            "format" : "uuid"
          },
          "trigger" : {
            "$ref" : "#/components/schemas/ReportTrigger"
          }
        }
      },
      "ReportRequest" : {
        "required" : [ "name", "reportProperties" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 200,
            "minLength" : 1,
            "type" : "string",
            "description" : "The name of the report."
          },
          "description" : {
            "maxLength" : 1000,
            "minLength" : 1,
            "type" : "string",
            "description" : "The description of the report."
          },
          "resultIds" : {
            "maxItems" : 1,
            "minItems" : 0,
            "type" : "array",
            "description" : "The ID of the simulation result for which the report is created. Exactly one entry, or empty when dataId is given.",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "dataId" : {
            "pattern" : "^data:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$",
            "type" : "string",
            "description" : "The Data ID of the dataflow output for which the report is created. The data must belong to the project and reference a RAMPS result; the report then stores and returns that result's ID as rampsId. When set, resultIds must be empty. Supported for animation and screenshot reports; statistics reports are not supported yet."
          },
          "reportProperties" : {
            "$ref" : "#/components/schemas/ReportProperties"
          },
          "reportId" : {
            "type" : "string",
            "description" : "If provided, the newly created report will have this value for its UUID.",
            "format" : "uuid"
          },
          "trigger" : {
            "$ref" : "#/components/schemas/ReportTrigger"
          }
        },
        "description" : "A report on a simulation result, given as exactly one entry in resultIds, or on a standalone RAMPS result such as a dataflow output, given as its dataId. Exactly one of the two must be given; the service rejects requests with both or neither."
      },
      "ReportTrigger" : {
        "type" : "string",
        "description" : "Identifies where/why a report was triggered (the creating flow). Defaults to API_GENERIC for callers that do not specify it.\nAI_AGENT_PREVIEW marks ephemeral preview images created for the AI agent; these are cleaned up automatically.\n",
        "default" : "API_GENERIC",
        "enum" : [ "API_GENERIC", "WORKBENCH_GENERIC", "WORKBENCH_ANIMATION_RECORDING", "AI_AGENT_GENERIC", "AI_AGENT_PREVIEW" ]
      },
      "DefaultStateMetadata" : {
        "required" : [ "stateAnalysisType", "stateType" ],
        "type" : "object",
        "properties" : {
          "stateType" : {
            "type" : "string",
            "default" : "DEFAULT"
          },
          "stateAnalysisType" : {
            "type" : "string",
            "description" : "The analysis type (Mandatory for a DEFAULT state)."
          }
        }
      },
      "AutomaticStateMetadata" : {
        "required" : [ "stateType", "stateUuid" ],
        "type" : "object",
        "properties" : {
          "stateType" : {
            "type" : "string",
            "default" : "AUTOMATIC"
          },
          "stateUuid" : {
            "type" : "string",
            "description" : "The UUID of the specific state (Mandatory for AUTOMATIC/MANUAL).",
            "format" : "uuid"
          }
        }
      },
      "ManualStateMetadata" : {
        "required" : [ "stateType", "stateUuid" ],
        "type" : "object",
        "properties" : {
          "stateType" : {
            "type" : "string",
            "default" : "MANUAL"
          },
          "stateUuid" : {
            "type" : "string",
            "description" : "The UUID of the specific state (Mandatory for AUTOMATIC/MANUAL).",
            "format" : "uuid"
          }
        }
      },
      "StateMetadata" : {
        "type" : "object",
        "discriminator" : {
          "propertyName" : "stateType",
          "mapping" : {
            "DEFAULT" : "#/components/schemas/DefaultStateMetadata",
            "AUTOMATIC" : "#/components/schemas/AutomaticStateMetadata",
            "MANUAL" : "#/components/schemas/ManualStateMetadata"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/DefaultStateMetadata"
        }, {
          "$ref" : "#/components/schemas/AutomaticStateMetadata"
        }, {
          "$ref" : "#/components/schemas/ManualStateMetadata"
        } ]
      },
      "ResolutionInfo" : {
        "required" : [ "x", "y" ],
        "type" : "object",
        "properties" : {
          "x" : {
            "maximum" : 8000,
            "minimum" : 1,
            "type" : "integer"
          },
          "y" : {
            "maximum" : 8000,
            "minimum" : 1,
            "type" : "integer"
          }
        }
      },
      "ScalarField" : {
        "required" : [ "dataType", "fieldName" ],
        "type" : "object",
        "properties" : {
          "fieldName" : {
            "type" : "string"
          },
          "component" : {
            "type" : "string"
          },
          "dataType" : {
            "$ref" : "#/components/schemas/DataType"
          }
        }
      },
      "VectorField" : {
        "required" : [ "dataType", "fieldName" ],
        "type" : "object",
        "properties" : {
          "fieldName" : {
            "type" : "string"
          },
          "dataType" : {
            "$ref" : "#/components/schemas/DataType"
          }
        }
      },
      "ScalarSettings" : {
        "required" : [ "scalarField" ],
        "properties" : {
          "scalarField" : {
            "$ref" : "#/components/schemas/ScalarField"
          },
          "minimumRange" : {
            "type" : "number",
            "description" : "The minimum value for the color scheme to fill. Default is the minimum value of the scalar.",
            "format" : "float"
          },
          "maximumRange" : {
            "type" : "number",
            "description" : "The maximum value for the color scheme to fill. Default is the maximum value of the scalar.",
            "format" : "float"
          },
          "nodeAverageValue" : {
            "type" : "boolean",
            "description" : "Specify if the scalar result should be shown as a node averaged result or not.",
            "default" : false
          },
          "numberOfDivisions" : {
            "maximum" : 75,
            "minimum" : 0,
            "type" : "integer",
            "description" : "The number of divisions in the legend. If set to 0, this will create a continuous (gradient) legend with a smooth interpolation between the colors.",
            "default" : 20
          },
          "colorScheme" : {
            "type" : "string",
            "description" : "The color scheme to use to map scalar values on the model and legend bar.",
            "default" : "NORMAL",
            "enum" : [ "NORMAL", "NORMAL_INVERTED", "BLACK_TO_WHITE", "WHITE_TO_BLACK", "GREEN_TO_BROWN", "WHITE_TO_BROWN", "METAL_CASTING", "BLUE_TO_WHITE_TO_RED", "THERMAL_1", "THERMAL_2", "THERMAL_3" ]
          },
          "colorLegendScaling" : {
            "type" : "string",
            "description" : "How the color legend range is scaled when minimumRange/maximumRange are not given. FULL_RANGE uses the whole dataset (all parts, shown or hidden). VISIBLE_ITEMS scales to only the currently visible items. VISIBLE_ITEMS_WITH_INNER_VOLUME additionally folds in the inner volume behind visible faces. Ignored when minimumRange/maximumRange are provided (an explicit range always wins).",
            "default" : "FULL_RANGE",
            "enum" : [ "FULL_RANGE", "VISIBLE_ITEMS", "VISIBLE_ITEMS_WITH_INNER_VOLUME" ]
          },
          "belowRangeColor" : {
            "$ref" : "#/components/schemas/Color"
          },
          "aboveRangeColor" : {
            "$ref" : "#/components/schemas/Color"
          }
        }
      },
      "VectorSettings" : {
        "required" : [ "coloring", "scaleFactor", "vectorField" ],
        "properties" : {
          "vectorField" : {
            "$ref" : "#/components/schemas/VectorField"
          },
          "scaleFactor" : {
            "maximum" : 1.0,
            "exclusiveMaximum" : false,
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "format" : "double",
            "default" : 0.2
          },
          "solidColor" : {
            "$ref" : "#/components/schemas/Color"
          },
          "coloring" : {
            "type" : "string",
            "default" : "BY_VECTOR_FIELD",
            "enum" : [ "BY_VECTOR_FIELD", "SOLID_COLOR" ]
          },
          "minimumClampingRange" : {
            "type" : "number",
            "description" : "The minimum length of (non-zero) vectors will be drawn as. Must not be larger than maximumClampingRange. Default value is the minimum length of the specified vector field.",
            "format" : "float"
          },
          "maximumClampingRange" : {
            "type" : "number",
            "description" : "The maximum length of (non-zero) vectors will be drawn as. Must not be smaller than minimumClampingRange. Default value is the maximum length of the specified vector field.",
            "format" : "float"
          },
          "minimumFilteringRange" : {
            "type" : "number",
            "description" : "The required minimum length of the vectors in order to be drawn. Must not be larger than maximumFilteringRange. Default value is the minimum length of the specified vector field.",
            "format" : "float"
          },
          "maximumFilteringRange" : {
            "type" : "number",
            "description" : "The required maximum length of the vectors in order to be drawn. Must not be smaller than minimumFilteringRange. Default value is the maximum length of the specified vector field.",
            "format" : "float"
          }
        }
      },
      "UserInputCameraSettings" : {
        "required" : [ "center", "eye", "projectionType", "settingType", "up" ],
        "type" : "object",
        "properties" : {
          "settingType" : {
            "type" : "string",
            "default" : "USER_INPUT"
          },
          "projectionType" : {
            "$ref" : "#/components/schemas/ProjectionType"
          },
          "up" : {
            "$ref" : "#/components/schemas/Vector3D"
          },
          "eye" : {
            "$ref" : "#/components/schemas/Vector3D"
          },
          "center" : {
            "$ref" : "#/components/schemas/Vector3D"
          },
          "frontPlaneFrustumHeight" : {
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "required only for orthogonal projection type."
          },
          "fieldOfViewYDegrees" : {
            "minimum" : 0.0,
            "exclusiveMinimum" : false,
            "type" : "number",
            "description" : "The total field of view in Y direction in degrees. Required onlyf for perspective projection type."
          }
        }
      },
      "FortyFiveViewPredefinedCameraSettings" : {
        "required" : [ "directionSpecifier", "projectionType", "settingType" ],
        "type" : "object",
        "properties" : {
          "settingType" : {
            "type" : "string",
            "default" : "FORTY_FIVE_FORTY_FIVE_VIEW"
          },
          "projectionType" : {
            "$ref" : "#/components/schemas/ProjectionType"
          },
          "directionSpecifier" : {
            "type" : "string",
            "enum" : [ "X_NEGATIVE_Y_NEGATIVE_Z_NEGATIVE", "X_NEGATIVE_Y_NEGATIVE_Z_POSITIVE", "X_NEGATIVE_Y_POSITIVE_Z_NEGATIVE", "X_NEGATIVE_Y_POSITIVE_Z_POSITIVE", "X_POSITIVE_Y_NEGATIVE_Z_NEGATIVE", "X_POSITIVE_Y_NEGATIVE_Z_POSITIVE", "X_POSITIVE_Y_POSITIVE_Z_NEGATIVE", "X_POSITIVE_Y_POSITIVE_Z_POSITIVE" ]
          }
        }
      },
      "TopViewPredefinedCameraSettings" : {
        "required" : [ "directionSpecifier", "projectionType", "settingType" ],
        "type" : "object",
        "properties" : {
          "settingType" : {
            "type" : "string",
            "default" : "TOP_VIEW"
          },
          "projectionType" : {
            "$ref" : "#/components/schemas/ProjectionType"
          },
          "directionSpecifier" : {
            "type" : "string",
            "enum" : [ "X_NEGATIVE", "X_POSITIVE", "Y_NEGATIVE", "Y_POSITIVE", "Z_NEGATIVE", "Z_POSITIVE" ]
          }
        }
      },
      "Vector3D" : {
        "required" : [ "x", "y", "z" ],
        "type" : "object",
        "properties" : {
          "x" : {
            "type" : "number"
          },
          "y" : {
            "type" : "number"
          },
          "z" : {
            "type" : "number"
          }
        }
      },
      "ProjectionType" : {
        "type" : "string",
        "enum" : [ "ORTHOGONAL", "PERSPECTIVE" ]
      },
      "Opacity" : {
        "maximum" : 1.0,
        "exclusiveMaximum" : false,
        "minimum" : 0.0,
        "exclusiveMinimum" : false,
        "type" : "number",
        "format" : "double"
      },
      "DownloadInfo" : {
        "type" : "object",
        "properties" : {
          "format" : {
            "type" : "string",
            "description" : "The result format.",
            "readOnly" : true
          },
          "uncompressedSizeInBytes" : {
            "type" : "integer",
            "description" : "The uncompressed size of the report result content.",
            "format" : "int64",
            "readOnly" : true
          },
          "url" : {
            "type" : "string",
            "description" : "URL for downloading the report result content.",
            "format" : "uri",
            "readOnly" : true
          },
          "compression" : {
            "type" : "string",
            "description" : "The compression used for the report result download archive.",
            "readOnly" : true,
            "enum" : [ "NONE", "ZIP64" ]
          }
        }
      },
      "ReportResponse" : {
        "required" : [ "createdAt", "name", "reportId", "status" ],
        "type" : "object",
        "properties" : {
          "reportId" : {
            "type" : "string",
            "description" : "The ID of the report.",
            "format" : "uuid",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the report."
          },
          "description" : {
            "type" : "string",
            "description" : "The description of the report."
          },
          "createdAt" : {
            "type" : "string",
            "description" : "The time the report was created.",
            "format" : "date-time",
            "readOnly" : true
          },
          "startedAt" : {
            "type" : "string",
            "description" : "The time the report was started.",
            "format" : "date-time",
            "readOnly" : true
          },
          "finishedAt" : {
            "type" : "string",
            "description" : "The time the report was finished.",
            "format" : "date-time",
            "readOnly" : true
          },
          "status" : {
            "type" : "string",
            "description" : "Status of the report operation.",
            "readOnly" : true,
            "enum" : [ "READY", "QUEUED", "RUNNING", "FINISHED", "CANCELED", "FAILED" ]
          },
          "rampsId" : {
            "type" : "string",
            "description" : "The RAMPS result of a dataflow output for which the report was created; absent for reports on simulation results (resultIds).",
            "format" : "uuid"
          },
          "resultIds" : {
            "type" : "array",
            "description" : "The resultIds the report has been created for.",
            "items" : {
              "type" : "string",
              "format" : "uuid"
            }
          },
          "reportProperties" : {
            "$ref" : "#/components/schemas/ReportPropertiesPublic"
          },
          "reportFromStateProperties" : {
            "$ref" : "#/components/schemas/ReportFromStateProperties"
          },
          "download" : {
            "$ref" : "#/components/schemas/DownloadInfo"
          },
          "statisticsResult" : {
            "type" : "object",
            "additionalProperties" : {
              "$ref" : "#/components/schemas/StatisticsResultEntry"
            },
            "description" : "Result of a STATISTICS report. Contains one entry per requested part identifier, part group identifier, or cutting plane identifier, each mapping to a StatisticsResultEntry. Null entries indicate that the part or plane was not found in the model.\n",
            "readOnly" : true
          },
          "minMaxResult" : {
            "$ref" : "#/components/schemas/GlobalMinMaxResult"
          },
          "failureReason" : {
            "required" : [ "severity code message" ],
            "type" : "object",
            "properties" : {
              "severity" : {
                "type" : "string",
                "readOnly" : true,
                "enum" : [ "INFO", "SUCCESS", "WARNING", "ERROR" ]
              },
              "code" : {
                "type" : "string",
                "description" : "Code for e.g. programmatic handling of error conditions.",
                "readOnly" : true
              },
              "message" : {
                "type" : "string",
                "description" : "Human-readable description of the entry.",
                "readOnly" : true
              },
              "details" : {
                "type" : "object",
                "additionalProperties" : true,
                "description" : "Additional data to interpret and handle the entry.",
                "readOnly" : true
              }
            }
          }
        }
      },
      "InternalReportResponse" : {
        "type" : "object",
        "properties" : {
          "reportProperties" : {
            "$ref" : "#/components/schemas/ReportProperties"
          },
          "reportFromStateProperties" : {
            "$ref" : "#/components/schemas/ReportFromStateProperties"
          }
        },
        "description" : "Report properties as returned by the internal report endpoint that postproc-result-query reads. Its reportProperties uses the full ReportProperties, including the server-resolved resolution hints (cadAssociations, topologyLabelByName) that the public ReportResponse omits. Only the fields the batch job needs are exposed here; the public-facing report fields (status, download, statisticsResult, ...) live on ReportResponse.\n"
      },
      "StateResponse" : {
        "required" : [ "stateUuid" ],
        "type" : "object",
        "properties" : {
          "stateUuid" : {
            "type" : "string",
            "description" : "The unique identifier for the state (default, manually or automatically saved).",
            "format" : "uuid"
          },
          "stateName" : {
            "type" : "string",
            "description" : "State name, as provided in the workbench."
          },
          "stateDescription" : {
            "type" : "string",
            "description" : "Description of the state, as provided in the workbench."
          },
          "screenshotOutputSettings" : {
            "$ref" : "#/components/schemas/StateScreenshotOutputSettings"
          },
          "animationOutputSettings" : {
            "$ref" : "#/components/schemas/OneOfStateAnimationOutputSettings"
          }
        }
      },
      "OneOfStateAnimationOutputSettings" : {
        "discriminator" : {
          "propertyName" : "type",
          "mapping" : {
            "TIME_STEP" : "#/components/schemas/StateTimeStepAnimationOutputSettings",
            "PARTICLE_TRACE" : "#/components/schemas/StateParticleTraceAnimationOutputSettings",
            "SHAPE" : "#/components/schemas/StateShapeAnimationOutputSettings"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/StateTimeStepAnimationOutputSettings"
        }, {
          "$ref" : "#/components/schemas/StateParticleTraceAnimationOutputSettings"
        }, {
          "$ref" : "#/components/schemas/StateShapeAnimationOutputSettings"
        } ]
      },
      "StateAnimationOutputSettings" : {
        "required" : [ "showLegend", "type" ],
        "type" : "object",
        "properties" : {
          "type" : {
            "type" : "string"
          },
          "showLegend" : {
            "type" : "boolean",
            "description" : "True if any scalarSettings entry in the state has legendVisibilityMode set to AUTO (1) or ALWAYS (2). False if all entries are set to NEVER (0) or no scalarSettings are present.\n"
          }
        }
      },
      "StateTimeStepAnimationOutputSettings" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/StateAnimationOutputSettings"
        }, {
          "required" : [ "fromFrameIndex", "skipFrames", "toFrameIndex", "type" ],
          "type" : "object",
          "properties" : {
            "type" : {
              "type" : "string",
              "default" : "TIME_STEP"
            },
            "fromFrameIndex" : {
              "minimum" : 0,
              "type" : "integer"
            },
            "toFrameIndex" : {
              "minimum" : 0,
              "type" : "integer",
              "description" : "Index of the last frame to include (inclusive)."
            },
            "skipFrames" : {
              "minimum" : 0,
              "type" : "integer"
            }
          }
        } ]
      },
      "StateParticleTraceAnimationOutputSettings" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/StateAnimationOutputSettings"
        }, {
          "required" : [ "frameIndex", "steps", "type" ],
          "type" : "object",
          "properties" : {
            "type" : {
              "type" : "string",
              "default" : "PARTICLE_TRACE"
            },
            "frameIndex" : {
              "minimum" : 0,
              "type" : "integer",
              "description" : "The frame (time step) at which to render the particle trace animation."
            },
            "steps" : {
              "maximum" : 1000,
              "minimum" : 1,
              "type" : "integer",
              "description" : "The number of steps to generate for the particle trace animation."
            }
          }
        } ]
      },
      "StateShapeAnimationOutputSettings" : {
        "allOf" : [ {
          "$ref" : "#/components/schemas/StateAnimationOutputSettings"
        }, {
          "required" : [ "frameIndex", "range", "steps", "type" ],
          "type" : "object",
          "properties" : {
            "type" : {
              "type" : "string",
              "default" : "SHAPE"
            },
            "frameIndex" : {
              "minimum" : 0,
              "type" : "integer",
              "description" : "Frame (or frequency) for which to create a mode shape animation."
            },
            "steps" : {
              "maximum" : 100,
              "minimum" : 1,
              "type" : "integer",
              "description" : "The number of steps to generate for the shape animation."
            },
            "range" : {
              "type" : "string",
              "description" : "How to deform the model for the animation. FULL (x0 -> +xmax -> x0 -> -xmax -> x0), HALF (x0 -> +xmax -> x0), QUARTER (x0 -> +xmax).\n",
              "enum" : [ "FULL", "HALF", "QUARTER" ]
            }
          }
        } ]
      },
      "StateScreenshotOutputSettings" : {
        "required" : [ "frameIndex", "showLegend" ],
        "type" : "object",
        "properties" : {
          "showLegend" : {
            "type" : "boolean",
            "description" : "True if any scalarSettings entry in the state has legendVisibilityMode set to AUTO (1) or ALWAYS (2). False if all entries are set to NEVER (0) or no scalarSettings are present.\n"
          },
          "frameIndex" : {
            "type" : "integer",
            "description" : "The frame index from the state."
          }
        }
      },
      "CreateMaterialGroupRequest" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 40,
            "minLength" : 1,
            "type" : "string",
            "description" : "The name of the material group."
          },
          "metadata" : {
            "type" : "object"
          },
          "teamGroupId" : {
            "type" : "integer",
            "description" : "The material group will be assigned to this team group id. This field can only be used by support group members."
          }
        }
      },
      "CreateNestedMaterialGroupRequest" : {
        "required" : [ "name" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 40,
            "minLength" : 1,
            "type" : "string",
            "description" : "The name of the material group."
          },
          "metadata" : {
            "type" : "object"
          }
        }
      },
      "UpdateMaterialGroupRequest" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "maxLength" : 40,
            "minLength" : 1,
            "type" : "string",
            "description" : "The name of the material group."
          },
          "metadata" : {
            "type" : "object"
          }
        }
      },
      "CreateMaterialRequest" : {
        "required" : [ "name", "properties" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "pattern" : "^(?!\\s*$).+",
            "type" : "string",
            "description" : "The material name."
          },
          "metadata" : {
            "type" : "object"
          },
          "properties" : {
            "$ref" : "#/components/schemas/MaterialProperties"
          }
        }
      },
      "MaterialResponse" : {
        "required" : [ "createdAt", "id", "materialGroupId", "modifiedAt", "name" ],
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string",
            "description" : "The material unique identifier.",
            "readOnly" : true
          },
          "materialGroupId" : {
            "type" : "string",
            "description" : "The material group unique identifier.",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The material name."
          },
          "createdAt" : {
            "type" : "string",
            "description" : "The time the material was created.",
            "format" : "date-time",
            "readOnly" : true
          },
          "modifiedAt" : {
            "type" : "string",
            "description" : "The time the material was modified.",
            "format" : "date-time",
            "readOnly" : true
          },
          "properties" : {
            "$ref" : "#/components/schemas/MaterialProperties"
          },
          "metadata" : {
            "type" : "object"
          }
        }
      },
      "MaterialGroupResponse" : {
        "required" : [ "createdAt", "materialGroupId", "modifiedAt", "name" ],
        "type" : "object",
        "properties" : {
          "materialGroupId" : {
            "type" : "string",
            "description" : "The ID of the material group.",
            "readOnly" : true
          },
          "parentId" : {
            "type" : "string",
            "description" : "The ID of parent of the material group.",
            "readOnly" : true
          },
          "name" : {
            "type" : "string",
            "description" : "The name of the material group."
          },
          "groupType" : {
            "$ref" : "#/components/schemas/MaterialGroupType"
          },
          "createdAt" : {
            "type" : "string",
            "description" : "The time the material group was created.",
            "format" : "date-time",
            "readOnly" : true
          },
          "modifiedAt" : {
            "type" : "string",
            "description" : "The time the material group was modified.",
            "format" : "date-time",
            "readOnly" : true
          },
          "metadata" : {
            "type" : "object",
            "description" : "Material group metadata.",
            "readOnly" : true
          }
        }
      },
      "MaterialProperties" : {
        "minProperties" : 1,
        "type" : "object",
        "additionalProperties" : {
          "$ref" : "#/components/schemas/OneOfMaterialProperty"
        },
        "description" : "The material properties.",
        "x-constraints" : "@ConsistentParameterKeys"
      },
      "OneOfMaterialProperty" : {
        "discriminator" : {
          "propertyName" : "valueType",
          "mapping" : {
            "fixed" : "#/components/schemas/FixedMaterialProperty",
            "parametric" : "#/components/schemas/ParametricMaterialProperty"
          }
        },
        "oneOf" : [ {
          "$ref" : "#/components/schemas/FixedMaterialProperty"
        }, {
          "$ref" : "#/components/schemas/ParametricMaterialProperty"
        } ]
      },
      "FixedMaterialProperty" : {
        "required" : [ "value", "valueType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "description" : "The material property name"
          },
          "label" : {
            "type" : "string",
            "description" : "The material property label to support internationalization. The content of this field is a i18n key. If this field is not present, the name field can be used as a fallback for English language."
          },
          "unit" : {
            "type" : "string",
            "description" : "The material property unit"
          },
          "valueType" : {
            "type" : "string",
            "default" : "fixed"
          },
          "dataType" : {
            "$ref" : "#/components/schemas/PropertyDataType"
          },
          "value" : {
            "description" : "The property value",
            "x-constraints" : "@NotNull"
          }
        },
        "description" : "A material property that has a fixed (constant) value."
      },
      "ParametricMaterialProperty" : {
        "required" : [ "parameters", "valueType" ],
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string",
            "description" : "The material property name"
          },
          "label" : {
            "type" : "string",
            "description" : "The material property label to support internationalization. The content of this field is a i18n key. If this field is not present, the name field can be used as a fallback for English language."
          },
          "unit" : {
            "type" : "string",
            "description" : "The material property unit"
          },
          "valueType" : {
            "type" : "string",
            "default" : "parametric"
          },
          "dataType" : {
            "$ref" : "#/components/schemas/PropertyDataType"
          },
          "parameters" : {
            "minItems" : 1,
            "type" : "array",
            "description" : "Parameter properties of the material",
            "items" : {
              "$ref" : "#/components/schemas/MaterialPropertyParameter"
            }
          },
          "parametricValues" : {
            "minItems" : 1,
            "type" : "array",
            "items" : {
              "type" : "object",
              "properties" : {
                "value" : {
                  "description" : "The parametric value"
                }
              },
              "additionalProperties" : {
                "description" : "The parameter value"
              }
            }
          }
        },
        "description" : "A material property containing a set of parametric values."
      },
      "MaterialPropertyParameter" : {
        "required" : [ "key" ],
        "type" : "object",
        "properties" : {
          "key" : {
            "type" : "string",
            "description" : "The unique identifier of the parameter, meaningful from the physics/business perspective"
          },
          "name" : {
            "type" : "string",
            "description" : "Optional user facing name or label key for human identification"
          },
          "unit" : {
            "type" : "string",
            "description" : "The parameter unit"
          }
        }
      },
      "PropertyDataType" : {
        "type" : "string",
        "description" : "The data type of the property value field (can be either numeric or string)",
        "enum" : [ "numeric", "string" ]
      },
      "MaterialGroupType" : {
        "type" : "string",
        "description" : "Indicates the owner of the material group. Default groups are provided and managed by SimScale. Custom groups can belong to a user or to a company/team.",
        "readOnly" : true,
        "enum" : [ "SIMSCALE_DEFAULT", "USER_CUSTOM", "COMPANY_CUSTOM" ]
      },
      "PermissionDto" : {
        "type" : "string",
        "enum" : [ "READ", "WRITE", "ADMIN" ]
      }
    },
    "responses" : {
      "BadRequest" : {
        "description" : "Bad request.",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorResponse"
            },
            "example" : {
              "severity" : "ERROR",
              "entries" : [ {
                "severity" : "ERROR",
                "code" : "invalid-input",
                "message" : "Invalid text input",
                "details" : {
                  "path" : "$.name"
                }
              }, {
                "severity" : "ERROR",
                "code" : "invalid-input",
                "message" : "Size must be between 0 and 250",
                "details" : {
                  "path" : "$.description"
                }
              } ],
              "trace" : "abcd1234"
            }
          }
        }
      },
      "NotFound" : {
        "description" : "Not found.",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorResponse"
            },
            "example" : {
              "severity" : "ERROR",
              "code" : "not-found",
              "message" : "Not found.",
              "trace" : "abcd1234"
            }
          }
        }
      },
      "UnprocessableEntity" : {
        "description" : "Unprocessable entity.",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorResponse"
            },
            "example" : {
              "severity" : "ERROR",
              "code" : "unprocessable-entity",
              "message" : "Unprocessable entity.",
              "trace" : "abcd1234"
            }
          }
        }
      },
      "InsufficientPermissions" : {
        "description" : "Insufficient Permissions",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorResponse"
            },
            "example" : {
              "severity" : "ERROR",
              "code" : "not-authorized",
              "message" : "Not allowed to perform this action",
              "trace" : "abcd1234"
            }
          }
        }
      },
      "Conflict" : {
        "description" : "Conflict",
        "content" : {
          "application/json" : {
            "schema" : {
              "$ref" : "#/components/schemas/ErrorResponse"
            },
            "example" : {
              "severity" : "ERROR",
              "code" : "conflict-occurred",
              "message" : "Conflict occurred while performing this action",
              "trace" : "abcd1234"
            }
          }
        }
      }
    },
    "parameters" : {
      "collectionLimit" : {
        "name" : "limit",
        "in" : "query",
        "description" : "The number of items to return.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "maximum" : 1000,
          "minimum" : 1,
          "type" : "integer",
          "default" : 100
        }
      },
      "collectionPage" : {
        "name" : "page",
        "in" : "query",
        "description" : "The page number. Use in combination with limit.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "maximum" : 1000,
          "minimum" : 1,
          "type" : "integer",
          "default" : 1
        }
      },
      "resultType" : {
        "name" : "type",
        "in" : "query",
        "description" : "The result type.\nThe possible values are 'SOLUTION_FIELD', 'CONVERGENCE_PLOT', 'PLOT', 'TABLE'.\n",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "$ref" : "#/components/schemas/SimulationRunResultType"
        }
      },
      "resultCategory" : {
        "name" : "category",
        "in" : "query",
        "description" : "The result category.\nFor solution fields values include 'SOLUTION', 'AVERAGED_SOLUTION', 'TRANSIENT_SOLUTION', 'STATISTICAL_SURFACE_SOLUTION', etc.\nFor convergence plots values include 'RESIDUALS_PLOT', 'NUMBER_OF_NEWTON_ITERATIONS', etc.\nFor plots values include 'FORCE_PLOT', 'MOMENT_PLOT', 'FORCE_COEFFICIENTS_PLOT', 'PROBE_POINT_PLOT', 'AREA_AVERAGE', 'FACE_CALC', etc.\n",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "$ref" : "#/components/schemas/SimulationRunResultCategory"
        }
      },
      "resultQuantity" : {
        "name" : "quantity",
        "in" : "query",
        "description" : "The result quantity, only applies to plot result types.\nValid values include 'Ux', 'Uy', 'Uz', 'p', 'k', 'omega', 'T', 'displacement', 'von Mises stress', etc.\n",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "$ref" : "#/components/schemas/SimulationRunResultQuantity"
        }
      },
      "resultName" : {
        "name" : "name",
        "in" : "query",
        "description" : "The name that was defined for extra simulation result outputs.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "$ref" : "#/components/schemas/SimulationRunResultName"
        }
      },
      "resultDirection" : {
        "name" : "direction",
        "in" : "query",
        "description" : "The result direction, only applies to Pedestrian Wind Comfort analysis.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "$ref" : "#/components/schemas/SimulationRunResultDirection"
        }
      },
      "class" : {
        "name" : "class",
        "in" : "query",
        "description" : "The entity class to filter.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "type" : "string"
        }
      },
      "bodies" : {
        "name" : "bodies",
        "in" : "query",
        "description" : "The body names to filter. If multiple body names are provided any match.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "uniqueItems" : true,
          "type" : "array",
          "items" : {
            "type" : "string"
          }
        }
      },
      "entities" : {
        "name" : "entities",
        "in" : "query",
        "description" : "The entity names to filter. If multiple entity names are provided any match.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "uniqueItems" : true,
          "type" : "array",
          "items" : {
            "type" : "string"
          }
        }
      },
      "attributes" : {
        "name" : "attributes",
        "in" : "query",
        "description" : "The attribute names to filter. If multiple attribute names are provided any match.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "uniqueItems" : true,
          "type" : "array",
          "items" : {
            "type" : "string"
          }
        }
      },
      "values" : {
        "name" : "values",
        "in" : "query",
        "description" : "The attribute values to filter. If multiple attribute values are provided any match.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "uniqueItems" : true,
          "type" : "array",
          "items" : {
            "type" : "string"
          }
        }
      },
      "spaceId" : {
        "name" : "spaceId",
        "in" : "path",
        "description" : "The space ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid"
        }
      },
      "folderId" : {
        "name" : "folderId",
        "in" : "path",
        "description" : "The folder ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid"
        }
      },
      "projectId" : {
        "name" : "projectId",
        "in" : "path",
        "description" : "The project ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "pattern" : "^\\d+$",
          "type" : "string",
          "example" : "1234123412341234"
        }
      },
      "reportId" : {
        "name" : "reportId",
        "in" : "path",
        "description" : "The report ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "159c159c-159c-159c-159c-159c159c159c"
        }
      },
      "geometryImportId" : {
        "name" : "geometryImportId",
        "in" : "path",
        "description" : "The geometry import ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "f48bf48b-f48b-f48b-f48b-f48bf48bf48b"
        }
      },
      "geometryId" : {
        "name" : "geometryId",
        "in" : "path",
        "description" : "The geometry ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "159c159c-159c-159c-159c-159c159c159c"
        }
      },
      "cadId" : {
        "name" : "cadId",
        "in" : "path",
        "description" : "The CAD ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "f48bf48b-f48b-f48b-f48b-f48bf48bf48b"
        }
      },
      "cadStateId" : {
        "name" : "cadStateId",
        "in" : "path",
        "description" : "The CAD state ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "f48bf48b-f48b-f48b-f48b-f48bf48bf48b"
        }
      },
      "cadFeatureId" : {
        "name" : "cadFeatureId",
        "in" : "path",
        "description" : "The CAD feature ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "f48bf48b-f48b-f48b-f48b-f48bf48bf48b"
        }
      },
      "meshId" : {
        "name" : "meshId",
        "in" : "path",
        "description" : "The mesh ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "159c159c-159c-159c-159c-159c159c159c"
        }
      },
      "simulationId" : {
        "name" : "simulationId",
        "in" : "path",
        "description" : "The simulation ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "260d260d-260d-260d-260d-260d260d260d"
        }
      },
      "simulationIdOptional" : {
        "name" : "simulationId",
        "in" : "query",
        "description" : "The simulation ID if given",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "260d260d-260d-260d-260d-260d260d260d"
        }
      },
      "simulationIdQuery" : {
        "name" : "simulationId",
        "in" : "query",
        "description" : "The related simulation ID of a physics based mesh operation",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "260d260d-260d-260d-260d-260d260d260d"
        }
      },
      "simulationSpecSchemaVersion" : {
        "name" : "simulationSpecSchemaVersion",
        "in" : "query",
        "description" : "Version of the schema the simulation spec should conform to. This can be either the external version like `30.0`, or the internal version like `internal:549`.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "type" : "string",
          "example" : "34.0",
          "default" : "34.0"
        }
      },
      "meshingSpecSchemaVersion" : {
        "name" : "meshingSpecSchemaVersion",
        "in" : "query",
        "description" : "Version of the schema the meshing spec should conform to. This can be either the external version like `8.0`, or the internal version like `internal:53`.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "type" : "string",
          "example" : "10.0",
          "default" : "10.0"
        }
      },
      "sdkVersion" : {
        "name" : "sdkVersion",
        "in" : "query",
        "description" : "Version of the SDK to generate code for",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "pattern" : "latest|\\d+\\.\\d+\\.\\d+",
          "type" : "string",
          "example" : "0.2.0",
          "default" : "latest"
        }
      },
      "sdkLanguage" : {
        "name" : "sdkLanguage",
        "in" : "query",
        "description" : "Language of the SDK to generate code for. Only Python is currently supported.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "type" : "string",
          "example" : "python",
          "default" : "python",
          "enum" : [ "python" ]
        }
      },
      "runId" : {
        "name" : "runId",
        "in" : "path",
        "description" : "The simulation run ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "37ae37ae-37ae-37ae-37ae-37ae37ae37ae"
        }
      },
      "runIdOptional" : {
        "name" : "runId",
        "in" : "query",
        "description" : "The simulation run ID if given",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "37ae37ae-37ae-37ae-37ae-37ae37ae37ae"
        }
      },
      "meshOperationId" : {
        "name" : "meshOperationId",
        "in" : "path",
        "description" : "The mesh operation ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "37ae37ae-37ae-37ae-37ae-37ae37ae37ae"
        }
      },
      "subRunId" : {
        "name" : "subRunId",
        "in" : "path",
        "description" : "The simulation sub-run ID",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid",
          "example" : "37ae37ae-37ae-37ae-37ae-37ae37ae37ae"
        }
      },
      "materialGroupId" : {
        "name" : "materialGroupId",
        "in" : "path",
        "description" : "ID of a material group",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string"
        }
      },
      "materialId" : {
        "name" : "materialId",
        "in" : "path",
        "description" : "ID of a material",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string"
        }
      },
      "materialUpdatePreview" : {
        "name" : "preview",
        "in" : "query",
        "description" : "If present and true, the update material operation(s) will not be persisted and the returned response will only be a preview of the simulation.",
        "required" : false,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "type" : "boolean",
          "default" : false
        }
      },
      "latitude" : {
        "name" : "latitude",
        "in" : "query",
        "description" : "Latitude coordinate in WGS84 format",
        "required" : true,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "minLength" : 1,
          "type" : "string"
        },
        "example" : "48.135125"
      },
      "longitude" : {
        "name" : "longitude",
        "in" : "query",
        "description" : "Longitude coordinate in WGS84 format",
        "required" : true,
        "style" : "form",
        "explode" : true,
        "schema" : {
          "minLength" : 1,
          "type" : "string"
        },
        "example" : "11.581981"
      },
      "exportId" : {
        "name" : "exportId",
        "in" : "path",
        "required" : true,
        "style" : "simple",
        "explode" : false,
        "schema" : {
          "type" : "string",
          "format" : "uuid"
        }
      }
    },
    "examples" : {
      "WindComfort" : {
        "summary" : "Wind Comfort",
        "value" : {
          "simulationId" : "260d260d-260d-260d-260d-260d260d260d",
          "name" : "My first simulation",
          "version" : "12.0",
          "createdAt" : "2020-05-20T11:32:12.730Z",
          "modifiedAt" : "2020-05-20T11:32:12.730Z",
          "geometryId" : "159c159c-159c-159c-159c-159c159c159c",
          "meshId" : null,
          "parameters" : null,
          "model" : {
            "type" : "WIND_COMFORT",
            "regionOfInterest" : {
              "discRadius" : {
                "value" : 278.4222937219507,
                "unit" : "m"
              },
              "centerPoint" : {
                "value" : {
                  "x" : 12.114788527587606,
                  "y" : 14.600237051446499
                },
                "unit" : "m"
              },
              "groundHeight" : {
                "value" : -12.800801325539402,
                "unit" : "m"
              },
              "northAngle" : {
                "value" : 0,
                "unit" : "°"
              },
              "advancedSettings" : {
                "windTunnelSize" : {
                  "type" : "WIND_TUNNEL_SIZE_MODERATE"
                }
              }
            },
            "windConditions" : {
              "geographicalLocation" : {
                "latitude" : {
                  "value" : 48.1351253,
                  "unit" : "°"
                },
                "longitude" : {
                  "value" : 11.5819805,
                  "unit" : "°"
                }
              },
              "windRose" : {
                "numDirections" : 4,
                "velocityBuckets" : [ {
                  "to" : 0.278,
                  "fractions" : [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 ]
                }, {
                  "from" : 0.278,
                  "to" : 1.389,
                  "fractions" : [ 0.004, 0.003, 0.002, 0.004, 0.002, 0.003, 0.002, 0.002, 0.003, 0.003, 0.003, 0.003, 0.004, 0.003, 0.003, 0.002 ]
                }, {
                  "from" : 1.389,
                  "to" : 3.333,
                  "fractions" : [ 0.015, 0.014, 0.014, 0.016, 0.013, 0.014, 0.012, 0.012, 0.016, 0.015, 0.017, 0.014, 0.016, 0.012, 0.013, 0.013 ]
                }, {
                  "from" : 3.333,
                  "to" : 5.278,
                  "fractions" : [ 0.017, 0.015, 0.015, 0.017, 0.014, 0.012, 0.013, 0.015, 0.02, 0.025, 0.029, 0.023, 0.021, 0.016, 0.017, 0.015 ]
                }, {
                  "from" : 5.278,
                  "to" : 7.778,
                  "fractions" : [ 0.01, 0.009, 0.009, 0.011, 0.009, 0.007, 0.006, 0.01, 0.019, 0.026, 0.037, 0.028, 0.023, 0.016, 0.014, 0.012 ]
                }, {
                  "from" : 7.778,
                  "to" : 10.556,
                  "fractions" : [ 0.003, 0.003, 0.004, 0.005, 0.003, 0.003, 0.002, 0.004, 0.011, 0.017, 0.024, 0.018, 0.012, 0.007, 0.005, 0.004 ]
                }, {
                  "from" : 10.556,
                  "to" : 13.889,
                  "fractions" : [ 0.001, 0.001, 0.001, 0.003, 0.001, 0, 0, 0.001, 0.004, 0.007, 0.011, 0.007, 0.005, 0.003, 0.002, 0.001 ]
                }, {
                  "from" : 13.889,
                  "to" : 16.944,
                  "fractions" : [ 0, 0, 0, 0.001, 0, 0, 0, 0, 0.001, 0.002, 0.003, 0.003, 0.002, 0.001, 0.001, 0 ]
                }, {
                  "from" : 16.944,
                  "fractions" : [ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0.001, 0.001, 0.001, 0.001, 0, 0, 0 ]
                } ],
                "velocityUnit" : "m/s",
                "exposureCategories" : [ "EC4", "EC4", "EC4", "EC4" ],
                "windEngineeringStandard" : "EU",
                "windDataSource" : "METEOBLUE",
                "addSurfaceRoughness" : false
              }
            },
            "pedestrianComfortMap" : [ {
              "name" : "Pedestrian level 1",
              "heightAboveGround" : {
                "value" : 1.5,
                "unit" : "m"
              },
              "ground" : {
                "type" : "GROUND_ABSOLUTE"
              }
            } ],
            "simulationControl" : {
              "maxDirectionRunTime" : {
                "value" : 10000,
                "unit" : "s"
              },
              "numberOfFluidPasses" : 0.2
            },
            "advancedModelling" : {
              "surfaceRoughness" : [ ],
              "porousObjects" : [ ]
            },
            "additionalResultExport" : {
              "forcesMoments" : [ ],
              "probePoints" : [ ],
              "transientResultControl" : {
                "type" : "TRANSIENT",
                "writeControl" : {
                  "type" : "MODERATE_RESOLUTION"
                },
                "fractionFromEnd" : 0.2,
                "exportFluid" : true,
                "exportSurface" : false,
                "geometryPrimitiveUuids" : [ ]
              },
              "statisticalAveragingResultControl" : {
                "type" : "STATISTICAL_AVERAGING_V2",
                "fractionFromEnd" : 0.2,
                "samplingInterval" : {
                  "type" : "MODERATE_RESOLUTION"
                },
                "exportFluid" : true,
                "exportSurface" : false,
                "geometryPrimitiveUuids" : [ ]
              }
            },
            "meshSettings" : {
              "windComfortFineness" : {
                "type" : "COARSE"
              },
              "refinements" : [ ]
            }
          }
        }
      },
      "Incompressible" : {
        "summary" : "Incompressible using OpenFoam",
        "value" : {
          "simulationId" : "260d260d-260d-260d-260d-260d260d260d",
          "name" : "My first simulation",
          "version" : "12.0",
          "createdAt" : "2020-05-20T11:32:12.730Z",
          "modifiedAt" : "2020-05-20T11:32:12.730Z",
          "geometryId" : "159c159c-159c-159c-159c-159c159c159c",
          "meshId" : "c5e3a4f2-9c8b-4c6a-96c3-2c4f4bde3e41",
          "model" : {
            "type" : "INCOMPRESSIBLE",
            "isCompressible" : false,
            "turbulenceModel" : "KOMEGASST",
            "timeDependency" : {
              "type" : "STATIONARY"
            },
            "algorithm" : "SIMPLE",
            "numOfPassiveSpecies" : 0,
            "model" : { },
            "materials" : {
              "fluids" : [ {
                "type" : "INCOMPRESSIBLE",
                "name" : "Water",
                "viscosityModel" : {
                  "type" : "NEWTONIAN",
                  "kinematicViscosity" : {
                    "value" : 9.3379E-7,
                    "unit" : "m²/s"
                  }
                },
                "density" : {
                  "value" : 997.33,
                  "unit" : "kg/m³"
                },
                "topologicalReference" : {
                  "entities" : [ "B1_TE39" ],
                  "sets" : [ ]
                },
                "builtInMaterial" : "builtInWater"
              } ]
            },
            "initialConditions" : {
              "gaugePressure" : {
                "global" : {
                  "value" : 0,
                  "unit" : "Pa"
                }
              },
              "velocity" : {
                "global" : {
                  "value" : {
                    "x" : 0,
                    "y" : 0,
                    "z" : 0
                  },
                  "unit" : "m/s"
                },
                "subdomains" : [ ]
              },
              "turbulentKineticEnergy" : {
                "global" : {
                  "value" : 0.00375,
                  "unit" : "m²/s²"
                }
              },
              "omegaDissipationRate" : {
                "global" : {
                  "value" : 3.375,
                  "unit" : "1/s"
                }
              }
            },
            "boundaryConditions" : [ {
              "name" : "Velocity inlet 1",
              "type" : "VELOCITY_INLET_V3",
              "velocity" : {
                "type" : "FIXED_VALUE",
                "value" : {
                  "value" : {
                    "type" : "COMPONENT",
                    "x" : {
                      "type" : "CONSTANT",
                      "value" : 0
                    },
                    "y" : {
                      "type" : "CONSTANT",
                      "value" : 0
                    },
                    "z" : {
                      "type" : "CONSTANT",
                      "value" : -1.5
                    }
                  },
                  "unit" : "m/s"
                }
              },
              "topologicalReference" : {
                "entities" : [ "B1_TE3" ],
                "sets" : [ ]
              }
            }, {
              "name" : "Velocity inlet 2",
              "type" : "VELOCITY_INLET_V3",
              "velocity" : {
                "type" : "FIXED_VALUE",
                "value" : {
                  "value" : {
                    "type" : "COMPONENT",
                    "x" : {
                      "type" : "CONSTANT",
                      "value" : 0
                    },
                    "y" : {
                      "type" : "CONSTANT",
                      "value" : -1
                    },
                    "z" : {
                      "type" : "CONSTANT",
                      "value" : 0
                    }
                  },
                  "unit" : "m/s"
                }
              },
              "topologicalReference" : {
                "entities" : [ "B1_TE30" ],
                "sets" : [ ]
              }
            }, {
              "name" : "Pressure outlet 3",
              "type" : "PRESSURE_OUTLET_V30",
              "gaugePressure" : {
                "type" : "FIXED_VALUE",
                "value" : {
                  "value" : {
                    "type" : "CONSTANT",
                    "value" : 0
                  },
                  "unit" : "Pa"
                }
              },
              "topologicalReference" : {
                "entities" : [ "B1_TE37" ],
                "sets" : [ ]
              }
            } ],
            "advancedConcepts" : {
              "rotatingZones" : [ ],
              "porousMediums" : [ ],
              "momentumSources" : [ ]
            },
            "numerics" : {
              "relaxationType" : "AUTOMATIC",
              "relaxationFactor" : {
                "pressureField" : 0.3,
                "velocityEquation" : 0.7,
                "turbulentKineticEnergyEquation" : 0.3,
                "omegaDissipationRateEquation" : 0.3
              },
              "numNonOrthogonalCorrectors" : 0,
              "pressureReferenceCell" : 0,
              "pressureReferenceValue" : {
                "value" : 0,
                "unit" : "Pa"
              },
              "residualControls" : {
                "velocity" : {
                  "absoluteTolerance" : 1.0E-6
                },
                "pressure" : {
                  "absoluteTolerance" : 1.0E-6
                },
                "turbulentKineticEnergy" : {
                  "absoluteTolerance" : 1.0E-6
                },
                "omegaDissipationRate" : {
                  "absoluteTolerance" : 1.0E-6
                }
              },
              "solvers" : {
                "velocitySolver" : {
                  "type" : "SMOOTH",
                  "absoluteTolerance" : 1.0E-6,
                  "relativeTolerance" : 0.01,
                  "smoother" : "GAUSSSEIDEL",
                  "numSweeps" : 1
                },
                "pressureSolver" : {
                  "type" : "GAMG",
                  "absoluteTolerance" : 1.0E-6,
                  "relativeTolerance" : 0.001,
                  "smoother" : "GAUSSSEIDEL",
                  "numPreSweeps" : 2,
                  "numPostSweeps" : 1,
                  "cacheAgglomerationOn" : true,
                  "numCellsCoarsestLevel" : 100,
                  "numMergeLevels" : 1
                },
                "turbulentKineticEnergySolver" : {
                  "type" : "SMOOTH",
                  "absoluteTolerance" : 1.0E-6,
                  "relativeTolerance" : 0.01,
                  "smoother" : "GAUSSSEIDEL",
                  "numSweeps" : 1
                },
                "omegaDissipationRateSolver" : {
                  "type" : "SMOOTH",
                  "absoluteTolerance" : 1.0E-6,
                  "relativeTolerance" : 0.01,
                  "smoother" : "GAUSSSEIDEL",
                  "numSweeps" : 1
                }
              },
              "schemes" : {
                "timeDifferentiation" : {
                  "forDefault" : {
                    "type" : "STEADYSTATE"
                  }
                },
                "gradient" : {
                  "forDefault" : {
                    "type" : "CELLLIMITED_LEASTSQUARES",
                    "limiterCoefficient" : 1
                  },
                  "grad_pressure" : {
                    "type" : "CELLLIMITED_LEASTSQUARES",
                    "limiterCoefficient" : 1
                  },
                  "grad_velocity" : {
                    "type" : "CELLLIMITED_LEASTSQUARES",
                    "limiterCoefficient" : 1
                  }
                },
                "divergence" : {
                  "forDefault" : {
                    "type" : "GAUSS_LINEAR"
                  },
                  "div_Phi_velocity" : {
                    "type" : "GAUSS_LINEARUPWINDV_GRAD_U_"
                  },
                  "div_Phi_turbulentKineticEnergy" : {
                    "type" : "BOUNDED_GAUSS_UPWIND"
                  },
                  "div_NuEff_dev_T_grad_velocity" : {
                    "type" : "GAUSS_LINEAR"
                  },
                  "div_Phi_omegaDissipationRate" : {
                    "type" : "BOUNDED_GAUSS_UPWIND"
                  }
                },
                "laplacian" : {
                  "forDefault" : {
                    "type" : "GAUSS_LINEAR_LIMITED_CORRECTED",
                    "limiterCoefficient" : 0.5
                  },
                  "laplacian_NuEff_velocity" : {
                    "type" : "GAUSS_LINEAR_LIMITED_CORRECTED",
                    "limiterCoefficient" : 0.5
                  },
                  "laplacian_1A_U_pressure" : {
                    "type" : "GAUSS_LINEAR_LIMITED_CORRECTED",
                    "limiterCoefficient" : 0.5
                  },
                  "laplacian_Nu_velocity" : {
                    "type" : "GAUSS_LINEAR_LIMITED_CORRECTED",
                    "limiterCoefficient" : 0.5
                  }
                },
                "interpolation" : {
                  "forDefault" : {
                    "type" : "LINEAR"
                  },
                  "interpolate_HbyA" : {
                    "type" : "LINEAR"
                  }
                },
                "surfaceNormalGradient" : {
                  "forDefault" : {
                    "type" : "LIMITED",
                    "limiterCoefficient" : 0.5
                  }
                }
              }
            },
            "simulationControl" : {
              "endTime" : {
                "value" : 1000,
                "unit" : "s"
              },
              "deltaT" : {
                "value" : 1,
                "unit" : "s"
              },
              "writeControl" : {
                "type" : "TIME_STEP",
                "writeInterval" : 1000
              },
              "numProcessors" : -1,
              "maxRunTime" : {
                "value" : 10000,
                "unit" : "s"
              },
              "potentialFoamInitialization" : false,
              "decomposeAlgorithm" : {
                "type" : "SCOTCH"
              }
            },
            "resultControl" : {
              "forcesMoments" : [ ],
              "surfaceData" : [ ],
              "scalarTransport" : [ ],
              "probePoints" : [ ],
              "fieldCalculations" : [ ]
            }
          }
        }
      },
      "Simerics" : {
        "summary" : "Simerics",
        "value" : {
          "version" : "104",
          "simulationId" : "d2811649-0eba-4ad2-b518-9fabe008aa87",
          "createdAt" : "2021-09-23T09:37:03.892Z",
          "geometryId" : "159c159c-159c-159c-159c-159c159c159c",
          "model" : {
            "type" : "SIMERICS_ANALYSIS",
            "materials" : {
              "fluids" : [ {
                "type" : "INCOMPRESSIBLE",
                "name" : "Water",
                "viscosityModel" : {
                  "type" : "NEWTONIAN",
                  "kinematicViscosity" : {
                    "value" : 9.3379E-7,
                    "unit" : "m²/s"
                  }
                },
                "density" : {
                  "value" : 997.33,
                  "unit" : "kg/m³"
                },
                "topologicalReference" : {
                  "entities" : [ "B1_TE39" ],
                  "sets" : [ ]
                },
                "builtInMaterial" : "builtInWater"
              } ]
            },
            "isCompressible" : false,
            "turbulenceModel" : "NONE",
            "boundaryConditions" : [ {
              "name" : "Velocity inlet 1",
              "type" : "VELOCITY_INLET_V3",
              "velocity" : {
                "type" : "FLOW_RATE_INLET_VELOCITY",
                "flowRate" : {
                  "type" : "VOLUMETRIC",
                  "value" : {
                    "value" : {
                      "type" : "CONSTANT",
                      "value" : 1
                    },
                    "unit" : "m³/s"
                  }
                }
              },
              "topologicalReference" : {
                "entities" : [ "B1_TE37" ],
                "sets" : [ ]
              }
            } ],
            "simulationControl" : {
              "numberOfIterations" : 500,
              "writeControl" : {
                "type" : "NUMBER_OF_ITERATIONS_STEADY_STATE",
                "writeInterval" : 100
              },
              "maxRunTime" : {
                "value" : 10000,
                "unit" : "s"
              },
              "relativeConvergenceCriteria" : 0.001
            },
            "meshSettings" : {
              "type" : "AUTOMATIC_SETTINGS",
              "fineness" : 6.9
            },
            "resultControl" : {
              "forcesMoments" : [ ],
              "surfaceData" : [ ]
            },
            "advancedConcepts" : {
              "rotatingZones" : [ ]
            }
          }
        }
      },
      "LocalCartesianBox" : {
        "value" : {
          "type" : "LOCAL_CARTESIAN_BOX",
          "geometryPrimitiveId" : "159c159c-159c-159c-159c-159c159c159c",
          "name" : "Local cartesian box 1",
          "orientationReference" : "GEOMETRY",
          "min" : {
            "value" : {
              "x" : -5,
              "y" : -3.5,
              "z" : 0
            },
            "unit" : "m"
          },
          "max" : {
            "value" : {
              "x" : 5,
              "y" : 3.5,
              "z" : 3
            },
            "unit" : "m"
          }
        }
      },
      "ComponentOverviewExample" : {
        "value" : {
          "componentReference" : "simscale.ramps:mesh-and-result-import",
          "componentType" : "WORKFLOW_TYPE",
          "state" : "ACTIVE",
          "name" : "Mesh and result import"
        }
      },
      "ComponentOverviewListExample" : {
        "value" : [ {
          "componentReference" : "simscale.ramps:mesh-and-result-import",
          "componentType" : "WORKFLOW_TYPE",
          "state" : "ACTIVE",
          "name" : "Mesh and result import"
        } ]
      },
      "ComponentVersionMetadataExample" : {
        "value" : {
          "componentVersionReference" : "simscale.ramps:mesh-and-result-import:1.4.1",
          "name" : "Mesh and result import",
          "multiLanguageName" : {
            "en" : "Mesh and result import"
          },
          "description" : "Converts external mesh and result fields into SimScale's internal format.",
          "multiLanguageDescription" : {
            "en" : "Converts external mesh and result fields into SimScale's internal format."
          },
          "state" : "RELEASED"
        }
      },
      "ComponentVersionMetadataListExample" : {
        "value" : [ {
          "componentVersionReference" : "simscale.ramps:mesh-and-result-import:1.4.1",
          "name" : "Mesh and result import",
          "multiLanguageName" : {
            "en" : "Mesh and result import"
          },
          "description" : "Converts external mesh and result fields into SimScale's internal format.",
          "multiLanguageDescription" : {
            "en" : "Converts external mesh and result fields into SimScale's internal format."
          },
          "state" : "RELEASED"
        } ]
      },
      "ComponentVersionDependenciesExample" : {
        "value" : {
          "dataTypeDependencies" : [ "simscale.ramps:general-mesh-and-fields:1.1.0", "simscale.ramps:ramps-mesh-and-fields:1.0.0" ],
          "methodDependencies" : [ "simscale.ramps:ramps-conversion:1.3.3" ],
          "workflowTypeDependencies" : [ "simscale.ramps:mesh-and-result-import:1.2.0" ]
        }
      },
      "ComponentVersionDependentsExample" : {
        "value" : {
          "workflowTypeDependents" : [ "simscale.ramps:mesh-and-result-import:1.4.1" ]
        }
      },
      "ComponentGroupMetadataExample" : {
        "value" : {
          "componentGroupReference" : "simscale.ramps",
          "name" : "RAMPS",
          "multiLanguageName" : {
            "en" : "RAMPS"
          },
          "description" : "Components for RAMPS mesh and result data.",
          "multiLanguageDescription" : {
            "en" : "Components for RAMPS mesh and result data."
          },
          "state" : "ACTIVE",
          "hasChildren" : true
        }
      },
      "ComponentGroupMetadataListExample" : {
        "value" : [ {
          "componentGroupReference" : "simscale.ramps",
          "name" : "RAMPS",
          "multiLanguageName" : {
            "en" : "RAMPS"
          },
          "description" : "Components for RAMPS mesh and result data.",
          "multiLanguageDescription" : {
            "en" : "Components for RAMPS mesh and result data."
          },
          "state" : "ACTIVE",
          "hasChildren" : true
        } ]
      },
      "OrganizationComponentGroupMetadataExample" : {
        "value" : {
          "organizationComponentGroupReference" : "simscale",
          "organizationId" : "26bc882a-f3c8-4abc-8b75-c4f5f62790aa",
          "name" : "SimScale"
        }
      },
      "DataTypeFileOperationsDescriptionExample" : {
        "value" : {
          "uploadable" : true,
          "downloadable" : true,
          "fileFormatGroups" : [ {
            "name" : "VTK",
            "multiLanguageName" : {
              "en" : "VTK"
            },
            "fileFormats" : [ {
              "name" : "VTU",
              "multiLanguageName" : {
                "en" : "VTU"
              },
              "mimeType" : "application/octet-stream",
              "fileExtensions" : [ "vtu" ]
            } ]
          } ]
        }
      },
      "SchemaDefinitionExample" : {
        "value" : {
          "name" : "generalMeshAndFields",
          "modelFieldName" : "generalMeshAndFields",
          "typeName" : "generalMeshAndFields",
          "fields" : {
            "sourceFile" : {
              "name" : "sourceFile",
              "modelFieldName" : "sourceFile",
              "default" : null,
              "list" : false,
              "optional" : false,
              "dataTypeReference" : null,
              "doc" : "Uploaded mesh and result file."
            }
          },
          "subtypes" : [ ],
          "defaultSubtype" : null,
          "inline" : false,
          "doc" : "External mesh and result fields."
        }
      },
      "ValidationRuleSetExample" : {
        "value" : {
          "rules" : [ ]
        }
      },
      "DataInterfaceExample" : {
        "value" : {
          "input" : [ {
            "name" : "generalMeshAndFields",
            "type" : "simscale.ramps:general-mesh-and-fields:1.1.0",
            "parameters" : [ ],
            "dataProviderType" : "INTERNAL",
            "optional" : false,
            "label" : "Input mesh and fields"
          } ],
          "output" : [ {
            "name" : "rampsMeshAndFields",
            "type" : "simscale.ramps:ramps-mesh-and-fields:1.0.0",
            "parameters" : [ ],
            "dataProviderType" : "EXTERNAL",
            "optional" : false,
            "label" : "SimScale mesh and fields"
          } ]
        }
      },
      "MethodResourceEstimationValueModelExample" : {
        "value" : {
          "oneProcessorEstimation" : {
            "memoryInMebibytes" : {
              "value_model_type" : "integer:constant",
              "value" : 1024
            },
            "storageInMebibytes" : {
              "value_model_type" : "integer:constant",
              "value" : 10240
            }
          },
          "scalingEstimation" : {
            "speedUp" : {
              "value_model_type" : "list:constant",
              "values" : [ {
                "processors" : {
                  "value_model_type" : "integer:constant",
                  "value" : 2
                },
                "scaling" : {
                  "value_model_type" : "real:constant",
                  "value" : 2.0
                }
              } ],
              "elementModel" : {
                "processors" : {
                  "value_model_type" : "integer:constant",
                  "value" : 2
                },
                "scaling" : {
                  "value_model_type" : "real:constant",
                  "value" : 2.0
                }
              }
            }
          }
        }
      },
      "UiConfigurationExample" : {
        "value" : {
          "fields" : {
            "generalMeshAndFields" : {
              "title" : {
                "type" : "LABEL",
                "value" : "Input mesh and fields"
              }
            }
          }
        }
      },
      "WorkflowDefinitionExample" : {
        "value" : {
          "data" : [ {
            "name" : "generalMeshAndFields",
            "type" : "simscale.ramps:general-mesh-and-fields:1.1.0",
            "optional" : false
          }, {
            "name" : "rampsMeshAndFields",
            "type" : "simscale.ramps:ramps-mesh-and-fields:1.0.0",
            "optional" : false
          } ],
          "operations" : [ {
            "name" : "ramps_conversion",
            "method" : "simscale.ramps:ramps-conversion:1.3.3",
            "inputDataMap" : {
              "generalMeshAndFields" : "generalMeshAndFields"
            },
            "outputDataMap" : {
              "rampsMeshAndFields" : "rampsMeshAndFields"
            }
          } ],
          "breakpoints" : [ ],
          "metadata" : {
            "label" : "Mesh and result import"
          },
          "workflowDefinitionAnalysisStrategy" : "STATIC"
        }
      },
      "DataIdExample" : {
        "value" : "data:73f26297-3471-4ebc-a716-cda2eeb6b39d"
      },
      "DataIdListExample" : {
        "value" : [ "data:73f26297-3471-4ebc-a716-cda2eeb6b39d" ]
      },
      "DataInfoExample" : {
        "value" : {
          "data_info_type" : "internalDataInfo",
          "dataId" : "data:73f26297-3471-4ebc-a716-cda2eeb6b39d",
          "dataType" : "simscale.ramps:general-mesh-and-fields:1.1.0",
          "contentType" : "application/octet-stream",
          "projectId" : "2035021597904608503",
          "creationTimestamp" : 1.777984496789E9,
          "dataSize" : 524288,
          "dataProviderType" : "INTERNAL",
          "storageId" : "6d1e3c52-b7a5-4bdf-9230-d4be47f1999b",
          "origin" : "USER_UPLOAD",
          "createdBy" : 1234
        }
      },
      "DomainSpecificMetadataExample" : {
        "value" : {
          "format" : "PVD"
        }
      },
      "CreateUploadSessionRequestExample" : {
        "value" : {
          "dataType" : "simscale.ramps:general-mesh-and-fields:1.1.0",
          "contentType" : "application/octet-stream"
        }
      },
      "UploadSessionExample" : {
        "value" : {
          "storageId" : "019eccdc-a0ff-7692-bd8a-bf1f30152313"
        }
      },
      "StartUploadSessionAppendRequestExample" : {
        "value" : {
          "size" : 2147483648
        }
      },
      "UploadSessionAppendExample" : {
        "value" : {
          "appendId" : "019ecce6-04f9-72d0-9759-ab8b73112499",
          "preSignedPutRequest" : {
            "url" : "https://storage-upload.example.com/object",
            "headers" : [ {
              "name" : "Content-Type",
              "value" : "application/octet-stream"
            } ]
          }
        }
      },
      "CreateWorkflowRequestExample" : {
        "value" : {
          "projectId" : "2035021597904608503",
          "workflowTypeReference" : "simscale.ramps:mesh-and-result-import:1.4.1",
          "name" : "Mesh and result import",
          "description" : "Converts external mesh and result fields into SimScale's internal format.",
          "inputDataMap" : {
            "parameterValueCombinationsById" : {
              "11111111-1111-1111-1111-111111111111" : {
                "parameterValues" : { }
              }
            },
            "dataByNameAndParameterValueCombinationId" : {
              "generalMeshAndFields" : {
                "11111111-1111-1111-1111-111111111111" : "data:73f26297-3471-4ebc-a716-cda2eeb6b39d"
              }
            }
          },
          "configuration" : { },
          "breakpoints" : [ ]
        }
      },
      "UpdateWorkflowRequestExample" : {
        "value" : {
          "workflowTypeVersionReference" : "simscale.ramps:mesh-and-result-import:1.4.1",
          "name" : "Mesh and result import",
          "description" : "Updated workflow configuration.",
          "inputDataMap" : {
            "parameterValueCombinationsById" : {
              "11111111-1111-1111-1111-111111111111" : {
                "parameterValues" : { }
              }
            },
            "dataByNameAndParameterValueCombinationId" : {
              "generalMeshAndFields" : {
                "11111111-1111-1111-1111-111111111111" : "data:73f26297-3471-4ebc-a716-cda2eeb6b39d"
              }
            }
          },
          "configuration" : { },
          "breakpoints" : [ ]
        }
      },
      "WorkflowIdExample" : {
        "value" : "workflow:da24787a-1176-41d8-9f7e-eb09288f041d"
      },
      "WorkflowVersionIdExample" : {
        "value" : "workflow.version:f1cc1ff1-d335-494e-8d4f-4663d661444e"
      },
      "ReadWorkflowResponseExample" : {
        "value" : {
          "workflowId" : "workflow:da24787a-1176-41d8-9f7e-eb09288f041d",
          "projectId" : "2035021597904608503",
          "workflowTypeReference" : "simscale.ramps:mesh-and-result-import:1.4.1",
          "workflowVersionId" : "workflow.version:f1cc1ff1-d335-494e-8d4f-4663d661444e",
          "parentWorkflowVersionId" : null,
          "timestamp" : 1.777984496789E9,
          "name" : "Mesh and result import",
          "description" : "Converts external mesh and result fields into SimScale's internal format.",
          "inputDataMap" : {
            "parameterValueCombinationsById" : {
              "11111111-1111-1111-1111-111111111111" : {
                "parameterValues" : { }
              }
            },
            "dataByNameAndParameterValueCombinationId" : {
              "generalMeshAndFields" : {
                "11111111-1111-1111-1111-111111111111" : "data:73f26297-3471-4ebc-a716-cda2eeb6b39d"
              }
            }
          },
          "configuration" : { },
          "breakpoints" : [ ],
          "createdBy" : 1234
        }
      },
      "WorkflowOverviewListExample" : {
        "value" : [ {
          "workflowId" : "workflow:da24787a-1176-41d8-9f7e-eb09288f041d",
          "projectId" : "2035021597904608503",
          "workflowTypeReference" : "simscale.ramps:mesh-and-result-import:1.4.1",
          "workflowVersionId" : "workflow.version:f1cc1ff1-d335-494e-8d4f-4663d661444e",
          "parentWorkflowVersionId" : null,
          "creationTimestamp" : 1.777984496789E9,
          "lastModificationTimestamp" : 1.7779845E9,
          "name" : "Mesh and result import",
          "description" : "Converts external mesh and result fields into SimScale's internal format.",
          "createdBy" : 1234
        } ]
      },
      "WorkflowVersionOverviewListExample" : {
        "value" : [ {
          "workflowId" : "workflow:da24787a-1176-41d8-9f7e-eb09288f041d",
          "projectId" : "2035021597904608503",
          "workflowTypeReference" : "simscale.ramps:mesh-and-result-import:1.4.1",
          "workflowVersionId" : "workflow.version:f1cc1ff1-d335-494e-8d4f-4663d661444e",
          "parentWorkflowVersionId" : null,
          "creationTimestamp" : 1.777984496789E9,
          "name" : "Mesh and result import",
          "description" : "Converts external mesh and result fields into SimScale's internal format.",
          "createdBy" : 1234
        } ]
      },
      "InitializeWorkflowRunRequestExample" : {
        "value" : {
          "workflowVersionId" : "workflow.version:f1cc1ff1-d335-494e-8d4f-4663d661444e",
          "workflowRunMode" : "REAL",
          "workflowRunName" : "Run 1"
        }
      },
      "WorkflowRunIdExample" : {
        "value" : "workflow.run:4e99da58-ae2c-4180-b137-28b9a6963309"
      },
      "PublicWorkflowRunOverviewExample" : {
        "value" : {
          "workflowRunId" : "workflow.run:4e99da58-ae2c-4180-b137-28b9a6963309",
          "workflowRunName" : "Run 1",
          "workflowTypeReference" : "simscale.ramps:mesh-and-result-import:1.4.1",
          "workflowRunMode" : "REAL",
          "creationTimestamp" : 1.777984496789E9,
          "lastProcessed" : 1.7779845E9,
          "projectId" : "2035021597904608503",
          "workflowVersionId" : "workflow.version:f1cc1ff1-d335-494e-8d4f-4663d661444e",
          "workflowId" : "workflow:da24787a-1176-41d8-9f7e-eb09288f041d",
          "state" : "SUCCEEDED",
          "hasRecycledOperation" : false,
          "error" : null,
          "outputDataMap" : {
            "parameterValueCombinationsById" : {
              "11111111-1111-1111-1111-111111111111" : {
                "parameterValues" : { }
              }
            },
            "dataByNameAndParameterValueCombinationId" : {
              "rampsMeshAndFields" : {
                "11111111-1111-1111-1111-111111111111" : "data:2d787eb5-2480-49c5-8b92-a9d4b0c23f69"
              }
            }
          }
        }
      },
      "PublicWorkflowRunOverviewListExample" : {
        "value" : [ {
          "workflowRunId" : "workflow.run:4e99da58-ae2c-4180-b137-28b9a6963309",
          "workflowRunName" : "Run 1",
          "workflowTypeReference" : "simscale.ramps:mesh-and-result-import:1.4.1",
          "workflowRunMode" : "REAL",
          "creationTimestamp" : 1.777984496789E9,
          "lastProcessed" : 1.7779845E9,
          "projectId" : "2035021597904608503",
          "workflowVersionId" : "workflow.version:f1cc1ff1-d335-494e-8d4f-4663d661444e",
          "workflowId" : "workflow:da24787a-1176-41d8-9f7e-eb09288f041d",
          "state" : "RUNNING",
          "hasRecycledOperation" : false,
          "error" : null,
          "outputDataMap" : null
        } ]
      },
      "WorkflowRunProgressExample" : {
        "value" : {
          "workflowRunId" : "workflow.run:4e99da58-ae2c-4180-b137-28b9a6963309",
          "percentage" : 0.6,
          "elapsedTimeInSeconds" : 180,
          "estimatedRemainingTimeInSeconds" : 120,
          "pending" : [ ],
          "running" : [ {
            "operationRunId" : "operation.run:7c8e17d4-e490-43f3-80dc-c88e6c6fe6ce",
            "operationName" : "ramps_conversion",
            "operationLabel" : "Conversion to SimScale's internal format",
            "operationMultiLanguageLabel" : {
              "en" : "Conversion to SimScale's internal format"
            },
            "operationType" : "METHOD",
            "methodRunId" : "method.run:342dc741-4b20-4d6e-9ad7-a0c6fd9e2a69",
            "nestedWorkflowRunId" : null,
            "percentage" : 0.6,
            "elapsedTimeInSeconds" : 180,
            "estimatedRemainingTimeInSeconds" : 120,
            "methodProgress" : [ {
              "percentage" : {
                "value" : 60
              }
            } ],
            "nestedRunProgress" : null
          } ],
          "finished" : [ ],
          "skipped" : [ ]
        }
      },
      "OperationRunExample" : {
        "value" : {
          "operationRunId" : "operation.run:7c8e17d4-e490-43f3-80dc-c88e6c6fe6ce",
          "workflowRunId" : "workflow.run:4e99da58-ae2c-4180-b137-28b9a6963309",
          "operationName" : "ramps_conversion",
          "parameterValues" : { },
          "operationType" : "METHOD",
          "methodReference" : "simscale.ramps:ramps-conversion:1.3.3",
          "methodRunId" : "method.run:342dc741-4b20-4d6e-9ad7-a0c6fd9e2a69",
          "nestedWorkflowTypeReference" : null,
          "nestedWorkflowRunId" : null,
          "recycled" : false,
          "operationRunStateHistory" : [ {
            "operationRunState" : "CREATED",
            "changeTimestamp" : 1.777984496789E9
          }, {
            "operationRunState" : "SUCCEEDED",
            "changeTimestamp" : 1.7779848E9
          } ],
          "stateHistoryStatisticalSummary" : {
            "totalDuration" : 300000
          }
        }
      },
      "MethodResourceUsageReportExample" : {
        "value" : {
          "projectId" : "2035021597904608503",
          "projectName" : "Example project",
          "operationRunId" : "operation.run:7c8e17d4-e490-43f3-80dc-c88e6c6fe6ce",
          "methodRunId" : "method.run:342dc741-4b20-4d6e-9ad7-a0c6fd9e2a69",
          "name" : "ramps_conversion",
          "startedAt" : 1.777984496789E9,
          "finishedAt" : 1.7779848E9,
          "durationInMillis" : 88810,
          "runTerminalState" : "SUCCEEDED",
          "status" : "FINAL",
          "usageSummary" : {
            "total" : {
              "cpuCoreSeconds" : 720,
              "gpuCoreSeconds" : 0
            },
            "chargeable" : {
              "cpuCoreSeconds" : 720,
              "gpuCoreSeconds" : 0
            },
            "nonChargeable" : {
              "cpuCoreSeconds" : 0,
              "gpuCoreSeconds" : 0
            }
          },
          "allocatedCpus" : 8,
          "allocatedGpus" : 0
        }
      }
    },
    "securitySchemes" : {
      "apiKey" : {
        "type" : "apiKey",
        "description" : "The API key assigned to the user. For sandbox environment, use `sandbox-example-api-key`.",
        "name" : "X-API-KEY",
        "in" : "header"
      }
    }
  }
}