|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
- fini
- /clear
- ! blade.inp is a supplement to Chapter 11 (ANSYS/LS-DYNA Seminar)
- /title, Implicit-to-Explicit Sequential Solution
- ! Stress Initialization to Prescribed Geometry followed by Full Transient
- ! This is a simplified attempt to analyze the scenario when a
- ! jet engine fan blade snaps off and tears the engine apart
- /uis,abort,off ! do not display annoying status boxes...
- ! ===========================================================================
- /filnam,implicit ! implicit (ANSYS) portion of analysis
- /prep7
- /view,,1,2,3
- /ang,1
- ! Note: Only SHELL181 elements are used in this example, but other element
- ! types (e.g., SOLID185) can also be used. However, there is a set of
- ! companion element types that exist, which make the transition from/to
- ! implicit to/from explicit "automatic" (etchg used instead of emodif):
- !
- ! LINK8 ===> LINK160
- ! BEAM4 ===> BEAM161
- ! SHELL181 <===> SHELL163 (181 accepts 163 stresses & thicknesses)
- ! SOLID185 <===> SOLID164 (185 accepts 164 stresses at 5.6)
- ! COMBIN14 ===> COMBI165
- ! MASS21 ===> MASS166
- ! LINK10 ===> LINK167
- !
- ! The LS-DYNA link and beam elements require a third node, which is
- ! not always used in ANSYS, so these elements must be checked by the
- ! user. Also, SHELL181 accepts thickness and stress information from
- ! LS-DYNA. Prior to 5.6, it accepted the thicknesses and element
- ! force and moment information from SHELL163, which was then used to
- ! calculate the stresses that were already determined in LS-DYNA.
- ! If more than 5 integration points are used through the thickness
- ! (trapezoidal rule), then the old method of force and moment data
- ! is used. SOLID185 should have KEYOPT(2)=1 (i.e., uniform reduced
- ! integration with hourglass control) to be consistent with SOLID164.
- ! It's best to think in terms of "parts" when the model is being created,
- ! because ANSYS/LS-DYNA requires part definitions for many of its commands
- ! (EDLOAD, EDCGEN, EDREAD, etc). By issuing the EDPART,Create command,
- ! ANSYS/LS-DYNA automatically creates parts that are based on unique sets
- ! of MAT, REAL, and TYPE numbers used by elements (listed sequentially via
- ! the ELIST command). These part lists can be updated after the model has
- ! been changed (EDPART,Update) or listed (EDPART,List) at any time before
- ! the SOLVE or EDWRITE,ANSYS/TAURUS/both commands are issued, at which
- ! point, the part list is set.
- et,1,SHELL181 ! implicit shell elements for engine hub
- et,2,SHELL181 ! implicit shell elements for blade platform
- et,3,SHELL181 ! implicit shell elements for engine blades
- et,4,SHELL181 ! implicit shell elements for engine duct
- /eshape,1 ! show element thicknesses (to check model)
- r,1,0.50 ! thickness of hub (flywheel shape)
- r,2,0.50 ! fan blade platform thickness
- r,3,0.25 ! fan blade average thickness
- r,4,0.75 ! engine duct (housing) thickness
- ! Note: Only small strains using linear material properties are allowed
- ! in the implicit analysis, since only the resulting displacements
- ! will be used in the stress initialization portion (first part)
- ! of the explicit analysis. In other words, no path dependent
- ! features are allowed in the implicit run.
- mp, ex,1,30.0e6 ! modulus of hub (psi)
- mp,dens,1,7.33e-4 ! mass density of hub (lbf-sec^2/in^4)
- mp,nuxy,1,0.30 ! Poisson's ratio (unitless)
- mp, ex,2,30.0e6 ! modulus of blade platform (psi)
- mp,dens,2,7.33e-4 ! mass density of blade platform (lbf-sec^2/in^4)
- mp,nuxy,2,0.30 ! Poisson's ratio (unitless)
- mp, ex,3,30.0e6 ! modulus of blade (psi)
- mp,dens,3,7.33e-4 ! mass density of blade (lbf-sec^2/in^4)
- mp,nuxy,3,0.30 ! Poisson's ratio (unitless)
- mp, ex,4,30.0e6 ! modulus of engine duct (psi)
- mp,dens,4,7.33e-4 ! density of duct not used (lbf-sec^2/in^4)
- mp,nuxy,4,0.30 ! Poisson's ratio (unitless)
- k,1,0,0,0 ! create simplified jet engine geometry
- k,2,0,0,1
- l,1,2 ! line #1 used to generate geometry...
- lgen,2,1,,,5,0,0 ! inner radius of hub (line #2)
- ldiv,2 ! divide line #2 in half into lines #2 and #3
- lgen,2,2,3,,5,0,0 ! outer radius of hub (lines #4 and #5)
- l,5,7 ! line #6 represents web of hub
- local,11,1,0,0,0.5,0,0,90.0 ! local cs to twist blade
- lgen,2, 4, 5,,0, -5.0,1.0 ! root of blade (break point at radius = 11")
- lgen,2, 7, 8,,0,-12.5,1.5 ! create lines to "skin" blade...
- lgen,2, 9,10,,0,-12.5,1.5
- lgen,2,11,12,,0,-12.5,1.5
- lgen,2,13,14,,0,-12.5,1.5
- lgen,2,15,16,,0,-12.5,1.5
- lgen,2,17,18,,0,-12.5,1.5
- lsel,s,line,,7,20,1
- lesize,all,,,2 ! specify esize = 0.25" for blades ("axially")
- lsel,all
- csys,0 ! return to global coordinate system
- kmodif,1,0,0,-2 ! move end-points of origin line for duct
- kmodif,2,0,0, 3 ! duct axial length will be 5" for model...
- lgen,2, 1,,,21,0,0 ! line #21 at 21" radius (engine duct or housing)
- a,6,7,10,9 ! platform at base of blade (area #1)
- a,7,8,11,10 ! area #2
- askin,7,9,11,13,15,17,19 ! twisting shape of blade "skinned" (area #3)
- askin,8,10,12,14,16,18,20 ! area #4
- csys,1 ! use global cylindrical cs to copy blades, etc.
- lesize,2,,,1 ! specify esize = 0.5" at inner hub radius
- lesize,3,,,1 ! specify esize = 0.5" at inner hub radius
- arotat,2,3,,,,,1,2,360,4 ! ring at hub inner radius (areas #5 - #12)
- lesize,6,,,5 ! specify esize = 1" along hub web (radially)
- arotat, 6,,,,,,1,2,360,4 ! hub disk (web) section (areas #13 - #16)
- lesize,4,,,2 ! specify esize = 0.25" at hub outer radius
- lesize,5,,,2 ! specify esize = 0.25" at hub outer radius
- arotat,4,5,,,,,1,2,360,4 ! ring at hub outer radius (areas #17 - #24)
- lesize,21,,,5 ! specify esize = 1" for engine duct (axially)
- arotat,21,,,,,,1,2,360,4 ! engine housing (duct) ring (areas #25 - #28)
- nummrg,kp
- type,1 ! engine hub element type
- real,1 ! constant hub thickness used throughout
- mat,1 ! engine hub material
- esize,,9 ! coarse mesh used (hub will become rigid body)
- amesh,5,12 ! mesh hub inner ring
- amesh,13,16 ! mesh hub web (disk)
- amesh,17,24 ! mesh hub outer ring
- type,2 ! blade platform element type
- real,2 ! platform thicker than adjoining blade
- mat,2 ! blade platform material
- esize,,4 ! 4 divisions along length of blade platform
- amesh,1,2 ! mesh platform at base of blade (copy below)
- type,3 ! fan blade element type
- real,3 ! constant fan blade thickness used (I know ...)
- mat,3 ! fan blade material (only linear properties here)
- esize,,36 ! 36 divisions (esize = 0.25") along blade length
- amesh,3,4 ! mesh fan blade (copy below)
- agen,36,1,4,1, 0,10.0,0 ! generate all of the engine blades and platforms
- type,4 ! engine duct element type (not used here...)
- real,4 ! constant thickness cylindrical shape used
- mat,4 ! engine duct material
- esize,,9 ! use 36 element divisions circumferentially
- amesh,25,28 ! mesh the engine housing (duct or shroud)
- nummrg,kp
- csys,0 ! return to global coordinate system
- nummrg,node ! clean up any "loose ends" in the model...
- nummrg,kp
- ! Note: No nodes or elements may be introduced for the first time in the
- ! explicit portion of an implicit-to-explicit sequential analysis.
- ! All entities must be pre-defined in the implicit portion of the run,
- ! even if they are not used there. All of these elements in question
- ! must have all of the degrees of freedom (DOFs) of all of their
- ! nodes set to zero in the implicit run. Then, in the explicit run,
- ! the elements are converted to the companion type and the DOFs from
- ! the implicit run are deleted (and re-specified, as necessary). In
- ! this example, the pressure loading on the engine duct (100 psi?) is
- ! a second order effect and, is therefore, not modeled in the implicit
- ! part of the sequential solution. Another example would be the
- ! bird in a bird-strike analysis, which would probably best be modeled
- ! with SOLID185 elements and then completely restrained here. In the
- ! explicit run, the SOLID185 elements would be converted to SOLID164
- ! elements and the DOFs would be deleted. The corresponding keyopts,
- ! real constants, material properties, boundary conditions, and
- ! loading would still need to be defined in the explicit analysis...
- esel,s,type,,4 ! engine housing elements
- nsle ! engine housing nodes
- d,all,all,0.0 ! fix all DOFs of unused entities
- nsel,all
- esel,all
- fini
- /solu
- antype,static
- ! outpr,all,all
- outres,all,all
- omega,,,420.0 ! engine spin load (420.0 rad/sec = 4,010.7 rpm)
- esel,s,type,,1 ! engine hub elements (rigid body in explicit run)
- nsle ! engine hub nodes (not concerned with hub)
- d,all,all,0.0 ! fix engine hub to allow loading of fan blades
- nsel,all
- esel,all
- save
- eplot
- solve ! default solver used, but others OK, too
- fini
- /post1
- set,last
- /eshape,0
- /graphics,full
- /dscale,,1
- shell,bottom ! results for bottom layer of shell element
- plnsol,s,eqv ! blade maximum von Mises stress at root
- shell,top ! results for top layer of shell element
- plnsol,s,eqv ! blade maximum von Mises stress at root
- fini
- ! ===========================================================================
- /filnam,explicit ! explicit (LS-DYNA) portion of analysis
- /prep7
- etchg,ite ! convert SHELL181 elements to SHELL163 elements
- ! default settings automatically specified...
- ! Note: The EMODIF command may be used instead of the ETCHG command, but
- ! the latter is more automatic for "companion" elements (refer to the
- ! ANSYS/LS-DYNA User's Guide - Release 5.6 for details). In both cases,
- ! the shell element thicknesses, etc. still need to be re-specified...
- r,1,,3,0.50 ! hub (3 int. pts. through 0.5" thickness)
- r,2,,3,0.50 ! blade platform (same as above)
- r,3,,5,0.25 ! blades (5 int. pts. through 0.25" thickness)
- r,4,,5,0.75 ! duct (5 int. pts. through 0.75" thickness)
- edint,5 ! saves data for all 5 layers (blades and duct)
- esel,s,type,,1 ! hub elements
- nsle ! hub nodes
- ddele,all,all ! remove imposed displacements from implicit run
- edmp,rigid,1,7,4 ! convert hub to rigid body (only rotz = free)
- nsel,all
- esel,all
- ! Simulate one blade snapping off by unselecting a row of elements along the
- ! root. Alternatively, areas #1 and #2 could have been cleared (ACLEAR,1,2).
- asel,s,area,,1,2 ! blade platform areas of blade #1
- esla ! elements of first platform
- nsle ! corresponding nodes
- nsel,r,loc,x,10.7,11.1 ! reselect nodes of outer row of elements
- esln,s,1 ! select elements with all nodes active
- cm,esnap,elem ! row of elements to be unselected before SOLVE
- asel,s,area,,3,4 ! blade #1 (projectile)
- esla ! elements of first blade
- cm,eproj,elem ! element component for EDHIST command
- nsle ! nodes of first blade
- cm,nproj,node ! node component for EDHIST command
- asel,all
- nsel,all
- esel,all
- ! Use nonlinear (plastic) material properties for the fan blades:
- ! Note: First convert engineering stress versus engineering strain data
- ! into true stress versus true (hencky) strain data. Then subtract
- ! off the elastic true strain from the total true strain to find
- ! the plastic true strain, which is used with the total true stress
- ! in LS-DYNA *MAT_PIECEWISE_LINEAR_PLASTICITY material model #24.
- !--------------------------------------------------------------------------
- ! Stress-Strain Data used with Piecewise Linear Plasticity (Power Law 8):
- !--------------------------------------------------------------------------
- ! Total Total Total Total Elastic Plastic
- ! Stress/ Eng. Eng. True True True True
- ! Strain Stress Strain Stress Strain Strain Strain
- ! Point (psi) (in/in) (psi) (in/in) (in/in) (in/in)
- !--------------------------------------------------------------------------
- ! 1 0 0.0000 0 0.0000 0.0000 0.0000
- ! 2 60,000 0.0020 60,120 0.0020 0.0020 0.0000
- ! 3 77,500 0.0325 80,020 0.0320 0.0027 0.0293
- ! 4 83,300 0.0835 90,260 0.0802 0.0030 0.0772
- ! 5 98,000 0.1735 115,000 0.1600 0.0038 0.1562
- ! 6 98,300 0.2710 124,940 0.2398 0.0042 0.2356
- ! 7 76,400 1.2255 170,030 0.8000 0.0057 0.7943
- !--------------------------------------------------------------------------
- ! Note: The first point on the stress/strain curve is NOT entered.
- ! Start with the second point (where ordinate = yield stress).
- ! Also, please follow the limits imposed by the *SET command.
- *dim,strn,,6 ! define array for effective plastic true strain data
- *dim,strs,,6 ! define array for effective total true stress data
- strn(1)= 0.0, 0.0293, 0.0772, 0.1562, 0.2356, 0.7943 ! strain (in/in)
- strs(1)= 60120., 80020., 90260., 115000., 124940., 170030. ! stress (psi)
- edcurve,add,1,strn,strs ! load curve #1: abscissa=strain & ordinate=stress
- tb,plaw,3,,,8 ! specify power law #8 for material (MAT) #3
- tbdata,1,60120.0 ! yield stress, psi
- tbdata,3,0.30 ! set material failure at 30% true plastic strain
- tbdata,6,1 ! use load curve #1 for stress/strain data
- ! Note: Strain rate effects can be included by specifying the necessary
- ! strain rate parameters and the load curve defining the strain rate
- ! scaling effect on the yield stress. Please refer to Chapter 7
- ! (Material Models) of the ANSYS/LS-DYNA User's Guide for a complete
- ! description of this material model.
- ! Use nonlinear (plastic) material properties for the engine duct, to
- tb,plaw,4,,,8 ! specify power law #8 for material #4 (duct)
- tbdata,1,60120.0 ! yield stress, psi
- tbdata,3,0.50 ! set material failure at 50% true plastic strain
- tbdat,6,1 ! use load curve #1 for stress/strain data
- esel,s,type,,4 ! engine duct elements
- nsle ! engine duct nodes
- ddele,all,all ! remove imposed displacements from implicit run
- nsel,all
- esel,all
- ! Allow GUI to recognize batch-defined material input
- mpmod,1,7
- mpmod,2,1
- mpmod,3,28
- mpmod,4,28
- edcgen,ag ! automatic general contact
- fini
- /solu
复制代码 |
|