Nonlinear spring with TABLED1 definition

Altair Forum User
Altair Forum User
Altair Employee
edited October 2020 in Community Q&A

Hi all,

 

I have problems with the definition of a nonlinear spring (PBUSHT) in combination with a TABLED1 entry.

In the attached example I expect a deflection of 2.2 mm, but I got 30 mm. It looks like only the first entry in TABLED1 is used and this stiffness will be extrapolated.

What is wrong in the input?

I suppose that I have to enter deflection as x and force as y in the TABLED1 entry.

 

Andreas

 

$$
$$ Optistruct Input Deck Generated by HyperMesh Version  : 14.0.120.28
$$ Generated using HyperMesh-Optistruct Template Version : 14.0.120
$$
$$   Template:  optistruct
$
UNITS = SI
$
$HMNAME LOADSTEP               1'lc-01'       9
$
SUBCASE       1
  LABEL lc-01
ANALYSIS NLSTAT
  SPC =        1
  LOAD =        2
  NLPARM =        4
$
BEGIN BULK
GRID           2        50.0    0.0     0.0     
GRID           6        50.0    -50.0   0.0     
CBUSH          7       4       2       6     0.0     0.0     1.0        
$
$HMMOVE        4
$              7
$HMNAME COMP                   4'bush_2' 
$HWCOLOR COMP                  4      21
$
$
$HMDPRP 
$              7
$

$
$HMNAME PROP                   4'bush2' 2
$HWCOLOR PROP                  4      11
PBUSH          4       K0.0     RIGID   RIGID   RIGID   RIGID   RIGID   
PBUSHT         4      KN       5                                        
SPC            1       2  123456     0.0
SPC            1       6  13456      0.0
$                                                                               
$HMNAME LOADCOL                5'force_disp'
$HWCOLOR LOADCOL               5      21
TABLED1        5  LINEAR  LINEAR
+            0.0     0.0     1.0  1000.0     2.0 10000.0     3.0   1.0+8
+       ENDT    
$HMNAME LOADCOL                4'nlparm'
$HWCOLOR LOADCOL               4      25
$$
NLPARM         4      20                       1      25        
$
FORCE          2       6       01.0     0.0     30000.0 0.0     
ENDDATA
 

Answers

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited November 2016

    Hi @AR67

     

    We will look into this and will update to you soon. 

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited November 2016

    hI @AR67

     

    Can you check the units of your input values?

     

    I reduced the force by 10 times and the max. displacement is 3 units.

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited November 2016

    Hi Prakash,

     

    I use SI units (to, mm, s, N, MPa). If you reduce the input force to 3000 N then the displacement should be 1.22 mm, not 3 mm. Again, only the first entry of the TABLED1 entry seems to be used (1000 N for 1.0 mm deflection) and then extrapolated (3000 N -> 3.0 mm deflection). But the second TABLED1 entry (10000 N for 2.0 mm deflection) is ignored.

     

     

     

    Andreas

     

    <?xml version="1.0" encoding="UTF-8"?>fd.png

     

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited November 2016

    Hi @AR67

     

    OK, after looking at the table which you posted, here are my comments:

     

    From help: There can be discontinues in the table expect the starting two points and ending two points. I think this is what making the difference.

     

    On top of that, no warning or error message will be issued if there is anything wrong in the table. 

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited November 2016

    Hi Prakash,

     

    not sure what you mean ... I know that TABLED1 allows discontinuities but my entries are continuously (although not continuously differentiable, but this is not possible if you are just entering points).

     

    Is there any other way to calculated a nonlinear spring with the shown force/deflection?

     

    Or how do I have to change the input that the calculation works as I intended?

     

    Andreas

    <?xml version="1.0" encoding="UTF-8"?>fd.png

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited November 2016

    @AR67

     

    I will check and update to you soon.

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited November 2016

    The first two and last two points on the curve should be continuous.

     

    In the table the last last two points are not,  

    <?xml version="1.0" encoding="UTF-8"?>disctabd1.PNG

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited November 2016

    Of course the points are continous! Discontinuity means that you have two values at the y axis for the same value on the x axis, so that the curve jumps up or down at the same value of x, compare with the picture from help three posts above!

     

    According to the help at the points you marked discontinuities were even allowed.

     

    Andreas

  • Altair Forum User
    Altair Forum User
    Altair Employee
    edited August 2017

    hi, all

     

    I had same problem, like AR67. I have solved this problem a little while ago.

    AR67, please make your table value all minus like below

     

    TABLED1        5  LINEAR  LINEAR
    +            0.0     0.0     -1.0  -1000.0     -2.0  -10000.0     -3.0   -1.0+8
    +       ENDT

     

    Because of your load direction, the spring is compressed.

     

    ----------------------------   attaching .FEM ------------------------------------

     

    $$
    $$ Optistruct Input Deck Generated by HyperMesh Version  : 14.0.112-HWDesktop
    $$ Generated using HyperMesh-Optistruct Template Version : 14.0.110
    $$
    $$   Template:  optistruct
    $$
    $$
    $$ optistruct
    $
    $$------------------------------------------------------------------------------$
    $$                      Case Control Cards                                      $
    $$------------------------------------------------------------------------------$
    $
    $HMNAME LOADSTEP               1'test'       9
    $
    SUBCASE       1
      LABEL test
    ANALYSIS NLSTAT
      SPC =        1
      LOAD =        2
      NLPARM =        4
    $$--------------------------------------------------------------
    $$ HYPERMESH TAGS
    $$--------------------------------------------------------------
    $$BEGIN TAGS
    $$END TAGS
    $
    BEGIN BULK
    $$
    $$  Stacking Information for Ply-Based Composite Definition
    $$

     

    $$
    $$  GRID Data
    $$
    GRID           2        50.0    0.0     0.0                            
    GRID           6        50.0    -50.0   0.0                            
    $$
    $$  CBUSH Elements
    $$
    CBUSH          7       4       2       6     0.0     0.0     1.0       
    $
    $HMMOVE        4
    $              7
    $$
    $$------------------------------------------------------------------------------$
    $$    HyperMesh name and color information for generic components               $
    $$------------------------------------------------------------------------------$
    $HMNAME COMP                   4'bush_2'
    $HWCOLOR COMP                  4      21
    $
    $
    $HMDPRP
    $              7
    $

    $
    $$
    $$  PBUSH Data
    $$
    $HMNAME PROP                   4'bush2' 2
    $HWCOLOR PROP                  4      11
    PBUSH          4       K0.0     RIGID   RIGID   RIGID   RIGID   RIGID  
    PBUSHT         4      KN       5                                       
    $$
    $$------------------------------------------------------------------------------$
    $$ HyperMesh Commands for loadcollectors name and color information $
    $$------------------------------------------------------------------------------$
    $HMNAME LOADCOL                2'1'
    $HWCOLOR LOADCOL               2      11
    $$
    $HMNAME LOADCOL                1'2'
    $HWCOLOR LOADCOL               1      11
    $$
    $$
    $$  SPC Data
    $$
    SPC            1       2  123456     0.0
    SPC            1       6  13456      0.0
    $$
    $$  TABLED1 cards
    $$
    $HMNAME LOADCOL                5'force_disp'
    $HWCOLOR LOADCOL               5      21
    TABLED1        5  LINEAR  LINEAR
    +            0.0     0.0    -1.0 -1000.0    -2.0-10000.0    -3.0  -1.0+6
    +       ENDT   
    $$
    $$
    $$  NLPARM cards
    $$
    $HMNAME LOADCOL                4'nlparm'
    $HWCOLOR LOADCOL               4      25
    $$
    NLPARM         4      20                              25       
    $
    $$
    $$  FORCE Data
    $$
    FORCE          2       6       01.0     0.0     990000.00.0    
    ENDDATA
    $$

  • mpvnaresh
    mpvnaresh Altair Community Member
    edited March 2020

    Hi

     

    I am getting the same problem .

    I have to model a bush for which stiffness is available for two directions.For the third direction, load and deflection are available as in the picture 1

    I am modeling it with PBUSH--> PBUSHT--> TKNID . Two stiffness values i am giving in PBUSH(Direction X, Direction Y) . and deflection vs force data i am giving in TKNID via TABLED1 (for Direction Z) .

    But the stiffness in Z PBUSH_HM.JPG.62c2cb2df6075f6bb1fc0f32324d7965.JPGDirection is being calculating by only the first two values in the TableD1 and tak

    ing that stiffness as a constant stiffness .

    can any one please  help in this. The solution i am doing is Direct Transient (DTRAN) 

    <?xml version="1.0" encoding="UTF-8"?>PBUSHT.JPG