bug in LayeredShell
Moderators: silvia, selimgunay, Moderators
bug in LayeredShell
When I try to run the script which I have attached, Opensees 2.5 (3/14/2017) displays in the screen all the variable below. While in older version for example Opensees 2.4.6 (7/23/2015), it didn't do it. Time is much much longer than before.
PlateFromPlaneStress::getStress()
PlateFromPlaneStress::getTangent():
PlateFromPlaneStressMaterial::setStreain( )
etc...
Is that a bug from the new version or I can solve it adding something in the code?
%%%%%%%%%%%%%%%% CODE %%%%%%%%%%%
wipe;
model basic -ndm 3 -ndf 6;
#define nudos
node 1 0.0 0 0
node 2 0.2 0 0
node 3 0.5 0 0
node 4 0.8 0 0
node 5 1.0 0 0
node 6 0.0 0.2 0
node 7 0.2 0.2 0
node 8 0.5 0.2 0
node 9 0.8 0.2 0
node 10 1.0 0.2 0
node 11 0.0 0.4 0
node 12 0.2 0.4 0
node 13 0.5 0.4 0
node 14 0.8 0.4 0
node 15 1.0 0.4 0
node 16 0.0 0.6 0
node 17 0.2 0.6 0
node 18 0.5 0.6 0
node 19 0.8 0.6 0
node 20 1.0 0.6 0
node 21 0.0 0.8 0
node 22 0.2 0.8 0
node 23 0.5 0.8 0
node 24 0.8 0.8 0
node 25 1.0 0.8 0
node 26 0.0 1.0 0
node 27 0.2 1.0 0
node 28 0.5 1.0 0
node 29 0.8 1.0 0
node 30 1.0 1.0 0
node 31 0.0 1.2 0
node 32 0.2 1.2 0
node 33 0.5 1.2 0
node 34 0.8 1.2 0
node 35 1.0 1.2 0
node 36 0.0 1.4 0
node 37 0.2 1.4 0
node 38 0.5 1.4 0
node 39 0.8 1.4 0
node 40 1.0 1.4 0
node 41 0.0 1.6 0
node 42 0.2 1.6 0
node 43 0.5 1.6 0
node 44 0.8 1.6 0
node 45 1.0 1.6 0
node 46 0.0 1.8 0
node 47 0.2 1.8 0
node 48 0.5 1.8 0
node 49 0.8 1.8 0
node 50 1.0 1.8 0
node 51 0.0 2.0 0
node 52 0.2 2.0 0
node 53 0.5 2.0 0
node 54 0.8 2.0 0
node 55 1.0 2.0 0
set Outputs Outputs
# MATERIALES:
# Definición general de los materiales E=34.4GPa
set Hormigon 1;
set Acero 2; # fc epsc0 fcu epscu lambda ft epstu
# uniaxialMaterial Concrete02 $Hormigon -43e6 -0.0025 -43e6 -0.0035 0.006 4e6 0.001; # NECESITAMOS CONCRETE02 porque las curvas histereticas cambian
uniaxialMaterial Steel02 $Acero 500e6 2.e11 0.0001 18.5 0.925 0.15 0.04 1.0 0.04 1.0;
# Materiales para las placas
# Hormigón fc ft fcu epsc0 epscu epstu stc
nDMaterial PlaneStressUserMaterial 3 40 7 43e6 4e6 -30e6 -0.0025 -0.0035 0.1 0.08; # Comprobar estos números
# nDMaterial PlateFromPlaneStress $matTag $PlaneStressMatTag $OutOfPlaneShearModulus
nDMaterial PlateFromPlaneStress 4 3 14.33e9; #
# Armadura
# Armadura en dirección Y
nDMaterial PlateRebar 11 $Acero 90
# Armadura en dirección X
nDMaterial PlateRebar 12 $Acero 0
section LayeredShell 1000 11 4 0.0175 11 0.0025 4 0.0175 11 0.0025 4 0.0175 4 0.0175 4 0.0175 4 0.0175 4 0.0175 11 0.005 4 0.0175
#define element
element ShellMITC4 1 1 2 7 6 1000
element ShellMITC4 2 2 3 8 7 1000
element ShellMITC4 3 3 4 9 8 1000
element ShellMITC4 4 4 5 10 9 1000
element ShellMITC4 5 6 7 12 11 1000
element ShellMITC4 6 7 8 13 12 1000
element ShellMITC4 7 8 9 14 13 1000
element ShellMITC4 8 9 10 15 14 1000
element ShellMITC4 9 11 12 17 16 1000
element ShellMITC4 10 12 13 18 17 1000
element ShellMITC4 11 13 14 19 18 1000
element ShellMITC4 12 14 15 20 19 1000
element ShellMITC4 13 16 17 22 21 1000
element ShellMITC4 14 17 18 23 22 1000
element ShellMITC4 15 18 19 24 23 1000
element ShellMITC4 16 19 20 25 24 1000
element ShellMITC4 17 21 22 27 26 1000
element ShellMITC4 18 22 23 28 27 1000
element ShellMITC4 19 23 24 29 28 1000
element ShellMITC4 20 24 25 30 29 1000
element ShellMITC4 21 26 27 32 31 1000
element ShellMITC4 22 27 28 33 32 1000
element ShellMITC4 23 28 29 34 33 1000
element ShellMITC4 24 29 30 35 34 1000
element ShellMITC4 25 31 32 37 36 1000
element ShellMITC4 26 32 33 38 37 1000
element ShellMITC4 27 33 34 39 38 1000
element ShellMITC4 28 34 35 40 39 1000
element ShellMITC4 29 36 37 42 41 1000
element ShellMITC4 30 37 38 43 42 1000
element ShellMITC4 31 38 39 44 43 1000
element ShellMITC4 32 39 40 45 44 1000
element ShellMITC4 33 41 42 47 46 1000
element ShellMITC4 34 42 43 48 47 1000
element ShellMITC4 35 43 44 49 48 1000
element ShellMITC4 36 44 45 50 49 1000
element ShellMITC4 37 46 47 52 51 1000
element ShellMITC4 38 47 48 53 52 1000
element ShellMITC4 39 48 49 54 53 1000
element ShellMITC4 40 49 50 55 54 1000
fix 1 1 1 1 1 1 1
fix 2 1 1 1 1 1 1
fix 3 1 1 1 1 1 1
fix 4 1 1 1 1 1 1
fix 5 1 1 1 1 1 1
file mkdir $Outputs;
recorder Node -file $Outputs/disp53.txt -time -node 53 -dof 3 disp
recorder Node -file $Outputs/nodesdisp.out -time -nodeRange 1 55 -dof 1 2 3 4 5 6 disp
file mkdir Strain
file mkdir Stress
foreach ele {3} {
foreach gp {1} {
recorder Element -file Strain/strain1$ele$gp.txt -time -ele $ele material $gp fiber 1 strains
recorder Element -file Stress/stress1$ele$gp.txt -time -ele $ele material $gp fiber 1 stresses
recorder Element -file Strain/strain2$ele$gp.txt -time -ele $ele material $gp fiber 2 strains
recorder Element -file Stress/stress2$ele$gp.txt -time -ele $ele material $gp fiber 2 stresses
recorder Element -file Strain/strain4$ele$gp.txt -time -ele $ele material $gp fiber 4 strains
recorder Element -file Stress/stress4$ele$gp.txt -time -ele $ele material $gp fiber 4 stresses
recorder Element -file Strain/strain13$ele$gp.txt -time -ele $ele material $gp fiber 10 strains
recorder Element -file Stress/stress13$ele$gp.txt -time -ele $ele material $gp fiber 10 stresses
recorder Element -file Strain/strain14$ele$gp.txt -time -ele $ele material $gp fiber 11 strains
recorder Element -file Stress/stress14$ele$gp.txt -time -ele $ele material $gp fiber 11 stresses
}
}
# Desplazamientos
set disp 1;
pattern Plain 1 Linear {
sp 51 3 $disp
sp 52 3 $disp
sp 53 3 $disp
sp 54 3 $disp
sp 55 3 $disp
}
# Propieades del cálculo
set maxU 100.0e-3; set dU 0.2e-3
constraints Penalty 1.0e14 1.0e14
# constraints Plain
numberer RCM
system BandGeneral
test NormDispIncr 1.0e-8 50 2
# algorithm Newton
algorithm KrylovNewton
integrator DisplacementControl 53 3 $dU
analysis Static
set itern 0
set ok 0
set currentDisp 0.0
while {$ok == 0 && $currentDisp < $maxU} {
set ok [analyze 1]
if {$ok != 0} {
test NormDispIncr 1.0e-6 400 1
algorithm ModifiedNewton –initial
set ok [analyze 1]
test NormDispIncr 1.0e-8 50 2
algorithm Newton
}
set itern [expr $itern+1]
puts Paso:$itern
set currentDisp [nodeDisp 53 3]
}
PlateFromPlaneStress::getStress()
PlateFromPlaneStress::getTangent():
PlateFromPlaneStressMaterial::setStreain( )
etc...
Is that a bug from the new version or I can solve it adding something in the code?
%%%%%%%%%%%%%%%% CODE %%%%%%%%%%%
wipe;
model basic -ndm 3 -ndf 6;
#define nudos
node 1 0.0 0 0
node 2 0.2 0 0
node 3 0.5 0 0
node 4 0.8 0 0
node 5 1.0 0 0
node 6 0.0 0.2 0
node 7 0.2 0.2 0
node 8 0.5 0.2 0
node 9 0.8 0.2 0
node 10 1.0 0.2 0
node 11 0.0 0.4 0
node 12 0.2 0.4 0
node 13 0.5 0.4 0
node 14 0.8 0.4 0
node 15 1.0 0.4 0
node 16 0.0 0.6 0
node 17 0.2 0.6 0
node 18 0.5 0.6 0
node 19 0.8 0.6 0
node 20 1.0 0.6 0
node 21 0.0 0.8 0
node 22 0.2 0.8 0
node 23 0.5 0.8 0
node 24 0.8 0.8 0
node 25 1.0 0.8 0
node 26 0.0 1.0 0
node 27 0.2 1.0 0
node 28 0.5 1.0 0
node 29 0.8 1.0 0
node 30 1.0 1.0 0
node 31 0.0 1.2 0
node 32 0.2 1.2 0
node 33 0.5 1.2 0
node 34 0.8 1.2 0
node 35 1.0 1.2 0
node 36 0.0 1.4 0
node 37 0.2 1.4 0
node 38 0.5 1.4 0
node 39 0.8 1.4 0
node 40 1.0 1.4 0
node 41 0.0 1.6 0
node 42 0.2 1.6 0
node 43 0.5 1.6 0
node 44 0.8 1.6 0
node 45 1.0 1.6 0
node 46 0.0 1.8 0
node 47 0.2 1.8 0
node 48 0.5 1.8 0
node 49 0.8 1.8 0
node 50 1.0 1.8 0
node 51 0.0 2.0 0
node 52 0.2 2.0 0
node 53 0.5 2.0 0
node 54 0.8 2.0 0
node 55 1.0 2.0 0
set Outputs Outputs
# MATERIALES:
# Definición general de los materiales E=34.4GPa
set Hormigon 1;
set Acero 2; # fc epsc0 fcu epscu lambda ft epstu
# uniaxialMaterial Concrete02 $Hormigon -43e6 -0.0025 -43e6 -0.0035 0.006 4e6 0.001; # NECESITAMOS CONCRETE02 porque las curvas histereticas cambian
uniaxialMaterial Steel02 $Acero 500e6 2.e11 0.0001 18.5 0.925 0.15 0.04 1.0 0.04 1.0;
# Materiales para las placas
# Hormigón fc ft fcu epsc0 epscu epstu stc
nDMaterial PlaneStressUserMaterial 3 40 7 43e6 4e6 -30e6 -0.0025 -0.0035 0.1 0.08; # Comprobar estos números
# nDMaterial PlateFromPlaneStress $matTag $PlaneStressMatTag $OutOfPlaneShearModulus
nDMaterial PlateFromPlaneStress 4 3 14.33e9; #
# Armadura
# Armadura en dirección Y
nDMaterial PlateRebar 11 $Acero 90
# Armadura en dirección X
nDMaterial PlateRebar 12 $Acero 0
section LayeredShell 1000 11 4 0.0175 11 0.0025 4 0.0175 11 0.0025 4 0.0175 4 0.0175 4 0.0175 4 0.0175 4 0.0175 11 0.005 4 0.0175
#define element
element ShellMITC4 1 1 2 7 6 1000
element ShellMITC4 2 2 3 8 7 1000
element ShellMITC4 3 3 4 9 8 1000
element ShellMITC4 4 4 5 10 9 1000
element ShellMITC4 5 6 7 12 11 1000
element ShellMITC4 6 7 8 13 12 1000
element ShellMITC4 7 8 9 14 13 1000
element ShellMITC4 8 9 10 15 14 1000
element ShellMITC4 9 11 12 17 16 1000
element ShellMITC4 10 12 13 18 17 1000
element ShellMITC4 11 13 14 19 18 1000
element ShellMITC4 12 14 15 20 19 1000
element ShellMITC4 13 16 17 22 21 1000
element ShellMITC4 14 17 18 23 22 1000
element ShellMITC4 15 18 19 24 23 1000
element ShellMITC4 16 19 20 25 24 1000
element ShellMITC4 17 21 22 27 26 1000
element ShellMITC4 18 22 23 28 27 1000
element ShellMITC4 19 23 24 29 28 1000
element ShellMITC4 20 24 25 30 29 1000
element ShellMITC4 21 26 27 32 31 1000
element ShellMITC4 22 27 28 33 32 1000
element ShellMITC4 23 28 29 34 33 1000
element ShellMITC4 24 29 30 35 34 1000
element ShellMITC4 25 31 32 37 36 1000
element ShellMITC4 26 32 33 38 37 1000
element ShellMITC4 27 33 34 39 38 1000
element ShellMITC4 28 34 35 40 39 1000
element ShellMITC4 29 36 37 42 41 1000
element ShellMITC4 30 37 38 43 42 1000
element ShellMITC4 31 38 39 44 43 1000
element ShellMITC4 32 39 40 45 44 1000
element ShellMITC4 33 41 42 47 46 1000
element ShellMITC4 34 42 43 48 47 1000
element ShellMITC4 35 43 44 49 48 1000
element ShellMITC4 36 44 45 50 49 1000
element ShellMITC4 37 46 47 52 51 1000
element ShellMITC4 38 47 48 53 52 1000
element ShellMITC4 39 48 49 54 53 1000
element ShellMITC4 40 49 50 55 54 1000
fix 1 1 1 1 1 1 1
fix 2 1 1 1 1 1 1
fix 3 1 1 1 1 1 1
fix 4 1 1 1 1 1 1
fix 5 1 1 1 1 1 1
file mkdir $Outputs;
recorder Node -file $Outputs/disp53.txt -time -node 53 -dof 3 disp
recorder Node -file $Outputs/nodesdisp.out -time -nodeRange 1 55 -dof 1 2 3 4 5 6 disp
file mkdir Strain
file mkdir Stress
foreach ele {3} {
foreach gp {1} {
recorder Element -file Strain/strain1$ele$gp.txt -time -ele $ele material $gp fiber 1 strains
recorder Element -file Stress/stress1$ele$gp.txt -time -ele $ele material $gp fiber 1 stresses
recorder Element -file Strain/strain2$ele$gp.txt -time -ele $ele material $gp fiber 2 strains
recorder Element -file Stress/stress2$ele$gp.txt -time -ele $ele material $gp fiber 2 stresses
recorder Element -file Strain/strain4$ele$gp.txt -time -ele $ele material $gp fiber 4 strains
recorder Element -file Stress/stress4$ele$gp.txt -time -ele $ele material $gp fiber 4 stresses
recorder Element -file Strain/strain13$ele$gp.txt -time -ele $ele material $gp fiber 10 strains
recorder Element -file Stress/stress13$ele$gp.txt -time -ele $ele material $gp fiber 10 stresses
recorder Element -file Strain/strain14$ele$gp.txt -time -ele $ele material $gp fiber 11 strains
recorder Element -file Stress/stress14$ele$gp.txt -time -ele $ele material $gp fiber 11 stresses
}
}
# Desplazamientos
set disp 1;
pattern Plain 1 Linear {
sp 51 3 $disp
sp 52 3 $disp
sp 53 3 $disp
sp 54 3 $disp
sp 55 3 $disp
}
# Propieades del cálculo
set maxU 100.0e-3; set dU 0.2e-3
constraints Penalty 1.0e14 1.0e14
# constraints Plain
numberer RCM
system BandGeneral
test NormDispIncr 1.0e-8 50 2
# algorithm Newton
algorithm KrylovNewton
integrator DisplacementControl 53 3 $dU
analysis Static
set itern 0
set ok 0
set currentDisp 0.0
while {$ok == 0 && $currentDisp < $maxU} {
set ok [analyze 1]
if {$ok != 0} {
test NormDispIncr 1.0e-6 400 1
algorithm ModifiedNewton –initial
set ok [analyze 1]
test NormDispIncr 1.0e-8 50 2
algorithm Newton
}
set itern [expr $itern+1]
puts Paso:$itern
set currentDisp [nodeDisp 53 3]
}
Re: bug in LayeredShell
Could someone check it out, please?
-
- Posts: 108
- Joined: Mon Sep 16, 2013 1:14 pm
- Location: University of Auckland
Re: bug in LayeredShell
Hi, I copied and pasted your code into a txt file and run the model in my desktop PC. There was no message as you say, it also took less than 15 seconds for the code to run up to 500 steps. I'm using the version 2.5.0 rev. 6477 of the windows executable file that was available in the webpage, now the .exe file in the webpage is v2.5.0 rev.6536 I think.
https://drive.google.com/drive/folders/ ... sp=sharing
https://drive.google.com/drive/folders/ ... sp=sharing
Last edited by EricsonEncinaZ on Wed Aug 16, 2017 2:21 pm, edited 1 time in total.
Re: bug in LayeredShell
OK, thank you very much! In this case the problem is on Opensees version 2.5.0 rev 6536. I've just downloaded again and I get the same messages.
-
- Posts: 3
- Joined: Thu Dec 14, 2017 12:42 am
- Location: South China Universty of Technology
Re: bug in LayeredShell
Hey, dgale, I've got the same problem as you, have you solved it?
Re: bug in LayeredShell
Yes I have. Send me an email and I'll pass you the version Opensees 2.5.0 rev.6477
david.gale@upm.es
david.gale@upm.es
Re: bug in LayeredShell
Hello,
I have run into this same issue using OpenSees64 Rev6536 and the layered shell element... I am wondering if anyone has Rev6477 they can pass along.
It would be greatly appreciated.
Josh
I have run into this same issue using OpenSees64 Rev6536 and the layered shell element... I am wondering if anyone has Rev6477 they can pass along.
It would be greatly appreciated.
Josh
Re: bug in LayeredShell
Josh, send me an email
Re: bug in LayeredShell
try this .. debug messages should be gone:
http://opensees.berkeley.edu/OpenSees/c ... 64.exe.zip
http://opensees.berkeley.edu/OpenSees/c ... 64.exe.zip
Re: bug in LayeredShell
Thanks fmk... do you happen to have in 32-bit version? I'm using with 32-bit OpenFresco at the moment.
Many thanks in advance!
Many thanks in advance!
Re: bug in LayeredShell
Nvm Frank... I'll use 64-bit OpenFresco... it seems to work very well.
Thanks very much again.
Josh
Thanks very much again.
Josh
Re: bug in LayeredShell
fmk wrote:
> try this .. debug messages should be gone:
> http://opensees.berkeley.edu/OpenSees/c ... 64.exe.zip
Hello
I had the same problem, i.e., using layeredshell would flood the prompt, and using said link completely solved it.
Thank you very much.
Leonardo
> try this .. debug messages should be gone:
> http://opensees.berkeley.edu/OpenSees/c ... 64.exe.zip
Hello
I had the same problem, i.e., using layeredshell would flood the prompt, and using said link completely solved it.
Thank you very much.
Leonardo
Leonardo
Universidade Federal de Sao Carlos
Universidade Federal de Sao Carlos
Re: bug in LayeredShell
I had the same problem and using the version shared by fmk it works fine. I had to download the ActiveTcl 8.5. Moreover, even using the 3.0.0a (rev6679) 64-bit version I still get same issue using Damage2p material in solid elements and wondering if some version avoids this bugs.
It would be great to have a stable version of the program and the corresponding tcl version where both layeredShell and damage2p material work.
Regards,
Fabio
It would be great to have a stable version of the program and the corresponding tcl version where both layeredShell and damage2p material work.
Regards,
Fabio