Large deformation analysis in soil

A forum dedicated to users with questions regarding soil materials and elements.

forum currently locked

Moderator: Moderators

Locked
srd
Posts: 1
Joined: Wed Mar 18, 2009 8:36 am
Location: UK
Contact:

Large deformation analysis in soil

Post by srd » Wed Mar 18, 2009 8:53 am

Hi

I am modelling a soil plate with 2D quadUP elements to simulate a plain strain condition in Opensees. The loading is displacement time history at one corner node of the soil plate. the program works fine for small deformation, but it does not converge in large deformation, even if trying most of the available different solver options. Can anyone suggest how to carryout large displacement analysis of soil in OpenSees.

Is there any possibility of carrying out large displacement analysis of soil while using u-p-U formulation as well.?


Many Thanks
Suresh
PhD Student
Department of Engineering Science
University of Oxford, UK

jinlu
Posts: 47
Joined: Fri Jul 14, 2006 5:50 pm
Location: UC San Diego

Post by jinlu » Thu Apr 16, 2009 11:27 am

Try to reduce the time step.

Jinchi

avytin
Posts: 75
Joined: Fri Dec 08, 2006 5:41 pm
Location: MiT

Post by avytin » Thu Apr 16, 2009 12:40 pm

This is a script I am using on my files. It basically changes timestep and convergence criteria if convergence is not achieved, and keeps track of steps where convergence is very relaxed:



# We analyze the first loading 10s +3s
set ok 0
set currentTime 0.0
set i_extr_nl 0.0
set dt 0.005
set i_suc 0
set disp_incr 1.0e-5
set iter 30
test NormDispIncr $disp_incr $iter 2;
algorithm Newton
while {$currentTime < 13.} {
# test NormDispIncr $disp_incr $iter 2;
test EnergyIncr $disp_incr $iter 2;
set ok [analyze 1 $dt]
set currentTime [getTime]
puts "$ok dt=$dt Disp_incr=$disp_incr #Iter=$iter"
if {$ok ==0} {
set i_suc [expr $i_suc+1]
if {$disp_incr>1e-3} {
set i_extr_nl [expr $i_extr_nl+1]
}

if {$i_suc>10} {
set disp_incr [expr $disp_incr/2]
if {$disp_incr<1e-6} {
set disp_incr 1e-6
}
if {$dt<0.0005} {
set iter 30
}
}
if {$i_suc>20} {
set dt [expr $dt*2]
if {$dt>0.05} {
set dt 0.05
}

}
}
if {$ok !=0} {
# puts "Changing parameters to achieve convergence"
set dt [expr $dt/2]
if {$i_suc==0} {
set disp_incr [expr $disp_incr*2]
if {$disp_incr>0.005} {
set disp_incr 0.005
}
}
if {$dt<0.0005} {
set iter 200
}
set i_suc 0
}
}

Boris
Posts: 95
Joined: Mon Jun 14, 2004 3:57 pm
Location: UC Davis

Post by Boris » Wed Apr 29, 2009 1:29 pm

you are using small deformation assumption (with current thatold implemenation of u-p-U) so anything you do counts as small deformations. there is an old implementation of u-p finite element and material models for large deformation from us (CompGeoMech at UCD) in OpenSees repository so something along those lines should be used, however, that implementation has not been updated/maintained for a while...

small or large steps make not difference in regard to small vs. large deformations, what counts is how do you treat your deformation and stresses...



Boris Jeremic
UCD

Locked