ID:
PW:

     0 ºÐ
     30 ºÐ

¿£Áö´Ï¾î µ¹Á¾
  dolljong

Gmsh manual

작성자: dolljong@gmail.com

2020.5.3

  1. 소개 / 설치 / 실행
  • 소개 : A three-dimensional finite element mesh generator with built-in pre- and post-processing facilities
  • 특징 : Open source, GUI, 자체스크립트(geo), C++/ C / Python or Julia Application Programming Interface (API)를 이용할 수 있다.
  • Download site : http://gmsh.info
  • License : GNU General Public License (GPL)

  1. Getting start
  1. 마우스 기능
  • 마우스를 엔티티 위에 가져가면 해당 엔티티의 정보를 보여준다.
  • 왼쪽 버튼 드래그 : 3D 회전 (3D-Orbit)
  • Ctrl-왼쪽 버튼 : 올가미(lasso) 줌
  • 휠 드래그 : 위로 드래그: 축소, 아래로 드래그 : 확대
  • 휠 굴리기 : 위로 굴리기 : 축소, 아래로 굴리기: 확대
  • 오른쪽 버튼 드래그 : 팬
  • Ctrl-오른쪽 버튼 : 리셋 디폴트 뷰

  1. 단축키
  • Alt-A : 축 보여주기, Alt-A를 눌러 다양한 축보여주기 옵션을 선택할 수 있다.
  • Alt-M : mesh 보이기 / 안보이기 toggle mesh display , 더블클릭 팝업메뉴

  1. 왼쪽하단버튼

  1. X : X축 상에서 보기
  2. Y : Y축 상에서 보기
  3. Z : Z축 상에서 보기
  4.  : 회전하기
  5.  1:1 : zoom fit (AutoCAD zoom extents)
  6.  S  : 마우스 선택 on / off

  1. 모델 보기
  1. Geometry visibility

마우스 왼쪽 버튼을 더블 클릭하면 geometry visibility를 선택할 수 있다.

Points, Curves, Surfaces, Volumes를 보이거나 안보이게 할 수 있다.

 

  1. Mesh visibility

        마우스 왼쪽 버튼을 더블 클릭하면 Mesh visibility를 선택할 수 있다.

        Nodes, 1D elements, 2D element edges, 2D element surface, 3D element edges, 3D element surfaces를 선택할 수 있다.

 

  1. 명령진행 순서

명령 -> 선택 순으로 이루어진다.

왼쪽 트리 메뉴에서 명령을 선택하면 마우스 커서 모양이 선택할 수 있도록 바뀐다.(화살표 모양 -> 십자모양)

    ->  

  1. Geometry 그리기
  • Point        : x,y,z 좌표 입력
  • Line        : select start point -> end point -> start point
  • Circle         : center point x,y and radius, angle 1 시작각, angle 2 끝각. Arc를 그릴 수 있다.

  • Circle arc  : select start point -> center point -> end point
  • Plane surface : 면 만들기, 폐곡선들 선택
  • Reload script : script를 reload한다.(mesh를 없애고 geometry만 보임)

  1. Extrude

Tree menu / Geometry / Elementry entities / Extrude

-DX, DY, DZ : 어느 방향으로 얼만큼 extrude할 것인지 설정.

-Extrude mesh : extrude할 때 mesh를 만들면서 extrude할 것인지? ON인 경우 mesh layers가 적용된다. 즉 extrudge하면서 몇개의 mesh layer를 만들 것인지 설정 가능.

-Selection mode에서 extrude할 geometry 종류를 선택한다.

  1. Geometry 지우기

Tree menu / Geometry / Elementary entities / Delete

Recursive : 하위

  1. Mesh 크기 조정하기

두가지 방법이 있다. 결과는 같다 첫번째 방법은 tools메뉴의 options를 이용하는 방법이다.

-tools/options/mesh/general/element size factor  :

-tools/options/mesh/general/smoothing step : 가장 작은 사이즈와 가장 큰 사이즈의 비

두번째는 화면을 더블클릭하면 나타나는 팝업메뉴의 Global mesh size factor를 이용하는 방법이다. 첫번째 방법에 비해서 간단한 설정만 가능하다. 테스트 결과 Global mesh size factor는 option의 Element size factor와 동일하다는 것을 알 수 있었다.

물론 extrude시 extrude mesh를 선택했다면 여기서 설정한 mesh size factor는 적용되지 않는다.

  1. mesh 순서

Gmsh는 1차원 -> 2차원 -> 3차원 순서로 mesh를 진행해야 한다. 1D : 선을 나눈다, 2D : 면을 나눈다, 3D : solid를 만든다.

  1. Refine by splitting

한번 누를 때마다 2배로 refine된다. 반대 기능은 없는 것으로 보인다.  원래 정의했던 1D의 분할 크기 등이 바뀌는 것은 아니다.

  1. Clipping [tools/clipping]

Cut with the plane A*X + B*Y + C*Z + D

  1. Undo

Gmsh는 GUI환경에서 Undo기능을 직접 지원하지 않는다. 사용자가 Undo를 하기 위해서는 Edit script를 실행해서 해당 명령을 삭제한 후 Reload script를 실행하면 된다. Gmsh는 geo파일에 사용자의 명령을 모두 script로 저장한다. 따라서 이 파일을 조작하면 원하는 결과를 얻을 수 있다.

  1. Test : 여러가지 기능을 테스트해본 결과
  1. Mesh를 하면 surface가 남아있나?

Mesh를 진행한 후 abaqus inp로 export해본 결과 T2D2(line),CPS3(3각형 plate), CPS4(사각형 plate), C3D6(6-node wedge)  element가 생성된 것을 확인할 수 있었다. 또한 gmsh의 geometry이름이 abaqus의 ELSET으로 설정된 것을 확인할 수 있었다. Solide만으로 mesh를 만들기 위해서는 Export하기 전에 surface를 삭제하는 것이 좋다. 물론 surface를 포함해서 inp를 만든 후 surface element를 삭제해도 된다.

  1. 메뉴
  1. File
  1. New (Ctrl+N)
  2. Open (Ctrl+O)

읽기 지원 포맷

  • Geometry - Gmsh GEO (*.geo)
  • Geometry - OpenCASCADE BRep (*.brep)
  • Geometry - OpenCASCADE IGES (*.igs, *.iges)
  • Geometry - OpenCASCADE STEP (*.stp, *.step)
  • Mesh - Gmsh MSH (*.msh)
  • Mesh - Diffpack 3D (*.diff)
  • Mesh - I-deas Universal (*.unv)
  • Mesh - MED (*.med, *.mmed)
  • Mesh - INRIA Medit (*.mesh)
  • Mesh - Nastran Bulk Data File (*.bdf;*.nas)
  • Mesh - Plot3D Structured Mesh (*.p3d)
  • Mesh - STL Surface (*.stl)
  • Mesh - VTK (*.vtk)
  • Mesh - VRML Surface (*.wrl; *.vrml)
  • Mesh - PLY2 Surface (*.ply2)
  • Pos-processing - Gmsh POS (*.pos)
  • Pos-processing - MED (*.rmed)
  • Image - BMP (*.bmp
  • Image - JPEG (*.jpg;*.jpeg)
  • Image - PBM (*.pbm)
  • Image - PGM (*.pgm)
  • Image - PNG (*.png)
  • Image - PNM (*.pnm)
  • Image - PPM (*.ppm)

  1. Merge (Ctrl+Shift+O)
  2. Watch pattern
  3. Clear
  4. Rename (Ctrl+R)
  5. Delete
  6. Remote
  1. Start..
  2. Merge..
  3. Clear
  4. Stop
  1. Save mash (Ctrl+Shift+S)
  2. Save model Options (Ctrl+J)
  3. Save Options As Default (Ctrl+Shift+J)
  4. Export (Ctrl+E)

File / export 내보내기 파일형식

  • Geometry - Gmsh Options(*.opt)
  • Geometry - Gmsh Unrolled GEO (*.geo_runrolled)
  • Geometry - OpenCASCADE STEP (*.step)
  • Geometry - OpenCASCADE BRep (*.brep)
  • Mesh - Gmsh MSH (*.msh)
  • Mesh - Abaqus INP (*.inp)
  • Mesh - LSDYNA KEY (*.key)
  • Mesh - CELUM (*.celum)
  • Mesh - CGNS (Experimental) (*.cgns)
  • Mesh - Diffpack 3D (*.diff)
  • Mesh - I-deas Universal (*.unv)
  • Mesh - Iridum (*.ir3)
  • Mesh - MED (*.med)
  • Mesh - INRIA Medit (*.mesh)
  • Mesh - CEA Triangulation (*.mail)
  • Mesh - Matlab (*.m)
  • Mesh - Nastran Bulk Data File (*.bdf)
  • Mesh - Plot3D Structured Mesh (*.p3d)
  • Mesh - STL Surface (*.stl)
  • Mesh - VRML Surface (*.wrl)
  • Mesh - VTK (*.vtk)
  • Mesh - Tochnog (*.dat)
  • Mesh - PLY2 Surface (*.ply2)
  • Mesh - SU2 (*.su2)
  • Mesh - GAMBIT Neutral File (*.neu)
  • Post-processing - Gmsh POS (*.pos)
  • Post-processing - X3D (X3D) (*.x3d)
  • Post-processing - MED (*.rmed)
  • Post-processing - Generic TXT (*.txt)
  • Post-processing - Mesh Statistics (*.pos)
  • Post-processing - Adapted data (*.pvtu)
  • Image - Encapsulated PosScript (*.eps)
  • Image - GIF (*.gif)
  • Image - JPEG (*.jpg)
  • Image - LaTeX (*.tex)
  • Image - PDF (*.pdf)
  • Image - PNG (*.png)
  • Image - PGF (*.pgf)
  • Image - PostScript (*.ps)
  • Image - PPM (*.ppm)
  • Image - SVG (*.svg)
  • Image - TIKZ (*.tikz)
  • Image - YUV (*.yuv)
  • Movie - MPEG (*.mpg)

  1. Quit (Ctrl-Q)

  1. Tools
  1. Options (Ctrl+Shift+N)
  • Mesh / General

  • Mesh / visibility
  • Nodes, 1D elements, 2D elements edges, 2D elements faces, 3D elements edges, 3D elements faces 선택가능.
  • Node labels, 1D elements labels, 2D elements labels, 3D elements labels 선택가능.

  • Label type은 아래 그림과 같이 선택할 수 있다.

- Node/element tag

- Elementary entity tag

- Physical group tag(s)

- Mesh partition

- Coordinates

  • Mesh / Aspect

-Element shrinking factor : element를 얼마나 줄여서 보여줄 것인지?

-Point display : [Color dot | 3D sphere] point를 점으로 보여줄 것인지 구로 보여줄 것인지?

-Point size : 점의 크기

-Line width : 선굵기

-High-order element subdivisions : ??

  1. Plugins (Ctrl+Shift+U)
  2. Visibility (Ctrl+Shift+V)
  3. Clipping (Ctrl+Shift+C)
  4. Manipulator (Ctrl+Shift+M)
  5. Statistics (Ctrl+I)
  6. Message Console (Ctrl+L)

  1. Window

  1. New Window
  2. Copy to Clipboard (Ctrl-C)
  3. Split Horizontally
  4. Split Vertically
  5. Unsplit
  6. Minimize (Ctrl+M)
  7. Zoom
  8. Enter Full Screen (Ctrl+D)
  9. Attach/Detach Menu (Ctrl+D)
  10. Bring All to Front

  1. Help

  1. Online Documentation
  2. Keyboard and Mouse Usage (Ctrl+H)
  3. Current Options and Workspace (Ctrl+Shift+H)
  4. Restore all Options to Default Settings
  5. About Gmsh