본문 바로가기
반응형

<해석프로그램>55

[하이퍼매쉬 자동화] 화면의 점들을 리스트로 저장해서 z 최소값 출력 (for문) [하이퍼매쉬 자동화] 화면의 점들을 리스트로 저장해서 z 최소값 출력 (for문) #화면에 보이는 모든 포인트를 그룹1에 저장*createmark points 1 "displayed" #mylist 라는 변수에 points 1에 지정된 노드를 저장 set mylist [hm_getmark points 1] #mylist 길이 구하기(point 개수) set length [llength $mylist] #점들의 z 값만 list에 저장. set zlist "" for {set i 0} {$i 2020. 9. 9.
[하이퍼매쉬 자동화] 리스트에 요소 추가하기 [하이퍼매쉬 자동화] 리스트에 요소 추가하기 리스트에 요소를 추가할 때는 lappend 를 사용합니다. 먼저 리스트를 하나 만들어보겠습니다. set a "1 2 3">>1 2 3 요소를 추가합시다. lappend a 3>>1 2 3 3 2020. 9. 9.
[하이퍼매쉬 자동화] 리스트를 만들고 인덱싱 하는 법 [하이퍼매쉬 자동화] 리스트를 만들고 인덱싱 하는 법 리스트는 아래와 같이 큰 따옴표를 이용하여 만듭니다. set mylist "1 2 3 4 5" 또는 아래와 같이 입력합니다. set mylist [list 1 2 3] 출력하는 방법은 아래와 같습니다. put $mylist 인덱싱을 해봅시다. 위 리스트의 첫번째 원소에 접근해보겠습니다. 인덱싱에는 lindex 가 사용됩니다. lindex $mylist 0 2020. 9. 9.
[하이퍼매쉬 자동화] 선택과 확인 (createmark 와 hm_getmark) [하이퍼매쉬 자동화] 선택과 확인 (createmark 와 hm_getmark) 어떤 요소를 선택할 때 사용하는 명령어는 *createmark 입니다. elements, surfaces, nodes, lines, points 등을 뒤에 붙이면 됩니다. 그 뒤에는 임의의 그룹 번호를 입력하고, 선택 방법을 입력합니다. *createmark surfaces 1 "displayed" 위에서 선택된 surface의 번호(id)를 확인하는 방법은 아래와 같습니다. hm_getmark surfaces 1 2020. 9. 9.
[하이퍼매쉬 자동화] 리스트에 저장된 값 중 최댓값 구하기 [하이퍼매쉬 자동화] 리스트에 저장된 값 중 최댓값 구하기 리스트에 저장된 값들 중 최댓값을 구해주는 코드입니다. #listname 이라는 list에서 최댓값 구해서 max라는 변수에 저장set max [tcl::mathfunc::max {*}$listname] 2020. 9. 9.
[하이퍼매쉬 자동화] node 읽고 좌표 출력하기 [하이퍼매쉬 자동화] node 읽고 좌표 출력하기 #화면에 보이는 모든 노드를 그룹1에 저장*createmark nodes 1 "displayed" #nodelist 라는 변수에 nodes 1에 지정된 노드를 저장set nodelist [hm_getmark nodes 1] #nodelist 길이 얻기(node 개수)set length [llength $nodelist] #nodelist 의 1번째 node 번호 얻기lindex $nodelist 0 #node 154의 z값 얻기hm_getvalue nodes id=154 dataname=z #nodelist indes 이용해서 z값 얻기, 아래는 61번째 node의 z값hm_getvalue nodes id=[lindex $nodelist 60] datan.. 2020. 9. 9.
[하이퍼매쉬 자동화] hide와 show 명령어 사용 방법 [하이퍼매쉬 자동화] hide와 show 명령어 사용 방법 Component1과 Component2가 있다고 하자. on, off 변화를 잘 보면 이해될거다. 두 component의 mesh와 surface 모두 hide *createmark components 3 "component1" "component2"*createstringarray 2 "elements_on" "geometry_on"*hideentitybymark 3 1 2 두 component의 mesh만 hide *createmark components 3 "component1" "component2"*createstringarray 2 "elements_on" "geometry_off"*hideentitybymark 3 1 2 두 com.. 2020. 9. 8.
하이퍼매쉬 자동화 시도 이야기 하이퍼매쉬 자동화 시도 이야기 비슷한 모델을 몇백개 만들어야 했다. IGES로 되어있는 base 모델을 가져와서, 몇가지 컴포넌트를 더 생성하고 매쉬를 해줘야 했다. base 모델의 형상이 조금씩 바뀌는 것이고, 작업 방식은 동일하다. 매쉬를 짜고 아바쿠스로 해석까지 돌려야 했다. 주 업무는 아니고, 틈틈히 해야하는 일이었다. 시간은 충분히 주어져서, 오전에 한두모델 정도씩 하려고 했다. 모델을 3개 정도 진행했을 때, 단순 반복 작업이라 분명 자동화가 가능할 것이라는 느낌이 왔다. 모델을 만들때 생각난 것은 아니고, 집에서 영화를 보다 생각났다. 보통 아이디어는 다른 일을 할 때 떠오르더라. 아무튼 자동화가 가능할 것 같아 검색을 해보니 자동화가 가능했다. 하이퍼매쉬는 내가 하는 모든 작업을 comma.. 2020. 9. 8.
[하이퍼매쉬 tips] 인접한 파트의 매쉬와 일치시키는 방법 [하이퍼매쉬 tips] 인접한 파트의 매쉬와 일치시키는 방법 서로 다른 파트가 접촉하고 있고, tie로 결합되는 경우 mesh 형상을 최대한 일치시켜야 아바쿠스로 넘겨서 해석할 시 튀는 문제를 줄일 수 있음. 이때 사용하는 기능임. 2D 패널의 automesh에 들어가서 우측 하단에 보면, anchor nodes 가 있음. 인접 node를 선택하고, 이 node를 반드시 포함하도록 매쉬를 짜게 해주는 기능임. 문제는 anchor node를 설정할 경우, node 번호가 일치되버림. 아래는 해결방법. 매쉬할 때만, 인접 node와 일치하고, 번호는 분리하려면. 매쉬 한 이후에 2D 패널의 detach 에 들어가서, element를 선택하고 detach 해주면 됨. 2020. 8. 4.
[하이퍼매쉬 tips] 하이퍼매쉬 failed element 확인하는 방법 하이퍼매쉬 failed element 확인하는 방법 1) Tool 패널의 check elems 결과 이상 요소가 발견됨 2) save failed 로 저장, return 누르고 mask 로 들어감 3) elems 클릭하고 retrieve 클릭 4) mask 를 누르고, reverse 누르면 실패요소만 보이게됨. 2020. 7. 29.
[하이퍼매쉬 tips] suface로 오토매쉬 batchmesh/QI optimize 짤 때, edge 보존하는 방법 suface로 오토매쉬 batchmesh/QI optimize 짤 때, edge 보존하는 방법 preserve edges 클릭하고, Select Edges 클릭 후, edge 선택해주면됨. 2020. 7. 27.
[하이퍼매쉬 tips] 불러온 surface 자르는 방법 [하이퍼매쉬 tips] 불러온 surface 자르는 방법 불러온 surface를 cutting 하는 경우가 자주 있습니다. cutting 해서, 매쉬를하면 경계부분이 살아있기 때문입니다. 이 경계를 기준으로 component를 나눠야 하는 경우입니다. 상단 탭에서 아래 경로로 들어갑니다. [Geometry]-[Edit]-[Surfaces]-[Trim with Plane/Surfaces] with plane은 자르는 대상이 되는 surf를 선택하고, 자를 plane 의 방향과 지나는 한 점을 정의해주면 됩니다. 2020. 7. 24.
[하이퍼매쉬 tips] 불러온 surface 늘이는 방법 [하이퍼매쉬 tips] 불러온 surface 늘이는 방법 Geom 패널의 surfaces 클릭 Drag along vector 선택 ,방향선택, Distance 선택 2020. 7. 24.
[하이퍼매쉬 tips] 불러온 surface 이동하는 법(translate) [하이퍼매쉬 tips] 불러온 surface 이동하는 법(translate) 메뉴바에서, [Geometry]-[Translate]-[Surfaces] 2020. 7. 24.
[하이퍼매쉬 tips] automesh 에서 요소가 울퉁불퉁해지는 경우 [하이퍼매쉬 tips] automesh 에서 요소가 울퉁불퉁해지는 경우 2D automesh로 2nd-order 매쉬를 짰는데, 평평하던 요소가 울퉁불퉁해지는 문제가 발생했다. 1nd-order 매쉬를 짜면 울퉁불퉁해지는 문제가 없다. 1st-order 매쉬를 유지한 채로, mid-point 만 생성하여 2nd-order 매쉬로 만들 방법은 없을까 찾아봤는데, 역시나 있다 . 2D 탭에 가면 order change 버튼이 있다. change to 2nd 를 선택하고, 매쉬선택 뒤 change order 클릭하면 된다. 2020. 7. 21.
[하이퍼매쉬 tips] 요소 번호로 위치 찾는 방법 [하이퍼매쉬 tips] 요소 번호로 위치 찾는 방법 2020. 7. 1.
[하이퍼매쉬 tips] 매쉬 퀄리티 체크하는 방법 [하이퍼매쉬 tips] 매쉬 퀄리티 체크하는 방법 2020. 7. 1.
[하이퍼매쉬 tips] 하이퍼매쉬에서 아바쿠스 매쉬 c3d10 짜는 법 [하이퍼매쉬 tips] 하이퍼매쉬에서 아바쿠스 매쉬 c3d10 짜는 법 하이퍼매쉬에서 매쉬를 짜면 2d 삼각형은 S3, 사면체는 c3d4가 디폴트이다. https://abaqus-docs.mit.edu/2017/English/SIMACAEGSARefMap/simagsa-c-ctmselecting.htm 아바쿠스 도큐멘테이션에 보면 c3d4는 poor element 이고, c3d10 또는 c3d10HS가 일반적으로 사용되는 요소라고 한다. 2020. 6. 30.
[하이퍼매쉬 tips] 하이퍼매쉬에서 아바쿠스 inp 내보내는 방법 (+주의할 점) 하이퍼매쉬에서 아바쿠스 inp 내보내는 방법 (+주의할 점) 보통 아바쿠스 유저들은 하이퍼매쉬를 매쉬용도로만 사용합니다. node set 정도를 생성해서 element와 함께 inp 을 생성합니다. node set은 하중을 가하거나 boundary condition 을 잡는데 사용합니다. 이렇게 생성된 inp이 inp1 이라고 한다면, 이미 템플리승로 만들어 놓은 inp2에서 inp1을 링크로 걸어 사용합니다. inp2에는 물성, 경계조건, 하중조건 등이 입력되어 있습니다. 2020. 6. 18.
[하이퍼매쉬 tips] node set 생성하는 방법 [하이퍼매쉬 tips] node set 생성하는 방법 하이퍼매쉬와 아바쿠스를 연동해서 사용할 때 node set 설정이 필요합니다. load나 boundary condition 을 설정할 때, 미리 설정해둔 node set 에 설정합니다 . 2020. 6. 18.
[하이퍼매쉬 tips] EDGE 의 노드를 일치시키는 방법 [하이퍼매쉬 tips] EDGE 의 노드를 일치시키는 방법 매쉬 사이에 노드번호가 일치하지 않는 부분의 노드번호를 일치시키는 방법입니다. RULED 로 매쉬를 생성하면 경계 부분이 나뉘어 있습니다. 이때 경계를 없애주는 역할을 합니다. 2020. 6. 17.
[하이퍼매쉬 tips] 노드 번호 보는 법 [하이퍼매쉬 TIPS] 노드 번호 보는 법 노드 번호 보는 방법입니다. 2020. 6. 17.
[하이퍼매쉬 tips] 간격(GAP)을 mesh로 채워 넣는 방법 [하이퍼매쉬 tips] 간격(GAP)을 mesh로 채워 넣는 방법 매쉬와 매쉬 사이에 비어있는 간격을 매꿔야 하는 경우가 있습니다. 이럴때 사용하는 방법입니다. 한가지 문제가 생기는데요. 여러번에 나눠서 간격을 채우는 경우, 생성된 매시가 서로 연결되지 않는 문제가 발생합니다. node 번호를 보면 확인할 수 있는데 아래 글을 참고해주세요. https://forajont.tistory.com/168 2020. 6. 17.
[하이퍼매쉬 tips] Surface, element 등의 요소를 다른 component 로 이동, 복사 하는 방법 [하이퍼매쉬 tips] Surface, element 등의 요소를 다른 component 로 이동, 복사 하는 방법 하이퍼매쉬에서는 iges를 불러와서, 매쉬를 하고 다른 파트와 연관이 있는 매쉬는 다른 component 로 분리해서 사용하는 경우가 있습니다. 예를들어 A,B,C suface가 있고, A와 B가 하나의 파트1, B와 C가 하나의 파트2를 구성하는 경우입니다. 이때 파트 1의 매쉬 A와 B를 생성하고, 매쉬 B는 component를 분리합니다. 매쉬 A,B를 이용하여 파트 1의 3D 매쉬를 생성, 매쉬 B,C 를 이용하여 파트 2의 3D 매쉬를 생성합니다. 이럴 때 사용하는 기능입니다. (suface 는 복사만 되고 이동은 안되는 것 같습니다.) 2020. 6. 16.
[하이퍼매쉬 tips] 아바쿠스용 최적 매쉬 설정 방법 [하이퍼매쉬 tips] 아바쿠스용 최적 매쉬 설정 방법 하이퍼매쉬에서 아바쿠스에 최적화된 매쉬를 생성하는 방법이다. 아바쿠스 말고 다른 소프트웨어를 선택할 수도 있다. target size나, 최소/최대 사이즈는 사용자가 판단하여 입력해야 한다. 보통은 매쉬 수렴도 테스트를 하여 매쉬 사이즈를 결정합니다. 2020. 6. 16.
반응형