changing derived-class function prototype
Moderators: silvia, selimgunay, Moderators
changing derived-class function prototype
Hello ,
I trying to write a coordinate tranformation function for my beam-column element. I need to access to some parts of the element stiffness matrix in function getBasicIncrDisp(). I tried to define a function getBasicIncrDisp(const Matrix &SS, const Matrix &SR) in my derived class but it did not work since it is not compatible to the function protoype of getBasicIncrDisp() in CrdTransf.h. Does anybody have an idea how can I make this working without changing my derived-class funtion protype ?
Thanks.
Cenk
I trying to write a coordinate tranformation function for my beam-column element. I need to access to some parts of the element stiffness matrix in function getBasicIncrDisp(). I tried to define a function getBasicIncrDisp(const Matrix &SS, const Matrix &SR) in my derived class but it did not work since it is not compatible to the function protoype of getBasicIncrDisp() in CrdTransf.h. Does anybody have an idea how can I make this working without changing my derived-class funtion protype ?
Thanks.
Cenk
Cenk Tort
Department of Civil Engineering
University of Minnesota
Department of Civil Engineering
University of Minnesota
changing derived-class function prototype
Hello Frank,
thanks for your response. I need to have stiffness matrix in my coordinate becuse I am using a second order polynomial for my axial degrees of freedom in the basic system which creates additional degrees of freedom at the midlength of my element. When I transform my natural(basic) stiffness matrix into local coordinate, I am condensing those degrees of freedom since I do not need them in the golbal system. However, when I am transforming my local displacements into my natural coordinates, I need to back calculate those degrees of freedom by undoing the condensation which requires the basic stiffness matrix.
I do also need to change prototype for the function getInitialGlobalStiffMatrix(const Matrix &KB). In that case, I need to access to the internal forces in the basic system to account for geomertic nonlinear effects (external stiffness) in transforming basic stiffness matrix to the local system.
Do you have any recommendatoon if I need to have new function protoype ?
thanks .
cenk
thanks for your response. I need to have stiffness matrix in my coordinate becuse I am using a second order polynomial for my axial degrees of freedom in the basic system which creates additional degrees of freedom at the midlength of my element. When I transform my natural(basic) stiffness matrix into local coordinate, I am condensing those degrees of freedom since I do not need them in the golbal system. However, when I am transforming my local displacements into my natural coordinates, I need to back calculate those degrees of freedom by undoing the condensation which requires the basic stiffness matrix.
I do also need to change prototype for the function getInitialGlobalStiffMatrix(const Matrix &KB). In that case, I need to access to the internal forces in the basic system to account for geomertic nonlinear effects (external stiffness) in transforming basic stiffness matrix to the local system.
Do you have any recommendatoon if I need to have new function protoype ?
thanks .
cenk
Cenk Tort
Department of Civil Engineering
University of Minnesota
Department of Civil Engineering
University of Minnesota
changing derived-class function prototype
Hello Frank,
I never do transient analysis with my element before. So I am not sure about the consequences of static condensation in transient analysis. can you tell me what you mean with (A+B)^-1 != A^-1 + B^-1 ?
Thanks.
I never do transient analysis with my element before. So I am not sure about the consequences of static condensation in transient analysis. can you tell me what you mean with (A+B)^-1 != A^-1 + B^-1 ?
Thanks.
Cenk Tort
Department of Civil Engineering
University of Minnesota
Department of Civil Engineering
University of Minnesota
has to do with the element's contribution to tangent matrix in transient .. say ele contribution
is aK + bM .. if doing static condensation what we want added:
(aK+bM)ee - (aK+bM)ei*(aK+bM)ii^-1*(aK+bM)ie
because we would add K and M independently and therefore have to do static condensation twice we would get:
a(Kee+KeiKii^-1Kie) + b(Mee+MeiMii^-1Mie)
which is not the same for the reason of my last post!
is aK + bM .. if doing static condensation what we want added:
(aK+bM)ee - (aK+bM)ei*(aK+bM)ii^-1*(aK+bM)ie
because we would add K and M independently and therefore have to do static condensation twice we would get:
a(Kee+KeiKii^-1Kie) + b(Mee+MeiMii^-1Mie)
which is not the same for the reason of my last post!
changing derived-class function prototype
Hello Frank,
Thanks for your comment. I wonder whether this problem still holds if I do not use a consistent stiffness matrix. I am planning to assemble the mass matrix from live loads and dead loads assigned to joint degrees of freedom.
Thanks again.
Thanks for your comment. I wonder whether this problem still holds if I do not use a consistent stiffness matrix. I am planning to assemble the mass matrix from live loads and dead loads assigned to joint degrees of freedom.
Thanks again.
Cenk Tort
Department of Civil Engineering
University of Minnesota
Department of Civil Engineering
University of Minnesota
changing derived-class function prototype
Hello Frank,
Thanks a lot for your helpful comments. I think if I do not associte any mass with my middle degrees of freedom, static condensation does not create a problem in dynamic analysis. I am using those degree of freedoms only to improve my stiffness formulation. In that case
(aK + bM)^-1 = aK^-1 + bM^-1 if (Mei, Mii, Mie are zero )
Regarding my question on how to access the stiffness matrix in coordinate transformation functions, now I am doing my coordinate transformation inside the element interface.
Thanks.
Cenk
Thanks a lot for your helpful comments. I think if I do not associte any mass with my middle degrees of freedom, static condensation does not create a problem in dynamic analysis. I am using those degree of freedoms only to improve my stiffness formulation. In that case
(aK + bM)^-1 = aK^-1 + bM^-1 if (Mei, Mii, Mie are zero )
Regarding my question on how to access the stiffness matrix in coordinate transformation functions, now I am doing my coordinate transformation inside the element interface.
Thanks.
Cenk
Cenk Tort
Department of Civil Engineering
University of Minnesota
Department of Civil Engineering
University of Minnesota