From b75f1fdb363fe7a3f09bef7491f2d78424076652 Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Sat, 17 Feb 2024 21:15:39 -0500 Subject: [PATCH 01/15] Rebase to main --- .../temperature/mass_conserving.h | 6 +- include/world_builder/parameters.h | 2 +- include/world_builder/utilities.h | 5 +- .../temperature/half_space_model.cc | 8 +- .../temperature/plate_model.cc | 14 +-- .../temperature/mass_conserving.cc | 88 ++++++++++++------- source/world_builder/utilities.cc | 25 ++++-- 7 files changed, 92 insertions(+), 56 deletions(-) diff --git a/include/world_builder/features/subducting_plate_models/temperature/mass_conserving.h b/include/world_builder/features/subducting_plate_models/temperature/mass_conserving.h index c0f260971..953be73be 100644 --- a/include/world_builder/features/subducting_plate_models/temperature/mass_conserving.h +++ b/include/world_builder/features/subducting_plate_models/temperature/mass_conserving.h @@ -110,8 +110,10 @@ namespace WorldBuilder double min_depth; double max_depth; double density; - std::pair,std::vector> plate_velocities; - std::vector> plate_velocities_at_each_ridge_point; + std::pair,std::vector> subducting_velocities; + std::vector> subducting_velocities_at_each_ridge_point; + std::pair,std::vector> ridge_spreading_velocities; + std::vector> ridge_spreading_velocities_at_each_ridge_point; double mantle_coupling_depth; double forearc_cooling_factor; double thermal_conductivity; diff --git a/include/world_builder/parameters.h b/include/world_builder/parameters.h index 9be8762c6..47f8f906f 100644 --- a/include/world_builder/parameters.h +++ b/include/world_builder/parameters.h @@ -131,7 +131,7 @@ namespace WorldBuilder std::pair,std::vector> get_value_at_array(const std::string &name); /** - * A specialized verions of get which can return vectors/arrays. + * A specialized version of get which can return vectors/arrays. * This version is designed for the plugin system. * \param name The name of the entry to retrieved */ diff --git a/include/world_builder/utilities.h b/include/world_builder/utilities.h index e83e0b76f..2752762e7 100644 --- a/include/world_builder/utilities.h +++ b/include/world_builder/utilities.h @@ -457,11 +457,12 @@ namespace WorldBuilder * @param position_in_natural_coordinates_at_min_depth the current position in natural_coordinates * @return The content of the file. */ - std::pair + std::vector calculate_ridge_distance_and_spreading(std::vector>> mid_oceanic_ridges, std::vector> mid_oceanic_spreading_velocities, const std::unique_ptr &coordinate_system, - const Objects::NaturalCoordinate &position_in_natural_coordinates_at_min_depth); + const Objects::NaturalCoordinate &position_in_natural_coordinates_at_min_depth, + std::vector> subducting_plate_velocities = {{0.0}}); } // namespace Utilities } // namespace WorldBuilder diff --git a/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc b/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc index 47fb92b70..82f903070 100644 --- a/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc +++ b/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc @@ -160,7 +160,7 @@ namespace WorldBuilder this->world->specific_heat) * depth); } - std::pair ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + std::vector ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, spreading_velocities_at_each_ridge_point, world->parameters.coordinate_system, position_in_natural_coordinates_at_min_depth); @@ -168,7 +168,7 @@ namespace WorldBuilder const double thermal_diffusivity = this->world->thermal_diffusivity; - const double age = ridge_parameters.second / ridge_parameters.first; + const double age = ridge_parameters[1] / ridge_parameters[0]; double temperature = bottom_temperature_local; @@ -178,12 +178,12 @@ namespace WorldBuilder << ". Relevant variables: bottom_temperature_local = " << bottom_temperature_local << ", top_temperature = " << top_temperature << ", max_depth = " << max_depth - << ", spreading_velocity = " << ridge_parameters.first + << ", spreading_velocity = " << ridge_parameters[0] << ", thermal_diffusivity = " << thermal_diffusivity << ", age = " << age << '.'); WBAssert(std::isfinite(temperature), "Temperature inside half-space cooling model is not a finite: " << temperature << ". Relevant variables: bottom_temperature_local = " << bottom_temperature_local << ", top_temperature = " << top_temperature - << ", spreading_velocity = " << ridge_parameters.first + << ", spreading_velocity = " << ridge_parameters[0] << ", thermal_diffusivity = " << thermal_diffusivity << ", age = " << age << '.'); diff --git a/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc b/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc index 06e829edb..c5c93f4e7 100644 --- a/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc +++ b/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc @@ -158,13 +158,13 @@ namespace WorldBuilder const int summation_number = 100; - std::pair ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + std::vector ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, spreading_velocities_at_each_ridge_point, world->parameters.coordinate_system, position_in_natural_coordinates_at_min_depth); const double thermal_diffusivity = this->world->thermal_diffusivity; - const double age = ridge_parameters.second / ridge_parameters.first; + const double age = ridge_parameters[1] / ridge_parameters[0]; double temperature = top_temperature + (bottom_temperature_local - top_temperature) * (depth / max_depth); // This formula addresses the horizontal heat transfer by having the spreading velocity and distance to the ridge in it. @@ -173,10 +173,10 @@ namespace WorldBuilder { temperature = temperature + (bottom_temperature_local - top_temperature) * ((2 / (double(i) * Consts::PI)) * std::sin((double(i) * Consts::PI * depth) / max_depth) * - std::exp((((ridge_parameters.first * max_depth)/(2 * thermal_diffusivity)) - - std::sqrt(((ridge_parameters.first*ridge_parameters.first*max_depth*max_depth) / + std::exp((((ridge_parameters[0] * max_depth)/(2 * thermal_diffusivity)) - + std::sqrt(((ridge_parameters[0]*ridge_parameters[0]*max_depth*max_depth) / (4*thermal_diffusivity*thermal_diffusivity)) + double(i) * double(i) * Consts::PI * Consts::PI)) * - ((ridge_parameters.first * age) / max_depth))); + ((ridge_parameters[0] * age) / max_depth))); } @@ -184,12 +184,12 @@ namespace WorldBuilder << ". Relevant variables: bottom_temperature_local = " << bottom_temperature_local << ", top_temperature = " << top_temperature << ", max_depth = " << max_depth - << ", spreading_velocity = " << ridge_parameters.first + << ", spreading_velocity = " << ridge_parameters[0] << ", thermal_diffusivity = " << thermal_diffusivity << ", age = " << age << '.'); WBAssert(std::isfinite(temperature), "Temperature inside plate model is not a finite: " << temperature << ". Relevant variables: bottom_temperature_local = " << bottom_temperature_local << ", top_temperature = " << top_temperature - << ", spreading_velocity = " << ridge_parameters.first + << ", spreading_velocity = " << ridge_parameters[0] << ", thermal_diffusivity = " << thermal_diffusivity << ", age = " << age << '.'); diff --git a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc index 085909335..76d2e9a40 100644 --- a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc +++ b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc @@ -23,7 +23,7 @@ */ #include "world_builder/features/subducting_plate_models/temperature/mass_conserving.h" - +#include "world_builder/features/oceanic_plate_models/temperature/plate_model.h" #include "world_builder/nan.h" #include "world_builder/types/array.h" #include "world_builder/types/bool.h" @@ -117,9 +117,13 @@ namespace WorldBuilder prm.declare_entry("density", Types::Double(3300), "The reference density of the subducting plate in $kg/m^3$"); - prm.declare_entry("plate velocity", Types::OneOf(Types::Double(0.01),Types::Array(Types::ValueAtPoints(0.01, std::numeric_limits::max()))), + prm.declare_entry("plate velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr"); + prm.declare_entry("subducting velocity", Types::OneOf(Types::Double(0.),Types::Array(Types::ValueAtPoints(0., std::numeric_limits::max()))), + "The velocity with which the ridge is moving through time, and how long the ridge " + "has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]"); + prm.declare_entry("coupling depth", Types::Double(100e3), "The depth at which the slab surface first comes in contact with the hot mantle wedge " "in meters. Default is 100 km."); @@ -181,7 +185,8 @@ namespace WorldBuilder density = prm.get("density"); thermal_conductivity = prm.get("thermal conductivity"); - plate_velocities = prm.get_value_at_array("plate velocity"); + ridge_spreading_velocities = prm.get_value_at_array("plate velocity"); + subducting_velocities = prm.get_value_at_array("subducting velocity"); mantle_coupling_depth = prm.get("coupling depth"); forearc_cooling_factor = prm.get("forearc cooling factor"); @@ -221,16 +226,24 @@ namespace WorldBuilder unsigned int ridge_point_index = 0; for (unsigned int index_x = 0; index_x < mid_oceanic_ridges.size(); index_x++) { - std::vector plate_velocities_for_ridge; + std::vector subducting_velocities_for_ridge; + std::vector ridge_spreading_velocities_for_ridge; for (unsigned int index_y = 0; index_y < mid_oceanic_ridges[index_x].size(); index_y++) { - if (plate_velocities.second.size() <= 1) - plate_velocities_for_ridge.push_back(plate_velocities.first[0]); + if (subducting_velocities.second.size() <= 1) + { + subducting_velocities_for_ridge.push_back(subducting_velocities.first[0]); + ridge_spreading_velocities_for_ridge.push_back(ridge_spreading_velocities.first[0]); + } else - plate_velocities_for_ridge.push_back(plate_velocities.second[ridge_point_index]); + { + subducting_velocities_for_ridge.push_back(subducting_velocities.second[ridge_point_index]); + ridge_spreading_velocities_for_ridge.push_back(ridge_spreading_velocities.second[ridge_point_index]); + } ridge_point_index += 1; } - plate_velocities_at_each_ridge_point.push_back(plate_velocities_for_ridge); + subducting_velocities_at_each_ridge_point.push_back(subducting_velocities_for_ridge); + ridge_spreading_velocities_at_each_ridge_point.push_back(ridge_spreading_velocities_for_ridge); } std::string reference_model_name_str = prm.get("reference model name"); @@ -260,19 +273,15 @@ namespace WorldBuilder const Objects::NaturalCoordinate trench_point_natural = Objects::NaturalCoordinate(trench_point, *(world->parameters.coordinate_system)); - std::pair ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - plate_velocities_at_each_ridge_point, + std::vector ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + ridge_spreading_velocities_at_each_ridge_point, world->parameters.coordinate_system, - trench_point_natural); + trench_point_natural, + subducting_velocities_at_each_ridge_point); const double km2m = 1.0e3; // 1000 m/km const double cm2m = 100; // 100 cm/m const double my = 1.0e6; // 1e6 y/my - const double seconds_in_year = 60.0 * 60.0 * 24.0 * 365.25; // sec/y - const double plate_velocity = ridge_parameters.first * seconds_in_year; // m/yr - - const double age_at_trench = ridge_parameters.second / plate_velocity; // m/(m/y) = yr - const double plate_age_sec = age_at_trench * seconds_in_year; // y --> seconds /* information about nearest point on the slab segment */ const double distance_along_plane = distance_from_planes.distance_along_plane; @@ -280,6 +289,18 @@ namespace WorldBuilder const double total_segment_length = additional_parameters.total_local_segment_length; const double average_angle = distance_from_planes.average_angle; + const double seconds_in_year = 60.0 * 60.0 * 24.0 * 365.25; // sec/y + const double spreading_velocity = ridge_parameters[0] * seconds_in_year; // m/s + const double subducting_velocity = ridge_parameters[2] * seconds_in_year; // m/s + const double ridge_velocity = spreading_velocity - subducting_velocity; + + const double age_at_trench = ridge_parameters[1] / spreading_velocity; // m/(m/y) = yr + double age_shift = 0; + double time_of_ridge_migration = subducting_velocities.first[0]; + if (subducting_velocity != 0 && ridge_velocity != 0) + age_shift = time_of_ridge_migration * std::max(1 - (distance_along_plane / (time_of_ridge_migration * abs(ridge_velocity))), 0.0) * abs(ridge_velocity)/ridge_velocity; + + const double plate_age_sec = age_at_trench * seconds_in_year; // y --> seconds // 1. Determine initial heat content of the slab based on age of plate at trench // This uses the integral of the half-space temperature profile // The initial heat content is also decided from the type of thermal model to use in the @@ -292,16 +313,16 @@ namespace WorldBuilder for (int i = 0; i< std::floor(plate_model_summation_number/2.0); ++i) { // because n < sommation_number + 1 and n = 2k + 1 - // The "plate_velocity" instead of "plate_velocity_UI" is used for the last instance as "age_at_trench" has + // The "spreading_velocity" instead of "spreading_velocity_UI" is used for the last instance as "age_at_trench" has // a unit of yr. - const double plate_velocity_UI = plate_velocity / seconds_in_year; + const double spreading_velocity_UI = spreading_velocity / seconds_in_year; const double temp_heat_content = thermal_conductivity / thermal_diffusivity * (surface_temperature - potential_mantle_temperature) * 4 * max_depth / double(2*i + 1) / double(2*i + 1) / Consts::PI / Consts::PI * - exp((plate_velocity_UI * max_depth / 2 / thermal_diffusivity - - std::sqrt(plate_velocity_UI * plate_velocity_UI * max_depth * max_depth / 4.0 / thermal_diffusivity / thermal_diffusivity + + exp((spreading_velocity_UI * max_depth / 2 / thermal_diffusivity - + std::sqrt(spreading_velocity_UI * spreading_velocity_UI * max_depth * max_depth / 4.0 / thermal_diffusivity / thermal_diffusivity + double(2*i + 1) * double(2*i + 1) * Consts::PI * Consts::PI)) * - plate_velocity * age_at_trench / max_depth); + spreading_velocity * age_at_trench / max_depth); initial_heat_content -= temp_heat_content; } } @@ -312,8 +333,7 @@ namespace WorldBuilder } // Plate age increases with distance along the slab in the mantle - double effective_plate_age = plate_age_sec + (distance_along_plane / plate_velocity) * seconds_in_year; // m/(m/y) = y(seconds_in_year) - + double effective_plate_age = plate_age_sec + (distance_along_plane / spreading_velocity + age_shift) * seconds_in_year; // m/(m/y) = y(seconds_in_year) // Need adiabatic temperature at position of grid point const double background_temperature = adiabatic_heating ? potential_mantle_temperature * @@ -336,7 +356,7 @@ namespace WorldBuilder // increases Tmin slope for slower relative to slope for maximum plate velocity // will be between 0.1 (fast) and 0.35 (slow) const double max_plate_vel = 20/cm2m; // e.g., 20 cm/yr -> 0.2 m/yr - const double vsubfact = std::min( std::max( 0.35 + ((0.1-0.35) / max_plate_vel) * plate_velocity, 0.1), 0.35); + const double vsubfact = std::min( std::max( 0.35 + ((0.1-0.35) / max_plate_vel) * spreading_velocity, 0.1), 0.35); // increases Tmin slope for younger plate relative to slope for old place // will be between 0.1 (old) and 0.35 *(young) @@ -443,14 +463,14 @@ namespace WorldBuilder for (int i = 0; i< std::floor(plate_model_summation_number/2.0); ++i) { // because n < sommation_number + 1 and n = 2k + 1 - const double plate_velocity_UI = plate_velocity / seconds_in_year; + const double spreading_velocity_UI = spreading_velocity / seconds_in_year; const double temp_heat_content = thermal_conductivity / thermal_diffusivity * (min_temperature - potential_mantle_temperature) * 4 * max_depth / double(2*i + 1) / double(2*i + 1) / Consts::PI / Consts::PI * - exp((plate_velocity_UI * max_depth / 2.0 / thermal_diffusivity - - std::sqrt(plate_velocity_UI * plate_velocity_UI * max_depth * max_depth / 4.0 / thermal_diffusivity / thermal_diffusivity + + exp((spreading_velocity_UI * max_depth / 2.0 / thermal_diffusivity - + std::sqrt(spreading_velocity_UI * spreading_velocity_UI * max_depth * max_depth / 4.0 / thermal_diffusivity / thermal_diffusivity + double(2*i + 1) * double(2*i + 1) * Consts::PI * Consts::PI)) * - plate_velocity_UI * effective_plate_age / max_depth); + spreading_velocity_UI * effective_plate_age / max_depth); bottom_heat_content -= temp_heat_content; } } @@ -474,7 +494,7 @@ namespace WorldBuilder } // Call the analytic solution to compute the temperature - temperature = get_temperature_analytic(top_heat_content, min_temperature, background_temperature, temperature_, plate_velocity, effective_plate_age, adjusted_distance); + temperature = get_temperature_analytic(top_heat_content, min_temperature, background_temperature, temperature_, spreading_velocity, effective_plate_age, adjusted_distance); } else { @@ -496,7 +516,7 @@ namespace WorldBuilder const double min_temperature, const double background_temperature, const double temperature_, - const double plate_velocity, + const double spreading_velocity, const double effective_plate_age, const double adjusted_distance) const { @@ -532,16 +552,16 @@ namespace WorldBuilder { if (adjusted_distance < max_depth) { - const double plate_velocity_UI = plate_velocity / seconds_in_year; + const double spreading_velocity_UI = spreading_velocity / seconds_in_year; temperature = background_temperature + (min_temperature - background_temperature) * (1 - adjusted_distance / max_depth); for (int i = 1; i< std::floor(plate_model_summation_number/2.0); ++i) { temperature = temperature - (min_temperature - background_temperature) * ((2 / (double(i) * Consts::PI)) * std::sin((double(i) * Consts::PI * adjusted_distance) / max_depth) * - std::exp((((plate_velocity_UI * max_depth)/(2 * thermal_diffusivity)) - - std::sqrt(((plate_velocity_UI*plate_velocity_UI*max_depth*max_depth) / + std::exp((((spreading_velocity_UI * max_depth)/(2 * thermal_diffusivity)) - + std::sqrt(((spreading_velocity_UI*spreading_velocity_UI*max_depth*max_depth) / (4*thermal_diffusivity*thermal_diffusivity)) + double(i) * double(i) * Consts::PI * Consts::PI)) * - ((plate_velocity_UI * effective_plate_age) / max_depth))); + ((spreading_velocity_UI * effective_plate_age) / max_depth))); } } else diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index bcf4d1b9c..a9d1b6ee6 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1270,15 +1270,17 @@ namespace WorldBuilder template std::array convert_point_to_array<3>(const Point<3> &point_); - std::pair + std::vector calculate_ridge_distance_and_spreading(std::vector>> mid_oceanic_ridges, std::vector> mid_oceanic_spreading_velocities, const std::unique_ptr &coordinate_system, - const Objects::NaturalCoordinate &position_in_natural_coordinates_at_min_depth) + const Objects::NaturalCoordinate &position_in_natural_coordinates_at_min_depth, + std::vector> subducting_plate_velocities) { double distance_ridge = std::numeric_limits::max(); double spreading_velocity_at_ridge = 0; + double subducting_velocity_at_trench = 0; // first find if the coordinate is on this side of a ridge unsigned int relevant_ridge = 0; @@ -1292,7 +1294,7 @@ namespace WorldBuilder } // if there is only one ridge, there is no transform - if (mid_oceanic_ridges.size() > 1) + if (mid_oceanic_ridges[0].size() > 1) { // There are more than one ridge, so there are transform faults // Find the first which is on the same side @@ -1330,6 +1332,9 @@ namespace WorldBuilder const double spreading_velocity_point0 = mid_oceanic_spreading_velocities[relevant_ridge][i_coordinate]; const double spreading_velocity_point1 = mid_oceanic_spreading_velocities[relevant_ridge][i_coordinate + 1]; + const double subducting_velocity_point0 = subducting_plate_velocities[relevant_ridge][i_coordinate]; + const double subducting_velocity_point1 = subducting_plate_velocities[relevant_ridge][i_coordinate + 1]; + { // based on http://geomalgorithms.com/a02-_lines.html const Point<2> v = segment_point1 - segment_point0; @@ -1349,16 +1354,19 @@ namespace WorldBuilder { Pb1=segment_point0; spreading_velocity_at_ridge = spreading_velocity_point0; + subducting_velocity_at_trench = subducting_velocity_point0; } else if (c <= c1) { Pb1=segment_point1; spreading_velocity_at_ridge = spreading_velocity_point1; + subducting_velocity_at_trench = subducting_velocity_point1; } else { Pb1=segment_point0 + (c1 / c) * v; spreading_velocity_at_ridge = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c1 / c); + subducting_velocity_at_trench = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c1 / c); } Point<2> Pb2(coordinate_system->natural_coordinate_system()); @@ -1366,16 +1374,19 @@ namespace WorldBuilder { Pb2=segment_point0; spreading_velocity_at_ridge = spreading_velocity_point0; + subducting_velocity_at_trench = subducting_velocity_point0; } else if (c <= c2) { Pb2=segment_point1; spreading_velocity_at_ridge = spreading_velocity_point1; + subducting_velocity_at_trench = spreading_velocity_point1; } else { Pb2=segment_point0 + (c1 / c) * v; spreading_velocity_at_ridge = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c1 / c); + subducting_velocity_at_trench = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c1 / c); } Point<3> compare_point1(coordinate_system->natural_coordinate_system()); @@ -1400,11 +1411,13 @@ namespace WorldBuilder compare_point2)); } } - std::pair result; - result.first = spreading_velocity_at_ridge / 31557600; // m/s; - result.second = distance_ridge; + std::vector result; + result.push_back(spreading_velocity_at_ridge / 31557600); // m/s + result.push_back(distance_ridge); + result.push_back(subducting_velocity_at_trench / 31557600); // m/s return result; } + } // namespace Utilities } // namespace WorldBuilder From c4f72da75269d5c80863fb69b2bb096eef46e823 Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Sun, 18 Feb 2024 13:54:47 -0500 Subject: [PATCH 02/15] Improve the temperature in the subducting plate --- .../temperature/mass_conserving.h | 3 +- include/world_builder/parameters.h | 2 + include/world_builder/utilities.h | 3 +- .../temperature/half_space_model.cc | 10 +- .../temperature/plate_model.cc | 10 +- .../temperature/mass_conserving.cc | 94 +++++++------ source/world_builder/parameters.cc | 125 +++++++++++++++++- source/world_builder/utilities.cc | 23 +++- 8 files changed, 205 insertions(+), 65 deletions(-) diff --git a/include/world_builder/features/subducting_plate_models/temperature/mass_conserving.h b/include/world_builder/features/subducting_plate_models/temperature/mass_conserving.h index 953be73be..e2eda8c65 100644 --- a/include/world_builder/features/subducting_plate_models/temperature/mass_conserving.h +++ b/include/world_builder/features/subducting_plate_models/temperature/mass_conserving.h @@ -110,8 +110,7 @@ namespace WorldBuilder double min_depth; double max_depth; double density; - std::pair,std::vector> subducting_velocities; - std::vector> subducting_velocities_at_each_ridge_point; + std::vector> subducting_velocities; std::pair,std::vector> ridge_spreading_velocities; std::vector> ridge_spreading_velocities_at_each_ridge_point; double mantle_coupling_depth; diff --git a/include/world_builder/parameters.h b/include/world_builder/parameters.h index 47f8f906f..d98fa6a48 100644 --- a/include/world_builder/parameters.h +++ b/include/world_builder/parameters.h @@ -115,6 +115,8 @@ namespace WorldBuilder template std::vector get_vector(const std::string &name); + std::vector> get_vector_or_double(const std::string &name); + /** * A specialized version of get which can return a value at points type. * \param name The name of the entry to retrieved diff --git a/include/world_builder/utilities.h b/include/world_builder/utilities.h index 2752762e7..05034c313 100644 --- a/include/world_builder/utilities.h +++ b/include/world_builder/utilities.h @@ -462,7 +462,8 @@ namespace WorldBuilder std::vector> mid_oceanic_spreading_velocities, const std::unique_ptr &coordinate_system, const Objects::NaturalCoordinate &position_in_natural_coordinates_at_min_depth, - std::vector> subducting_plate_velocities = {{0.0}}); + std::vector> subducting_plate_velocities = {{0.0}}, + std::vector ridge_migration_times = {0.0}); } // namespace Utilities } // namespace WorldBuilder diff --git a/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc b/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc index 82f903070..fddc5d262 100644 --- a/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc +++ b/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc @@ -84,7 +84,7 @@ namespace WorldBuilder "in degree Kelvin for this feature. If the model has an adiabatic gradient" "this should be the mantle potential temperature, and T = Tad + Thalf. "); - prm.declare_entry("spreading velocity", Types::OneOf(Types::Double(0.01),Types::Array(Types::ValueAtPoints(0.01, std::numeric_limits::max()))), + prm.declare_entry("spreading velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), "The spreading velocity of the plate in meter per year. " "This is the velocity with which one side moves away from the ridge."); @@ -123,7 +123,7 @@ namespace WorldBuilder for (unsigned int index_y = 0; index_y < mid_oceanic_ridges[index_x].size(); index_y++) { if (spreading_velocities.second.size() <= 1) - spreading_rates_for_ridge.push_back(spreading_velocities.first[0]); + spreading_rates_for_ridge.push_back(spreading_velocities.second[0]); else spreading_rates_for_ridge.push_back(spreading_velocities.second[ridge_point_index]); ridge_point_index += 1; @@ -161,9 +161,9 @@ namespace WorldBuilder } std::vector ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - spreading_velocities_at_each_ridge_point, - world->parameters.coordinate_system, - position_in_natural_coordinates_at_min_depth); + spreading_velocities_at_each_ridge_point, + world->parameters.coordinate_system, + position_in_natural_coordinates_at_min_depth); diff --git a/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc b/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc index c5c93f4e7..ab4b3e29b 100644 --- a/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc +++ b/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc @@ -78,7 +78,7 @@ namespace WorldBuilder prm.declare_entry("bottom temperature", Types::Double(-1), "The temperature in degree Kelvin which this feature should have"); - prm.declare_entry("spreading velocity", Types::OneOf(Types::Double(0.01),Types::Array(Types::ValueAtPoints(0.01, std::numeric_limits::max()))), + prm.declare_entry("spreading velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), "The spreading velocity of the plate in meter per year. " "This is the velocity with which one side moves away from the ridge."); @@ -118,7 +118,7 @@ namespace WorldBuilder for (unsigned int index_y = 0; index_y < mid_oceanic_ridges[index_x].size(); index_y++) { if (spreading_velocities.second.size() <= 1) - spreading_rates_for_ridge.push_back(spreading_velocities.first[0]); + spreading_rates_for_ridge.push_back(spreading_velocities.second[0]); else spreading_rates_for_ridge.push_back(spreading_velocities.second[ridge_point_index]); ridge_point_index += 1; @@ -159,9 +159,9 @@ namespace WorldBuilder const int summation_number = 100; std::vector ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - spreading_velocities_at_each_ridge_point, - world->parameters.coordinate_system, - position_in_natural_coordinates_at_min_depth); + spreading_velocities_at_each_ridge_point, + world->parameters.coordinate_system, + position_in_natural_coordinates_at_min_depth); const double thermal_diffusivity = this->world->thermal_diffusivity; const double age = ridge_parameters[1] / ridge_parameters[0]; diff --git a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc index 76d2e9a40..0790abcca 100644 --- a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc +++ b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc @@ -120,10 +120,15 @@ namespace WorldBuilder prm.declare_entry("plate velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr"); - prm.declare_entry("subducting velocity", Types::OneOf(Types::Double(0.),Types::Array(Types::ValueAtPoints(0., std::numeric_limits::max()))), + // prm.declare_entry("subducting velocity", Types::OneOf(Types::Double(-1.0),Types::Array(Types::ValueAtPoints(-1.0, std::numeric_limits::max()))), + // "The velocity with which the ridge is moving through time, and how long the ridge " + // "has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]"); + + prm.declare_entry("subducting velocity", Types::OneOf(Types::Double(-1.0), Types::Array(Types::Array(Types::Double(-1.0), 1), 1)), "The velocity with which the ridge is moving through time, and how long the ridge " "has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]"); + prm.declare_entry("coupling depth", Types::Double(100e3), "The depth at which the slab surface first comes in contact with the hot mantle wedge " "in meters. Default is 100 km."); @@ -186,7 +191,8 @@ namespace WorldBuilder density = prm.get("density"); thermal_conductivity = prm.get("thermal conductivity"); ridge_spreading_velocities = prm.get_value_at_array("plate velocity"); - subducting_velocities = prm.get_value_at_array("subducting velocity"); + subducting_velocities = prm.get_vector_or_double("subducting velocity"); + mantle_coupling_depth = prm.get("coupling depth"); forearc_cooling_factor = prm.get("forearc cooling factor"); @@ -226,23 +232,15 @@ namespace WorldBuilder unsigned int ridge_point_index = 0; for (unsigned int index_x = 0; index_x < mid_oceanic_ridges.size(); index_x++) { - std::vector subducting_velocities_for_ridge; std::vector ridge_spreading_velocities_for_ridge; for (unsigned int index_y = 0; index_y < mid_oceanic_ridges[index_x].size(); index_y++) { - if (subducting_velocities.second.size() <= 1) - { - subducting_velocities_for_ridge.push_back(subducting_velocities.first[0]); - ridge_spreading_velocities_for_ridge.push_back(ridge_spreading_velocities.first[0]); - } + if (ridge_spreading_velocities.second.size() < 1) + ridge_spreading_velocities_for_ridge.push_back(ridge_spreading_velocities.second[0]); else - { - subducting_velocities_for_ridge.push_back(subducting_velocities.second[ridge_point_index]); ridge_spreading_velocities_for_ridge.push_back(ridge_spreading_velocities.second[ridge_point_index]); - } ridge_point_index += 1; } - subducting_velocities_at_each_ridge_point.push_back(subducting_velocities_for_ridge); ridge_spreading_velocities_at_each_ridge_point.push_back(ridge_spreading_velocities_for_ridge); } @@ -274,10 +272,11 @@ namespace WorldBuilder *(world->parameters.coordinate_system)); std::vector ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - ridge_spreading_velocities_at_each_ridge_point, - world->parameters.coordinate_system, - trench_point_natural, - subducting_velocities_at_each_ridge_point); + ridge_spreading_velocities_at_each_ridge_point, + world->parameters.coordinate_system, + trench_point_natural, + subducting_velocities, + ridge_spreading_velocities.first); const double km2m = 1.0e3; // 1000 m/km const double cm2m = 100; // 100 cm/m @@ -290,16 +289,31 @@ namespace WorldBuilder const double average_angle = distance_from_planes.average_angle; const double seconds_in_year = 60.0 * 60.0 * 24.0 * 365.25; // sec/y - const double spreading_velocity = ridge_parameters[0] * seconds_in_year; // m/s - const double subducting_velocity = ridge_parameters[2] * seconds_in_year; // m/s - const double ridge_velocity = spreading_velocity - subducting_velocity; + const double spreading_velocity = ridge_parameters[0] * seconds_in_year; // m/yr + double subducting_velocity = ridge_parameters[2] * seconds_in_year; // m/yr + const double ridge_velocity = spreading_velocity - subducting_velocity; // m/yr + const int sign_v = (ridge_velocity > 0) ? 1 : ((ridge_velocity < 0) ? -1 : 0); - const double age_at_trench = ridge_parameters[1] / spreading_velocity; // m/(m/y) = yr - double age_shift = 0; - double time_of_ridge_migration = subducting_velocities.first[0]; - if (subducting_velocity != 0 && ridge_velocity != 0) - age_shift = time_of_ridge_migration * std::max(1 - (distance_along_plane / (time_of_ridge_migration * abs(ridge_velocity))), 0.0) * abs(ridge_velocity)/ridge_velocity; + const double time_of_ridge_migration = ridge_parameters[3]; //yr + const double ridge_drift_distance = abs(ridge_velocity) * time_of_ridge_migration; // m + + double effective_age_shift = 0; + double trench_age_shift = 0; + if (subducting_velocity <= 0) + subducting_velocity = spreading_velocity; + + else + { + if (distance_along_plane < ridge_drift_distance) + { + effective_age_shift = (1 - (distance_along_plane / ridge_drift_distance)) * sign_v * \ + distance_along_plane / subducting_velocity; // yr + trench_age_shift = (1 - (distance_along_plane / ridge_drift_distance)) * sign_v * \ + distance_along_plane / spreading_velocity; // yr + } + } + const double age_at_trench = ridge_parameters[1] / spreading_velocity + trench_age_shift; // m/(m/y) = yr const double plate_age_sec = age_at_trench * seconds_in_year; // y --> seconds // 1. Determine initial heat content of the slab based on age of plate at trench // This uses the integral of the half-space temperature profile @@ -315,14 +329,14 @@ namespace WorldBuilder // because n < sommation_number + 1 and n = 2k + 1 // The "spreading_velocity" instead of "spreading_velocity_UI" is used for the last instance as "age_at_trench" has // a unit of yr. - const double spreading_velocity_UI = spreading_velocity / seconds_in_year; + const double subducting_velocity_UI = subducting_velocity / seconds_in_year; const double temp_heat_content = thermal_conductivity / thermal_diffusivity * (surface_temperature - potential_mantle_temperature) * 4 * max_depth / double(2*i + 1) / double(2*i + 1) / Consts::PI / Consts::PI * - exp((spreading_velocity_UI * max_depth / 2 / thermal_diffusivity - - std::sqrt(spreading_velocity_UI * spreading_velocity_UI * max_depth * max_depth / 4.0 / thermal_diffusivity / thermal_diffusivity + + exp((subducting_velocity_UI * max_depth / 2 / thermal_diffusivity - + std::sqrt(subducting_velocity_UI * subducting_velocity_UI * max_depth * max_depth / 4.0 / thermal_diffusivity / thermal_diffusivity + double(2*i + 1) * double(2*i + 1) * Consts::PI * Consts::PI)) * - spreading_velocity * age_at_trench / max_depth); + subducting_velocity * age_at_trench / max_depth); initial_heat_content -= temp_heat_content; } } @@ -333,7 +347,7 @@ namespace WorldBuilder } // Plate age increases with distance along the slab in the mantle - double effective_plate_age = plate_age_sec + (distance_along_plane / spreading_velocity + age_shift) * seconds_in_year; // m/(m/y) = y(seconds_in_year) + double effective_plate_age = plate_age_sec + (distance_along_plane / subducting_velocity + effective_age_shift) * seconds_in_year; // m/(m/y) = y(seconds_in_year) // Need adiabatic temperature at position of grid point const double background_temperature = adiabatic_heating ? potential_mantle_temperature * @@ -356,7 +370,7 @@ namespace WorldBuilder // increases Tmin slope for slower relative to slope for maximum plate velocity // will be between 0.1 (fast) and 0.35 (slow) const double max_plate_vel = 20/cm2m; // e.g., 20 cm/yr -> 0.2 m/yr - const double vsubfact = std::min( std::max( 0.35 + ((0.1-0.35) / max_plate_vel) * spreading_velocity, 0.1), 0.35); + const double vsubfact = std::min( std::max( 0.35 + ((0.1-0.35) / max_plate_vel) * subducting_velocity, 0.1), 0.35); // increases Tmin slope for younger plate relative to slope for old place // will be between 0.1 (old) and 0.35 *(young) @@ -463,14 +477,14 @@ namespace WorldBuilder for (int i = 0; i< std::floor(plate_model_summation_number/2.0); ++i) { // because n < sommation_number + 1 and n = 2k + 1 - const double spreading_velocity_UI = spreading_velocity / seconds_in_year; + const double subducting_velocity_UI = subducting_velocity / seconds_in_year; const double temp_heat_content = thermal_conductivity / thermal_diffusivity * (min_temperature - potential_mantle_temperature) * 4 * max_depth / double(2*i + 1) / double(2*i + 1) / Consts::PI / Consts::PI * - exp((spreading_velocity_UI * max_depth / 2.0 / thermal_diffusivity - - std::sqrt(spreading_velocity_UI * spreading_velocity_UI * max_depth * max_depth / 4.0 / thermal_diffusivity / thermal_diffusivity + + exp((subducting_velocity_UI * max_depth / 2.0 / thermal_diffusivity - + std::sqrt(subducting_velocity_UI * subducting_velocity_UI * max_depth * max_depth / 4.0 / thermal_diffusivity / thermal_diffusivity + double(2*i + 1) * double(2*i + 1) * Consts::PI * Consts::PI)) * - spreading_velocity_UI * effective_plate_age / max_depth); + subducting_velocity_UI * effective_plate_age / max_depth); bottom_heat_content -= temp_heat_content; } } @@ -494,7 +508,7 @@ namespace WorldBuilder } // Call the analytic solution to compute the temperature - temperature = get_temperature_analytic(top_heat_content, min_temperature, background_temperature, temperature_, spreading_velocity, effective_plate_age, adjusted_distance); + temperature = get_temperature_analytic(top_heat_content, min_temperature, background_temperature, temperature_, subducting_velocity, effective_plate_age, adjusted_distance); } else { @@ -516,7 +530,7 @@ namespace WorldBuilder const double min_temperature, const double background_temperature, const double temperature_, - const double spreading_velocity, + const double subducting_velocity, const double effective_plate_age, const double adjusted_distance) const { @@ -552,16 +566,16 @@ namespace WorldBuilder { if (adjusted_distance < max_depth) { - const double spreading_velocity_UI = spreading_velocity / seconds_in_year; + const double subducting_velocity_UI = subducting_velocity / seconds_in_year; temperature = background_temperature + (min_temperature - background_temperature) * (1 - adjusted_distance / max_depth); for (int i = 1; i< std::floor(plate_model_summation_number/2.0); ++i) { temperature = temperature - (min_temperature - background_temperature) * ((2 / (double(i) * Consts::PI)) * std::sin((double(i) * Consts::PI * adjusted_distance) / max_depth) * - std::exp((((spreading_velocity_UI * max_depth)/(2 * thermal_diffusivity)) - - std::sqrt(((spreading_velocity_UI*spreading_velocity_UI*max_depth*max_depth) / + std::exp((((subducting_velocity_UI * max_depth)/(2 * thermal_diffusivity)) - + std::sqrt(((subducting_velocity_UI*subducting_velocity_UI*max_depth*max_depth) / (4*thermal_diffusivity*thermal_diffusivity)) + double(i) * double(i) * Consts::PI * Consts::PI)) * - ((spreading_velocity_UI * effective_plate_age) / max_depth))); + ((subducting_velocity_UI * effective_plate_age) / max_depth))); } } else diff --git a/source/world_builder/parameters.cc b/source/world_builder/parameters.cc index a9ce93700..eeea8f6f8 100644 --- a/source/world_builder/parameters.cc +++ b/source/world_builder/parameters.cc @@ -763,11 +763,11 @@ namespace WorldBuilder } // now get the array of points. - Value *coordinates_array = Pointer((base + "/1").c_str()).Get(parameters); + Value *array_of_doubles = Pointer((base + "/1").c_str()).Get(parameters); double testing_value; - if (coordinates_array != nullptr) + if (array_of_doubles != nullptr) { - for (size_t coordinate_i = 0; coordinate_i < coordinates_array->Size(); ++coordinate_i ) + for (size_t coordinate_i = 0; coordinate_i < array_of_doubles->Size(); ++coordinate_i ) { Value *coordinate_j_array = Pointer((base + "/1/" + std::to_string(coordinate_i)).c_str()).Get(parameters); for (size_t coordinate_j = 0; coordinate_j < coordinate_j_array->Size(); ++coordinate_j) @@ -808,13 +808,15 @@ namespace WorldBuilder WBAssertThrow(false, "Could not convert values of " << strict_base << "/" << name << " into a double. " << "The provided value was \"" << Pointer((strict_base + "/" + name).c_str()).Get(parameters)->GetString() << "\"."); } - result.first.emplace_back(value); + result.first.emplace_back(0.0); + result.second.emplace_back(value); } } else { // there is no user defined value. Case one: return the default value and no points - result.first.emplace_back(default_value); + result.first.emplace_back(0.0); + result.second.emplace_back(default_value); } return result; @@ -888,6 +890,119 @@ namespace WorldBuilder return vector; } + std::vector> + Parameters::get_vector_or_double(const std::string &name) + { + // There are two cases: + // 1. One double provided: use the default value everywhere. Return first with one value and second with size 0. + // 2. std::vector> provided: output this array. + std::vector> result; + + const std::string strict_base = this->get_full_json_path(); + + // start with adding the additional points with the default value + // to do this we need the default value + double default_value = 0; + std::vector please_work; + bool is_array = true; + if (Pointer((strict_base + "/" + name).c_str()).Get(parameters) != nullptr && Pointer((strict_base + "/" + name).c_str()).Get(parameters)->IsArray()) + { + const std::string value_def_path = get_full_json_schema_path() + "/" + name + "/oneOf/1/items/items/default value"; + Value *value_def = Pointer(value_def_path.c_str()).Get(declarations); + WBAssertThrow(value_def != nullptr, + "internal error: could not retrieve the default value at: " + << value_def_path); + + // Since the default value is set in the code, if it fails it is an internal error, not a user error. + // So no try/catch needed. + default_value = value_def->GetDouble(); + } + else + { + is_array = false; + Value *value_def = Pointer((get_full_json_schema_path() + "/" + name + "/oneOf/0/default value").c_str()).Get(declarations); + WBAssertThrow(value_def != nullptr, + "internal error: could not retrieve the default value at: " + <GetDouble(); + } + + + // check if there is a user defined value + if (Pointer((strict_base + "/" + name).c_str()).Get(parameters) != nullptr) + { + // there is a user defined value, so either case 2, 3 or 4. + if (is_array) + { + Value *array = Pointer((strict_base + "/" + name).c_str()).Get(parameters); + + // go through all the 1d-arrays within the 2d-array + for (size_t i = 0; i < array->Size(); ++i ) + { + // now parse a single value_at_point. + const std::string base = (strict_base + "/").append(name).append("/").append(std::to_string(i)); + + // now get the array of points. + // Value *coordinates_array = Pointer((base + "/0").c_str()).Get(parameters); + Value *coordinates_array = Pointer((base).c_str()).Get(parameters); + double testing_value; + std::vector testing_array; + if (coordinates_array != nullptr) + { + for (size_t coordinate_i = 0; coordinate_i < coordinates_array->Size(); ++coordinate_i ) + { + // Let's assume that the file is correct, because it has been checked with the json schema. + // That means that there are exactly two values per item + try + { + testing_value = Pointer(((base + "/") + std::to_string(coordinate_i)).c_str()).Get(parameters)->GetDouble(); + } + catch (...) + { + WBAssertThrow(false, "Could not convert values of " << base + "/" + std::to_string(i) + "/" + std::to_string(coordinate_i) + "/" + std::to_string(coordinate_i) + << " into a Point<2> array, because it could not convert the 1st sub-elements into doubles. " + << "The provided value was \"" + << Pointer((base + "/" + std::to_string(i) + "/" + std::to_string(coordinate_i)).c_str()).Get(parameters)->GetString() + << "\"."); + } + testing_array.emplace_back(testing_value); + } + result.emplace_back(testing_array); + + } + } + } + else + { + // case 1: there one value, not an array + double value = 0; + try + { + value = Pointer((strict_base + "/" + name).c_str()).Get(parameters)->GetDouble(); + } + catch (...) + { + WBAssertThrow(false, "Could not convert values of " << strict_base << "/" << name << " into a double. " + << "The provided value was \"" << Pointer((strict_base + "/" + name).c_str()).Get(parameters)->GetString() << "\"."); + } + result.emplace_back(std::vector {value}); + } + } + else + { + // there is no user defined value. Case one: return the default value and no points + result.emplace_back(std::vector {default_value}); + } + + return result; + } + + + template<> std::vector,3> > Parameters::get_vector(const std::string &name) diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index a9d1b6ee6..8e18e2b8e 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1275,12 +1275,14 @@ namespace WorldBuilder std::vector> mid_oceanic_spreading_velocities, const std::unique_ptr &coordinate_system, const Objects::NaturalCoordinate &position_in_natural_coordinates_at_min_depth, - std::vector> subducting_plate_velocities) + std::vector> subducting_plate_velocities, + std::vector ridge_migration_times) { double distance_ridge = std::numeric_limits::max(); double spreading_velocity_at_ridge = 0; double subducting_velocity_at_trench = 0; + double ridge_migration_time = 0; // first find if the coordinate is on this side of a ridge unsigned int relevant_ridge = 0; @@ -1289,9 +1291,7 @@ namespace WorldBuilder Point<2> other_check_point = check_point; if (check_point.get_coordinate_system() == CoordinateSystem::spherical) - { - other_check_point[0] += check_point[0] < 0 ? 2.0 * WorldBuilder::Consts::PI : -2.0 * WorldBuilder::Consts::PI; - } + other_check_point[0] += check_point[0] < 0 ? 2.0 * WorldBuilder::Consts::PI : -2.0 * WorldBuilder::Consts::PI; // if there is only one ridge, there is no transform if (mid_oceanic_ridges[0].size() > 1) @@ -1303,7 +1303,6 @@ namespace WorldBuilder const Point<2> transform_point_0 = mid_oceanic_ridges[relevant_ridge+1][0]; const Point<2> transform_point_1 = mid_oceanic_ridges[relevant_ridge][mid_oceanic_ridges[relevant_ridge].size()-1]; const Point<2> reference_point = mid_oceanic_ridges[relevant_ridge][0]; - const bool reference_on_side_of_line = (transform_point_1[0] - transform_point_0[0]) * (reference_point[1] - transform_point_0[1]) - (transform_point_1[1] - transform_point_0[1]) @@ -1332,8 +1331,17 @@ namespace WorldBuilder const double spreading_velocity_point0 = mid_oceanic_spreading_velocities[relevant_ridge][i_coordinate]; const double spreading_velocity_point1 = mid_oceanic_spreading_velocities[relevant_ridge][i_coordinate + 1]; - const double subducting_velocity_point0 = subducting_plate_velocities[relevant_ridge][i_coordinate]; - const double subducting_velocity_point1 = subducting_plate_velocities[relevant_ridge][i_coordinate + 1]; + double subducting_velocity_point0 = subducting_plate_velocities[0][0]; + double subducting_velocity_point1 = subducting_plate_velocities[0][0]; + + ridge_migration_time = ridge_migration_times[relevant_ridge]; + + if (subducting_plate_velocities[relevant_ridge].size() > 1) + { + subducting_velocity_point0 = subducting_plate_velocities[relevant_ridge][i_coordinate]; + subducting_velocity_point1 = subducting_plate_velocities[relevant_ridge][i_coordinate + 1]; + } + { // based on http://geomalgorithms.com/a02-_lines.html @@ -1415,6 +1423,7 @@ namespace WorldBuilder result.push_back(spreading_velocity_at_ridge / 31557600); // m/s result.push_back(distance_ridge); result.push_back(subducting_velocity_at_trench / 31557600); // m/s + result.push_back(ridge_migration_time); return result; } From 70b70765c6b54ab2741f47a9a0fe5b164fc1ae55 Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Sun, 18 Feb 2024 23:31:56 -0500 Subject: [PATCH 03/15] Fix some of the broken tests --- include/world_builder/utilities.h | 4 ++-- .../temperature/half_space_model.cc | 8 ++++++-- .../temperature/plate_model.cc | 8 ++++++-- .../temperature/mass_conserving.cc | 15 +++++++-------- source/world_builder/utilities.cc | 13 +++++++------ 5 files changed, 28 insertions(+), 20 deletions(-) diff --git a/include/world_builder/utilities.h b/include/world_builder/utilities.h index 05034c313..d24251aa2 100644 --- a/include/world_builder/utilities.h +++ b/include/world_builder/utilities.h @@ -462,8 +462,8 @@ namespace WorldBuilder std::vector> mid_oceanic_spreading_velocities, const std::unique_ptr &coordinate_system, const Objects::NaturalCoordinate &position_in_natural_coordinates_at_min_depth, - std::vector> subducting_plate_velocities = {{0.0}}, - std::vector ridge_migration_times = {0.0}); + std::vector> subducting_plate_velocities = {{0.0}}, + std::vector ridge_migration_times = {0.0}); } // namespace Utilities } // namespace WorldBuilder diff --git a/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc b/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc index fddc5d262..06d26a266 100644 --- a/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc +++ b/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc @@ -123,9 +123,13 @@ namespace WorldBuilder for (unsigned int index_y = 0; index_y < mid_oceanic_ridges[index_x].size(); index_y++) { if (spreading_velocities.second.size() <= 1) - spreading_rates_for_ridge.push_back(spreading_velocities.second[0]); + { + spreading_rates_for_ridge.push_back(spreading_velocities.second[0]); + } else - spreading_rates_for_ridge.push_back(spreading_velocities.second[ridge_point_index]); + { + spreading_rates_for_ridge.push_back(spreading_velocities.second[ridge_point_index]); + } ridge_point_index += 1; } spreading_velocities_at_each_ridge_point.push_back(spreading_rates_for_ridge); diff --git a/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc b/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc index ab4b3e29b..9e63ecaf3 100644 --- a/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc +++ b/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc @@ -118,9 +118,13 @@ namespace WorldBuilder for (unsigned int index_y = 0; index_y < mid_oceanic_ridges[index_x].size(); index_y++) { if (spreading_velocities.second.size() <= 1) - spreading_rates_for_ridge.push_back(spreading_velocities.second[0]); + { + spreading_rates_for_ridge.push_back(spreading_velocities.second[0]); + } else - spreading_rates_for_ridge.push_back(spreading_velocities.second[ridge_point_index]); + { + spreading_rates_for_ridge.push_back(spreading_velocities.second[ridge_point_index]); + } ridge_point_index += 1; } spreading_velocities_at_each_ridge_point.push_back(spreading_rates_for_ridge); diff --git a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc index 0790abcca..807d5ab22 100644 --- a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc +++ b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc @@ -120,15 +120,10 @@ namespace WorldBuilder prm.declare_entry("plate velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr"); - // prm.declare_entry("subducting velocity", Types::OneOf(Types::Double(-1.0),Types::Array(Types::ValueAtPoints(-1.0, std::numeric_limits::max()))), - // "The velocity with which the ridge is moving through time, and how long the ridge " - // "has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]"); - - prm.declare_entry("subducting velocity", Types::OneOf(Types::Double(-1.0), Types::Array(Types::Array(Types::Double(-1.0), 1), 1)), + prm.declare_entry("subducting velocity", Types::OneOf(Types::Double(0.0), Types::Array(Types::Array(Types::Double(0.0), 1), 1)), "The velocity with which the ridge is moving through time, and how long the ridge " "has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]"); - prm.declare_entry("coupling depth", Types::Double(100e3), "The depth at which the slab surface first comes in contact with the hot mantle wedge " "in meters. Default is 100 km."); @@ -235,10 +230,14 @@ namespace WorldBuilder std::vector ridge_spreading_velocities_for_ridge; for (unsigned int index_y = 0; index_y < mid_oceanic_ridges[index_x].size(); index_y++) { - if (ridge_spreading_velocities.second.size() < 1) + if (ridge_spreading_velocities.second.size() == 1) + { ridge_spreading_velocities_for_ridge.push_back(ridge_spreading_velocities.second[0]); + } else + { ridge_spreading_velocities_for_ridge.push_back(ridge_spreading_velocities.second[ridge_point_index]); + } ridge_point_index += 1; } ridge_spreading_velocities_at_each_ridge_point.push_back(ridge_spreading_velocities_for_ridge); @@ -313,7 +312,7 @@ namespace WorldBuilder } } - const double age_at_trench = ridge_parameters[1] / spreading_velocity + trench_age_shift; // m/(m/y) = yr + const double age_at_trench = ridge_parameters[1] / spreading_velocity + trench_age_shift * 0; // m/(m/y) = yr const double plate_age_sec = age_at_trench * seconds_in_year; // y --> seconds // 1. Determine initial heat content of the slab based on age of plate at trench // This uses the integral of the half-space temperature profile diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index 8e18e2b8e..5310f0025 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1335,13 +1335,14 @@ namespace WorldBuilder double subducting_velocity_point1 = subducting_plate_velocities[0][0]; ridge_migration_time = ridge_migration_times[relevant_ridge]; + unsigned int test = subducting_plate_velocities[relevant_ridge].size(); - if (subducting_plate_velocities[relevant_ridge].size() > 1) - { - subducting_velocity_point0 = subducting_plate_velocities[relevant_ridge][i_coordinate]; - subducting_velocity_point1 = subducting_plate_velocities[relevant_ridge][i_coordinate + 1]; - } - + // if (test > 1) //std::vector {0}) + if (subducting_plate_velocities != std::vector> {{0}}) + { + subducting_velocity_point0 = subducting_plate_velocities[relevant_ridge][i_coordinate]; + subducting_velocity_point1 = subducting_plate_velocities[relevant_ridge][i_coordinate + 1]; + } { // based on http://geomalgorithms.com/a02-_lines.html From e88389fb5c8838bed29e13d8a4a6859c857dfdfe Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Wed, 21 Feb 2024 19:58:55 -0500 Subject: [PATCH 04/15] Fix tests --- source/world_builder/utilities.cc | 2 -- 1 file changed, 2 deletions(-) diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index 5310f0025..1699b7a0a 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1335,9 +1335,7 @@ namespace WorldBuilder double subducting_velocity_point1 = subducting_plate_velocities[0][0]; ridge_migration_time = ridge_migration_times[relevant_ridge]; - unsigned int test = subducting_plate_velocities[relevant_ridge].size(); - // if (test > 1) //std::vector {0}) if (subducting_plate_velocities != std::vector> {{0}}) { subducting_velocity_point0 = subducting_plate_velocities[relevant_ridge][i_coordinate]; From 147476be4d257ba485005e1f6189ef28fae6102d Mon Sep 17 00:00:00 2001 From: Haoyuan Li Date: Thu, 22 Feb 2024 15:29:30 -0800 Subject: [PATCH 05/15] slab effective ages --- include/world_builder/utilities.h | 11 +++++ .../temperature/mass_conserving.cc | 24 ++--------- source/world_builder/utilities.cc | 43 +++++++++++++++++++ 3 files changed, 58 insertions(+), 20 deletions(-) diff --git a/include/world_builder/utilities.h b/include/world_builder/utilities.h index d24251aa2..756fc860c 100644 --- a/include/world_builder/utilities.h +++ b/include/world_builder/utilities.h @@ -465,6 +465,17 @@ namespace WorldBuilder std::vector> subducting_plate_velocities = {{0.0}}, std::vector ridge_migration_times = {0.0}); + // todo_effective + /** + * Calculate the effective plate ages of a point on the slab surface, and also calculates + * the effective trench ages at the start of subduction. + * @param ridge_parameters The distance and spreading velocity relative to a mid ocean ridge + * @param distance_along_plane The distance along the slab surface plane + * @return The effective plate age and the trench age + */ + std::vector + calculate_effective_trench_and_plate_ages(std::vector ridge_parameters, double distance_along_plane); + } // namespace Utilities } // namespace WorldBuilder diff --git a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc index 807d5ab22..9ecd231b1 100644 --- a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc +++ b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc @@ -286,33 +286,17 @@ namespace WorldBuilder const double depth_to_reference_surface = distance_from_planes.depth_reference_surface; const double total_segment_length = additional_parameters.total_local_segment_length; const double average_angle = distance_from_planes.average_angle; + + std::vector slab_ages = calculate_effective_trench_and_plate_ages(ridge_parameters, distance_along_plane); const double seconds_in_year = 60.0 * 60.0 * 24.0 * 365.25; // sec/y const double spreading_velocity = ridge_parameters[0] * seconds_in_year; // m/yr double subducting_velocity = ridge_parameters[2] * seconds_in_year; // m/yr - const double ridge_velocity = spreading_velocity - subducting_velocity; // m/yr - const int sign_v = (ridge_velocity > 0) ? 1 : ((ridge_velocity < 0) ? -1 : 0); - const double time_of_ridge_migration = ridge_parameters[3]; //yr - const double ridge_drift_distance = abs(ridge_velocity) * time_of_ridge_migration; // m - - double effective_age_shift = 0; - double trench_age_shift = 0; if (subducting_velocity <= 0) subducting_velocity = spreading_velocity; - else - { - if (distance_along_plane < ridge_drift_distance) - { - effective_age_shift = (1 - (distance_along_plane / ridge_drift_distance)) * sign_v * \ - distance_along_plane / subducting_velocity; // yr - trench_age_shift = (1 - (distance_along_plane / ridge_drift_distance)) * sign_v * \ - distance_along_plane / spreading_velocity; // yr - } - } - - const double age_at_trench = ridge_parameters[1] / spreading_velocity + trench_age_shift * 0; // m/(m/y) = yr + const double age_at_trench = slab_ages[0]; const double plate_age_sec = age_at_trench * seconds_in_year; // y --> seconds // 1. Determine initial heat content of the slab based on age of plate at trench // This uses the integral of the half-space temperature profile @@ -346,7 +330,7 @@ namespace WorldBuilder } // Plate age increases with distance along the slab in the mantle - double effective_plate_age = plate_age_sec + (distance_along_plane / subducting_velocity + effective_age_shift) * seconds_in_year; // m/(m/y) = y(seconds_in_year) + double effective_plate_age = slab_ages[1]; // Need adiabatic temperature at position of grid point const double background_temperature = adiabatic_heating ? potential_mantle_temperature * diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index 1699b7a0a..65aa95179 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1426,6 +1426,49 @@ namespace WorldBuilder return result; } + // todo_effective + std::vector + calculate_effective_trench_and_plate_ages(std::vector ridge_parameters, double distance_along_plane) + { + WBAssert(ridge_parameters.size() == 4, "Internal error: ridge_parameters have the wrong size: " << ridge_parameters.size() << " instead of 4."); + const double seconds_in_year = 60.0 * 60.0 * 24.0 * 365.25; // sec/y + const double spreading_velocity = ridge_parameters[0] * seconds_in_year; // m/yr + double subducting_velocity = ridge_parameters[2] * seconds_in_year; // m/yr + const double ridge_velocity = spreading_velocity - subducting_velocity; // m/yr + const int sign_v = (ridge_velocity > 0) ? 1 : ((ridge_velocity < 0) ? -1 : 0); + + const double time_of_ridge_migration = ridge_parameters[3]; //yr + const double ridge_drift_distance = abs(ridge_velocity) * time_of_ridge_migration; // m + + double effective_age_shift = 0; + double trench_age_shift = 0; + if (subducting_velocity <= 0) + subducting_velocity = spreading_velocity; + + else + { + if (distance_along_plane < ridge_drift_distance) + { + effective_age_shift = (1 - (distance_along_plane / ridge_drift_distance)) * sign_v * \ + distance_along_plane / subducting_velocity; // yr + trench_age_shift = (1 - (distance_along_plane / ridge_drift_distance)) * sign_v * \ + distance_along_plane / spreading_velocity; // yr + } + } + + const double age_at_trench = ridge_parameters[1] / spreading_velocity + trench_age_shift * 0; // m/(m/y) = yr + const double plate_age_sec = age_at_trench * seconds_in_year; // y --> seconds + + // Plate age increases with distance along the slab in the mantle + double effective_plate_age = plate_age_sec + (distance_along_plane / subducting_velocity + effective_age_shift) * seconds_in_year; // m/(m/y) = y(seconds_in_year) + + std::vector result; + result.push_back(age_at_trench); + result.push_back(effective_plate_age); + return result; + + } + } // namespace Utilities } // namespace WorldBuilder From 04ec178d1ffcd3beeb8eb28067f8aaae17e5ccd5 Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Sat, 24 Feb 2024 14:43:48 -0500 Subject: [PATCH 06/15] Address comments, add Assets --- include/world_builder/utilities.h | 4 +-- .../temperature/half_space_model.cc | 8 ++++-- .../temperature/plate_model.cc | 9 ++++-- .../temperature/mass_conserving.cc | 7 ++--- source/world_builder/parameters.cc | 22 +++++++-------- source/world_builder/utilities.cc | 28 +++++++++++++------ 6 files changed, 46 insertions(+), 32 deletions(-) diff --git a/include/world_builder/utilities.h b/include/world_builder/utilities.h index 8ac9ce2a5..dd80e4cce 100644 --- a/include/world_builder/utilities.h +++ b/include/world_builder/utilities.h @@ -465,8 +465,8 @@ namespace WorldBuilder std::vector> mid_oceanic_spreading_velocities, const std::unique_ptr &coordinate_system, const Objects::NaturalCoordinate &position_in_natural_coordinates_at_min_depth, - std::vector> subducting_plate_velocities = {{0.0}}, - std::vector ridge_migration_times = {0.0}); + const std::vector> &subducting_plate_velocities, + const std::vector &ridge_migration_times); // todo_effective /** diff --git a/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc b/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc index 06d26a266..b84b82bbf 100644 --- a/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc +++ b/source/world_builder/features/oceanic_plate_models/temperature/half_space_model.cc @@ -84,7 +84,7 @@ namespace WorldBuilder "in degree Kelvin for this feature. If the model has an adiabatic gradient" "this should be the mantle potential temperature, and T = Tad + Thalf. "); - prm.declare_entry("spreading velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), + prm.declare_entry("spreading velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), "The spreading velocity of the plate in meter per year. " "This is the velocity with which one side moves away from the ridge."); @@ -154,6 +154,8 @@ namespace WorldBuilder Objects::NaturalCoordinate position_in_natural_coordinates_at_min_depth = Objects::NaturalCoordinate(position, *(world->parameters.coordinate_system)); position_in_natural_coordinates_at_min_depth.get_ref_depth_coordinate() += depth-min_depth; + std::vector> subducting_plate_velocities = {{0}}; + std::vector ridge_migration_times = {0.0}; double bottom_temperature_local = bottom_temperature; @@ -167,7 +169,9 @@ namespace WorldBuilder std::vector ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, spreading_velocities_at_each_ridge_point, world->parameters.coordinate_system, - position_in_natural_coordinates_at_min_depth); + position_in_natural_coordinates_at_min_depth, + subducting_plate_velocities, + ridge_migration_times); diff --git a/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc b/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc index 9e63ecaf3..a0bbf28b4 100644 --- a/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc +++ b/source/world_builder/features/oceanic_plate_models/temperature/plate_model.cc @@ -78,7 +78,7 @@ namespace WorldBuilder prm.declare_entry("bottom temperature", Types::Double(-1), "The temperature in degree Kelvin which this feature should have"); - prm.declare_entry("spreading velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), + prm.declare_entry("spreading velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), "The spreading velocity of the plate in meter per year. " "This is the velocity with which one side moves away from the ridge."); @@ -150,7 +150,8 @@ namespace WorldBuilder Objects::NaturalCoordinate position_in_natural_coordinates_at_min_depth = Objects::NaturalCoordinate(position, *(world->parameters.coordinate_system)); position_in_natural_coordinates_at_min_depth.get_ref_depth_coordinate() += depth-min_depth; - + std::vector> subducting_plate_velocities = {{0}}; + std::vector ridge_migration_times = {0.0}; double bottom_temperature_local = bottom_temperature; if (bottom_temperature_local < 0) @@ -165,7 +166,9 @@ namespace WorldBuilder std::vector ridge_parameters = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, spreading_velocities_at_each_ridge_point, world->parameters.coordinate_system, - position_in_natural_coordinates_at_min_depth); + position_in_natural_coordinates_at_min_depth, + subducting_plate_velocities, + ridge_migration_times); const double thermal_diffusivity = this->world->thermal_diffusivity; const double age = ridge_parameters[1] / ridge_parameters[0]; diff --git a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc index 9ecd231b1..e7f14142e 100644 --- a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc +++ b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc @@ -117,10 +117,10 @@ namespace WorldBuilder prm.declare_entry("density", Types::Double(3300), "The reference density of the subducting plate in $kg/m^3$"); - prm.declare_entry("plate velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), + prm.declare_entry("plate velocity", Types::OneOf(Types::Double(0.05),Types::Array(Types::ValueAtPoints(0.05, std::numeric_limits::max()))), "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr"); - prm.declare_entry("subducting velocity", Types::OneOf(Types::Double(0.0), Types::Array(Types::Array(Types::Double(0.0), 1), 1)), + prm.declare_entry("subducting velocity", Types::OneOf(Types::Double(-1), Types::Array(Types::Array(Types::Double(-1), 1), 1)), "The velocity with which the ridge is moving through time, and how long the ridge " "has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]"); @@ -188,7 +188,6 @@ namespace WorldBuilder ridge_spreading_velocities = prm.get_value_at_array("plate velocity"); subducting_velocities = prm.get_vector_or_double("subducting velocity"); - mantle_coupling_depth = prm.get("coupling depth"); forearc_cooling_factor = prm.get("forearc cooling factor"); @@ -286,7 +285,7 @@ namespace WorldBuilder const double depth_to_reference_surface = distance_from_planes.depth_reference_surface; const double total_segment_length = additional_parameters.total_local_segment_length; const double average_angle = distance_from_planes.average_angle; - + std::vector slab_ages = calculate_effective_trench_and_plate_ages(ridge_parameters, distance_along_plane); const double seconds_in_year = 60.0 * 60.0 * 24.0 * 365.25; // sec/y diff --git a/source/world_builder/parameters.cc b/source/world_builder/parameters.cc index eeea8f6f8..ae2d974dc 100644 --- a/source/world_builder/parameters.cc +++ b/source/world_builder/parameters.cc @@ -764,7 +764,7 @@ namespace WorldBuilder // now get the array of points. Value *array_of_doubles = Pointer((base + "/1").c_str()).Get(parameters); - double testing_value; + double value_in_array; if (array_of_doubles != nullptr) { for (size_t coordinate_i = 0; coordinate_i < array_of_doubles->Size(); ++coordinate_i ) @@ -776,7 +776,7 @@ namespace WorldBuilder // That means that there are exactly two values per item try { - testing_value = Pointer((base + "/1/" + std::to_string(coordinate_i) + "/" + std::to_string(coordinate_j)).c_str()).Get(parameters)->GetDouble(); + value_in_array = Pointer((base + "/1/" + std::to_string(coordinate_i) + "/" + std::to_string(coordinate_j)).c_str()).Get(parameters)->GetDouble(); } catch (...) { @@ -787,11 +787,10 @@ namespace WorldBuilder << "\"."); } - result.first.emplace_back(value); - result.second.emplace_back(testing_value); + result.second.emplace_back(value_in_array); } } - + result.first.emplace_back(value); } } } @@ -903,7 +902,6 @@ namespace WorldBuilder // start with adding the additional points with the default value // to do this we need the default value double default_value = 0; - std::vector please_work; bool is_array = true; if (Pointer((strict_base + "/" + name).c_str()).Get(parameters) != nullptr && Pointer((strict_base + "/" + name).c_str()).Get(parameters)->IsArray()) { @@ -949,8 +947,8 @@ namespace WorldBuilder // now get the array of points. // Value *coordinates_array = Pointer((base + "/0").c_str()).Get(parameters); Value *coordinates_array = Pointer((base).c_str()).Get(parameters); - double testing_value; - std::vector testing_array; + double value_in_array; + std::vector array_of_values; if (coordinates_array != nullptr) { for (size_t coordinate_i = 0; coordinate_i < coordinates_array->Size(); ++coordinate_i ) @@ -959,7 +957,7 @@ namespace WorldBuilder // That means that there are exactly two values per item try { - testing_value = Pointer(((base + "/") + std::to_string(coordinate_i)).c_str()).Get(parameters)->GetDouble(); + value_in_array = Pointer(((base + "/") + std::to_string(coordinate_i)).c_str()).Get(parameters)->GetDouble(); } catch (...) { @@ -969,16 +967,16 @@ namespace WorldBuilder << Pointer((base + "/" + std::to_string(i) + "/" + std::to_string(coordinate_i)).c_str()).Get(parameters)->GetString() << "\"."); } - testing_array.emplace_back(testing_value); + array_of_values.emplace_back(value_in_array); } - result.emplace_back(testing_array); + result.emplace_back(array_of_values); } } } else { - // case 1: there one value, not an array + // case 1: there's one value, not an array double value = 0; try { diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index 22053705a..e581e4b33 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1277,8 +1277,8 @@ namespace WorldBuilder std::vector> mid_oceanic_spreading_velocities, const std::unique_ptr &coordinate_system, const Objects::NaturalCoordinate &position_in_natural_coordinates_at_min_depth, - std::vector> subducting_plate_velocities, - std::vector ridge_migration_times) + const std::vector> &subducting_plate_velocities, + const std::vector &ridge_migration_times) { double distance_ridge = std::numeric_limits::max(); @@ -1333,16 +1333,26 @@ namespace WorldBuilder const double spreading_velocity_point0 = mid_oceanic_spreading_velocities[relevant_ridge][i_coordinate]; const double spreading_velocity_point1 = mid_oceanic_spreading_velocities[relevant_ridge][i_coordinate + 1]; + // When subducting_velocities is not input by the user, default value is 0, which + // results in subducting velocity == spreading_velocity. When a single value is + // input by the user, subducting velocity != spreading_velocity, but + // subducting velocity is spatially constant. double subducting_velocity_point0 = subducting_plate_velocities[0][0]; double subducting_velocity_point1 = subducting_plate_velocities[0][0]; - ridge_migration_time = ridge_migration_times[relevant_ridge]; - - if (subducting_plate_velocities != std::vector> {{0}}) - { - subducting_velocity_point0 = subducting_plate_velocities[relevant_ridge][i_coordinate]; - subducting_velocity_point1 = subducting_plate_velocities[relevant_ridge][i_coordinate + 1]; - } + // When subducting_velocities is input as an array, spatial variation + if (subducting_plate_velocities[0].size() > 1) + { + WBAssertThrow(subducting_plate_velocities.size() == mid_oceanic_ridges.size() && \ + subducting_plate_velocities[relevant_ridge].size() == mid_oceanic_ridges[relevant_ridge].size(), + "subducting velocity and ridge coordinates must be the same dimension"); + WBAssertThrow(ridge_migration_times.size() == mid_oceanic_ridges.size(), + "the times for ridge migration specified in 'spreading velocity' must be the same dimension " + "as ridge coordinates."); + subducting_velocity_point0 = subducting_plate_velocities[relevant_ridge][i_coordinate]; + subducting_velocity_point1 = subducting_plate_velocities[relevant_ridge][i_coordinate + 1]; + ridge_migration_time = ridge_migration_times[relevant_ridge]; + } { // based on http://geomalgorithms.com/a02-_lines.html From fa3687d8e97d209cab297284505698ace1912447 Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Sat, 24 Feb 2024 14:55:04 -0500 Subject: [PATCH 07/15] Add assert --- .../subducting_plate_models/temperature/mass_conserving.cc | 6 +++--- source/world_builder/utilities.cc | 3 ++- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc index e7f14142e..e497729a4 100644 --- a/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc +++ b/source/world_builder/features/subducting_plate_models/temperature/mass_conserving.cc @@ -276,9 +276,9 @@ namespace WorldBuilder subducting_velocities, ridge_spreading_velocities.first); - const double km2m = 1.0e3; // 1000 m/km - const double cm2m = 100; // 100 cm/m - const double my = 1.0e6; // 1e6 y/my + constexpr double km2m = 1.0e3; // 1000 m/km + constexpr double cm2m = 100; // 100 cm/m + constexpr double my = 1.0e6; // 1e6 y/my /* information about nearest point on the slab segment */ const double distance_along_plane = distance_from_planes.distance_along_plane; diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index e581e4b33..55285a855 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1473,7 +1473,8 @@ namespace WorldBuilder // Plate age increases with distance along the slab in the mantle double effective_plate_age = plate_age_sec + (distance_along_plane / subducting_velocity + effective_age_shift) * seconds_in_year; // m/(m/y) = y(seconds_in_year) - + WBAssertThrow(effective_plate_age >= 0, "The age of the subducting plate is less than or equal to 0. " + "Effective plate age: " << effective_plate_age); std::vector result; result.push_back(age_at_trench); result.push_back(effective_plate_age); From 09e3d2ed93b6735affd42a40cdf59b430dff59a4 Mon Sep 17 00:00:00 2001 From: Haoyuan Li Date: Sat, 24 Feb 2024 15:25:49 -0800 Subject: [PATCH 08/15] fix function calculate_ridge_distance_and_spreading --- source/world_builder/utilities.cc | 65 +++++++---- ...calculate_ridge_distance_and_spreading.txt | 20 ++++ tests/unit_tests/unit_test_world_builder.cc | 105 ++++++++++++++++++ 3 files changed, 169 insertions(+), 21 deletions(-) create mode 100644 tests/unit_tests/approval_tests/approved/unit_test_world_builder.WorldBuilder_Utilities_function__calculate_ridge_distance_and_spreading.txt diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index 55285a855..240601cf3 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1280,6 +1280,7 @@ namespace WorldBuilder const std::vector> &subducting_plate_velocities, const std::vector &ridge_migration_times) { + const double seconds_in_year = 60.0 * 60.0 * 24.0 * 365.25; // sec/y double distance_ridge = std::numeric_limits::max(); double spreading_velocity_at_ridge = 0; @@ -1369,43 +1370,49 @@ namespace WorldBuilder // This part is needed when we want to consider segments instead of lines // If you want to have infinite lines, use only the else statement. + // First, compare the results from the two compare points + double spreading_velocity_at_ridge_pt1 = 0.0; + double subducting_velocity_at_trench_pt1 = 0.0; + double spreading_velocity_at_ridge_pt2 = 0.0; + double subducting_velocity_at_trench_pt2 = 0.0; + if (c1 <= 0) { Pb1=segment_point0; - spreading_velocity_at_ridge = spreading_velocity_point0; - subducting_velocity_at_trench = subducting_velocity_point0; + spreading_velocity_at_ridge_pt1 = spreading_velocity_point0; + subducting_velocity_at_trench_pt1 = subducting_velocity_point0; } else if (c <= c1) { Pb1=segment_point1; - spreading_velocity_at_ridge = spreading_velocity_point1; - subducting_velocity_at_trench = subducting_velocity_point1; + spreading_velocity_at_ridge_pt1 = spreading_velocity_point1; + subducting_velocity_at_trench_pt1 = subducting_velocity_point1; } else { Pb1=segment_point0 + (c1 / c) * v; - spreading_velocity_at_ridge = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c1 / c); - subducting_velocity_at_trench = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c1 / c); + spreading_velocity_at_ridge_pt1 = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c1 / c); + subducting_velocity_at_trench_pt1 = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c1 / c); } Point<2> Pb2(coordinate_system->natural_coordinate_system()); if (c2 <= 0) { Pb2=segment_point0; - spreading_velocity_at_ridge = spreading_velocity_point0; - subducting_velocity_at_trench = subducting_velocity_point0; + spreading_velocity_at_ridge_pt2 = spreading_velocity_point0; + subducting_velocity_at_trench_pt2 = subducting_velocity_point0; } else if (c <= c2) { Pb2=segment_point1; - spreading_velocity_at_ridge = spreading_velocity_point1; - subducting_velocity_at_trench = spreading_velocity_point1; + spreading_velocity_at_ridge_pt2 = spreading_velocity_point1; + subducting_velocity_at_trench_pt2 = spreading_velocity_point1; } else { Pb2=segment_point0 + (c1 / c) * v; - spreading_velocity_at_ridge = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c1 / c); - subducting_velocity_at_trench = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c1 / c); + spreading_velocity_at_ridge_pt2 = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c1 / c); + subducting_velocity_at_trench_pt2 = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c1 / c); } Point<3> compare_point1(coordinate_system->natural_coordinate_system()); @@ -1419,21 +1426,37 @@ namespace WorldBuilder compare_point2[1] = coordinate_system->natural_coordinate_system() == cartesian ? Pb2[1] : Pb2[0]; compare_point2[2] = coordinate_system->natural_coordinate_system() == cartesian ? position_in_natural_coordinates_at_min_depth.get_depth_coordinate() : Pb2[1]; - distance_ridge = std::min(distance_ridge, - coordinate_system->distance_between_points_at_same_depth(Point<3>(position_in_natural_coordinates_at_min_depth.get_coordinates(), + const double compare_distance1 = coordinate_system->distance_between_points_at_same_depth(Point<3>(position_in_natural_coordinates_at_min_depth.get_coordinates(), position_in_natural_coordinates_at_min_depth.get_coordinate_system()), - compare_point1)); - - distance_ridge = std::min(distance_ridge, - coordinate_system->distance_between_points_at_same_depth(Point<3>(position_in_natural_coordinates_at_min_depth.get_coordinates(), + compare_point1); + + const double compare_distance2 = coordinate_system->distance_between_points_at_same_depth(Point<3>(position_in_natural_coordinates_at_min_depth.get_coordinates(), position_in_natural_coordinates_at_min_depth.get_coordinate_system()), - compare_point2)); + compare_point2); + + double compare_distance = compare_distance1; + double spreading_velocity_at_ridge_pt = spreading_velocity_at_ridge_pt1; + double subducting_velocity_at_trench_pt = subducting_velocity_at_trench_pt1; + + if (compare_distance2 < compare_distance1){ + compare_distance = compare_distance2; + spreading_velocity_at_ridge_pt = spreading_velocity_at_ridge_pt2; + subducting_velocity_at_trench_pt = subducting_velocity_at_trench_pt2; + } + + // Then, the distance and velocities are taken from the nearest point on the ridge + if (i_coordinate == 0 || compare_distance < distance_ridge) + { + distance_ridge = compare_distance; + spreading_velocity_at_ridge = spreading_velocity_at_ridge_pt; + subducting_velocity_at_trench = subducting_velocity_at_trench_pt; + } } } std::vector result; - result.push_back(spreading_velocity_at_ridge / 31557600); // m/s + result.push_back(spreading_velocity_at_ridge / seconds_in_year); // m/s result.push_back(distance_ridge); - result.push_back(subducting_velocity_at_trench / 31557600); // m/s + result.push_back(subducting_velocity_at_trench / seconds_in_year); // m/s result.push_back(ridge_migration_time); return result; } diff --git a/tests/unit_tests/approval_tests/approved/unit_test_world_builder.WorldBuilder_Utilities_function__calculate_ridge_distance_and_spreading.txt b/tests/unit_tests/approval_tests/approved/unit_test_world_builder.WorldBuilder_Utilities_function__calculate_ridge_distance_and_spreading.txt new file mode 100644 index 000000000..fb5e1ef72 --- /dev/null +++ b/tests/unit_tests/approval_tests/approved/unit_test_world_builder.WorldBuilder_Utilities_function__calculate_ridge_distance_and_spreading.txt @@ -0,0 +1,20 @@ +TITLE + + +[0] = 3.23094e-08 +[1] = 199000 +[2] = 0 +[3] = 0 +[4] = 3.16881e-08 +[5] = 199003 +[6] = 0 +[7] = 0 +[8] = 1.42596e-07 +[9] = 35355.3 +[10] = 0 +[11] = 0 +[12] = 1.11219e-07 +[13] = 50000 +[14] = 0 +[15] = 0 + diff --git a/tests/unit_tests/unit_test_world_builder.cc b/tests/unit_tests/unit_test_world_builder.cc index c014fdefb..269c4a332 100644 --- a/tests/unit_tests/unit_test_world_builder.cc +++ b/tests/unit_tests/unit_test_world_builder.cc @@ -7503,3 +7503,108 @@ TEST_CASE("Fast version of fmod") //CHECK(std::isnan(std::fmod(1,0))); Return a signaling NAN (FE_INVALID is raised) } +TEST_CASE("WorldBuilder Utilities function: calculate_ridge_distance_and_spreading") +{ + std::vector approval_tests; + + const std::unique_ptr cartesian_system = CoordinateSystems::Interface::create("cartesian", nullptr);; + + // Ridge properties + const Point<2> p1a(std::array {{200e3, -1e3}},cartesian); + const Point<2> p1b(std::array {{200e3, 50e3}},cartesian); + const Point<2> p2a(std::array {{50e3, 50e3}},cartesian); + const Point<2> p2b(std::array {{50e3, 101e3}},cartesian); + const Point<2> p2c(std::array {{100e3, 151e3}},cartesian); + const std::vector> mid_ocean_ridges_segment_1 = {p1a, p1b}; + const std::vector> mid_ocean_ridges_segment_2 = {p2a, p2b, p2c}; + + std::vector>> mid_oceanic_ridges; + mid_oceanic_ridges.push_back(mid_ocean_ridges_segment_1); + mid_oceanic_ridges.push_back(mid_ocean_ridges_segment_2); + + const double mid_oceanic_spreading_velocitie_1a = 1.0; + const double mid_oceanic_spreading_velocitie_1b = 2.0; + const double mid_oceanic_spreading_velocitie_2a = 3.0; + const double mid_oceanic_spreading_velocitie_2b = 4.0; + const double mid_oceanic_spreading_velocitie_2c = 5.0; + + std::vector mid_oceanic_spreading_velocities_segment1 = {mid_oceanic_spreading_velocitie_1a, mid_oceanic_spreading_velocitie_1b}; + std::vector mid_oceanic_spreading_velocities_segment2 = {mid_oceanic_spreading_velocitie_2a, mid_oceanic_spreading_velocitie_2b, + mid_oceanic_spreading_velocitie_2c}; + + std::vector> mid_oceanic_spreading_velocities; + mid_oceanic_spreading_velocities.push_back(mid_oceanic_spreading_velocities_segment1); + mid_oceanic_spreading_velocities.push_back(mid_oceanic_spreading_velocities_segment2); + + const std::vector> subducting_plate_velocities = {{0.0}}; + const std::vector &ridge_migration_times = {0.0}; + + // Query point 1 + Point<3> position_1(1e3,0,0,cartesian); + Objects::NaturalCoordinate position_in_natural_coordinates_1 = Objects::NaturalCoordinate(position_1, + *cartesian_system); + + const std::vector result1 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + mid_oceanic_spreading_velocities, + cartesian_system, + position_in_natural_coordinates_1, + subducting_plate_velocities, + ridge_migration_times); + approval_tests.emplace_back(result1[0]); // spreading velocity at ridge + approval_tests.emplace_back(result1[1]); // ridge distance + approval_tests.emplace_back(result1[2]); // subducting velocity at trench + approval_tests.emplace_back(result1[3]); // ridge migration time + + // Query point 2: locates outside of the ridge, curent solution is to take the end point as the reference point + Point<3> position_2(1e3,-2e3,0,cartesian); + Objects::NaturalCoordinate position_in_natural_coordinates_2 = Objects::NaturalCoordinate(position_2, + *cartesian_system); + + const std::vector result2 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + mid_oceanic_spreading_velocities, + cartesian_system, + position_in_natural_coordinates_2, + subducting_plate_velocities, + ridge_migration_times); + approval_tests.emplace_back(result2[0]); // spreading velocity at ridge + approval_tests.emplace_back(result2[1]); // ridge distance + approval_tests.emplace_back(result2[2]); // subducting velocity at trench + approval_tests.emplace_back(result2[3]); // ridge migration time + + // Query point 3: the nearest point on the ridge is in the middle of p2b and p2c + // thus it should have intermediate velocity values + Point<3> position_3(50e3,151e3,0,cartesian); + Objects::NaturalCoordinate position_in_natural_coordinates_3 = Objects::NaturalCoordinate(position_3, + *cartesian_system); + + const std::vector result3 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + mid_oceanic_spreading_velocities, + cartesian_system, + position_in_natural_coordinates_3, + subducting_plate_velocities, + ridge_migration_times); + approval_tests.emplace_back(result3[0]); // spreading velocity at ridge + approval_tests.emplace_back(result3[1]); // ridge distance + approval_tests.emplace_back(result3[2]); // subducting velocity at trench + approval_tests.emplace_back(result3[3]); // ridge migration time + + // Query point 4: the nearest point on the ridge is in the middle of p2a and p2b + // thus it should have intermediate velocity values + Point<3> position_4(100e3,76e3,0,cartesian); + Objects::NaturalCoordinate position_in_natural_coordinates_4 = Objects::NaturalCoordinate(position_4, + *cartesian_system); + + const std::vector result4 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + mid_oceanic_spreading_velocities, + cartesian_system, + position_in_natural_coordinates_4, + subducting_plate_velocities, + ridge_migration_times); + approval_tests.emplace_back(result4[0]); // spreading velocity at ridge + approval_tests.emplace_back(result4[1]); // ridge distance + approval_tests.emplace_back(result4[2]); // subducting velocity at trench + approval_tests.emplace_back(result4[3]); // ridge migration time + + ApprovalTests::Approvals::verifyAll("TITLE", approval_tests); +} + From 322dfa2006cc283f64a85a27ec44f62e0420e057 Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Mon, 26 Feb 2024 12:29:01 -0500 Subject: [PATCH 09/15] Fix indent --- source/world_builder/utilities.cc | 41 +++++----- tests/unit_tests/unit_test_world_builder.cc | 83 +++++++++++---------- 2 files changed, 63 insertions(+), 61 deletions(-) diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index 240601cf3..76d3ececf 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1410,9 +1410,9 @@ namespace WorldBuilder } else { - Pb2=segment_point0 + (c1 / c) * v; - spreading_velocity_at_ridge_pt2 = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c1 / c); - subducting_velocity_at_trench_pt2 = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c1 / c); + Pb2=segment_point0 + (c2 / c) * v; + spreading_velocity_at_ridge_pt2 = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c2 / c); + subducting_velocity_at_trench_pt2 = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c2 / c); } Point<3> compare_point1(coordinate_system->natural_coordinate_system()); @@ -1427,30 +1427,31 @@ namespace WorldBuilder compare_point2[2] = coordinate_system->natural_coordinate_system() == cartesian ? position_in_natural_coordinates_at_min_depth.get_depth_coordinate() : Pb2[1]; const double compare_distance1 = coordinate_system->distance_between_points_at_same_depth(Point<3>(position_in_natural_coordinates_at_min_depth.get_coordinates(), - position_in_natural_coordinates_at_min_depth.get_coordinate_system()), - compare_point1); - + position_in_natural_coordinates_at_min_depth.get_coordinate_system()), + compare_point1); + const double compare_distance2 = coordinate_system->distance_between_points_at_same_depth(Point<3>(position_in_natural_coordinates_at_min_depth.get_coordinates(), - position_in_natural_coordinates_at_min_depth.get_coordinate_system()), - compare_point2); + position_in_natural_coordinates_at_min_depth.get_coordinate_system()), + compare_point2); double compare_distance = compare_distance1; double spreading_velocity_at_ridge_pt = spreading_velocity_at_ridge_pt1; double subducting_velocity_at_trench_pt = subducting_velocity_at_trench_pt1; - - if (compare_distance2 < compare_distance1){ - compare_distance = compare_distance2; - spreading_velocity_at_ridge_pt = spreading_velocity_at_ridge_pt2; - subducting_velocity_at_trench_pt = subducting_velocity_at_trench_pt2; - } - // Then, the distance and velocities are taken from the nearest point on the ridge + if (compare_distance2 < compare_distance1) + { + compare_distance = compare_distance2; + spreading_velocity_at_ridge_pt = spreading_velocity_at_ridge_pt2; + subducting_velocity_at_trench_pt = subducting_velocity_at_trench_pt2; + } + + // Then, the distance and velocities are taken from the nearest point on the ridge if (i_coordinate == 0 || compare_distance < distance_ridge) - { - distance_ridge = compare_distance; - spreading_velocity_at_ridge = spreading_velocity_at_ridge_pt; - subducting_velocity_at_trench = subducting_velocity_at_trench_pt; - } + { + distance_ridge = compare_distance; + spreading_velocity_at_ridge = spreading_velocity_at_ridge_pt; + subducting_velocity_at_trench = subducting_velocity_at_trench_pt; + } } } std::vector result; diff --git a/tests/unit_tests/unit_test_world_builder.cc b/tests/unit_tests/unit_test_world_builder.cc index 269c4a332..be6516742 100644 --- a/tests/unit_tests/unit_test_world_builder.cc +++ b/tests/unit_tests/unit_test_world_builder.cc @@ -7504,20 +7504,20 @@ TEST_CASE("Fast version of fmod") } TEST_CASE("WorldBuilder Utilities function: calculate_ridge_distance_and_spreading") -{ +{ std::vector approval_tests; const std::unique_ptr cartesian_system = CoordinateSystems::Interface::create("cartesian", nullptr);; // Ridge properties - const Point<2> p1a(std::array {{200e3, -1e3}},cartesian); - const Point<2> p1b(std::array {{200e3, 50e3}},cartesian); - const Point<2> p2a(std::array {{50e3, 50e3}},cartesian); + const Point<2> p1a(std::array {{200e3, -1e3}},cartesian); + const Point<2> p1b(std::array {{200e3, 50e3}},cartesian); + const Point<2> p2a(std::array {{50e3, 50e3}},cartesian); const Point<2> p2b(std::array {{50e3, 101e3}},cartesian); const Point<2> p2c(std::array {{100e3, 151e3}},cartesian); const std::vector> mid_ocean_ridges_segment_1 = {p1a, p1b}; const std::vector> mid_ocean_ridges_segment_2 = {p2a, p2b, p2c}; - + std::vector>> mid_oceanic_ridges; mid_oceanic_ridges.push_back(mid_ocean_ridges_segment_1); mid_oceanic_ridges.push_back(mid_ocean_ridges_segment_2); @@ -7530,81 +7530,82 @@ TEST_CASE("WorldBuilder Utilities function: calculate_ridge_distance_and_spreadi std::vector mid_oceanic_spreading_velocities_segment1 = {mid_oceanic_spreading_velocitie_1a, mid_oceanic_spreading_velocitie_1b}; std::vector mid_oceanic_spreading_velocities_segment2 = {mid_oceanic_spreading_velocitie_2a, mid_oceanic_spreading_velocitie_2b, - mid_oceanic_spreading_velocitie_2c}; - + mid_oceanic_spreading_velocitie_2c + }; + std::vector> mid_oceanic_spreading_velocities; mid_oceanic_spreading_velocities.push_back(mid_oceanic_spreading_velocities_segment1); mid_oceanic_spreading_velocities.push_back(mid_oceanic_spreading_velocities_segment2); - const std::vector> subducting_plate_velocities = {{0.0}}; + const std::vector> subducting_plate_velocities = {{0.0}}; const std::vector &ridge_migration_times = {0.0}; - // Query point 1 + // Query point 1 Point<3> position_1(1e3,0,0,cartesian); Objects::NaturalCoordinate position_in_natural_coordinates_1 = Objects::NaturalCoordinate(position_1, - *cartesian_system); - + *cartesian_system); + const std::vector result1 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - mid_oceanic_spreading_velocities, - cartesian_system, - position_in_natural_coordinates_1, - subducting_plate_velocities, - ridge_migration_times); + mid_oceanic_spreading_velocities, + cartesian_system, + position_in_natural_coordinates_1, + subducting_plate_velocities, + ridge_migration_times); approval_tests.emplace_back(result1[0]); // spreading velocity at ridge approval_tests.emplace_back(result1[1]); // ridge distance approval_tests.emplace_back(result1[2]); // subducting velocity at trench approval_tests.emplace_back(result1[3]); // ridge migration time - + // Query point 2: locates outside of the ridge, curent solution is to take the end point as the reference point Point<3> position_2(1e3,-2e3,0,cartesian); Objects::NaturalCoordinate position_in_natural_coordinates_2 = Objects::NaturalCoordinate(position_2, - *cartesian_system); - + *cartesian_system); + const std::vector result2 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - mid_oceanic_spreading_velocities, - cartesian_system, - position_in_natural_coordinates_2, - subducting_plate_velocities, - ridge_migration_times); + mid_oceanic_spreading_velocities, + cartesian_system, + position_in_natural_coordinates_2, + subducting_plate_velocities, + ridge_migration_times); approval_tests.emplace_back(result2[0]); // spreading velocity at ridge approval_tests.emplace_back(result2[1]); // ridge distance approval_tests.emplace_back(result2[2]); // subducting velocity at trench approval_tests.emplace_back(result2[3]); // ridge migration time - + // Query point 3: the nearest point on the ridge is in the middle of p2b and p2c // thus it should have intermediate velocity values Point<3> position_3(50e3,151e3,0,cartesian); Objects::NaturalCoordinate position_in_natural_coordinates_3 = Objects::NaturalCoordinate(position_3, - *cartesian_system); - + *cartesian_system); + const std::vector result3 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - mid_oceanic_spreading_velocities, - cartesian_system, - position_in_natural_coordinates_3, - subducting_plate_velocities, - ridge_migration_times); + mid_oceanic_spreading_velocities, + cartesian_system, + position_in_natural_coordinates_3, + subducting_plate_velocities, + ridge_migration_times); approval_tests.emplace_back(result3[0]); // spreading velocity at ridge approval_tests.emplace_back(result3[1]); // ridge distance approval_tests.emplace_back(result3[2]); // subducting velocity at trench approval_tests.emplace_back(result3[3]); // ridge migration time - + // Query point 4: the nearest point on the ridge is in the middle of p2a and p2b // thus it should have intermediate velocity values Point<3> position_4(100e3,76e3,0,cartesian); Objects::NaturalCoordinate position_in_natural_coordinates_4 = Objects::NaturalCoordinate(position_4, - *cartesian_system); - + *cartesian_system); + const std::vector result4 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - mid_oceanic_spreading_velocities, - cartesian_system, - position_in_natural_coordinates_4, - subducting_plate_velocities, - ridge_migration_times); + mid_oceanic_spreading_velocities, + cartesian_system, + position_in_natural_coordinates_4, + subducting_plate_velocities, + ridge_migration_times); approval_tests.emplace_back(result4[0]); // spreading velocity at ridge approval_tests.emplace_back(result4[1]); // ridge distance approval_tests.emplace_back(result4[2]); // subducting velocity at trench approval_tests.emplace_back(result4[3]); // ridge migration time - + ApprovalTests::Approvals::verifyAll("TITLE", approval_tests); } From fe766f8eea922e73d3a69bbf85ae0c33a7fa3c99 Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Mon, 26 Feb 2024 13:25:48 -0500 Subject: [PATCH 10/15] Fix spherical test --- .../spherical_variable_spreading/screen-output.log | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/tests/gwb-dat/spherical_variable_spreading/screen-output.log b/tests/gwb-dat/spherical_variable_spreading/screen-output.log index 41fac7bf3..ec021309c 100644 --- a/tests/gwb-dat/spherical_variable_spreading/screen-output.log +++ b/tests/gwb-dat/spherical_variable_spreading/screen-output.log @@ -1,8 +1,7 @@ -# x y z d g T tag -6321e3 22.5 16 50e3 1315.37 0 -6321e3 22.5 18 50e3 1258.52 0 -6321e3 22.5 20 50e3 1208.46 0 -6321e3 22.5 22 50e3 1166.44 0 +6321e3 22.5 16 50e3 450.462 0 +6321e3 22.5 18 50e3 858.44 0 +6321e3 22.5 20 50e3 1024.93 0 +6321e3 22.5 22 50e3 1119.39 0 6321e3 22.5 23 50e3 696.071 0 6321e3 22.5 25 50e3 647.504 0 6321e3 22.5 27 50e3 588.45 0 From 362f06efb78c0c437a033e5e43e0864f8a393adb Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Mon, 26 Feb 2024 13:26:45 -0500 Subject: [PATCH 11/15] Add doc files --- doc/world_builder_declarations.schema.json | 140 +++++++++++-- doc/world_builder_declarations_closed.md | 208 ++++++++++++++++-- doc/world_builder_declarations_open.md | 232 +++++++++++++++++++-- 3 files changed, 544 insertions(+), 36 deletions(-) diff --git a/doc/world_builder_declarations.schema.json b/doc/world_builder_declarations.schema.json index ba88782d4..963b43432 100644 --- a/doc/world_builder_declarations.schema.json +++ b/doc/world_builder_declarations.schema.json @@ -5485,7 +5485,7 @@ "description": "The spreading velocity of the plate in meter per year. This is the velocity with which one side moves away from the ridge.", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -5505,7 +5505,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -5811,7 +5811,7 @@ "description": "The spreading velocity of the plate in meter per year. This is the velocity with which one side moves away from the ridge.", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -5831,7 +5831,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -7483,7 +7483,7 @@ "description": "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -7503,7 +7503,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -7524,6 +7524,35 @@ } ] }, + "subducting velocity": { + "description": "The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]", + "oneOf": [ + { + "default value": -1.0, + "type": "number", + "description": "" + }, + { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "default value": -1.0, + "type": "number", + "description": "" + } + } + } + ] + }, "coupling depth": { "default value": 100000.0, "type": "number", @@ -8299,7 +8328,7 @@ "description": "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -8319,7 +8348,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -8340,6 +8369,35 @@ } ] }, + "subducting velocity": { + "description": "The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]", + "oneOf": [ + { + "default value": -1.0, + "type": "number", + "description": "" + }, + { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "default value": -1.0, + "type": "number", + "description": "" + } + } + } + ] + }, "coupling depth": { "default value": 100000.0, "type": "number", @@ -9185,7 +9243,7 @@ "description": "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -9205,7 +9263,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -9226,6 +9284,35 @@ } ] }, + "subducting velocity": { + "description": "The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]", + "oneOf": [ + { + "default value": -1.0, + "type": "number", + "description": "" + }, + { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "default value": -1.0, + "type": "number", + "description": "" + } + } + } + ] + }, "coupling depth": { "default value": 100000.0, "type": "number", @@ -10001,7 +10088,7 @@ "description": "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -10021,7 +10108,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -10042,6 +10129,35 @@ } ] }, + "subducting velocity": { + "description": "The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]", + "oneOf": [ + { + "default value": -1.0, + "type": "number", + "description": "" + }, + { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "default value": -1.0, + "type": "number", + "description": "" + } + } + } + ] + }, "coupling depth": { "default value": 100000.0, "type": "number", diff --git a/doc/world_builder_declarations_closed.md b/doc/world_builder_declarations_closed.md index 5c851d09f..9eb901ca0 100644 --- a/doc/world_builder_declarations_closed.md +++ b/doc/world_builder_declarations_closed.md @@ -8035,7 +8035,7 @@ ::::::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/2/spreading velocity/oneOf/1 :name: closed_features_items_oneOf_4_temperature-models_items_oneOf_2_spreading-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -8066,7 +8066,7 @@ :name: closed_features_items_oneOf_4_temperature-models_items_oneOf_2_spreading-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/2/spreading velocity/oneOf/2/items/items/anyOf/2 @@ -8542,7 +8542,7 @@ ::::::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/4/spreading velocity/oneOf/1 :name: closed_features_items_oneOf_4_temperature-models_items_oneOf_4_spreading-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -8573,7 +8573,7 @@ :name: closed_features_items_oneOf_4_temperature-models_items_oneOf_4_spreading-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/4/spreading velocity/oneOf/2/items/items/anyOf/2 @@ -11020,7 +11020,7 @@ ::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/1 :name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::: @@ -11051,7 +11051,7 @@ :name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::: ::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -11084,6 +11084,52 @@ :::::::::::: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::: + +:::::::::::: + + :::::::::::::: ::::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/coupling depth @@ -12158,7 +12204,7 @@ ::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/plate velocity/oneOf/1 :name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -12189,7 +12235,7 @@ :name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -12222,6 +12268,52 @@ :::::::::::::: +:::::::::::::::: + +::::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::: + +:::::::::::::: + + :::::::::::::::: ::::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/coupling depth @@ -13400,7 +13492,7 @@ ::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/1 :name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::: @@ -13431,7 +13523,7 @@ :name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::: ::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -13464,6 +13556,52 @@ :::::::::: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::: + +::::::::: + +:::::::::: + + :::::::::::: ::::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/coupling depth @@ -14538,7 +14676,7 @@ ::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/plate velocity/oneOf/1 :name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::: @@ -14569,7 +14707,7 @@ :name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::: ::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -14602,6 +14740,52 @@ :::::::::::: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::: + +:::::::::::: + + :::::::::::::: ::::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/coupling depth diff --git a/doc/world_builder_declarations_open.md b/doc/world_builder_declarations_open.md index 8cb17c534..20dddaed6 100644 --- a/doc/world_builder_declarations_open.md +++ b/doc/world_builder_declarations_open.md @@ -9050,7 +9050,7 @@ :open: :name: open_features_items_oneOf_4_temperature-models_items_oneOf_2_spreading-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -9086,7 +9086,7 @@ :name: open_features_items_oneOf_4_temperature-models_items_oneOf_2_spreading-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/2/spreading velocity/oneOf/2/items/items/anyOf/2 @@ -9626,7 +9626,7 @@ :open: :name: open_features_items_oneOf_4_temperature-models_items_oneOf_4_spreading-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -9662,7 +9662,7 @@ :name: open_features_items_oneOf_4_temperature-models_items_oneOf_4_spreading-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/4/spreading velocity/oneOf/2/items/items/anyOf/2 @@ -12420,7 +12420,7 @@ :open: :name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::: @@ -12456,7 +12456,7 @@ :name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::: ::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -12492,6 +12492,58 @@ :::::::::::: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::: + +:::::::::::: + + :::::::::::::: ::::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/coupling depth @@ -13691,7 +13743,7 @@ :open: :name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -13727,7 +13779,7 @@ :name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -13763,6 +13815,58 @@ :::::::::::::: +:::::::::::::::: + +::::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::: + +:::::::::::::: + + :::::::::::::::: ::::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/coupling depth @@ -15081,7 +15185,7 @@ :open: :name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::: @@ -15117,7 +15221,7 @@ :name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::: ::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -15153,6 +15257,58 @@ :::::::::: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::: + +::::::::: + +:::::::::: + + :::::::::::: ::::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/coupling depth @@ -16352,7 +16508,7 @@ :open: :name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::: @@ -16388,7 +16544,7 @@ :name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::: ::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -16424,6 +16580,58 @@ :::::::::::: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::: + +:::::::::::: + + :::::::::::::: ::::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/coupling depth From 7b924408581d7a6f0ba8f5e6e3775caea8779410 Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Mon, 26 Feb 2024 13:27:12 -0500 Subject: [PATCH 12/15] add doc file --- doc/world_builder_declarations.tex | 7206 ++++++++++++++++++++++++++++ 1 file changed, 7206 insertions(+) create mode 100644 doc/world_builder_declarations.tex diff --git a/doc/world_builder_declarations.tex b/doc/world_builder_declarations.tex new file mode 100644 index 000000000..8cf5687d1 --- /dev/null +++ b/doc/world_builder_declarations.tex @@ -0,0 +1,7206 @@ +\section{(0) /} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Root object +\item {\bf additionalProperties}: false +\item {\bf required}: [version, features]\end{itemize} +\section{(1) /version} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The major and minor version number for which the input file was written. +\end{itemize}\section{(1) /$schema} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The optional filename or https address to a JSON schema file +\end{itemize}\section{(1) /cross section} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf uniqueItems}: false +\item {\bf description}: This is an array of two points along where the cross section is taken +\end{itemize}\section{(2) /cross section/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /cross section/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\section{(1) /potential mantle temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1600.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. +\end{itemize}\section{(1) /surface temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the surface in Kelvin. +\end{itemize}\section{(1) /force surface temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: false +\item {\bf type}: boolean +\item {\bf description}: Force the provided surface temperature to be set at the surface +\end{itemize}\section{(1) /thermal expansion coefficient} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.000035 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. +\end{itemize}\section{(1) /specific heat} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1250.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}.$ +\end{itemize}\section{(1) /thermal diffusivity} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 8.04e-7 +\item {\bf type}: number +\item {\bf description}: The thermal diffusivity in $m^{2} s^{-1}$. +\end{itemize}\section{(1) /maximum distance between coordinates} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: This enforces a maximum distance (in degree for spherical coordinates or meter in cartesian coordinates) between coordinates in the model. If the distance is larger, extra points are added by interpolation. Requires interpolation to be not 'none'. +\end{itemize}\section{(1) /interpolation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: continuous monotone spline +\item {\bf type}: string +\item {\bf description}: What type of interpolation should be used to enforce the minimum points per distance parameter. Options are none, linear, monotone spline and continuous monotone spline interpolation. +\end{itemize}\section{(1) /coordinate system} +\begin{itemize}[leftmargin=1em]\item {\bf description}: A coordinate system. Cartesian or spherical. +\item {\bf default value}: cartesian +\item {\bf type}: object +\end{itemize} +\section{(2) /coordinate system/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: A Cartesian coordinate system. Coordinates are (x,y,z) and extend infinitely in all directions. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsection{(3) /coordinate system/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the coordinate system to use. +\item {\bf enum}: [cartesian]\end{itemize}\section{(2) /coordinate system/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: A spherical coordinate system. The coordinates are (radius, longitude, latitude). The radius is set in this plugin, the longitude extends at least from -360 to 360 degrees, and the latitude extends from -90 to 90. It is required to choose a depth method. Please see the manual for more information. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, depth method]\end{itemize} +\subsection{(3) /coordinate system/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the coordinate system to use. +\item {\bf enum}: [spherical]\end{itemize}\subsection{(3) /coordinate system/oneOf/2/depth method} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: Which depth method to use in the spherical case. The available options are 'starting point', 'begin segment' and 'begin at end segment'. See the manual section on coordinate systems for more info. +\item {\bf enum}: [starting point, begin segment, begin at end segment, continuous]\end{itemize}\subsection{(3) /coordinate system/oneOf/2/radius} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 6371000.0 +\item {\bf type}: number +\item {\bf description}: The radius of the sphere. +\end{itemize}\section{(1) /gravity model} +\begin{itemize}[leftmargin=1em]\item {\bf description}: A gravity model for the world. +\item {\bf default value}: uniform +\item {\bf type}: object +\end{itemize} +\section{(2) /gravity model/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform gravity model. It returns the gravity vector in a Cartesian coordinate system at a given position, which has a constant magitude for the whole domain. The vector points down in cartesian coordinates and to the center of the sphere in spherical coordinates. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsection{(3) /gravity model/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the model for the gravity to use. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /gravity model/oneOf/1/magnitude} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 9.81 +\item {\bf type}: number +\item {\bf description}: The magnitude of the gravity. +\end{itemize}\section{(1) /features} +\begin{itemize}[leftmargin=1em]\item {\bf description}: A list of features. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(2) /features/items} + +\subsection{(3) /features/items/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Continental plate object. Requires properties `model` and `coordinates`. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsection{(4) /features/items/oneOf/1/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The model name of the feature determining its type. +\item {\bf enum}: [continental plate]\end{itemize}\subsection{(4) /features/items/oneOf/1/name} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name which the user has given to the feature. This is mostly used for documentation purposes, and should in most cases be unique, although this is not enforced. +\end{itemize}\subsection{(4) /features/items/oneOf/1/tag} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: A tag which can be given to a feature. This is meant to categorize different features. If the tag is not provided or empty, it is set to the model name. +\end{itemize}\subsection{(4) /features/items/oneOf/1/coordinates} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An array of 2d Points representing an array of coordinates where the feature is located. +\end{itemize}\subsection{(5) /features/items/oneOf/1/coordinates/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/coordinates/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number +\end{itemize}\subsection{(4) /features/items/oneOf/1/interpolation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: global +\item {\bf type}: string +\item {\bf description}: What type of interpolation should be used to enforce the minimum points per distance parameter. Options are 'global' and 'continuous monotone spline' interpolation. If this value is set to global, the global value for interpolation is used. This option is deprecated and will be removed in a future release. +\end{itemize}\subsection{(4) /features/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=4em]\item {\bf description}: The depth from which this feature is present +\end{itemize} +\subsection{(5) /features/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(7) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \subsection{(3) /features/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The depth to which this feature is present +\end{itemize} +\subsection{(4) /features/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(5) /features/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf temperature models}: \section{(2) /features/items/oneOf/1/3} +\begin{itemize}[leftmargin=2em]\item {\bf description}: A list of temperature models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsection{(3) /features/items/oneOf/1/3/items} + +\subsection{(4) /features/items/oneOf/1/3/items/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsection{(5) /features/items/oneOf/1/3/items/oneOf/1/model} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsection{(5) /features/items/oneOf/1/3/items/oneOf/1/operation} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(5) /features/items/oneOf/1/3/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=5em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(8) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\paragraph{(9) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=9em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \subsection{(4) /features/items/oneOf/1/3/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=4em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\subsection{(5) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(7) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/3/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf type}: , number\end{itemize}]]\item {\bf potential mantle temperature}: \subsection{(3) /features/items/oneOf/1/3/items/oneOf/1/3} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\item {\bf thermal expansion coefficient}: \subsection{(3) /features/items/oneOf/1/3/items/oneOf/1/4} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\item {\bf specific heat}: \subsection{(3) /features/items/oneOf/1/3/items/oneOf/1/5} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\section{(1) /features/items/oneOf/1/3/items/oneOf} +\begin{itemize}[leftmargin=1em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max depth]\end{itemize} +\section{(2) /features/items/oneOf/1/3/items/oneOf/model} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\section{(2) /features/items/oneOf/1/3/items/oneOf/operation} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(2) /features/items/oneOf/1/3/items/oneOf/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\subsection{(3) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf anyOf}: [\end{itemize}\subsection{(5) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(4) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(5) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(1) /features/items/oneOf/1/3/items/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(3) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/3/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf top temperature}: \section{(0) /features/items/oneOf/1/3/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\item {\bf bottom temperature}: \section{(0) /features/items/oneOf/1/3/items} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\section{(0) /features/items/oneOf/1} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\section{(1) /features/items/oneOf/1/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\section{(1) /features/items/oneOf/1/temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}]\item {\bf composition models}: \section{(0) /features/items/oneOf/1} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of composition models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(2) /features/items/oneOf/1/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf anyOf}: [\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(1) /features/items/oneOf/1/items/oneOf/1/3} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/1/3/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf fractions}: \section{(1) /features/items/oneOf/1/items/oneOf/1/4} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/1/4/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf operation}: \section{(1) /features/items/oneOf/1/items/oneOf/1/5} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}]\item {\bf grains models}: \section{(0) /features/items/oneOf/1/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of grains models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf anyOf}: [\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/1/3} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/1/3/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf orientation operation}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/1/4} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\item {\bf grain sizes}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/1/5} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/1/5/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf normalize grain sizes}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/1/6} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/1/6/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf orientation operation}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\item {\bf grain sizes}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf normalize grain sizes}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\item {\bf deflections}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf rotation matrices}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the rotation matrices of the grains which are present there for each compositions. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf Euler angles z-x-z}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf orientation operation}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace, multiply]\end{itemize}\item {\bf grain sizes}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}]\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Fault object. Requires properties `model` and `coordinates`. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The model name of the feature determining its type. +\item {\bf enum}: [fault]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/name} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name which the user has given to the feature. This is mostly used for documentation purposes, and should in most cases be unique, although this is not enforced. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/tag} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: A tag which can be given to a feature. This is meant to categorize different features. If the tag is not provided or empty, it is set to the model name. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An array of 2d Points representing an array of coordinates where the feature is located. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/interpolation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: global +\item {\bf type}: string +\item {\bf description}: What type of interpolation should be used to enforce the minimum points per distance parameter. Options are 'global' and 'continuous monotone spline' interpolation. If this value is set to global, the global value for interpolation is used. This option is deprecated and will be removed in a future release. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/max depth} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/dip point} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/dip point/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: number +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf additionalProperties}: false +\item {\bf description}: +\item {\bf required}: [length, thickness, angle]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/length} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/thickness} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/thickness/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/top truncation} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/top truncation/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/angle} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/angle/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models} +\begin{itemize}[leftmargin=3em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items} + +\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/potential mantle temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/thermal expansion coefficient} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/specific heat} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max distance fault center]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The minimum distance to the center of the fault. This determines where the linear temperature starts. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The minimum distance to the center of the fault. This determines where the linear temperature end. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/center temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the center of this feature in degree Kelvin.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/side temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the sides of this feature in degree Kelvin. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models} +\begin{itemize}[leftmargin=3em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items} + +\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Compositional model object +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [smooth]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/side distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance over which the composition is reduced from 1 to 0. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/center fractions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the center of the fault. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/center fractions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/side fractions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the sides of this feature. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/side fractions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/2} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/2/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/2/fractions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/2/fractions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/composition models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models} +\begin{itemize}[leftmargin=3em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items} + +\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/orientation operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/normalize grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/1/normalize grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/orientation operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/normalize grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/normalize grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/deflections} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/2/deflections/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/rotation matrices} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/rotation matrices/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/rotation matrices/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/rotation matrices/items/items/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/Euler angles z-x-z} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/Euler angles z-x-z/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/Euler angles z-x-z/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/orientation operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/grains models/items/oneOf/3/grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models} +\begin{itemize}[leftmargin=1em]\item {\bf description}: A list of temperature models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items} + +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/max distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/potential mantle temperature} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/thermal expansion coefficient} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/specific heat} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max distance fault center]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The minimum distance to the center of the fault. This determines where the linear temperature starts. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The minimum distance to the center of the fault. This determines where the linear temperature end. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/center temperature} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the center of this feature in degree Kelvin.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/side temperature} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the sides of this feature in degree Kelvin. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/3} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/3/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/3/operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/3/min distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/3/max distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters to which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/3/temperature} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models} +\begin{itemize}[leftmargin=1em]\item {\bf description}: A list of composition models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items} + +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Compositional model object +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [smooth]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/side distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance over which the composition is reduced from 1 to 0. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/center fractions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the center of the fault. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/center fractions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/side fractions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the sides of this feature. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/side fractions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/2/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters to which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/2/fractions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/2/fractions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models} +\begin{itemize}[leftmargin=1em]\item {\bf description}: A list of grains models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items} + +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/max distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/orientation operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/grain sizes} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/grain sizes/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/normalize grain sizes} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/normalize grain sizes/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/orientation operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/grain sizes} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/grain sizes/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/normalize grain sizes} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/normalize grain sizes/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/deflections} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/2/deflections/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/min distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/max distance fault center} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/compositions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/compositions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/rotation matrices} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/rotation matrices/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/rotation matrices/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/rotation matrices/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/Euler angles z-x-z} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/Euler angles z-x-z/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/Euler angles z-x-z/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/orientation operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/grain sizes} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/3/grain sizes/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of feature properties for a coordinate. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items} +\begin{itemize}[leftmargin=2em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: object +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The depth to which this feature is present +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/max depth} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The depth to which this feature is present +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/dip point} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: The depth to which this feature is present +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/dip point/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The depth to which this feature is present +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: object +\item {\bf additionalProperties}: false +\item {\bf description}: +\item {\bf required}: [length, thickness, angle]\end{itemize} +\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/length} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/thickness} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/thickness/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/top truncation} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/top truncation/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/angle} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/angle/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models} +\begin{itemize}[leftmargin=5em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items} + +\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/1} +\begin{itemize}[leftmargin=7em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/1/model} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/1/max distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/1/potential mantle temperature} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/1/thermal expansion coefficient} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/1/specific heat} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/2} +\begin{itemize}[leftmargin=7em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max distance fault center]\end{itemize} +\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/2/model} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The minimum distance to the center of the fault. This determines where the linear temperature starts. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The minimum distance to the center of the fault. This determines where the linear temperature end. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/2/center temperature} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the center of this feature in degree Kelvin.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/2/side temperature} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the sides of this feature in degree Kelvin. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/3} +\begin{itemize}[leftmargin=7em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/3/model} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/3/operation} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/3/min distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/3/max distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/temperature models/items/oneOf/3/temperature} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models} +\begin{itemize}[leftmargin=5em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items} + +\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1} +\begin{itemize}[leftmargin=7em]\item {\bf type}: object +\item {\bf description}: Compositional model object +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/model} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [smooth]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/side distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance over which the composition is reduced from 1 to 0. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/center fractions} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the center of the fault. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/center fractions/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/side fractions} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the sides of this feature. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/side fractions/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/2} +\begin{itemize}[leftmargin=7em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/2/model} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/2/fractions} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/2/fractions/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/composition models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models} +\begin{itemize}[leftmargin=5em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items} + +\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1} +\begin{itemize}[leftmargin=7em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/model} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/max distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/orientation operation} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/grain sizes} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/grain sizes/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/normalize grain sizes} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/1/normalize grain sizes/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2} +\begin{itemize}[leftmargin=7em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/model} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/orientation operation} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/grain sizes} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/grain sizes/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/normalize grain sizes} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/normalize grain sizes/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/deflections} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/2/deflections/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3} +\begin{itemize}[leftmargin=7em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/model} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/min distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/max distance fault center} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/compositions} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/compositions/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/rotation matrices} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/rotation matrices/items} +\begin{itemize}[leftmargin=9em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\paragraph{(10) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/rotation matrices/items/items} +\begin{itemize}[leftmargin=10em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\paragraph{(11) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/rotation matrices/items/items/items} +\begin{itemize}[leftmargin=11em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/Euler angles z-x-z} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/Euler angles z-x-z/items} +\begin{itemize}[leftmargin=9em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\paragraph{(10) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/Euler angles z-x-z/items/items} +\begin{itemize}[leftmargin=10em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/orientation operation} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/grain sizes} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/segments/items/grains models/items/oneOf/3/grain sizes/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models} +\begin{itemize}[leftmargin=3em]\item {\bf description}: A list of temperature models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items} + +\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/1} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/1/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/1/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/1/potential mantle temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/1/thermal expansion coefficient} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/1/specific heat} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/2} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max distance fault center]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/2/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The minimum distance to the center of the fault. This determines where the linear temperature starts. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The minimum distance to the center of the fault. This determines where the linear temperature end. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/2/center temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the center of this feature in degree Kelvin.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/2/side temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the sides of this feature in degree Kelvin. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/3} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/3/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/3/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/3/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/3/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/temperature models/items/oneOf/3/temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models} +\begin{itemize}[leftmargin=3em]\item {\bf description}: A list of composition models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items} + +\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Compositional model object +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [smooth]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/side distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance over which the composition is reduced from 1 to 0. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/center fractions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the center of the fault. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/center fractions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/side fractions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the sides of this feature. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/side fractions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/2} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/2/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/2/fractions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/2/fractions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/composition models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models} +\begin{itemize}[leftmargin=3em]\item {\bf description}: A list of grains models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items} + +\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/orientation operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/normalize grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/1/normalize grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/orientation operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/normalize grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/normalize grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/deflections} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/2/deflections/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/min distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the fault center in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/max distance fault center} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the fault in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/compositions} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/compositions/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/rotation matrices} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/rotation matrices/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/rotation matrices/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/rotation matrices/items/items/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/Euler angles z-x-z} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/Euler angles z-x-z/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/Euler angles z-x-z/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/orientation operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/grain sizes} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/grains models/items/oneOf/3/grain sizes/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/sections/items/coordinate} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: The coordinate which should be overwritten +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Mantle layer object. Requires properties `model` and `coordinates`. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The model name of the feature determining its type. +\item {\bf enum}: [mantle layer]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/name} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name which the user has given to the feature. This is mostly used for documentation purposes, and should in most cases be unique, although this is not enforced. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/tag} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: A tag which can be given to a feature. This is meant to categorize different features. If the tag is not provided or empty, it is set to the model name. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An array of 2d Points representing an array of coordinates where the feature is located. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/interpolation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: global +\item {\bf type}: string +\item {\bf description}: What type of interpolation should be used to enforce the minimum points per distance parameter. Options are 'global' and 'continuous monotone spline' interpolation. If this value is set to global, the global value for interpolation is used. This option is deprecated and will be removed in a future release. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth from which this feature is present +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth to which this feature is present +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf temperature models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of temperature models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The depth in meters to which the temperature of this feature is present. +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf anyOf}: [\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , number\end{itemize}]]\item {\bf potential mantle temperature}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/3} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\item {\bf thermal expansion coefficient}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/4} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\item {\bf specific heat}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/5} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max depth]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the temperature of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf top temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\item {\bf bottom temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the temperature of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}]\item {\bf composition models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of composition models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf anyOf}: [\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/3} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/3/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf fractions}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/4} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/4/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf operation}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/5} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}]\item {\bf grains models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of grains models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf anyOf}: [\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/3} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/3/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf orientation operation}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/4} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\item {\bf grain sizes}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/5} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/5/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf normalize grain sizes}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/6} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/6/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf orientation operation}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\item {\bf grain sizes}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf normalize grain sizes}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\item {\bf deflections}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf rotation matrices}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf Euler angles z-x-z}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf orientation operation}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\item {\bf grain sizes}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}]\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Oceanic plate object. Requires properties `model` and `coordinates`. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The model name of the feature determining its type. +\item {\bf enum}: [oceanic plate]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/name} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name which the user has given to the feature. This is mostly used for documentation purposes, and should in most cases be unique, although this is not enforced. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/tag} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: A tag which can be given to a feature. This is meant to categorize different features. If the tag is not provided or empty, it is set to the model name. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An array of 2d Points representing an array of coordinates where the feature is located. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/interpolation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: global +\item {\bf type}: string +\item {\bf description}: What type of interpolation should be used to enforce the minimum points per distance parameter. Options are 'global' and 'continuous monotone spline' interpolation. If this value is set to global, the global value for interpolation is used. This option is deprecated and will be removed in a future release. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth from which this feature is present +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth to which this feature is present +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf temperature models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of temperature models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The depth in meters to which the temperature of this feature is present. +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf anyOf}: [\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , number\end{itemize}]]\item {\bf potential mantle temperature}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/3} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\item {\bf thermal expansion coefficient}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/4} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\item {\bf specific heat}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/5} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Half space cooling mode +\item {\bf additionalProperties}: false +\item {\bf required}: [model, ridge coordinates, spreading velocity, max depth]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [half space model]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the temperature of this feature is present.Because half-space reaches background temperature asymptotically, this value should be ~2 times the nominal plate thickness of 100 km +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf top temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The actual surface temperature in degree Kelvin for this feature. +\end{itemize}\item {\bf bottom temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The mantle temperature for the half-space cooling modelin degree Kelvin for this feature. If the model has an adiabatic gradientthis should be the mantle potential temperature, and T = Tad + Thalf. +\end{itemize}\item {\bf spreading velocity}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The spreading velocity of the plate in meter per year. This is the velocity with which one side moves away from the ridge. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.05 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 0.05 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf ridge coordinates}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An list of ridges. Each ridge is a lists of at least 2 2d points which define the location of the ridge. You need to define at least one ridge.So the an example with two ridges is [[[10,20],[20,30],[10,40]],[[50,10],[60,10]]]. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/items/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max depth]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the temperature of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf top temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\item {\bf bottom temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Plate model. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max depth]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [plate model]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the temperature of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf top temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}\item {\bf bottom temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}\item {\bf spreading velocity}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The spreading velocity of the plate in meter per year. This is the velocity with which one side moves away from the ridge. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.05 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 0.05 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf ridge coordinates}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An list of ridges. Each ridge is a lists of at least 2 2d points which define the location of the ridge. You need to define at least one ridge.So the an example with two ridges is [[[10,20],[20,30],[10,40]],[[50,10],[60,10]]]. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Plate model, but with a fixed age. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max depth]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [plate model constant age]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the temperature of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf top temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}\item {\bf bottom temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}\item {\bf plate age}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 80000.0 +\item {\bf type}: number +\item {\bf description}: The age of the plate in year. This age is assigned to the whole plate. +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the temperature of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}]\item {\bf composition models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of composition models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf anyOf}: [\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/3} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/3/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf fractions}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/4} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/4/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf operation}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/5} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}]\item {\bf grains models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of grains models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf anyOf}: [\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/3} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/3/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf orientation operation}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/4} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\item {\bf grain sizes}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/5} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/5/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf normalize grain sizes}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/6} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/6/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf orientation operation}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\item {\bf grain sizes}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf normalize grain sizes}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\item {\bf deflections}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf anyOf}: [\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number\item {\bf default value}: 0.0 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , number\end{itemize}]]\item {\bf max depth}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/1} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf anyOf}: [\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number\item {\bf default value}: 1.7976931348623157e308 +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: , number\end{itemize}]]\item {\bf compositions}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\item {\bf rotation matrices}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf Euler angles z-x-z}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf orientation operation}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\item {\bf grain sizes}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}]\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Plume object. Requires properties `model` and `coordinates`. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The model name of the feature determining its type. +\item {\bf enum}: [plume]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/name} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name which the user has given to the feature. This is mostly used for documentation purposes, and should in most cases be unique, although this is not enforced. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/tag} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: A tag which can be given to a feature. This is meant to categorize different features. If the tag is not provided or empty, it is set to the model name. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An array of 2d Points representing an array of coordinates where the feature is located. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/interpolation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: global +\item {\bf type}: string +\item {\bf description}: What type of interpolation should be used to enforce the minimum points per distance parameter. Options are 'global' and 'continuous monotone spline' interpolation. If this value is set to global, the global value for interpolation is used. This option is deprecated and will be removed in a future release. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The depth from which this feature is present, in other words, the depth of the tip of the plume. If the first entry in the cross section depths has a greater depth, an ellipsoidal plume head will be added in between. Units: m. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/max depth} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The depth to which this feature is present. Units: m. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/cross section depths} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The depths of the elliptic cross section of the plume. Units: m. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/cross section depths/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/semi-major axis} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The lengths of the semi-major axes of the elliptic cross sections of the plume. In spherical coordinates, this is in degrees, otherwise in meters. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/semi-major axis/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 100000.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/eccentricity} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The eccentricities of the cross sections. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/eccentricity/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/rotation angles} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The directions that the semi-major axis of the elliptic cross-sections are pointing to, in degrees. This direction is expressed as the angle from geographic North in spherical coordinates, or as the angle from the Y axis (clockwise) in Cartesian coordinates. The angle should be between 0 and 360 degrees. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/rotation angles/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models} +\begin{itemize}[leftmargin=1em]\item {\bf description}: A list of temperature models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items} + +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Gaussian temperature model. The temperature is interpolated between the plume center and margin (as defined by the plume feature) using a Gaussian function: T(r) = T_center(z) exp(-r^2/(2 sigma^2). The temperature at the plume centerline T_center can be changed with depth by defining an array of depths and centerline temperatures, and temperature is interpolated linearly with depth. Similarly, the sigma of the Gaussian function (relative to the width of the plume as given by the plume feature) can be changed with depth. Temperature is always interpolated in a horizonzal/radial plane, except for the plume head: If the first depth of the plume centerline and the minimum depth of the plume feature are different, an ellipsoidal plume head is created in this depth range. Within this plume head, temperature is interpolated radially, i.e., depending on the distance from the center of the ellipsoid. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, centerline temperatures]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [gaussian]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/depths} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The list of depths where both the temperature in the center of the plume and the width of the temperature anomaly in terms of the sigma of a Gaussian function can be provided. Temperature is interpolated linearly in vertical direction between these depths. Units: m. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/depths/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/centerline temperatures} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The temperature at the center of this feature in degree Kelvin.If the value is below zero, then an adiabatic temperature is used. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/centerline temperatures/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/gaussian sigmas} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The sigma (standard deviation) of the Gaussian function used to compute the temperature distribution within the plume. This sigma is non-dimensinal, i.e. it is defined relative to the distance between the plume center and margin as defined by the plume feature. Choosing a sigma of 1 therefore means that the temperature at the plume margin is set to a fraction of 1/sqrt(e) (approx. 0.61) of the centerline temperature. To achieve a smoother transition between the plume temperature and the outside temperature a smaller values has to be chosen for the gaussian sigmas. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/1/gaussian sigmas/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0.3 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constant value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/min depth} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The depth in meters from which the temperature of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/max depth} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The depth in meters to which the temperature of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/temperature models/items/oneOf/2/temperature} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models} +\begin{itemize}[leftmargin=1em]\item {\bf description}: A list of composition models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items} + +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/max depth} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/fractions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/fractions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/composition models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models} +\begin{itemize}[leftmargin=1em]\item {\bf description}: A list of grains models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items} + +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/model} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/min depth} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The depth in meters from which the grains of this feature are present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/max depth} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The depth in meters to which the grains of this feature are present. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/rotation matrices} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the rotation matrices of the grains which are present there for each compositions. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/rotation matrices/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/rotation matrices/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/rotation matrices/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/Euler angles z-x-z} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/Euler angles z-x-z/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/Euler angles z-x-z/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/orientation operation} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace, multiply]\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/grain sizes} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/grains models/items/oneOf/1/grain sizes/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Subducting slab object. Requires properties `model` and `coordinates`. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The model name of the feature determining its type. +\item {\bf enum}: [subducting plate]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/name} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name which the user has given to the feature. This is mostly used for documentation purposes, and should in most cases be unique, although this is not enforced. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/tag} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: A tag which can be given to a feature. This is meant to categorize different features. If the tag is not provided or empty, it is set to the model name. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An array of 2d Points representing an array of coordinates where the feature is located. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/coordinates/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/interpolation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: global +\item {\bf type}: string +\item {\bf description}: What type of interpolation should be used to enforce the minimum points per distance parameter. Options are 'global' and 'continuous monotone spline' interpolation. If this value is set to global, the global value for interpolation is used. This option is deprecated and will be removed in a future release. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/max depth} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/dip point} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/dip point/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: number +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf additionalProperties}: false +\item {\bf description}: +\item {\bf required}: [length, thickness, angle]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/length} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/thickness} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/thickness/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/top truncation} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/top truncation/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/angle} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/angle/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models} +\begin{itemize}[leftmargin=3em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items} + +\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/potential mantle temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/thermal expansion coefficient} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/1/specific heat} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max distance slab top]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/top temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/2/bottom temperature} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the bottom in degree Kelvin of this feature. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3} +\begin{itemize}[leftmargin=5em]\item {\bf type}: object +\item {\bf description}: Mass conserving temperature model. The temperature model uses the heat content (proportional to to thermal mass anomaly) to define a smooth temperature profile that conserves mass along the slab length. An empirical model, using error functions for smooth transitions, is used to define how the minimum temperature increases with depth and how the location of the minimum temperature shifts into the slab interior. The slab is divided into top and bottom parts, which meet at the location where the minimum temperature occurs in the slab. For the bottom slab, the temperature is defined by a half-space cooling model. For the top of the slab the temperature is defined by one side of a 1D infinite space cooling model: this function was chosen to have a smoother temperature function across the minimum temperature position. The age of the overriding plate is used so the slab temperature at shallow depth smoothly transitions to the temperature of the overriding plate: this is not perfect, and is affected by the value of "top truncation" parameter subducting plate. Notes:1) the parameter "thickness" for the subducting plate segments needs to be defined but is not used. 2) because we use a negative truncation for distance above the slab, it is recommended to usedepth method:begin at end segment, in the main part of the world-builder file.Other methods may lead to gpas in temperatures at the segment boundaries.3)the empirical model used to define how Tmin increases with depth and how the position of Tmin shift with depth is expected to change somewhat after better calibrating with further tests. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, plate velocity]\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/model} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [mass conserving]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/operation} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/min distance slab top} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from the top surface of the slab over which the temperature is determined by this feature. This parameter should be negative and should be 1.5-2 times larger than the nominal slab thickness to allow the diffusion of cold temperatures from in the slab into the mantle above the slab surface. Also note that the top truncation value for the slab segment needs to have a value of -1, otherwise the temperature above the slab will be cut off at a distance less than the value set here. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/max distance slab top} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters from the top surface of the slab over which the temperature is determined by this feature. This parameter should be positive and approximately 2.5-3.0 times larger than the nominal slab thickness to allow the diffusion of coldtemperatures from in the slab into the mantle below the slab surface.For example if the slab starts with cold temperatures over a 100 km wide region, thisparameters should be about 250 km. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/density} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 3300.0 +\item {\bf type}: number +\item {\bf description}: The reference density of the subducting plate in $kg/m^3$ +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity} +\begin{itemize}[leftmargin=6em]\item {\bf description}: The velocity with which the plate subducts in meters per year. Default is 5 cm/yr +\end{itemize} +\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/1} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0.05 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2} +\begin{itemize}[leftmargin=7em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\item {\bf description}: +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=9em]\item {\bf anyOf}: [\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=9em]\item {\bf type}: number\item {\bf default value}: 0.05 +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=8em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=9em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\end{itemize}\paragraph{(10) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=10em]\item {\bf type}: , number\end{itemize}]]\item {\bf subducting velocity}: \subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity} +\begin{itemize}[leftmargin=5em]\item {\bf description}: The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +\end{itemize} +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/1} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2} +\begin{itemize}[leftmargin=6em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf coupling depth}: \subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf/3} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 100000.0 +\item {\bf type}: number +\item {\bf description}: The depth at which the slab surface first comes in contact with the hot mantle wedge in meters. Default is 100 km. +\end{itemize}\item {\bf forearc cooling factor}: \subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items/oneOf} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: Increase the value to create thin (~2 km) cold thermal boundary layer above the slab.Any value greater than 1 does NOT meet the instantaneous conservation of mass, but does allow one to account for the history of insulating the forearc from heating up to this point in time. Note younger subducting lithosphere provides less insulation, while thicker, older slabs provide more insulation. Values up to 10 to 30 have been tested and don't cause any other extraneous effects. The larger th value the more you are not meeting the mass conserving criteria, so you don't want to see this affecting the temperature beyond the coupling depth as it will increase the mass of the slab and affect how it sinks. If you use higher values, you will start to see that this creates a very thick cool layer above the entire slab - if you see this extending beyond the coupling zone reduce the value. You should use a value of 1 first and then only increase as little as possible to cool just the forearc region. Please examine the output temperature carefully. +\end{itemize}\item {\bf thermal conductivity}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models/items} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 3.3 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\item {\bf thermal expansion coefficient}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items/temperature models} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansivity of the subducting plate material in $K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\item {\bf specific heat}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments/items} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat of the subducting plate material in $J kg^{-1} K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\item {\bf thermal diffusivity}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/segments} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\item {\bf adiabatic heating}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: Whether adiabatic heating should be used for the slab. +\end{itemize}\item {\bf taper distance}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 100000.0 +\item {\bf type}: number +\item {\bf description}: Distance over which to taper the slab tip.tapers the initial heat content to zero and the minimum temperature to the background temperature. +\end{itemize}\item {\bf potential mantle temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If smaller than zero, the global value is used. +\end{itemize}\item {\bf ridge coordinates}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An list of ridges. Each ridge is a lists of at least 2 2d points which define the location of the ridge. You need to define at least one ridge.So the an example with two ridges is [[[10,20],[20,30],[10,40]],[[50,10],[60,10]]]. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/items/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\item {\bf reference model name}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: half space model +\item {\bf type}: string +\item {\bf description}: The type of thermal model to use in the mass conserving model of slab temperature. Options are half space model and plate model +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Plate model (based on McKenzie, 1970). +\item {\bf additionalProperties}: false +\item {\bf required}: [model, plate velocity]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [plate model]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/max distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/density} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 3300.0 +\item {\bf type}: number +\item {\bf description}: The reference density of the subducting plate in $kg/m^3$ +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/plate velocity} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: NaN +\item {\bf type}: number +\item {\bf description}: The velocity in meters per year with which the plate subducts in meters per year. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/thermal conductivity} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 2.0 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/thermal expansion coefficient} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansivity of the subducting plate material in $K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/specific heat} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat of the subducting plate material in $J kg^{-1} K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/adiabatic heating} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: Whether adiabatic heating should be used for the slab. Setting the parameter to false leads to equation 26 from McKenzie (1970),which is the result obtained from McKenzie 1969. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/potential mantle temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If smaller than zero, the global value is used. +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/min distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/max distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/items/temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}]\item {\bf composition models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Compositional model object +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [smooth]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this layer is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this layer is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/top fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the top of the slab (layer). +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/top fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/bottom fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the bottom of the slab (layer). +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/bottom fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/1/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/2/fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/2/fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/items/oneOf/2/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\item {\bf grains models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/normalize grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/1/normalize grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/normalize grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/normalize grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/deflections} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/2/deflections/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/rotation matrices} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/rotation matrices/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/rotation matrices/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/rotation matrices/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/Euler angles z-x-z} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/Euler angles z-x-z/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/Euler angles z-x-z/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/min depth/oneOf/items/oneOf/3/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf temperature models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of temperature models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/1/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/1/potential mantle temperature} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/1/thermal expansion coefficient} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/1/specific heat} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max distance slab top]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/2/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/2/top temperature} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/2/bottom temperature} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the bottom in degree Kelvin of this feature. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Mass conserving temperature model. The temperature model uses the heat content (proportional to to thermal mass anomaly) to define a smooth temperature profile that conserves mass along the slab length. An empirical model, using error functions for smooth transitions, is used to define how the minimum temperature increases with depth and how the location of the minimum temperature shifts into the slab interior. The slab is divided into top and bottom parts, which meet at the location where the minimum temperature occurs in the slab. For the bottom slab, the temperature is defined by a half-space cooling model. For the top of the slab the temperature is defined by one side of a 1D infinite space cooling model: this function was chosen to have a smoother temperature function across the minimum temperature position. The age of the overriding plate is used so the slab temperature at shallow depth smoothly transitions to the temperature of the overriding plate: this is not perfect, and is affected by the value of "top truncation" parameter subducting plate. Notes:1) the parameter "thickness" for the subducting plate segments needs to be defined but is not used. 2) because we use a negative truncation for distance above the slab, it is recommended to usedepth method:begin at end segment, in the main part of the world-builder file.Other methods may lead to gpas in temperatures at the segment boundaries.3)the empirical model used to define how Tmin increases with depth and how the position of Tmin shift with depth is expected to change somewhat after better calibrating with further tests. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, plate velocity]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [mass conserving]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from the top surface of the slab over which the temperature is determined by this feature. This parameter should be negative and should be 1.5-2 times larger than the nominal slab thickness to allow the diffusion of cold temperatures from in the slab into the mantle above the slab surface. Also note that the top truncation value for the slab segment needs to have a value of -1, otherwise the temperature above the slab will be cut off at a distance less than the value set here. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters from the top surface of the slab over which the temperature is determined by this feature. This parameter should be positive and approximately 2.5-3.0 times larger than the nominal slab thickness to allow the diffusion of coldtemperatures from in the slab into the mantle below the slab surface.For example if the slab starts with cold temperatures over a 100 km wide region, thisparameters should be about 250 km. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/density} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 3300.0 +\item {\bf type}: number +\item {\bf description}: The reference density of the subducting plate in $kg/m^3$ +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The velocity with which the plate subducts in meters per year. Default is 5 cm/yr +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.05 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.05 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf subducting velocity}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf coupling depth}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf/3} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 100000.0 +\item {\bf type}: number +\item {\bf description}: The depth at which the slab surface first comes in contact with the hot mantle wedge in meters. Default is 100 km. +\end{itemize}\item {\bf forearc cooling factor}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: Increase the value to create thin (~2 km) cold thermal boundary layer above the slab.Any value greater than 1 does NOT meet the instantaneous conservation of mass, but does allow one to account for the history of insulating the forearc from heating up to this point in time. Note younger subducting lithosphere provides less insulation, while thicker, older slabs provide more insulation. Values up to 10 to 30 have been tested and don't cause any other extraneous effects. The larger th value the more you are not meeting the mass conserving criteria, so you don't want to see this affecting the temperature beyond the coupling depth as it will increase the mass of the slab and affect how it sinks. If you use higher values, you will start to see that this creates a very thick cool layer above the entire slab - if you see this extending beyond the coupling zone reduce the value. You should use a value of 1 first and then only increase as little as possible to cool just the forearc region. Please examine the output temperature carefully. +\end{itemize}\item {\bf thermal conductivity}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf/items} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 3.3 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\item {\bf thermal expansion coefficient}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansivity of the subducting plate material in $K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\item {\bf specific heat}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat of the subducting plate material in $J kg^{-1} K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\item {\bf thermal diffusivity}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\item {\bf adiabatic heating}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: Whether adiabatic heating should be used for the slab. +\end{itemize}\item {\bf taper distance}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 100000.0 +\item {\bf type}: number +\item {\bf description}: Distance over which to taper the slab tip.tapers the initial heat content to zero and the minimum temperature to the background temperature. +\end{itemize}\item {\bf potential mantle temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If smaller than zero, the global value is used. +\end{itemize}\item {\bf ridge coordinates}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An list of ridges. Each ridge is a lists of at least 2 2d points which define the location of the ridge. You need to define at least one ridge.So the an example with two ridges is [[[10,20],[20,30],[10,40]],[[50,10],[60,10]]]. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\item {\bf reference model name}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: half space model +\item {\bf type}: string +\item {\bf description}: The type of thermal model to use in the mass conserving model of slab temperature. Options are half space model and plate model +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Plate model (based on McKenzie, 1970). +\item {\bf additionalProperties}: false +\item {\bf required}: [model, plate velocity]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [plate model]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/min distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/max distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/density} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 3300.0 +\item {\bf type}: number +\item {\bf description}: The reference density of the subducting plate in $kg/m^3$ +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/plate velocity} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: NaN +\item {\bf type}: number +\item {\bf description}: The velocity in meters per year with which the plate subducts in meters per year. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/thermal conductivity} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 2.0 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/thermal expansion coefficient} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansivity of the subducting plate material in $K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/specific heat} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat of the subducting plate material in $J kg^{-1} K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/adiabatic heating} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: Whether adiabatic heating should be used for the slab. Setting the parameter to false leads to equation 26 from McKenzie (1970),which is the result obtained from McKenzie 1969. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/potential mantle temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If smaller than zero, the global value is used. +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/min distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/max distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}]\item {\bf composition models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of composition models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Compositional model object +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [smooth]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this layer is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this layer is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/top fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the top of the slab (layer). +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/top fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/bottom fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the bottom of the slab (layer). +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/bottom fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\item {\bf grains models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of grains models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/normalize grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/1/normalize grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/normalize grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/normalize grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/deflections} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/2/deflections/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/rotation matrices} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/rotation matrices/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/rotation matrices/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/rotation matrices/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/Euler angles z-x-z} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/Euler angles z-x-z/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/Euler angles z-x-z/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/3/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf sections}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of feature properties for a coordinate. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: object +\end{itemize} +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/min depth} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/max depth} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The depth to which this feature is present +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/dip point} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: The depth to which this feature is present +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/dip point/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The depth to which this feature is present +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: object +\item {\bf additionalProperties}: false +\item {\bf description}: +\item {\bf required}: [length, thickness, angle]\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/length} +\begin{itemize}[leftmargin=4em]\item {\bf type}: number +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/thickness} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/thickness/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/top truncation} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/top truncation/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/angle} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 2 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/angle/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: number +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models} +\begin{itemize}[leftmargin=4em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items} + +\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/1} +\begin{itemize}[leftmargin=6em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/1/model} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/1/operation} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/1/potential mantle temperature} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/1/thermal expansion coefficient} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/1/specific heat} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/2} +\begin{itemize}[leftmargin=6em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max distance slab top]\end{itemize} +\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/2/model} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/2/operation} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/2/top temperature} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/2/bottom temperature} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the bottom in degree Kelvin of this feature. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3} +\begin{itemize}[leftmargin=6em]\item {\bf type}: object +\item {\bf description}: Mass conserving temperature model. The temperature model uses the heat content (proportional to to thermal mass anomaly) to define a smooth temperature profile that conserves mass along the slab length. An empirical model, using error functions for smooth transitions, is used to define how the minimum temperature increases with depth and how the location of the minimum temperature shifts into the slab interior. The slab is divided into top and bottom parts, which meet at the location where the minimum temperature occurs in the slab. For the bottom slab, the temperature is defined by a half-space cooling model. For the top of the slab the temperature is defined by one side of a 1D infinite space cooling model: this function was chosen to have a smoother temperature function across the minimum temperature position. The age of the overriding plate is used so the slab temperature at shallow depth smoothly transitions to the temperature of the overriding plate: this is not perfect, and is affected by the value of "top truncation" parameter subducting plate. Notes:1) the parameter "thickness" for the subducting plate segments needs to be defined but is not used. 2) because we use a negative truncation for distance above the slab, it is recommended to usedepth method:begin at end segment, in the main part of the world-builder file.Other methods may lead to gpas in temperatures at the segment boundaries.3)the empirical model used to define how Tmin increases with depth and how the position of Tmin shift with depth is expected to change somewhat after better calibrating with further tests. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, plate velocity]\end{itemize} +\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/model} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [mass conserving]\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/operation} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/min distance slab top} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from the top surface of the slab over which the temperature is determined by this feature. This parameter should be negative and should be 1.5-2 times larger than the nominal slab thickness to allow the diffusion of cold temperatures from in the slab into the mantle above the slab surface. Also note that the top truncation value for the slab segment needs to have a value of -1, otherwise the temperature above the slab will be cut off at a distance less than the value set here. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/max distance slab top} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters from the top surface of the slab over which the temperature is determined by this feature. This parameter should be positive and approximately 2.5-3.0 times larger than the nominal slab thickness to allow the diffusion of coldtemperatures from in the slab into the mantle below the slab surface.For example if the slab starts with cold temperatures over a 100 km wide region, thisparameters should be about 250 km. +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/density} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: 3300.0 +\item {\bf type}: number +\item {\bf description}: The reference density of the subducting plate in $kg/m^3$ +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity} +\begin{itemize}[leftmargin=7em]\item {\bf description}: The velocity with which the plate subducts in meters per year. Default is 5 cm/yr +\end{itemize} +\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/1} +\begin{itemize}[leftmargin=8em]\item {\bf default value}: 0.05 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=9em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\item {\bf description}: +\end{itemize}\paragraph{(10) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=10em]\item {\bf anyOf}: [\end{itemize}\paragraph{(10) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=10em]\item {\bf type}: number\item {\bf default value}: 0.05 +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=9em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\paragraph{(10) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=10em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\end{itemize}\paragraph{(11) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=11em]\item {\bf type}: , number\end{itemize}]]\item {\bf subducting velocity}: \subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity} +\begin{itemize}[leftmargin=6em]\item {\bf description}: The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +\end{itemize} +\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/1} +\begin{itemize}[leftmargin=7em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2} +\begin{itemize}[leftmargin=7em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(8) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=8em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\paragraph{(9) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=9em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf coupling depth}: \subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf/3} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 100000.0 +\item {\bf type}: number +\item {\bf description}: The depth at which the slab surface first comes in contact with the hot mantle wedge in meters. Default is 100 km. +\end{itemize}\item {\bf forearc cooling factor}: \subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items/oneOf} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: Increase the value to create thin (~2 km) cold thermal boundary layer above the slab.Any value greater than 1 does NOT meet the instantaneous conservation of mass, but does allow one to account for the history of insulating the forearc from heating up to this point in time. Note younger subducting lithosphere provides less insulation, while thicker, older slabs provide more insulation. Values up to 10 to 30 have been tested and don't cause any other extraneous effects. The larger th value the more you are not meeting the mass conserving criteria, so you don't want to see this affecting the temperature beyond the coupling depth as it will increase the mass of the slab and affect how it sinks. If you use higher values, you will start to see that this creates a very thick cool layer above the entire slab - if you see this extending beyond the coupling zone reduce the value. You should use a value of 1 first and then only increase as little as possible to cool just the forearc region. Please examine the output temperature carefully. +\end{itemize}\item {\bf thermal conductivity}: \subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models/items} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 3.3 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\item {\bf thermal expansion coefficient}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items/temperature models} +\begin{itemize}[leftmargin=2em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansivity of the subducting plate material in $K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\item {\bf specific heat}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments/items} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat of the subducting plate material in $J kg^{-1} K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\item {\bf thermal diffusivity}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/segments} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\item {\bf adiabatic heating}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: Whether adiabatic heating should be used for the slab. +\end{itemize}\item {\bf taper distance}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 100000.0 +\item {\bf type}: number +\item {\bf description}: Distance over which to taper the slab tip.tapers the initial heat content to zero and the minimum temperature to the background temperature. +\end{itemize}\item {\bf potential mantle temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If smaller than zero, the global value is used. +\end{itemize}\item {\bf ridge coordinates}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An list of ridges. Each ridge is a lists of at least 2 2d points which define the location of the ridge. You need to define at least one ridge.So the an example with two ridges is [[[10,20],[20,30],[10,40]],[[50,10],[60,10]]]. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\item {\bf reference model name}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: half space model +\item {\bf type}: string +\item {\bf description}: The type of thermal model to use in the mass conserving model of slab temperature. Options are half space model and plate model +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Plate model (based on McKenzie, 1970). +\item {\bf additionalProperties}: false +\item {\bf required}: [model, plate velocity]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [plate model]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/min distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/max distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/density} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 3300.0 +\item {\bf type}: number +\item {\bf description}: The reference density of the subducting plate in $kg/m^3$ +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/plate velocity} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: NaN +\item {\bf type}: number +\item {\bf description}: The velocity in meters per year with which the plate subducts in meters per year. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/thermal conductivity} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 2.0 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/thermal expansion coefficient} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansivity of the subducting plate material in $K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/specific heat} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat of the subducting plate material in $J kg^{-1} K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/adiabatic heating} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: Whether adiabatic heating should be used for the slab. Setting the parameter to false leads to equation 26 from McKenzie (1970),which is the result obtained from McKenzie 1969. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min depth/potential mantle temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If smaller than zero, the global value is used. +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/min distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/max distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}]\item {\bf composition models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Compositional model object +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [smooth]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this layer is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this layer is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/top fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the top of the slab (layer). +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/top fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/bottom fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the bottom of the slab (layer). +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/bottom fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/1/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/2/fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/2/fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/items/oneOf/2/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\item {\bf grains models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=0em]\item {\bf description}: +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/normalize grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/1/normalize grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/normalize grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/normalize grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/deflections} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/2/deflections/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/rotation matrices} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/rotation matrices/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/rotation matrices/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/rotation matrices/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/Euler angles z-x-z} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/Euler angles z-x-z/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/Euler angles z-x-z/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/oneOf/3/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf temperature models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of temperature models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Adiabatic temperature model. Uses global values by default. +\item {\bf additionalProperties}: false +\item {\bf required}: [model]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [adiabatic]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/1/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/1/potential mantle temperature} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/1/thermal expansion coefficient} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansion coefficient in $K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/1/specific heat} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat in $J kg^{-1} K^{-1}$. If the value is lower then zero, the global value is used. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Linear temperature model. Can be set to use an adiabatic temperature at the boundaries. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, max distance slab top]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [linear]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/2/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/2/top temperature} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature at the top in degree Kelvin of this feature.If the value is below zero, the an adiabatic temperature is used. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/2/bottom temperature} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The temperature at the bottom in degree Kelvin of this feature. If the value is below zero, an adiabatic temperature is used. +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Mass conserving temperature model. The temperature model uses the heat content (proportional to to thermal mass anomaly) to define a smooth temperature profile that conserves mass along the slab length. An empirical model, using error functions for smooth transitions, is used to define how the minimum temperature increases with depth and how the location of the minimum temperature shifts into the slab interior. The slab is divided into top and bottom parts, which meet at the location where the minimum temperature occurs in the slab. For the bottom slab, the temperature is defined by a half-space cooling model. For the top of the slab the temperature is defined by one side of a 1D infinite space cooling model: this function was chosen to have a smoother temperature function across the minimum temperature position. The age of the overriding plate is used so the slab temperature at shallow depth smoothly transitions to the temperature of the overriding plate: this is not perfect, and is affected by the value of "top truncation" parameter subducting plate. Notes:1) the parameter "thickness" for the subducting plate segments needs to be defined but is not used. 2) because we use a negative truncation for distance above the slab, it is recommended to usedepth method:begin at end segment, in the main part of the world-builder file.Other methods may lead to gpas in temperatures at the segment boundaries.3)the empirical model used to define how Tmin increases with depth and how the position of Tmin shift with depth is expected to change somewhat after better calibrating with further tests. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, plate velocity]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [mass conserving]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from the top surface of the slab over which the temperature is determined by this feature. This parameter should be negative and should be 1.5-2 times larger than the nominal slab thickness to allow the diffusion of cold temperatures from in the slab into the mantle above the slab surface. Also note that the top truncation value for the slab segment needs to have a value of -1, otherwise the temperature above the slab will be cut off at a distance less than the value set here. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance in meters from the top surface of the slab over which the temperature is determined by this feature. This parameter should be positive and approximately 2.5-3.0 times larger than the nominal slab thickness to allow the diffusion of coldtemperatures from in the slab into the mantle below the slab surface.For example if the slab starts with cold temperatures over a 100 km wide region, thisparameters should be about 250 km. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/density} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 3300.0 +\item {\bf type}: number +\item {\bf description}: The reference density of the subducting plate in $kg/m^3$ +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity} +\begin{itemize}[leftmargin=3em]\item {\bf description}: The velocity with which the plate subducts in meters per year. Default is 5 cm/yr +\end{itemize} +\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/1} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.05 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf additionalProperties}: false +\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf anyOf}: [\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: number\item {\bf default value}: 0.05 +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf type}: , array\item {\bf minItems}: 1 +\item {\bf maxItems}: 18446744073709551615 +\end{itemize}\subsubsection{(7) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items/items} +\begin{itemize}[leftmargin=7em]\item {\bf type}: , number\end{itemize}]]\item {\bf subducting velocity}: \section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity} +\begin{itemize}[leftmargin=2em]\item {\bf description}: The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/1} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3/plate velocity/oneOf/2/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf coupling depth}: \section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf/3} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 100000.0 +\item {\bf type}: number +\item {\bf description}: The depth at which the slab surface first comes in contact with the hot mantle wedge in meters. Default is 100 km. +\end{itemize}\item {\bf forearc cooling factor}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: Increase the value to create thin (~2 km) cold thermal boundary layer above the slab.Any value greater than 1 does NOT meet the instantaneous conservation of mass, but does allow one to account for the history of insulating the forearc from heating up to this point in time. Note younger subducting lithosphere provides less insulation, while thicker, older slabs provide more insulation. Values up to 10 to 30 have been tested and don't cause any other extraneous effects. The larger th value the more you are not meeting the mass conserving criteria, so you don't want to see this affecting the temperature beyond the coupling depth as it will increase the mass of the slab and affect how it sinks. If you use higher values, you will start to see that this creates a very thick cool layer above the entire slab - if you see this extending beyond the coupling zone reduce the value. You should use a value of 1 first and then only increase as little as possible to cool just the forearc region. Please examine the output temperature carefully. +\end{itemize}\item {\bf thermal conductivity}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 3.3 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\item {\bf thermal expansion coefficient}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansivity of the subducting plate material in $K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\item {\bf specific heat}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat of the subducting plate material in $J kg^{-1} K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\item {\bf thermal diffusivity}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\item {\bf adiabatic heating}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: Whether adiabatic heating should be used for the slab. +\end{itemize}\item {\bf taper distance}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 100000.0 +\item {\bf type}: number +\item {\bf description}: Distance over which to taper the slab tip.tapers the initial heat content to zero and the minimum temperature to the background temperature. +\end{itemize}\item {\bf potential mantle temperature}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If smaller than zero, the global value is used. +\end{itemize}\item {\bf ridge coordinates}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: An list of ridges. Each ridge is a lists of at least 2 2d points which define the location of the ridge. You need to define at least one ridge.So the an example with two ridges is [[[10,20],[20,30],[10,40]],[[50,10],[60,10]]]. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items} +\begin{itemize}[leftmargin=1em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items} +\begin{itemize}[leftmargin=2em]\item {\bf type}: array +\item {\bf minItems}: 2 +\item {\bf maxItems}: 2 +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth/oneOf/items/items/items} +\begin{itemize}[leftmargin=3em]\item {\bf type}: number +\end{itemize}\item {\bf reference model name}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: half space model +\item {\bf type}: string +\item {\bf description}: The type of thermal model to use in the mass conserving model of slab temperature. Options are half space model and plate model +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Plate model (based on McKenzie, 1970). +\item {\bf additionalProperties}: false +\item {\bf required}: [model, plate velocity]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [plate model]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/min distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/max distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/density} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 3300.0 +\item {\bf type}: number +\item {\bf description}: The reference density of the subducting plate in $kg/m^3$ +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/plate velocity} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: NaN +\item {\bf type}: number +\item {\bf description}: The velocity in meters per year with which the plate subducts in meters per year. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/thermal conductivity} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 2.0 +\item {\bf type}: number +\item {\bf description}: The thermal conductivity of the subducting plate material in $W m^{-1} K^{-1}$. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/thermal expansion coefficient} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The thermal expansivity of the subducting plate material in $K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/specific heat} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The specific heat of the subducting plate material in $J kg^{-1} K^{-1}$. If smaller than zero, the global value is used. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/adiabatic heating} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: Whether adiabatic heating should be used for the slab. Setting the parameter to false leads to equation 26 from McKenzie (1970),which is the result obtained from McKenzie 1969. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min depth/potential mantle temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: The potential temperature of the mantle at the surface in Kelvin. If smaller than zero, the global value is used. +\end{itemize}\section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf type}: object +\item {\bf description}: Uniform temperature model. Set the temperature to a constan value. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, temperature]\end{itemize} +\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/model} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the temperature model. +\item {\bf enum}: [uniform]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/operation} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace), add the value to the previously define value (add) or subtract the value to the previously define value (subtract). +\item {\bf enum}: [replace, add, subtract]\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/min distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/max distance slab top} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/temperature} +\begin{itemize}[leftmargin=1em]\item {\bf default value}: 293.15 +\item {\bf type}: number +\item {\bf description}: The temperature in degree Kelvin which this feature should have +\end{itemize}]\item {\bf composition models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of composition models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Compositional model object +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [smooth]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this layer is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance in meters from which the composition of this layer is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/top fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the top of the slab (layer). +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/top fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/bottom fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: The composition fraction at the bottom of the slab (layer). +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/bottom fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform compositional model. Sets constant compositional field. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the composition model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: todo The depth in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/fractions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 1 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: TA list of compositional fractions corresponding to the compositions list. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/fractions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value. Replacing implies that all compositions not explicitly defined are set to zero. To only replace the defined compositions use the replace only defined option. +\item {\bf enum}: [replace, replace defined only, add, subtract]\end{itemize}\item {\bf grains models}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf description}: A list of grains models. +\item {\bf default value}: +\item {\bf type}: array +\end{itemize}\section{(1) /features/items/oneOf/1/items/oneOf/items/oneOf/items} + +\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/normalize grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/1/normalize grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Random uniform distribution grains model. The size of the grains can be independently set to a single value or to a random distribution. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [random uniform distribution deflected]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be randomized between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/normalize grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of whether the sizes of the grains should be normalized or not. If normalized, the total of the grains of a composition will be equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/normalize grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: true +\item {\bf type}: boolean +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/deflections} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the deflections of all of the grains in each composition between 0 and 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/2/deflections/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\section{(2) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3} +\begin{itemize}[leftmargin=2em]\item {\bf type}: object +\item {\bf description}: Uniform grains model. All grains start exactly the same. +\item {\bf additionalProperties}: false +\item {\bf required}: [model, compositions]\end{itemize} +\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/model} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: +\item {\bf type}: string +\item {\bf description}: The name of the grains model. +\item {\bf enum}: [uniform]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/min distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters from which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/max distance slab top} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: 1.7976931348623157e308 +\item {\bf type}: number +\item {\bf description}: The distance from the slab top in meters to which the composition of this feature is present. +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/compositions} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the integer labels of the composition which are present there. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/compositions/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/rotation matrices} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the labels of the grains which are present there for each compositions. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/rotation matrices/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/rotation matrices/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsubsection{(6) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/rotation matrices/items/items/items} +\begin{itemize}[leftmargin=6em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/Euler angles z-x-z} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list with the z-x-z Euler angles of the grains which are present there for each compositions. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/Euler angles z-x-z/items} +\begin{itemize}[leftmargin=4em]\item {\bf type}: array +\item {\bf minItems}: 3 +\item {\bf maxItems}: 3 +\item {\bf uniqueItems}: false +\item {\bf description}: +\end{itemize}\subsection{(5) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/Euler angles z-x-z/items/items} +\begin{itemize}[leftmargin=5em]\item {\bf default value}: 0.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/orientation operation} +\begin{itemize}[leftmargin=3em]\item {\bf default value}: replace +\item {\bf type}: string +\item {\bf description}: Whether the value should replace any value previously defined at this location (replace) or add the value to the previously define value (add, not implemented). Replacing implies that all values not explicitly defined are set to zero. +\item {\bf enum}: [replace]\end{itemize}\subsection{(3) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/grain sizes} +\begin{itemize}[leftmargin=3em]\item {\bf type}: array +\item {\bf minItems}: 0 +\item {\bf maxItems}: 4294967295 +\item {\bf uniqueItems}: false +\item {\bf description}: A list of the size of all of the grains in each composition. If set to <0, the size will be set so that the total is equal to 1. +\end{itemize}\subsection{(4) /features/items/oneOf/1/items/oneOf/items/oneOf/items/oneOf/3/grain sizes/items} +\begin{itemize}[leftmargin=4em]\item {\bf default value}: -1.0 +\item {\bf type}: number +\item {\bf description}: +\end{itemize}\item {\bf coordinate}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 0 +\item {\bf type}: integer +\item {\bf description}: The coordinate which should be overwritten +\end{itemize}]\item {\bf random number seed}: \section{(0) /features/items/oneOf/1/items/oneOf/items/oneOf} +\begin{itemize}[leftmargin=0em]\item {\bf default value}: 4294967295 +\item {\bf type}: integer +\item {\bf description}: This allows the input of a preferred random number seed to generate random numbers. If no input is given, this value is -1 and triggers the use of default seed = 1. +\end{itemize} \ No newline at end of file From 1deec14b7170a0845472350ee07d6b8848619d76 Mon Sep 17 00:00:00 2001 From: lhy11009 Date: Tue, 27 Feb 2024 15:26:27 -0800 Subject: [PATCH 13/15] Add tests for spherical geometry --- source/world_builder/utilities.cc | 6 +- ...ridge_distance_and_spreading_spherical.txt | 16 ++++ tests/unit_tests/unit_test_world_builder.cc | 87 +++++++++++++++++++ 3 files changed, 106 insertions(+), 3 deletions(-) create mode 100644 tests/unit_tests/approval_tests/approved/unit_test_world_builder.WorldBuilder_Utilities_function__calculate_ridge_distance_and_spreading_spherical.txt diff --git a/source/world_builder/utilities.cc b/source/world_builder/utilities.cc index 240601cf3..0f8b680d1 100644 --- a/source/world_builder/utilities.cc +++ b/source/world_builder/utilities.cc @@ -1410,9 +1410,9 @@ namespace WorldBuilder } else { - Pb2=segment_point0 + (c1 / c) * v; - spreading_velocity_at_ridge_pt2 = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c1 / c); - subducting_velocity_at_trench_pt2 = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c1 / c); + Pb2=segment_point0 + (c2 / c) * v; + spreading_velocity_at_ridge_pt2 = spreading_velocity_point0 + (spreading_velocity_point1 - spreading_velocity_point0) * (c2 / c); + subducting_velocity_at_trench_pt2 = subducting_velocity_point0 + (subducting_velocity_point1 - subducting_velocity_point0) * (c2 / c); } Point<3> compare_point1(coordinate_system->natural_coordinate_system()); diff --git a/tests/unit_tests/approval_tests/approved/unit_test_world_builder.WorldBuilder_Utilities_function__calculate_ridge_distance_and_spreading_spherical.txt b/tests/unit_tests/approval_tests/approved/unit_test_world_builder.WorldBuilder_Utilities_function__calculate_ridge_distance_and_spreading_spherical.txt new file mode 100644 index 000000000..b7b8e3f83 --- /dev/null +++ b/tests/unit_tests/approval_tests/approved/unit_test_world_builder.WorldBuilder_Utilities_function__calculate_ridge_distance_and_spreading_spherical.txt @@ -0,0 +1,16 @@ +TITLE + + +[0] = 4.75299e-08 +[1] = 1.04512e+06 +[2] = 0 +[3] = 0 +[4] = 1.42605e-07 +[5] = 727172 +[6] = 0 +[7] = 0 +[8] = 1.26752e-07 +[9] = 1.92312e+06 +[10] = 0 +[11] = 0 + diff --git a/tests/unit_tests/unit_test_world_builder.cc b/tests/unit_tests/unit_test_world_builder.cc index 269c4a332..6f6c21359 100644 --- a/tests/unit_tests/unit_test_world_builder.cc +++ b/tests/unit_tests/unit_test_world_builder.cc @@ -7608,3 +7608,90 @@ TEST_CASE("WorldBuilder Utilities function: calculate_ridge_distance_and_spreadi ApprovalTests::Approvals::verifyAll("TITLE", approval_tests); } +TEST_CASE("WorldBuilder Utilities function: calculate_ridge_distance_and_spreading spherical") +{ + std::vector approval_tests; + + const std::unique_ptr spherical_system = CoordinateSystems::Interface::create("spherical", nullptr);; + + // Ridge properties + const Point<2> p1a(std::array {{0.3491, -0.6981}},spherical); + const Point<2> p1b(std::array {{0.3491, 0.0}},spherical); + const Point<2> p2a(std::array {{0.1745, 0.0}},spherical); + const Point<2> p2b(std::array {{0.1745, 0.5236}},spherical); + const Point<2> p2c(std::array {{0.3491, 0.6981}},spherical); + const std::vector> mid_ocean_ridges_segment_1 = {p1a, p1b}; + const std::vector> mid_ocean_ridges_segment_2 = {p2a, p2b, p2c}; + + std::vector>> mid_oceanic_ridges; + mid_oceanic_ridges.push_back(mid_ocean_ridges_segment_1); + mid_oceanic_ridges.push_back(mid_ocean_ridges_segment_2); + + const double mid_oceanic_spreading_velocitie_1a = 1.0; + const double mid_oceanic_spreading_velocitie_1b = 2.0; + const double mid_oceanic_spreading_velocitie_2a = 3.0; + const double mid_oceanic_spreading_velocitie_2b = 4.0; + const double mid_oceanic_spreading_velocitie_2c = 5.0; + + std::vector mid_oceanic_spreading_velocities_segment1 = {mid_oceanic_spreading_velocitie_1a, mid_oceanic_spreading_velocitie_1b}; + std::vector mid_oceanic_spreading_velocities_segment2 = {mid_oceanic_spreading_velocitie_2a, mid_oceanic_spreading_velocitie_2b, + mid_oceanic_spreading_velocitie_2c}; + + std::vector> mid_oceanic_spreading_velocities; + mid_oceanic_spreading_velocities.push_back(mid_oceanic_spreading_velocities_segment1); + mid_oceanic_spreading_velocities.push_back(mid_oceanic_spreading_velocities_segment2); + + const std::vector> subducting_plate_velocities = {{0.0}}; + const std::vector &ridge_migration_times = {0.0}; + + // Query point 1, the nearest point on the ridge is in the middle of p1a nd p1b + Point<3> position_1(6371e3, 0.1745, -0.3491, spherical); + Objects::NaturalCoordinate position_in_natural_coordinates_1 = Objects::NaturalCoordinate(Utilities::spherical_to_cartesian_coordinates(position_1.get_array()), + *spherical_system); + + const std::vector result1 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + mid_oceanic_spreading_velocities, + spherical_system, + position_in_natural_coordinates_1, + subducting_plate_velocities, + ridge_migration_times); + approval_tests.emplace_back(result1[0]); // spreading velocity at ridge + approval_tests.emplace_back(result1[1]); // ridge distance + approval_tests.emplace_back(result1[2]); // subducting velocity at trench + approval_tests.emplace_back(result1[3]); // ridge migration time + + // Query point 2, the nearest point on the ridge is in the middle of p2b nd p2c + Point<3> position_2(6371e3, 0.3491, 0.5236, spherical); + Objects::NaturalCoordinate position_in_natural_coordinates_2 = Objects::NaturalCoordinate(Utilities::spherical_to_cartesian_coordinates(position_2.get_array()), + *spherical_system); + + const std::vector result2 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + mid_oceanic_spreading_velocities, + spherical_system, + position_in_natural_coordinates_2, + subducting_plate_velocities, + ridge_migration_times); + approval_tests.emplace_back(result2[0]); // spreading velocity at ridge + approval_tests.emplace_back(result2[1]); // ridge distance + approval_tests.emplace_back(result2[2]); // subducting velocity at trench + approval_tests.emplace_back(result2[3]); // ridge migration time + + // Query point 3, the nearest point on the ridge is p2b, the purpose is to test a negative value of longitude + Point<3> position_3(6371e3, -0.1745, 0.5236, spherical); + Objects::NaturalCoordinate position_in_natural_coordinates_3 = Objects::NaturalCoordinate(Utilities::spherical_to_cartesian_coordinates(position_3.get_array()), + *spherical_system); + + const std::vector result3 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, + mid_oceanic_spreading_velocities, + spherical_system, + position_in_natural_coordinates_3, + subducting_plate_velocities, + ridge_migration_times); + approval_tests.emplace_back(result3[0]); // spreading velocity at ridge + approval_tests.emplace_back(result3[1]); // ridge distance + approval_tests.emplace_back(result3[2]); // subducting velocity at trench + approval_tests.emplace_back(result3[3]); // ridge migration time + + ApprovalTests::Approvals::verifyAll("TITLE", approval_tests); +} + From dc0975a4bc10b9bdd00808487629b6bbe00d74be Mon Sep 17 00:00:00 2001 From: lhy11009 Date: Wed, 28 Feb 2024 19:22:26 -0800 Subject: [PATCH 14/15] Fix the failing test of spherical_variable_spreading --- doc/world_builder_declarations.schema.json | 140 ++++++++++- doc/world_builder_declarations_closed.md | 208 +++++++++++++++- doc/world_builder_declarations_open.md | 232 +++++++++++++++++- .../screen-output.log | 8 +- 4 files changed, 548 insertions(+), 40 deletions(-) diff --git a/doc/world_builder_declarations.schema.json b/doc/world_builder_declarations.schema.json index ba88782d4..963b43432 100644 --- a/doc/world_builder_declarations.schema.json +++ b/doc/world_builder_declarations.schema.json @@ -5485,7 +5485,7 @@ "description": "The spreading velocity of the plate in meter per year. This is the velocity with which one side moves away from the ridge.", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -5505,7 +5505,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -5811,7 +5811,7 @@ "description": "The spreading velocity of the plate in meter per year. This is the velocity with which one side moves away from the ridge.", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -5831,7 +5831,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -7483,7 +7483,7 @@ "description": "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -7503,7 +7503,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -7524,6 +7524,35 @@ } ] }, + "subducting velocity": { + "description": "The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]", + "oneOf": [ + { + "default value": -1.0, + "type": "number", + "description": "" + }, + { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "default value": -1.0, + "type": "number", + "description": "" + } + } + } + ] + }, "coupling depth": { "default value": 100000.0, "type": "number", @@ -8299,7 +8328,7 @@ "description": "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -8319,7 +8348,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -8340,6 +8369,35 @@ } ] }, + "subducting velocity": { + "description": "The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]", + "oneOf": [ + { + "default value": -1.0, + "type": "number", + "description": "" + }, + { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "default value": -1.0, + "type": "number", + "description": "" + } + } + } + ] + }, "coupling depth": { "default value": 100000.0, "type": "number", @@ -9185,7 +9243,7 @@ "description": "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -9205,7 +9263,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -9226,6 +9284,35 @@ } ] }, + "subducting velocity": { + "description": "The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]", + "oneOf": [ + { + "default value": -1.0, + "type": "number", + "description": "" + }, + { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "default value": -1.0, + "type": "number", + "description": "" + } + } + } + ] + }, "coupling depth": { "default value": 100000.0, "type": "number", @@ -10001,7 +10088,7 @@ "description": "The velocity with which the plate subducts in meters per year. Default is 5 cm/yr", "oneOf": [ { - "default value": 0.01, + "default value": 0.05, "type": "number", "description": "" }, @@ -10021,7 +10108,7 @@ "anyOf": [ { "type": "number", - "default value": 0.01 + "default value": 0.05 }, { "type": "array", @@ -10042,6 +10129,35 @@ } ] }, + "subducting velocity": { + "description": "The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr]", + "oneOf": [ + { + "default value": -1.0, + "type": "number", + "description": "" + }, + { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "type": "array", + "minItems": 1, + "maxItems": 4294967295, + "uniqueItems": false, + "description": "", + "items": { + "default value": -1.0, + "type": "number", + "description": "" + } + } + } + ] + }, "coupling depth": { "default value": 100000.0, "type": "number", diff --git a/doc/world_builder_declarations_closed.md b/doc/world_builder_declarations_closed.md index 5c851d09f..9eb901ca0 100644 --- a/doc/world_builder_declarations_closed.md +++ b/doc/world_builder_declarations_closed.md @@ -8035,7 +8035,7 @@ ::::::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/2/spreading velocity/oneOf/1 :name: closed_features_items_oneOf_4_temperature-models_items_oneOf_2_spreading-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -8066,7 +8066,7 @@ :name: closed_features_items_oneOf_4_temperature-models_items_oneOf_2_spreading-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/2/spreading velocity/oneOf/2/items/items/anyOf/2 @@ -8542,7 +8542,7 @@ ::::::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/4/spreading velocity/oneOf/1 :name: closed_features_items_oneOf_4_temperature-models_items_oneOf_4_spreading-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -8573,7 +8573,7 @@ :name: closed_features_items_oneOf_4_temperature-models_items_oneOf_4_spreading-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/4/spreading velocity/oneOf/2/items/items/anyOf/2 @@ -11020,7 +11020,7 @@ ::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/1 :name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::: @@ -11051,7 +11051,7 @@ :name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::: ::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -11084,6 +11084,52 @@ :::::::::::: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:name: closed_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::: + +:::::::::::: + + :::::::::::::: ::::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/coupling depth @@ -12158,7 +12204,7 @@ ::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/plate velocity/oneOf/1 :name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -12189,7 +12235,7 @@ :name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -12222,6 +12268,52 @@ :::::::::::::: +:::::::::::::::: + +::::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:name: closed_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::: + +:::::::::::::: + + :::::::::::::::: ::::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/coupling depth @@ -13400,7 +13492,7 @@ ::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/1 :name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::: @@ -13431,7 +13523,7 @@ :name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::: ::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -13464,6 +13556,52 @@ :::::::::: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:name: closed_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::: + +::::::::: + +:::::::::: + + :::::::::::: ::::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/coupling depth @@ -14538,7 +14676,7 @@ ::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/plate velocity/oneOf/1 :name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::: @@ -14569,7 +14707,7 @@ :name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::: ::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -14602,6 +14740,52 @@ :::::::::::: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:name: closed_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::: + +:::::::::::: + + :::::::::::::: ::::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/coupling depth diff --git a/doc/world_builder_declarations_open.md b/doc/world_builder_declarations_open.md index 8cb17c534..20dddaed6 100644 --- a/doc/world_builder_declarations_open.md +++ b/doc/world_builder_declarations_open.md @@ -9050,7 +9050,7 @@ :open: :name: open_features_items_oneOf_4_temperature-models_items_oneOf_2_spreading-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -9086,7 +9086,7 @@ :name: open_features_items_oneOf_4_temperature-models_items_oneOf_2_spreading-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/2/spreading velocity/oneOf/2/items/items/anyOf/2 @@ -9626,7 +9626,7 @@ :open: :name: open_features_items_oneOf_4_temperature-models_items_oneOf_4_spreading-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -9662,7 +9662,7 @@ :name: open_features_items_oneOf_4_temperature-models_items_oneOf_4_spreading-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/4/temperature models/items/oneOf/4/spreading velocity/oneOf/2/items/items/anyOf/2 @@ -12420,7 +12420,7 @@ :open: :name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::: @@ -12456,7 +12456,7 @@ :name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::: ::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -12492,6 +12492,58 @@ :::::::::::: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:open: +:name: open_features_items_oneOf_6_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::: + +:::::::::::: + + :::::::::::::: ::::::::::::::{dropdown} /features/items/oneOf/6/segments/items/temperature models/items/oneOf/3/coupling depth @@ -13691,7 +13743,7 @@ :open: :name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::::: @@ -13727,7 +13779,7 @@ :name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::::: ::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -13763,6 +13815,58 @@ :::::::::::::: +:::::::::::::::: + +::::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:open: +:name: open_features_items_oneOf_6_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::: + +:::::::::::::: + + :::::::::::::::: ::::::::::::::::{dropdown} /features/items/oneOf/6/temperature models/items/oneOf/3/coupling depth @@ -15081,7 +15185,7 @@ :open: :name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::: @@ -15117,7 +15221,7 @@ :name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::: ::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -15153,6 +15257,58 @@ :::::::::: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:open: +:name: open_features_items_oneOf_6_sections_items_segments_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::: + +::::::::: + +:::::::::: + + :::::::::::: ::::::::::::{dropdown} /features/items/oneOf/6/sections/items/segments/items/temperature models/items/oneOf/3/coupling depth @@ -16352,7 +16508,7 @@ :open: :name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_1 -- **default value**:0.01 +- **default value**:0.05 - **type**:number - **description**: :::::::::::: @@ -16388,7 +16544,7 @@ :name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_plate-velocity_oneOf_2_items_items_anyOf_1 - **type**:number -- **default value**:0.01 +- **default value**:0.05 :::::::: ::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/plate velocity/oneOf/2/items/items/anyOf/2 @@ -16424,6 +16580,58 @@ :::::::::::: +:::::::::::::: + +::::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity + +- **description**:The velocity with which the ridge is moving through time, and how long the ridge has been moving. First value is the velocity, second is the time. Default is [0 cm/yr, 0 yr] +:::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/1 +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_1 + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::::: + +::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2 +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2 + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +:::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items + +- **type**:array +- **minItems**:1 +- **maxItems**:4294967295 +- **uniqueItems**:false +- **description**: +::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/subducting velocity/oneOf/2/items/items +:open: +:name: open_features_items_oneOf_6_sections_items_temperature-models_items_oneOf_3_subducting-velocity_oneOf_2_items_items + +- **default value**:-1.0 +- **type**:number +- **description**: +:::::::::: + +::::::::::: + +:::::::::::: + + :::::::::::::: ::::::::::::::{dropdown} /features/items/oneOf/6/sections/items/temperature models/items/oneOf/3/coupling depth diff --git a/tests/gwb-dat/spherical_variable_spreading/screen-output.log b/tests/gwb-dat/spherical_variable_spreading/screen-output.log index 41fac7bf3..80602b85c 100644 --- a/tests/gwb-dat/spherical_variable_spreading/screen-output.log +++ b/tests/gwb-dat/spherical_variable_spreading/screen-output.log @@ -1,8 +1,8 @@ # x y z d g T tag -6321e3 22.5 16 50e3 1315.37 0 -6321e3 22.5 18 50e3 1258.52 0 -6321e3 22.5 20 50e3 1208.46 0 -6321e3 22.5 22 50e3 1166.44 0 +6321e3 22.5 16 50e3 450.462 0 +6321e3 22.5 18 50e3 858.44 0 +6321e3 22.5 20 50e3 1024.93 0 +6321e3 22.5 22 50e3 1119.39 0 6321e3 22.5 23 50e3 696.071 0 6321e3 22.5 25 50e3 647.504 0 6321e3 22.5 27 50e3 588.45 0 From 4484971501a64b2fd24e07cdf2f6aa498159002e Mon Sep 17 00:00:00 2001 From: danieldouglas92 Date: Wed, 28 Feb 2024 23:04:19 -0500 Subject: [PATCH 15/15] fix indent --- tests/unit_tests/unit_test_world_builder.cc | 63 +++++++++++---------- 1 file changed, 32 insertions(+), 31 deletions(-) diff --git a/tests/unit_tests/unit_test_world_builder.cc b/tests/unit_tests/unit_test_world_builder.cc index 4236bb5b7..26419bd55 100644 --- a/tests/unit_tests/unit_test_world_builder.cc +++ b/tests/unit_tests/unit_test_world_builder.cc @@ -7610,20 +7610,20 @@ TEST_CASE("WorldBuilder Utilities function: calculate_ridge_distance_and_spreadi } TEST_CASE("WorldBuilder Utilities function: calculate_ridge_distance_and_spreading spherical") -{ +{ std::vector approval_tests; const std::unique_ptr spherical_system = CoordinateSystems::Interface::create("spherical", nullptr);; // Ridge properties - const Point<2> p1a(std::array {{0.3491, -0.6981}},spherical); - const Point<2> p1b(std::array {{0.3491, 0.0}},spherical); - const Point<2> p2a(std::array {{0.1745, 0.0}},spherical); + const Point<2> p1a(std::array {{0.3491, -0.6981}},spherical); + const Point<2> p1b(std::array {{0.3491, 0.0}},spherical); + const Point<2> p2a(std::array {{0.1745, 0.0}},spherical); const Point<2> p2b(std::array {{0.1745, 0.5236}},spherical); const Point<2> p2c(std::array {{0.3491, 0.6981}},spherical); const std::vector> mid_ocean_ridges_segment_1 = {p1a, p1b}; const std::vector> mid_ocean_ridges_segment_2 = {p2a, p2b, p2c}; - + std::vector>> mid_oceanic_ridges; mid_oceanic_ridges.push_back(mid_ocean_ridges_segment_1); mid_oceanic_ridges.push_back(mid_ocean_ridges_segment_2); @@ -7636,42 +7636,43 @@ TEST_CASE("WorldBuilder Utilities function: calculate_ridge_distance_and_spreadi std::vector mid_oceanic_spreading_velocities_segment1 = {mid_oceanic_spreading_velocitie_1a, mid_oceanic_spreading_velocitie_1b}; std::vector mid_oceanic_spreading_velocities_segment2 = {mid_oceanic_spreading_velocitie_2a, mid_oceanic_spreading_velocitie_2b, - mid_oceanic_spreading_velocitie_2c}; - + mid_oceanic_spreading_velocitie_2c + }; + std::vector> mid_oceanic_spreading_velocities; mid_oceanic_spreading_velocities.push_back(mid_oceanic_spreading_velocities_segment1); mid_oceanic_spreading_velocities.push_back(mid_oceanic_spreading_velocities_segment2); - const std::vector> subducting_plate_velocities = {{0.0}}; + const std::vector> subducting_plate_velocities = {{0.0}}; const std::vector &ridge_migration_times = {0.0}; // Query point 1, the nearest point on the ridge is in the middle of p1a nd p1b Point<3> position_1(6371e3, 0.1745, -0.3491, spherical); Objects::NaturalCoordinate position_in_natural_coordinates_1 = Objects::NaturalCoordinate(Utilities::spherical_to_cartesian_coordinates(position_1.get_array()), - *spherical_system); - + *spherical_system); + const std::vector result1 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - mid_oceanic_spreading_velocities, - spherical_system, - position_in_natural_coordinates_1, - subducting_plate_velocities, - ridge_migration_times); + mid_oceanic_spreading_velocities, + spherical_system, + position_in_natural_coordinates_1, + subducting_plate_velocities, + ridge_migration_times); approval_tests.emplace_back(result1[0]); // spreading velocity at ridge approval_tests.emplace_back(result1[1]); // ridge distance approval_tests.emplace_back(result1[2]); // subducting velocity at trench approval_tests.emplace_back(result1[3]); // ridge migration time - + // Query point 2, the nearest point on the ridge is in the middle of p2b nd p2c Point<3> position_2(6371e3, 0.3491, 0.5236, spherical); Objects::NaturalCoordinate position_in_natural_coordinates_2 = Objects::NaturalCoordinate(Utilities::spherical_to_cartesian_coordinates(position_2.get_array()), - *spherical_system); - + *spherical_system); + const std::vector result2 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - mid_oceanic_spreading_velocities, - spherical_system, - position_in_natural_coordinates_2, - subducting_plate_velocities, - ridge_migration_times); + mid_oceanic_spreading_velocities, + spherical_system, + position_in_natural_coordinates_2, + subducting_plate_velocities, + ridge_migration_times); approval_tests.emplace_back(result2[0]); // spreading velocity at ridge approval_tests.emplace_back(result2[1]); // ridge distance approval_tests.emplace_back(result2[2]); // subducting velocity at trench @@ -7680,19 +7681,19 @@ TEST_CASE("WorldBuilder Utilities function: calculate_ridge_distance_and_spreadi // Query point 3, the nearest point on the ridge is p2b, the purpose is to test a negative value of longitude Point<3> position_3(6371e3, -0.1745, 0.5236, spherical); Objects::NaturalCoordinate position_in_natural_coordinates_3 = Objects::NaturalCoordinate(Utilities::spherical_to_cartesian_coordinates(position_3.get_array()), - *spherical_system); - + *spherical_system); + const std::vector result3 = Utilities::calculate_ridge_distance_and_spreading(mid_oceanic_ridges, - mid_oceanic_spreading_velocities, - spherical_system, - position_in_natural_coordinates_3, - subducting_plate_velocities, - ridge_migration_times); + mid_oceanic_spreading_velocities, + spherical_system, + position_in_natural_coordinates_3, + subducting_plate_velocities, + ridge_migration_times); approval_tests.emplace_back(result3[0]); // spreading velocity at ridge approval_tests.emplace_back(result3[1]); // ridge distance approval_tests.emplace_back(result3[2]); // subducting velocity at trench approval_tests.emplace_back(result3[3]); // ridge migration time - + ApprovalTests::Approvals::verifyAll("TITLE", approval_tests); }