blob: 6b937bebfd64a07dc61365684052fd6540751f0c [file] [log] [blame]
//#####################################################################
// Copyright 2004, Ron Fedkiw, Geoffrey Irving.
// This file is part of PhysBAM whose distribution is governed by the license contained in the accompanying file PHYSBAM_COPYRIGHT.txt.
//#####################################################################
// Class SOLIDS_PARAMETERS
//#####################################################################
#ifndef __SOLIDS_PARAMETERS__
#define __SOLIDS_PARAMETERS__
#include "../Matrices_And_Vectors/VECTOR_3D.h"
namespace PhysBAM
{
template <class T>
class SOLIDS_PARAMETERS
{
public:
T cfl;
T gravity;
VECTOR_3D<T> gravity_direction;
int cg_iterations;
T cg_tolerance;
bool semi_implicit, asynchronous;
bool use_constant_mass;
bool perform_collision_body_collisions;
T collision_tolerance;
bool collide_with_interior;
bool enforce_tangential_collision_velocity;
bool fracture;
bool write_static_variables_every_frame;
bool synchronize_multiple_objects;
int preroll_frames;
SOLIDS_PARAMETERS()
: cfl ( (T).9), gravity ( (T) 9.8), gravity_direction (0, -1, 0),
cg_iterations (200), cg_tolerance ( (T) 1e-3), semi_implicit (false), asynchronous (false), use_constant_mass (false),
perform_collision_body_collisions (true), collision_tolerance ( (T) 1e-6), collide_with_interior (false), enforce_tangential_collision_velocity (false),
fracture (false), write_static_variables_every_frame (false), synchronize_multiple_objects (false), preroll_frames (0)
{}
virtual ~SOLIDS_PARAMETERS()
{}
//#####################################################################
};
}
#endif