Continue to Site

Eng-Tips is the largest engineering community on the Internet

Intelligent Work Forums for Engineering Professionals

  • Congratulations IDS on being selected by the Eng-Tips community for having the most helpful posts in the forums last week. Way to Go!

Creating spring element between two nodes 1

Status
Not open for further replies.

vidiii

Industrial
Nov 13, 2006
36
Hi,

I hope somebody can help me.

I have modelled a beam (3D), and I want to test the influence of clamping by connecting the nodes to other nodes with spring elements. By changing the K of the springs the influence of the clamping could be tested. However I have a problem making the elements.

I use the next code for creating the elements:

*GET,MAXN,NODE,,NUM,MAX
LENGTEVEER=10e-3
tllr=1
*DOWHILE,AANTALS
N,MAXN+tllr,NX(NODENUMMERS1(tllr)),NY(NODENUMMERS1(tllr)),NZ(NODENUMMERS1(tllr))+LENGTEVEER
e,NODENUMMERS1(tllr),MAXN+tllr
D,MAXN+tllr,ALL
tllr=tllr+1
*IF,tllr,EQ,NUMMER1,THEN
*EXIT
*ENDIF
*ENDDO

The problem is this line:
e,NODENUMMERS1(tllr),MAXN+tllr

It gives the next errors:

Element 2716 does not have all of its required nodes defined. The E command is aborted.

The E command cannot store element 2716, possibly because one or more nodes is not defined.

I dont understand why these errors are given, the provided nodes are valid. The element type is set to COMBIN14:

ET,3,COMBIN14
R,1,1000, , ,
TYPE, 1
MAT,
REAL, 1
ESYS, 0
SECNUM,
!*

I hope somebody has an idea.

Thanks in advance,
Vidii
 
Replies continue below

Recommended for you

Vidii,
COMBIN14 is defined as element type 3 according to the code you have profided above. However, you set the attribute pointer, TYPE to element type 1.

What's happening now is that element type one probably needs three nodes to define it (assuming it's a line element).

-Brian
 
Brain,

The problem is that there are 3 element types defined, I think.

This is the complete batch, to give you a better idea about the problem. The problem is that you cannot say what element you want to use for the e command.

I keep getting the same error as given above.


/COM

/PREP7
SMRT,OFF

! Define problem parameters

ET,1,SOLID226,1001 ! 3-D COUPLED-FIELD SOLID, PIEZO OPTION
ET,2,SOLID95 ! for the beam
ET,3,COMBIN14 ! Veer definieren

! Real constants van veer
R,3,1000, , ,

! - Material properties for PZT5H
MP,DENS,3,7800 ! PIEZOELECTRIC DENSITY
MP,PERX,3,3800 ! PERMITTIVITY (X AND Y DIRECTION)
MP,PERY,3,3800
MP,PERZ,3,3800 ! PERMITTIVITY (Z DIRECTION)
MP,EX,2,21E10 ! BEAM MODULUS OF ELASTICITY
MP,DENS,2,8400 ! BEAM DENSITY

TB,PIEZ,3,,,1 ! DEFINE PIEZO. TABLE FOR PZT5H
TBDATA,16,2.74e-10 ! d61 PIEZOELECTRIC CONSTANT
TBDATA,14,2.74e-10 ! d52 PIEZOELECTRIC CONSTANT
TBDATA,3,-320e-12 ! d13 PIEZOELECTRIC CONSTANT
TBDATA,6,-320e-12 ! d23 PIEZOELECTRIC CONSTANT
TBDATA,9,650e-12 ! d33 PIEZOELECTRIC CONSTANT

TB,ANEL,3 ! DEFINE STRUCTURAL TABLE
TBDATA,1,6.2E10,3.1E10,3.1E10 ! INPUT [C] MATRIX
TBDATA,7,6.2E10,3.1E10
TBDATA,12,5.0E10
TBDATA,16,1E10
TBDATA,19,1E10
TBDATA,21,1E10

L1 = 0e-3 ! Length of region 1
L2 = 20e-3
L3 = 50E-3 ! Length of region 3
h_b = 0.08e-3 ! Height of the beam
h_p = 0.2e-3 ! Height of the piezoelectric
b = 15e-3 ! Width

! Finite element model of the piezoelectric bimorph beam
!
local,11 ! Coord. system for lower layer: polar axis +Z
local,12,,,,,,,180 ! Coord. system for upper layer: polar axis -Z (turning around Y axis)
csys,11 ! Activate coord. system 11

! Create keypoints of the beam
K,1,0,-b/2,-h_b/2
K,2,0,-b/2,h_b/2
K,3,0,b/2,h_b/2
K,4,0,b/2,-h_b/2

K,5,L3,-b/2,-h_b/2
K,6,L3,-b/2,h_b/2
K,7,L3,b/2,h_b/2
K,8,L3,b/2,-h_b/2

a,1,2,3,4 ! Create 2 areas of the beam
a,5,6,7,8

!v,1,2,3,4,5,6,7,8 ! Create volume of the beam

! Create keypoints of the piezoelectric - Lower part
K,9,L1,-b/2,h_b/2
K,10,L1,-b/2,h_b/2+h_p
K,11,L1,b/2,h_b/2+h_p
K,12,L1,b/2,h_b/2

K,13,L2,-b/2,h_b/2
K,14,L2,-b/2,h_b/2+h_p
K,15,L2,b/2,h_b/2+h_p
K,16,L2,b/2,h_b/2

a,9,10,11,12 ! Create 2 areas of the actuator - Upper part
a,13,14,15,16


! Create keypoints of the piezoelectric - Lower part
K,17,L1,-b/2,-(h_b/2)
K,18,L1,-b/2,-(h_b/2+h_p)
K,19,L1,b/2,-(h_b/2+h_p)
K,20,L1,b/2,-h_b/2

K,21,L2,-b/2,-h_b/2
K,22,L2,-b/2,-(h_b/2+h_p)
K,23,L2,b/2,-(h_b/2+h_p)
K,24,L2,b/2,-h_b/2

a,17,18,19,20 ! Create 2 areas of the actuator - Lower part
a,21,22,23,24


v,1,2,3,4,5,6,7,8 ! Create volume of the beam
v,9,10,11,12,13,14,15,16 ! Create volume of the actuator - Upper part
v,17,18,19,20,21,22,23,24 ! Create volume of the actuator - Lower part



FLST,2,3,6,ORDE,2
FITEM,2,1
FITEM,2,-3
VGLUE,P51X


esize,2e-3 ! Specify the element length


TYPE, 2
MAT, 2
REAL,
ESYS, 0
SECNUM,
!*
MSHKEY,0
MSHAPE,1,3d
CM,_Y,VOLU
VSEL, , , , 6
CM,_Y1,VOLU
CHKMSH,'VOLU'
CMSEL,S,_Y
!*
VMESH,_Y1
!*
CMDELE,_Y
CMDELE,_Y1
CMDELE,_Y2


TYPE, 1
MAT, 3
REAL,
ESYS, 12
SECNUM,
!*
MSHKEY,0
MSHAPE,1,3d
APLOT
CM,_Y,VOLU
VSEL, , , , 4
CM,_Y1,VOLU
CHKMSH,'VOLU'
CMSEL,S,_Y
!*
VMESH,_Y1
!*
CMDELE,_Y
CMDELE,_Y1
CMDELE,_Y2

TYPE, 1
MAT, 3
REAL,
ESYS, 11
SECNUM,
!*
MSHKEY,0
MSHAPE,1,3d
VPLOT
CM,_Y,VOLU
VSEL, , , , 5
CM,_Y1,VOLU
CHKMSH,'VOLU'
CMSEL,S,_Y
!*
VMESH,_Y1
!*
CMDELE,_Y
CMDELE,_Y1
CMDELE,_Y2

*DIM,NODENUMMERS1,ARRAY,10000 ! Loop om de nodes te vinden aan de onderkant
NUMMER1=1
POSITIE=-b/2 ! Beginpositie
EINDPOSITIE=b/2
AANTALS=100
INC=0.1e-3
*DOWHILE,AANTALS
*IF,NODE(0,POSITIE,h_b/2+h_p),NE,NODE(0,POSITIE-INC,h_b/2+h_p),THEN
NODENUMMERS1(NUMMER1)=NODE(0,POSITIE,h_b/2+h_p)
NUMMER1=NUMMER1+1
*ENDIF
POSITIE=POSITIE+INC
*IF,POSITIE,GE,EINDPOSITIE,THEN
*EXIT
*ENDIF
*ENDDO

*DIM,NODENUMMERS2,ARRAY,10000 ! Loop om de nodes te vinden aan de bovenkant
NUMMER2=1
POSITIE=-b/2 ! Beginpositie
EINDPOSITIE=b/2
AANTALS=100
INC=0.1e-3
*DOWHILE,AANTALS
*IF,NODE(0,POSITIE,-h_b/2-h_p),NE,NODE(0,POSITIE-INC,-h_b/2-h_p),THEN
NODENUMMERS2(NUMMER2)=NODE(0,POSITIE,-h_b/2-h_p)
NUMMER2=NUMMER2+1
*ENDIF
POSITIE=POSITIE+INC
*IF,POSITIE,GE,EINDPOSITIE,THEN
*EXIT
*ENDIF
*ENDDO

!***

*GET,MAXN,NODE,,NUM,MAX ! MAXIMUM NODE NUMMER VINDEN EN DEFINIEREN ALS MAXN

LENGTEVEER=10e-3
tllr=1
*DOWHILE,AANTALS ! Loop om de nodes te maken met een offset van LENGTEVEER voor de ONDERKANT, en de elementen te maken tussen de nodes, en de nodes een constraint opleggen
N,MAXN+tllr,NX(NODENUMMERS1(tllr)),NY(NODENUMMERS1(tllr)),NZ(NODENUMMERS1(tllr))+LENGTEVEER
e,NODENUMMERS1(tllr),MAXN+tllr ! Een spring element maken tussen de twee knooppunten
D,MAXN+tllr,ALL ! Displacement constrain van de nodes
tllr=tllr+1
*IF,tllr,EQ,NUMMER1,THEN
*EXIT
*ENDIF
*ENDDO

*GET,MAXN,NODE,,NUM,MAX ! MAXIMUM NODE NUMMER VINDEN EN DEFINIEREN ALS MAXN -> Tweede keer, want is verhoogd door de nodes van de onderkant

LENGTEVEER=10e-3
tllr=1
*DOWHILE,AANTALS ! Loop om de nodes te maken met een offset van LENGTEVEER voor de BOVENKANT, en de elementen te maken tussen de nodes, en de nodes een constraint opleggen
N,MAXN+tllr,NX(NODENUMMERS2(tllr)),NY(NODENUMMERS2(tllr)),NZ(NODENUMMERS2(tllr))-LENGTEVEER
e,NODENUMMERS2(tllr),MAXN+tllr ! Een spring elemenent maken tussen de twee knooppunten
D,MAXN+tllr,ALL ! Displacement constrain van de nodes
tllr=tllr+1
*IF,tllr,EQ,NUMMER2,THEN
*EXIT
*ENDIF
*ENDDO


FINISH
/SOL

FLST,2,3,5,ORDE,3 ! displacement
FITEM,2,1
FITEM,2,19
FITEM,2,23
!*
/GO
DA,P51X,ALL,


FLST,2,4,5,ORDE,4
FITEM,2,12 ! lower patch buiten
FITEM,2,16 ! upper patch buiten
FITEM,2,20 ! lower patch binnen
FITEM,2,24 ! upper patch binnen
/GO
!*
DA,P51X,VOLT,0

FINISH ! SOlve
/SOL
!*
ANTYPE,2
!*
MSAVE,0
!*
MODOPT,LANB,10
EQSLV,SPAR
MXPAND,0, , ,0
LUMPM,0
PSTRES,0
!*
MODOPT,LANB,10,5,100000, ,OFF
/STATUS,SOLU
SOLVE
FINISH

I hope to hear from you soon.

Kindest regards and thanks for your help,
Vidii
 
Hi,
premise: I didn't have the time to thoroughly look at your code.
One sentence hit me: "you can not choose what element to use with the E command". Yes, you're correct as regards E, but you are not in the principle: you DO ARE able to choose the element for SUBSEQUENT operations, with the "TYPE" command.
Correct sequence is:
1- define element types: ET commands
2- set the desired elem type from those defined: TYPE command
3- create elems as needed: E command
4- repeat 2 and 3 as many times as needed.

Please note that the same matter applies about Real Constants.

Regards
 
cbrn,

Your suggestion worked fine! Thanks for your comment!

Regards
 
Status
Not open for further replies.

Part and Inventory Search

Sponsor