Skip to main content

Rocky Solver SDK 2025 R2

rocky_contact_data_recorder_api

Last update: 16.07.2025
1// (C) 2024 ANSYS, Inc. Unauthorized use, distribution, or duplication is prohibited.
2#pragma once
3
4#include <rocky20/model/data_recorders.h>
5
6// forward declarations
7class cuda_host;
8typedef cuda_host RockyModel;
9
19{
22 enum RecordingScope
23 {
24 rsParticleParticle,
25 rsParticleTriangle,
26 rsBoth
27 };
28
29 enum ContactScalar
30 {
31 csDuration = (int)ContactDataRecorder::tDuration,
32 csImpactVelocityNormal = (int)ContactDataRecorder::tNormalImpactVelocity,
33 csImpactVelocityTangential = (int)ContactDataRecorder::tTangentialImpactVelocity,
34 csWorkDissipation = (int)ContactDataRecorder::tDissipationWork,
35 csWorkImpact = (int)ContactDataRecorder::tImpactWork,
36 csWorkShear = (int)ContactDataRecorder::tShearWork,
37 csEnergyTransfer = (int)ContactDataRecorder::tNearWork,
38 csImpulseNormal = (int)ContactDataRecorder::tNormalImpulse,
39 csImpulseTangential = (int)ContactDataRecorder::tTangentialImpulse,
40 csImpulseAdhesion = (int)ContactDataRecorder::tAdhesiveImpulse,
41 csImpulseX = (int)ContactDataRecorder::tImpulseX,
42 csImpulseY = (int)ContactDataRecorder::tImpulseY,
43 csImpulseZ = (int)ContactDataRecorder::tImpulseZ,
44 csSlindingDistance = (int)ContactDataRecorder::tSlidingDistance,
45
46 csSize
47 };
48
49 IRockyContactDataRecorder(RockyModel& rocky_model);
50
51private:
52
53 RockyModel& rocky_model;
54
57public:
58
96 void enable_contact_scalar(ContactScalar scalar, RecordingScope scope);
97
109 int get_contact_scalar_index(ContactScalar scalar, RecordingScope scope);
110
111};
Definition rocky_contact_data_recorder_api.h:19
void enable_contact_scalar(ContactScalar scalar, RecordingScope scope)
Definition rocky_contact_data_recorder_api.cpp:10
int get_contact_scalar_index(ContactScalar scalar, RecordingScope scope)
Definition rocky_contact_data_recorder_api.cpp:36

Connect with Ansys