When I run a dynamic simulation the yellow beam deforms in a similar shape 
as the green one. Can anyone explain why this happens?

On Thursday, 8 September 2022 at 11:55:53 UTC Iason Manolas wrote:

> I tried to set the frame of the master node of the constraint to the 
> desired position. Although this moves the node to the desired position it 
> doesn't actuate the beam in any way and the deformed state is straight.
> For the constraint I used the following code:
>
> auto constraint = chrono_types::make_shared<ChLinkMateGeneric>(); 
> ChFrame<> frame = constrainedChronoNode->Frame();
> ChVector<double> displacementVector(0.1,0,0); //The beam is on the x axis 
> and has a length of 1m  
> frame.Move(constrainedChronoNode->GetPos() + displacementVector);  //we 
> displace the initial frame using the displacement vector
> constraint->Initialize( constrainedChronoNode, truss, false,  
> constrainedChronoNode->Frame(), frame); 
> constraint->SetConstrainedCoords(true, true, true, false, false, false);
> my_system.Add(constraint);
>
> When visualizing the result what I get can be seen in the following image. 
> Blue is the initial mesh, green is the "ground-truth" and yellow is the 
> deformed state computed using chronos.
> [image: screenshot_000000.png]
>
> On Thursday, 1 September 2022 at 11:55:39 UTC Iason Manolas wrote:
>
>> Hi I want to apply external loads by setting some boundary condition a 
>> beam's end.
>> In other words I want to displace the position of a beam's end to some 
>> position, fix it there and than start the simulation. 
>> In the demo_FEA_loads_static.cpp 
>> <https://api.projectchrono.org/tutorial_demo__f_e_a_loads.html> a truss 
>> is being used to fix a node:
>> // Create also a truss
>> auto truss = chrono_types::make_shared<ChBody>();
>> truss->SetBodyFixed(true);
>> sys.Add 
>> <https://api.projectchrono.org/classchrono_1_1_ch_system.html#afb70a823cfc57dd9946007414bfd9f48>
>> (truss);
>> // Create a constraint at the end of the beam
>> auto constr_a = chrono_types::make_shared<ChLinkMateGeneric>();
>> constr_a->Initialize(mnodeA, truss, false, mnodeA->Frame(), 
>> mnodeA->Frame());
>> sys.Add 
>> <https://api.projectchrono.org/classchrono_1_1_ch_system.html#afb70a823cfc57dd9946007414bfd9f48>
>> (constr_a);
>> constr_a->SetConstrainedCoords(true, true, true, // x, y, z
>> true, true, true); // Rx, Ry, Rz
>>
>> Can I use a truss to fix a node at some position different to its 
>> reference position?
>>
>>

-- 
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/5df8f535-69fe-4d71-a15d-fc09fc5718b6n%40googlegroups.com.

Reply via email to