How to release moment at the ends of a rigid link?

Forum for OpenSees users to post questions, comments, etc. on the use of the OpenSees interpreter, OpenSees.exe

Moderators: silvia, selimgunay, Moderators

Post Reply
Shubhang
Posts: 9
Joined: Mon Sep 07, 2020 5:59 pm

How to release moment at the ends of a rigid link?

Post by Shubhang » Fri Jul 02, 2021 7:06 pm

Hi,
I am getting the following error when i run the transient analysis for a structure consisting of rigid links that are joined by hinges.

BandGenLinLapackSolver::solve() -factorization failed, matrix singular U(i,i) = 0, i= 1.

For making hinge i have used equalDOF command by introducing additional nodes at same location. But i think this might not work efficiently with rigid links. Please help me with this problem.

Thanks in advance.

mhscott
Posts: 868
Joined: Tue Jul 06, 2004 3:38 pm
Location: Corvallis, Oregon USA
Contact:

Re: How to release moment at the ends of a rigid link?

Post by mhscott » Sat Jul 03, 2021 7:17 am

You don't have all the DOFs properly restrained. Probably missing something in the equalDOF command.

Shubhang
Posts: 9
Joined: Mon Sep 07, 2020 5:59 pm

Re: How to release moment at the ends of a rigid link?

Post by Shubhang » Sun Jul 04, 2021 5:25 am

mhscott wrote:
Sat Jul 03, 2021 7:17 am
You don't have all the DOFs properly restrained. Probably missing something in the equalDOF command.
Dear Sir,

Thanks for the reply. I am attaching the desired code herewith. I wanted to make the connection of rigid link with the Beam structure as hinged i.e. nodes 2 and 3 with the rigid links as can be seen from the code below. Can you please tell me the mistake that i am doing so that i can modify my code and run it without error.?

Thanks in advance

############

wipe
model BasicBuilder -ndm 2 -ndf 3

set L 12
set W 10081.96
set E 200000000000
set A 0.0684
set Ac 0.3846
set G 79300000000

file mkdir modes

#Nodes#

node 1 0 0
node 2 [expr $L/4] 0
node 3 [expr $L/2] 0
node 4 [expr $L*3/4] 0
node 5 [expr $L] 0

#Mass#

mass 1 1260.245 1260.245 0
mass 2 2520.49 2520.49 0
mass 3 2520.49 2520.49 0
mass 4 2520.49 2520.49 0
mass 5 1260.245 1260.245 0

#Boundary conditions#

fix 1 1 1 0
fix 5 0 1 0


geomTransf Linear 1

section Elastic 1 $E $A 0.048

#Elements#

element elasticBeamColumn 1 1 2 $A $E 0.048 1
element elasticBeamColumn 2 2 3 $A $E 0.048 1
element elasticBeamColumn 3 3 4 $A $E 0.048 1
element elasticBeamColumn 4 4 5 $A $E 0.048 1


#Eigen value analysis#
set numModes 3
for { set k 1 } { $k <= $numModes } { incr k } {
recorder Node -file [format "modes/mode%i.out" $k] -nodeRange 1 5 -dof 2 "eigen $k"
}

set lambda [eigen $numModes]
record


set omega {}
set f {}
set T {}
set pi 3.141593

foreach lam $lambda {
lappend omega [expr sqrt($lam)]
lappend f [expr sqrt($lam)/(2*$pi)]
lappend T [expr (2*$pi)/sqrt($lam)]

}

puts "periods are $T"
set period "modes/Periods.txt"
set Periods [open $period "w"]
foreach t $T {
puts $Periods " $t"
}
close $Periods

wipeAnalysis;
puts "eigen value analysis is done"

rayleigh 1.3793 0.00029 0.0 0.0 ;


#Additional nodes#

node 6 [expr $L/4] 0
node 7 [expr $L/4] -0.3
node 16 [expr $L/2] 0
node 17 [expr $L/2] -0.3

#Hinges#

equalDOF 2 6 1 2
equalDOF 3 16 1 2


#Connections#

rigidLink beam 6 7
rigidLink beam 16 17
rigidLink beam 7 17


#Recorders#

recorder Node -file "disp3.DAT" -time -node 3 -dof 1 2 disp


##Loads##

#impulse
timeSeries Rectangular 3 1.99 2
pattern Plain 1 3 {
load 3 0 -1912950 0
}


#Time History Analysis
set NInput 2000;
set ndt 2;
set dtIn 0.01;
set dtAnalysis [expr $dtIn];
set NAnalysis [expr $NInput];


constraints Transformation ;
numberer RCM ;
system BandGeneral ;
test EnergyIncr 1e-7 25 0 ;
algorithm Newton ;
integrator Newmark 0.5 0.25 ;
analysis Transient ;

analyze $NAnalysis $dtAnalysis ;

puts "its working"


After running the code, i am getting the following error.

periods are 0.027128227866453587 0.011972208263442218 0.006829565050604229
eigen value analysis is done
WARNING BandGenLinLapackSolver::solve() -factorization failed, matrix singular U(i,i) = 0, i= 1
WARNING NewtonRaphson::solveCurrentStep() -the LinearSysOfEqn failed in solve()
DirectIntegrationAnalysis::analyze() - the Algorithm failed at time 0.01
OpenSees > analyze failed, returned: -3 error flag
its working

mhscott
Posts: 868
Joined: Tue Jul 06, 2004 3:38 pm
Location: Corvallis, Oregon USA
Contact:

Re: How to release moment at the ends of a rigid link?

Post by mhscott » Sun Jul 04, 2021 6:19 am

Tcl performs integer division.

set L 12
puts [expr $L/4]

will produce zero. Your nodes are all at zero coordinate. So, either set L 12.0 or divide by 4.0

Shubhang
Posts: 9
Joined: Mon Sep 07, 2020 5:59 pm

Re: How to release moment at the ends of a rigid link?

Post by Shubhang » Sun Jul 04, 2021 6:00 pm

mhscott wrote:
Sun Jul 04, 2021 6:19 am
Tcl performs integer division.

set L 12
puts [expr $L/4]

will produce zero. Your nodes are all at zero coordinate. So, either set L 12.0 or divide by 4.0
That is not the problem sir, I have checked. My eigenvalue analysis and simple transient analysis without the rigid links run successfully, so I think there is some error with a hinged connection of the rigid link with the structure. Please verify the connections.

selimgunay
Posts: 913
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: How to release moment at the ends of a rigid link?

Post by selimgunay » Mon Jul 05, 2021 4:28 pm

Are you sure that it is not an unstable system when you have hinges at the member ends?

Shubhang
Posts: 9
Joined: Mon Sep 07, 2020 5:59 pm

Re: How to release moment at the ends of a rigid link?

Post by Shubhang » Mon Jul 05, 2021 6:25 pm

selimgunay wrote:
Mon Jul 05, 2021 4:28 pm
Are you sure that it is not an unstable system when you have hinges at the member ends?
Yes, sir, I have to attach an additional system having rigid links that are free to rotate at the joint to the main beam through nodes 2 and 3. I even want a rigid link that is connected to another rigid link but the node joining both links should rotate. I am really stuck as EqualDOF for 2 nodes at the same location to create a hinge is not working. Please suggest some other alternative.

Thanks in advance

selimgunay
Posts: 913
Joined: Mon Sep 09, 2013 8:50 pm
Location: University of California, Berkeley

Re: How to release moment at the ends of a rigid link?

Post by selimgunay » Mon Jul 19, 2021 10:08 pm

You can replace one of the equalDOF with a zerolength element that has quite large stiffness except the rotational DOF.

Post Reply