YAML schema for Chrono::FSI-SPH solver specification
A Chrono YAML SPH simulation file defines the parameters needed to run a Chrono::SPH simulation. It consists of the following main objects:
- [required] The Chrono version (
chrono-version) that is compatible with the YAML model specification. This is a string of the formM.m(major.minor) orM.m.p(major-minor-patch), although only the two fileds are verified for compatibility. - The
sphobject specifying SPH method parameters. - The
kernelobject specifying the SPH kernel definition. - The
discretizationobject specifying parameters for the SPH discretization. - The
boundary_conditionsobject specifying the method and parameters for treating fluid-solid coundary conditions. - The
integrationobject specifying the type and parameters for the time integrator. - The
proximity_searchobject specifying parameters for the proximity (neighbor) search algorithm. - The
particle_shiftingobject specifying the method and parameters for the particle shifting algorithm. - The
viscosityobject specifying the method and parameters for viscosity treatment.
SPH method specification
** TODO **
Kernel specification
** TODO **
SPH discretization specification
** TODO **
Boundary condition treatment
** TODO **
Integrator specification
** TODO **
Proximity search treatment
** TODO **
Particle shifting treratment
** TODO **
Viscosity treatment
** TODO **
YAML schema
The YAML SPH solver specification file must follow the data/yaml/schema/fsisph_solver.schema.yaml provided in the Chrono data directory:
# =============================================================================
# PROJECT CHRONO - http://projectchrono.org
#
# Copyright (c) 2025 projectchrono.org
# All rights reserved.
#
# Use of this source code is governed by a BSD-style license that can be found
# in the LICENSE file at the top level of the distribution and at
# http://projectchrono.org/license-chrono.txt.
# =============================================================================
#
# Schema for a Chrono::SPH YAML fluid solver specification file.
# The `chrono-version` must match the Chrono major and minor version numbers.
#
# =============================================================================
required: [chrono-version]
chrono-version:
type: string
description: Chrono version compatible with this YAML specification (M.m or M.m.p)
# -----------------------------------------------------------------------------
# Definitions of common Chrono types
vector3d: &VECTOR3D # Specification of a ChVector3d
type: array
items:
type: number
minItems: 3
maxItems: 3
# -----------------------------------------------------------------------------
# Definition of a Chrono::SPH solver
# TODO
sph:
kernel:
discretization:
boundary_conditions:
integration:
proximity_search:
particle_shifting:
viscosity:
output:
visualization: