Euler Beam Torus Deforming Without External Forces

23 views
Skip to first unread message

Jay Jay

unread,
Jul 16, 2024, 8:13:41 PM (11 days ago) Jul 16
to ProjectChrono

Hi everyone,

I'm currently working on a simulation using Project Chrono, and I'm trying to model a torus using Euler beams. However, I'm encountering an issue where the torus starts to deform even when there are no external forces. Part of the code is following:

double radius = 0.5;
int num_elements = 64;
double angle_increment = 2 * 3.14 / num_elements;

for (int i = 0; i < num_elements; ++i) {
    double angle = i * angle_increment;
    double x = radius * cos(angle);
    double y = radius * sin(angle);
    double z = offz;
    ChVector3d p(x, y, z);

    auto collarNode = std::make_shared<chrono::fea::ChNodeFEAxyzrot>(ChFrame<>(p));
    mesh_->AddNode(collarNode);
    collar_nodes_->push_back(collarNode);

}
   
collarElementNum_ = collar_nodes_->size();
for (size_t i = 0; i < collar_nodes_->size(); ++i) {
    int ID1 = i;
    int ID2 = i + 1;
    if (i == collarElementNum_ - 1)
    ID2 = 0;
    auto node0 = (*collar_nodes_)[ID1];
    auto node1 = (*collar_nodes_)[ID2];
    auto msection = chrono_types::make_shared<ChBeamSectionEulerAdvanced>();
    msection->SetDensity(collarDensity_);
    msection->SetYoungModulus(collarE_);
    msection->SetShearModulusFromPoisson(0.3);
    msection->SetRayleighDamping(0.000);
    msection->SetAsCircularSection(collarDia_);
    auto element = chrono_types::make_shared<ChElementBeamEuler>();
    element->SetNodes(node0, node1);
    element->SetSection(msection);
    mesh_->AddElement(element);
}

  Does anyone have any suggestions? Thanks very much!


Regards,

Jay   


Jay Jay

unread,
Jul 17, 2024, 12:31:58 PM (10 days ago) Jul 17
to ProjectChrono
sorted. I should use IGA beams.
Reply all
Reply to author
Forward
0 new messages