fini
/CLEAR,START
!#######################################################################
!#                                                                     #
!#    Schubversuch - einfacher Schub                                   #
!#    (nur Belastung)                                                  #
!#                                                                     #
!#    elastisch-plastisches Materialverhalten                          #
!#    (isotrope Verfestigung)                                          #
!#                                                                     #
!#######################################################################

/PREP7 

/title, Schubversuch - einfacher Schub (bkin)

!*************************** Modellierung ***************************
! Materialdaten
! E-Modul und Querkontraktionszahl
mp,ex,1,210000
mp,prxy,1,0.3

tb,biso
!Fliessgrenze,Tangentenmodul
tbdat,1,500,10000

et,1,plane183,,,2

! Hoehe und Breite
height = 40
width = 40

! Verschiebung der unteren Kante
shear = 1

! Anzahl der Elemente in Hoehenrichtung und radialer Richtung
h_nr_elems = 10
w_nr_elems = 10 

! Eckpunkte des Gesamtbereichs anlegen
k,1,0,0,0
k,2,width,0,0
k,3,width,height
k,4,0,height

! Definition der Flaeche
a,1,2,3,4

! Definition der Anzahl Elemente die an den Kanten verwenden werden sollen
lsel,s,loc,y,0      	! untere Kante
lsel,a,loc,y,height		! und obere kante
lesize,all,,,w_nr_elems	! Anzahl der zu verwendenen Elemente in Breitenrichtung
lsel,s,loc,x,0			! linke Kante
lsel,a,loc,x,width		! und rechte Kante
lesize,all,,,h_nr_elems	! Anzahl der zu verwendenen Elemente in Hoehenrichtung

! Vernetzen
amap,1,1,2,3,4 
fini

!
!*************************** Loesungsteil ***************************
/solu
!Lastschrittsteuerung
nlgeom,on
nsubst,25,25,25
outres,all,all  ! alle Ergebnisse abspeichern


TIME,1           	! Zeit am Ende des Lastschritts
!Festhalten untere Kante 
nsel,s,loc,y,0
d,all,ux,0
d,all,uy,0
nsel,all

!Knotenverschiebungen an den Seitenkanten
nsel,s,loc,x,0			! linke Kante
nsel,a,loc,x,width		! und rechte Kante

! Schleife ueber alle gewaehlten Knoten
*get,ncount,node,,count ! Anzahl der gewaehlten Knoten
node_nr=0
*do,i,1,ncount
    node_nr = ndnext(node_nr)              ! Nummer des Knotens
    *get, node_y, node, node_nr, LOC, Y    ! y-Koordinate des Knotens
    d,node_nr,ux,node_y/height*shear
    d,node_nr,uy,0
*enddo

!Fixierung obere Kante in y-Richtung und Verschiebung in x-Richtung
nsel,s,loc,y,height
d,all,uy
d,all,ux,shear

nsel,all

! Loesung
solve
fini

ksel,s,kp,,1        ! selektiert Keypoint 1
nslk                ! selektiert den Knoten auf dem Keypoint
node_kp1=ndnext(0)  ! speichert die Nummer des Knotens

/post26
numvar,200
ansol,2,node_kp1,S,XY,sxy_2         ! Spannung
ansol,3,node_kp1,EPEL,XY,epelxy_3   ! Elastische Verzerrung
ansol,4,node_kp1,EPPL,XY,epplxy_4   ! Plastische Verzerrung
!Berechnung der Gesamtverzerrung 
add,5,3,4

!Anzeige der Schubspannung ueber der Schubverzerrung

/axlab,x,strain
/axlab,y,stress
xvar,5  
plvar,2
fini
