sorted. I should use IGA beams.
在2024年7月17日星期三 UTC+1 01:13:41<Jay Jay> 写道:
> 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
>
>
>
--
You received this message because you are subscribed to the Google Groups
"ProjectChrono" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/projectchrono/8e28a37f-091e-40f8-b0df-4805c3392b9an%40googlegroups.com.