Add flex_bendingadr to mjModel.

PiperOrigin-RevId: 909088123
Change-Id: If062335d0aa3702c1e0b082dd9e29c3be0e76ea6
This commit is contained in:
Alessio Quaglino
2026-05-02 00:13:09 -07:00
committed by Copybara-Service
parent b2feed63e4
commit dbd451138c
10 changed files with 115 additions and 78 deletions
+3 -1
View File
@@ -704,6 +704,7 @@ struct mjModel_ {
mjtSize nflexelem; // number of elements in all flexes
mjtSize nflexelemdata; // number of element vertex ids in all flexes
mjtSize nflexstiffness; // number of stiffness parameters in all flexes
mjtSize nflexbending; // number of bending parameters in all flexes
mjtSize nflexelemedge; // number of element edge ids in all flexes
mjtSize nflexshelldata; // number of shell fragment vertex ids in all flexes
mjtSize nflexevpair; // number of element-vertex pairs in all flexes
@@ -991,6 +992,7 @@ struct mjModel_ {
int* flex_elemdataadr; // first element vertex id address (nflex x 1)
int* flex_stiffnessadr; // stiffness matrix address (nflex x 1)
int* flex_elemedgeadr; // first element edge id address (nflex x 1)
int* flex_bendingadr; // first bending data address (nflex x 1)
int* flex_shellnum; // number of shells (nflex x 1)
int* flex_shelldataadr; // first shell data address (nflex x 1)
int* flex_evpairadr; // first evpair address (nflex x 1)
@@ -1019,7 +1021,7 @@ struct mjModel_ {
mjtNum* flex_radius; // radius around primitive element (nflex x 1)
mjtNum* flex_size; // vertex bounding box half sizes in qpos0 (nflex x 3)
mjtNum* flex_stiffness; // finite element stiffness matrix (nflexstiffness x 1)
mjtNum* flex_bending; // bending stiffness (nflexedge x 17)
mjtNum* flex_bending; // bending stiffness (nflexbending x 1)
mjtNum* flex_damping; // Rayleigh's damping coefficient (nflex x 1)
mjtNum* flex_edgestiffness; // edge stiffness (nflex x 1)
mjtNum* flex_edgedamping; // edge damping (nflex x 1)
+3 -1
View File
@@ -186,6 +186,7 @@
X( nflexelem ) \
X( nflexelemdata ) \
X( nflexstiffness ) \
X( nflexbending ) \
X( nflexelemedge ) \
X( nflexshelldata ) \
X( nflexevpair ) \
@@ -467,6 +468,7 @@
X ( int, flex_elemdataadr, nflex, 1 ) \
X ( int, flex_stiffnessadr, nflex, 1 ) \
X ( int, flex_elemedgeadr, nflex, 1 ) \
X ( int, flex_bendingadr, nflex, 1 ) \
X ( int, flex_shellnum, nflex, 1 ) \
X ( int, flex_shelldataadr, nflex, 1 ) \
X ( int, flex_evpairadr, nflex, 1 ) \
@@ -495,7 +497,7 @@
X ( mjtNum, flex_radius, nflex, 1 ) \
X ( mjtNum, flex_size, nflex, 3 ) \
X ( mjtNum, flex_stiffness, nflexstiffness, 1 ) \
X ( mjtNum, flex_bending, nflexedge, 17 ) \
X ( mjtNum, flex_bending, nflexbending, 1 ) \
X ( mjtNum, flex_damping, nflex, 1 ) \
X ( mjtNum, flex_edgestiffness, nflex, 1 ) \
X ( mjtNum, flex_edgedamping, nflex, 1 ) \