- ANSYS와 관련된 여러가지 내용을 정리하기위한 글이며
특정 목적을 지닌 강좌내용은 아닙니다.
- 질의 응답은 받지 않습니다.
- 자세한 내용은 Google, ANSYS.NET, XANSYS에서
질문이나 검색하시는 것을 추천드립니다.
- 주된 내용은 해석을 진행하면서 발생하는 Error의 처리
혹은 해석을 간편하게하기 위한 APDL 명령어입니다.
특정 목적을 지닌 강좌내용은 아닙니다.
- 질의 응답은 받지 않습니다.
- 자세한 내용은 Google, ANSYS.NET, XANSYS에서
질문이나 검색하시는 것을 추천드립니다.
- 주된 내용은 해석을 진행하면서 발생하는 Error의 처리
혹은 해석을 간편하게하기 위한 APDL 명령어입니다.
수렴이란?
유한요소해석역시 수치해석 원론적으로는 행렬계산이기때문에 수학에서 말하는 수렴과 정의는 똑같다.
수치해석에서 수렴의 정의
수치해석에서 계산단계가 증가할 때마다 수치해석값이 정확한 하나의 해로 향하는 것을 말한다.
아래의 식을 계속 계산할 경우 x가 어떠한 특정해를 가진다면 수렴한다는 것이고
계산을 여러번 반복하여도 x가 어떤 특정해를 가지지 않는다면 발산하는 것이다.
***.실제의 수치해석에서의 수렴은 위의 식으로 표현되지 않으나 쉬운 이해를 위해 위의 식을 적었다.
아래의 식을 계속 계산할 경우 x가 어떠한 특정해를 가진다면 수렴한다는 것이고
계산을 여러번 반복하여도 x가 어떤 특정해를 가지지 않는다면 발산하는 것이다.
***.실제의 수치해석에서의 수렴은 위의 식으로 표현되지 않으나 쉬운 이해를 위해 위의 식을 적었다.
유한요소해석에서의 수렴
유한요소 해석이란 수치해석의 일종이고 대상물에 외력이 작용할 때 대상물의 변형을 관찰하는 것이 주된 내용이다.
수학적으로는 해가 나오지 않더라도 해를 구하기 위한 다양한 시도에서 새로운 문제나
테마를 얻는 과정이 될 수있기에 문제가 주어진 즉시 해가 나오지 않더라도
공학적인 문제에서 답이 나오지 않는 것과 비교하여 크게 중요하지는 않다.
다만 실제 현장에서 유한요소해석을 적용할 경우 해가 나오지 않는다는 것은 비용과 직결되는 문제이다.
아래는 ANSYS내에서 수렴하는 것의 일례이다.
여러번의 계산을 통해 결과값이 수렴하는지 여부를 나타내주고 있으며
특정한 값에 수렴하지 않는다면 발산한다.
ANSYS내에서의 수렴
여기서는 비선형해석 中 접촉을 고려한 수렴에 관해서만 주로 이야기할 것이다.
1. Normal Contact Stiffness
접촉조건 부여시 ANSYS에서는 접촉대상물 사이에 자동적으로 Spring Stiffness를 부여한다. ANSYS 자체적으로는 0.01에서 탄성계수(Young's modulus)의 100배까지를 제시하고 있다. 이 값에 따라서 수렴여부가 결정되므로 잘 설정하는 것이 중요하다.
많은 침투가 발생하는 경우 → 값을 증가시킨다.
반복계산(iteration)이 증가하는 경우 → 값을 감소시킨다.
2. Contact Algorithm
알고리즘은 여러가지가 있으나 크게 4개로 나눌 수 있다.
1) Augmented Lagrange
→ 기본 알고리즘으로 선택되어 있으며 약간의 침투는 허용한다.
2) Penalty
→
3) Lagrange
→
4) MPC
→
3.
Tip #1. Creating LINEAR Bonded or No Separation/Sliding Contact Between Parts.
You can use ANSYS surface to surface contact elements to approximate linear bonded or frictionless sliding contact between parts in an assembly. Technically, this is a nonlinear analysis because ANSYS by default will try to do equilibrium iterations in which it updates the locations of the contact element nodes. In most cases, however, the solution to the first equilibrium iteration is sufficiently accurate. DRD recommends that you verify that one equilibrium iteration is sufficient by activating large deflections, allowing ANSYS to perform equilibrium iterations until it attains a converged solution, and then comparing the converged nonlinear solution to the solution with just one equilibrium iteration. You should also do standard solution checks such as checking reactions and using hand calculations to approximate deflections and nominal stresses.
The first step is to define the contact pair using surface to surface contact elements such as the 170/174 combination for 3D and the 169/172 combination for 2D. You will set the following key options:
keyoption 2 to 1 (Turns off Lagrange Multiplier Method and uses Penalty Method only)
keyoption 8 to 1 (Detects and ignore spurious contact)
keyoption 9 to 1 (Excludes the physical gap or interference. Also exclude the CNOF offset)
keyoption 12 to 5 (Activates bonded always contact)
keyoption 12 to 4 (Activates no separation always contact)
You need to set the number of equilibrium iterations to 1 so that ANSYS will treat the solution as linear. You will first need to turn off solution control and then explicitly set the number of equilibrium iterations to 1. There should be no other nonlinear effects in the model such as plasticity or large deflections. An example input file for setting the bonded always contact options and forcing a single equilibrium iteration using the Contact 174 element defined as element type 5 is provided below.
solcontrol,off
neqit,1
keyopt,5,2,1
keyopt,5,8,1
keyopt,5,9,1
keyopt,5,12,5
Back to Top of Page
Tip #2. Documenting your Model and Saving it in the Database
It is not 'Notepad', but ANSYS does allow you to save string parameters that can be used for documentation purposes (among other things). For example, if you would like to save with the database that this particular model is for the 'Maximum Torque load condition with 40 degree traction surface', you can put this in a string that can be examined at a later time. The commands for doing so are listed below:
*dim,document,string,64,5
document(1,1) = 'Maximum Torque load condition with 40 degree traction surface'
You can see the contents of the variable 'document' by typing: *stat,document
Currently the length of the string is limited to 64 characters but can have as many as 100 of these parameters (only 5 is defined in the example above).
Back to Top of Page
Tip #3 Using CONTAC174 in a Thermal Analysis
Guidelines for Using the Thermal Contact Capability in the Contact 174 Elements
(Note: This procedure is obsolete starting with ANSYS 5.7)
1. Using the contact wizard, you must generate the model with solid structural elements such as Solid45's, 92's, or 95's. You will later convert these elements to elements with heat conduction capabilities. Be sure to view the Optional Settings in the contact wizard. This is necessary for you to view and edit the contact element type key options and real constants after you leave the Contact Wizard. If you don't view the option settings in the contact wizard, all contact real constants will be reported as zero by the RLIST command after you leave the contact wizard.
2. After you generate the contact elements, set key option 1 to 1 for the Contact 174 elements. This turns on the thermal capability in the Contact 174 elements.
At this point you should turn on ANSYS beta capabilities in the GUI using the "keyw,beta,1 command". This command will make key option 1 for the contact elements available in the key option dialog box. To set key option 1 to 1 use the GUI path:
Preprocessor > Element Type > Add/Edit/Delete > Pick on the correct element type and select ‘Options’. Then select the DOF set UX, UY, UZ, TEMP with key option 1 in the dialog box. This is equivalent to setting key option 1 to 1.
3. Set the contact conductance for the Contact 174 elements. It is real constant 14. This constant has units of heat/(time*temp*area). A very large value implies no thermal resistance across the interface. Also, if there is a physical gap between the contact surfaces, you must specify a CNOF real constant whose value is at least equal to the gap size. CNOF is real constant 10.
To set these real constants use the GUI path:
Preprocessor > Real Constants > Add/Edit/Delete > Select the correct real constant set to edit and select ‘Edit’, Select the correct element type and select [OK]. Then set the real constants in the dialog box.
4. If you want to do a thermal only problem, convert the structural elements to thermal elements that match the shape and number of nodes of the existing structural elements. For example, SOLID92's should be converted to Solid 87's. Solid 95's should be converted to Solid 90's.
The GUI path to do this is:
Preprocessor > Element Type > Switch Element Type > Select ‘Structural to Thermal’ in the dialog box and then select [OK].
5. If you are doing a thermal only problem, you just constrain the UX, UY, and UZ degrees of freedom of the Target and Contact elements. Select these elements, select the nodes attached to them, and then set the displacements of these nodes to zero easily do this.
6. If you are doing a coupled thermal-structural problem, you can use the Solid 98 element. This element has displacement and temperature degrees of freedom (in addition to voltage and magnetic potential), so you can solve a thermal-structural problem in a single solution. In this case you should generate the model with Solid 98's and then use the directions provided in this note. You will not, however, need to convert the Solid 98 elements to a thermal element type.
7. If your model is linear, then set the equilibrium iterations to 1 and turn solution control off. This is necessary because ANSYS is currently programmed to do a nonlinear analysis when Contact 174 element types are in the model, even though the model can be linear. Limited testing at DRD has indicated that ANSYS will only do 1 equilibrium iteration when there the contact surfaces are coincident in a thermal analysis even if the number of equilibrium iterations is not explicitly set to 1. DRD recommends, however, that you always set the number of equilibrium iterations to 1 when the model is linear.
8. For postprocessing, you will be able to check the heat flux through the GUI just like any other contact item as flux will appear as one of the contact items alongside pressure, status, gap, etc.
The GUI path is:
General Postprocessor > Plot Results > Nodal Solution. Then select ‘Contact’ in the box on the left and ‘Heat Flux in the box on the right.
Back to Top of Page
Tip #4. Disabling the Mechanical Toolbar at startup for ANSYS/Professional
(Note: The Mechanical Toolbar is unsupported starting with ANSYS 8.0)
These are the commands to turn off the Mechanical Tool bar GUI in ANSYS/Professional. You need to put them in the start56.ans file so they are effective upon starting ANSYS.
/mstart,mtool,off
/mstart,input,on
/mstart,tool,on
/mstart,main,on
Back to Top of Page
Tip #5. Performing ANSYS Solutions in Batch Under NT.
This is detailed on another page on this site.
Back to Top of Page
Tip #6. Accessing the Contact Wizard with Commands or Macros.
The contact wizard is part of enhanced UIDL. The command string to invoke the wizard is ~eui,'euidl::contactWizard'. This string can be typed in, or abbreviated with the *ABBR command, or put in a macro to invoke the wizard without having to go through the nested menus to start up with wizard.
Back to Top of Page
Tip #7. ANSYS Error Status Codes.
Occasionally ANSYS solutions may fail and produce an error indicating a specific error status. To assist you in determining where the problem may lie, a brief definition of each of these error codes is presented below:
0 - normal exit
1 - stack overflow error
2 - stack level overflow
3 - stack pop below zero
4 - names do not match in stkpxp
5 - command line argument error
6 - accounting file error
7 - auth file verification error
8 - indicated error or end-of-run
11 - error in user routine
12 - macro stop command
14 - untrapped xox error
15 - anserr fatal error
16 - possible full disk
17 - possible corrupted or missing file
18 - Error in VM routines (corrupt db?)
21 - unauthorized code section entered
25 - unable to open x11 server
30 - quit signal
31 - failure to get signal in max time
>32 - system dependent error
Back to Top of Page
Tip #8. Avoiding the POP-UP Windows when Listing Entities
To avoid the pop-up window precede the list commands with a $. ( i.e. $ELIST)
The primary use of the $ sign is to allow multiple commands on the same line and preventing pop-ups is one of the effects of using it. This also works for the xSUM commands as well.
Back to Top of Page
Tip #9. Turning off the gradient background of the graphics window.
(Note: The background is black by default starting with ANSYS 6.1)
ANSYS by default has a gradient blue background. You can turn it to black by typing in the command /color,pbak,off interactively. To turn off the blue background in the startXX.ans file, use the command /uis,pbak,off.
Back to Top of Page
Tip #10. Turning off the Multilegend Option.
ANSYS has another legend option aside from the default multilegend option. You can access this option to act as older versions of ANSYS by putting /uis,lege,0 in the startXX.ans file located in the ANSYSXX/docu directory. This will put all the legend information on the right side of the graphics window only.
Back to Top of Page
Tip #11. Figures Missing in the Online Help.
In the help system of ANSYS 6.0 sometimes none of the graphics in the Verification Manual and Theory Manual show up, only place markers. Due to a bug, the work around is to create a short cut to the following file, and to put this on your desktop to access this documentation with the graphics.
D:\ProgramFiles\AnsysInc\docu\english\ansyshelp.chm
Back to Top of Page
Tip #12. ANSYS Product Variables
ANSYS has a number of product variables that can be used to identify which product is being requested or is currently licensed in the authorization file. Select here for the listing of these variables.
Back to Top of Page
Tip #13. ANSYS Does Not Recognize New Licenses
There has been situations where, after adding a new INCREMENT line to an existing license key, the new licenses cannot be checked out because they have exactly the same increment variable as the previously existing licenses. This is a bug in every version of FLEXLM. The workaround is to set the ANSWAIT=TRUE environmental variable at the system level.
Back to Top of Page
Tip #14. Using the Proper Memory for the Sparse Solver
Although ANSYS does use dynamic memory, there are circumstances the sparse solver may not be able to gain the most efficient amount of memory for solving. For example, during a solution run the following output may appear from the sparse solver:
SPARSE MATRIX DIRECT SOLVER.
Number of equations = 99906, Maximum wavefront = 71
Memory available for solver = 139.68 MB
Memory required for in-core = 523.56 MB
Optimal memory required for out-of-core = 273.17 MB
Minimum memory required for out-of-core = 7.70 MB
In this case, it pages and creates a LN32 file that is non-zero in length because the memory available is less than the 'Optimal' memory required for solving out-of-core. When this happens, your solution time doubles, triples, or worse. As a minimum, you should increase your Total Workspace memory (-m) by at least 135 MB such that you have the amount of memory available for the solver that is 'Optimal' for running out-of-core. It is currently planned for ANSYS 7.0 to automatically obtain at least the Optimal amount of memory for solving out-of-core if it is available.
In an ideal situation, if you could increase your -m by 385 such that the entire model could be solved 'in-core' your model will also run that much faster as less disk I/O will occur (no LN09 file will be created which can be large for most models). For most problems, it is not possible to obtain the memory to solve entirely 'in-core' so making sure you have at least the optimal memory allocated is the next best thing.
Back to Top of Page
Tip #15. Printing from Batch Mode
Below is a small input file which can be used as a template for printing while running in batch. One of the keys will be getting the device name correct for the Windows Print command. For the input file below, the device name is \\jaguar\downstairs, where 'jaguar' is the name of the server and 'downstairs' is the name of the printer. This file also requires that a printer which can handle postscript is in use.
resume
/solu
solve
fini
/post1
/show,pscr
plnsol,s,eqv
/show,close
/sys,print /D:\\jaguar\downstairs file000.eps
fini
/exit,nosav
Back to Top of Page
Tip #16. Invoking the pre-ANSYS6.1 GUI
The older ANSYS Graphical User Interface can be used instead of the newer, Tcl interface by placing the command /mstart,util,on in your startXX.ans file. Also please note that with starting with ANSYS 7.1, the startXX.ans file is located in the apdl directory of the ANSYS install location and not the docu directory.
*** 수렴과 관련된 ANSYS 옵션
1. NSUBST
1. 정의
- SUBSTEP의 수를 정한다.
2. USAGE - nsubst,10,10000,3
10 → 하나의 Time을 등분하는 횟수
10000 → 비수렴 시 최대 등분횟수
3 → 수렴이 잘될 시 최소 등분횟수
2.
2.
***GET 명령어 사용법
1. 해석결과의 수렴여부를 판단하는 방법
*GET,,ACTIVE
*GET,Parm,ACTIVE,0,SOLU,CNVG
Return value가 0일경우 발산 1일경우 수렴.
*GET,Parm,ACTIVE,0,SOLU,CNVG
Return value가 0일경우 발산 1일경우 수렴.
2. 수렴값을 얻는 방법
*GET,,COMMON
Convergence values (CNVTOL):
*GET,param1,common,,stepcm,,real,28+i
Reference value of Lab
*GET,param2,common,,stepcm,,real,48+i
Tolerance about VALUE
*GET,param3,common,,stepcm,,int,34+i
Convergence norm
*GET,param4,common,,stepcm,,real,132+i
Minimum reference value
파라미터 "i"값은 아래의 경우를 각각 대입하여 계산하여야한다.
아래의 값을 더하지 않고 입력했을 경우 Return Value는 항상 0이다.
I = 1 for F convergence
I = 2 for M convergence
I = 3 for U convergence
and there are more...
Convergence values (CNVTOL):
*GET,param1,common,,stepcm,,real,28+i
Reference value of Lab
*GET,param2,common,,stepcm,,real,48+i
Tolerance about VALUE
*GET,param3,common,,stepcm,,int,34+i
Convergence norm
*GET,param4,common,,stepcm,,real,132+i
Minimum reference value
파라미터 "i"값은 아래의 경우를 각각 대입하여 계산하여야한다.
아래의 값을 더하지 않고 입력했을 경우 Return Value는 항상 0이다.
I = 1 for F convergence
I = 2 for M convergence
I = 3 for U convergence
and there are more...
'2FeRed`s 평생학습' 카테고리의 다른 글
[아이폰일기] 페르마의 마지막정리를 푼 와일즈교수 (0) | 2010.01.08 |
---|---|
[매뉴얼] ABAQUS Explicit 매뉴얼 (0) | 2009.05.06 |
[공부] 직급영어표현 (0) | 2009.02.06 |
[English] E-mail 영어표현 (1) | 2009.01.21 |
[English] 문장부호의 사용법 (0) | 2008.01.07 |
아름다운 인터넷 문화를 위해 댓글을 남겨주세요. -0-;