Search found 8 matches

by TsarpalisD
Thu Oct 10, 2019 1:25 am
Forum: Framework
Topic: Bug in elemental loads
Replies: 0
Views: 9005

Bug in elemental loads

There is a bug in the way the elemental loads are taken into account for the construction of element's stiffness matrix. When calling getTangentStiff() the element's resisting forces in the natural system are calculated by q = kv + q0. Adding q0 to q leads to the negation of the elemental load, as it has been implictly taken into account in kv. As an example:

wipe;
model BasicBuilder -ndm 2 -ndf 3
node 1 0.0 0.0
node 2 0.0 5.0
fix 1 1 1 1
set E [expr 2.1e+8]
set A [expr 1.9e-3]
set Iz [expr 2.866e-6]
#geomTransf Corotational 1
#geomTransf Linear 1
geomTransf PDelta 1
element elasticBeamColumn 1 1 2 $A $E $Iz 1
pattern Plain 1 "Linear" {
eleLoad -ele 1 -type -beamUniform 0.0 -5.0
load 2 5.0 0.0 0.0
}
recorder Node -file displ.txt -time -node 2 -dof 1 disp
initialize
system BandGeneral
constraints Plain
numberer RCM
test NormUnbalance 1.0e-3 15 0
algorithm Newton
set nsteps 10
integrator LoadControl [expr 1./$nsteps]
analysis Static
analyze $nsteps

Using the script above the displacement of the top node is equal to 0.346149 while the correct value is 0.4373 as calculated by SAP2000 or OpenSees with equivalent nodal forces. This is due to the absence of p-delta effects as they are negated by q=kv+q0. Thus, keep in mind that elemental loads do not contribute to geometric nonlinearity of the structure.
by TsarpalisD
Wed Feb 27, 2019 3:01 am
Forum: Framework
Topic: Question about Modified Newton-Raphson and UMFpack solver
Replies: 0
Views: 7839

Question about Modified Newton-Raphson and UMFpack solver

Hello Osees community,
I have a question about the implementation of Modified Newton-Raphson algorithm (or equivalently Newton with -initial) in Osees. To be more specific in the method "int ModifiedNewton::solveCurrentStep(void)" the method theSOE->solve() is invoked which performs umfpack_di_numeric (i.e. LU decomposition) and then umfpack_di_solve (i.e. solving the system). To my understanding the purpose of mNR is do avoid the expensive LU decomposition, so isn't it an overkill to perform it in each step?
Thanks in advance,
Tsarpalis Dimitris
by TsarpalisD
Mon Nov 05, 2018 5:29 am
Forum: Framework
Topic: SVN Problem
Replies: 13
Views: 13303

Re: SVN Problem

stefanocoluzzi wrote:
> Hello,
>
> I have some problems with SVN dowloaded from github.
> 1. '..\..\..\SRC\material\nD\stressDensityModel\StressDensityModel.cpp': No
> such file or directory
> 2. '..\..\..\SRC\material\nD\stressDensityModel\StressDensityModel2D.cpp':
> No such file or directory
> 3. '..\..\..\SRC\material\nD\stressDensityModel\StressDensityModel3D.cpp':
> No such file or directory
>
> and also I have a problem with link
>
> LINK : fatal error LNK1181: is impossible to open file input 'element.lib'
>
> can someone help me? thanks

Hello stefanocoluzzi ,
1) Select Release configuration, retarget your solution and select OpenSees as starting project. Remove projects OpenSeesTk and OpenSeesPy if you don't need them.
2) Github repository uses tcl8.6. In order to use 8.5 (which I guess you have) go to OpenSees (project) -> Linker -> Input -> Additional Dependencies and change tcl86t.lib and tk86t.lib to tcl85.lib and tk85.lib respectively.
3) Github repository also misses ifconsol.lib and libmmt.lib which is used to link lapack. Get these libs and drop them to Win64/lib folder.
4) Then build your solution.
I think now it'll work.

Dimitris Tsarpalis
by TsarpalisD
Mon Mar 26, 2018 1:58 pm
Forum: Framework
Topic: Fixed some bugs on Timoshenko Element
Replies: 6
Views: 6694

Re: Fixed some bugs on Timoshenko Element

And thank you in return for writing all of these. I really appreciate your work :)
by TsarpalisD
Tue Mar 06, 2018 3:35 am
Forum: Framework
Topic: Fixed some bugs on Timoshenko Element
Replies: 6
Views: 6694

Re: Fixed some bugs on Timoshenko Element

Hello SadeghSalimian,
I found a different bug in the code. I guess it is proper to post it here:
The geometric nonlinear stiffness matrix (for p-delta) is calculated wrong at so the results are not valid (I compared with SAP2000 and they are completely different). So, i recommend NOT to use timoshenko beam with p-delta transformation until a new release. The bugs are the following:

1) In file "ElasticTimoshenkoBeam2d.cpp" in method ElasticTimoshenkoBeam2d::setUp. Where geometric stiffness matrix is calculated:
WAS: klgeo(1,2) = klgeo(2,1) = klgeo(1,5) = klgeo(5,1) = 3.0*L;
SHOULD BE: klgeo(1,2) = klgeo(2,1) = klgeo(1,5) = klgeo(5,1) = 3.0*L*b1z;

2) In file "ElasticTimoshenkoBeam2d.cpp" in method ElasticTimoshenkoBeam2d::getTangentStiff(). The p-delta effect is added in the local resisting forces by:
klTot.addMatrix(1.0, klgeo, ql(0)) , where ql(0) is the axial RESISTING force at the one end
The problem here concerns the sign of the force ql(0), which is positive for compression and negative for tension. By the definition of timoshenko p-delta matrix the signs are opposite, negative for compression
and positive for tension. To fix problem i recommend the following change in method ElasticTimoshenkoBeam2d::setUp:
-> After the calculation of klgeo add a new line "klgeo *= -1;". This fixes the problem but demands more calculations
OR
-> Change ALL the signs of klgeo matrix components.


Of course the same must be done for Timoshenko3d. I can post the whole source files with the recommended changes if you want.

Tsarpalis Dimitrios,
by TsarpalisD
Mon Feb 26, 2018 4:34 am
Forum: Framework
Topic: Fixed some bugs on Timoshenko Element
Replies: 6
Views: 6694

Fixed some bugs on Timoshenko Element

Hello Osees community,
I detected some bugs in the Timoshenko 2d and 3d. Should i post the fix here or contact with someone?

Tsarpalis Dimitrios
by TsarpalisD
Wed Jan 31, 2018 1:37 am
Forum: OpenSees.exe Users
Topic: Timoshenko beam issues
Replies: 2
Views: 2891

Re: Timoshenko beam issues

selimgunay wrote:
> When you say that you fail to get convergence, do you mean that the
> analysis is completed for different meshes but the analysis results are
> different?

Yes exactly. The cantilever is parallel to the Y axis, has length 9.28 meters and i apply the following forces at the free end: Fx = -200kN and Fy= 200 kN. The results are the following:
1) SAP2000 gives me 0.77 m horizontal displacement at the free end, which is the right answer
2) Opensees mesh 2 points gives -0.086 m
3) Opensees mesh 10 points gives 3.51 m
4) Opensees mesh 20 points gives me 1.03 m
5) Opensees mesh 120 points gives me 0.67 m

The results above are accounting PDelta transformation. In linear analysis all the results are identical.

, thank you
by TsarpalisD
Sun Jan 28, 2018 11:25 am
Forum: OpenSees.exe Users
Topic: Timoshenko beam issues
Replies: 2
Views: 2891

Timoshenko beam issues

Hello Opensees community ,
I'm trying to model a simple 2D Timoshenko cantilever with nodal X and Y Forces at the free end and PDelta transformation. I have 4 models with different mesh each: 2 points, 8 points, 20 points and 40 points. The problem is that I fail to get a convergence, each model gives me very different results. When I use linear geometric transformation the results are identical. Any thoughts?
Thank you,