rocky_boundary_deformation Last update: 17.07.2025 1#pragma once 2 3#include <string> 4#include <vector_types.h> 5 6class cuda_host; 7typedef cuda_host RockyModel; 8 9template<class Model> 10struct RockyBoundaryTriangle; 11 12struct RockyDeformableWallsModel 13{ 18 explicit RockyDeformableWallsModel(RockyModel& model); 19 25 void set_displacement_timestep(double time); 26 31 double get_displacement_timestep() const; 32 36 bool is_displacement_timestep_completed() const; 37 42 void pull_triangles_impulses_from_devices(); 43 47 void reset_triangles_impulses(); 48 55 const double3& get_triangle_impulse(const RockyBoundaryTriangle<RockyModel>& triangle) const; 56 63 void set_vertex_incremental_displacements( 64 int wall_index, int vertex_index, const double3& displacement); 65 66 RockyModel& _model; 67 const int _impulse_scalar_idx; 68 static const std::string IMPULSE_SCALAR_NAME; 69};