MSC Nastran 2022.4 DMAP Programmer’s Guide

MSC Nastran의 내부 해석 언어인 DMAP (Direct Matrix Abstraction Programming) 을 정의하고, 솔루션 시퀀스를 구성하는 DMAP 모듈/문(statement), 데이터가 저장되는 data block 포맷, 그리고 데이터베이스 정의 언어인 NDDL 을 망라하는 프로그래머용 레퍼런스다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.19].

개요

이 매뉴얼은 표준 솔루션 시퀀스(SOL)를 수정하거나 사용자 정의 DMAP 프로그램을 작성하려는 고급 사용자·개발자를 대상으로 한다. DMAP은 행렬과 테이블 같은 data block 에 대해 모듈을 순차 실행시키는 매크로 언어이며, MSC Nastran의 모든 solution sequence가 이 언어로 작성되어 있다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.20]. 매뉴얼은 (1) DMAP 언어 문법, (2) 수백 종의 data block 의 record 단위 이진 포맷, (3) NDDL 데이터베이스 스키마, (4) 개별 DMAP 모듈/문의 상세 설명의 네 부분으로 구성된다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.9].

다루는 범위

  • DMAP 언어 기본 요소: parameter(상수/변수), expression 과 arithmetic/relational/logical operator, data block(table trailer, matrix trailer), instruction/module 호출 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.20].
  • DMAP 문(statement): assignment, function, control statement(IF, JUMP/LABEL, IF-THEN, DO WHILE), SUBDMAP/CALL/RETURN, HALT/EXIT/END, declarative 및 data base function statement [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.33].
  • 데이터베이스 연산: SubDMAP DBMGR, DBSTORE, DBFETCH 와 WHERE/CONVERT clause [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.53].
  • OFP(Output File Processor) 테이블 구조: ApproachCode, Tablecode, Formatcode, Stresscode, Element Type 등 출력 테이블의 헤더 코드 체계 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.60].
  • Bulk Data 이미지 data block: GEOM1~GEOM4(geometry/element/load/constraint), EPT(property), MPT(material), DYNAMICS, EDT(aero) 등 입력 카드의 내부 표현 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.661].
  • NDDL(Nastran Data Definition Language): DATABLK, PARAM, PATH, QUAL 문으로 데이터베이스 스키마 정의 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.1489].
  • DMAP 모듈 카탈로그: matrix/utility/executive/miscellaneous 분류와 개별 모듈 상세 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.1508].
  • Glossary: Data Block Glossary, Data Block Naming Conventions, Parameter Glossary [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.2634].

문서 구성

장/절내용페이지 앵커
Preface책 소개, MSC Nastran 가이드 목록, 기술 지원p.15
Direct Matrix AbstractionDMAP 언어 정의, parameter, expression, data block, statementp.19
Data Block 설명BGPDT, CSTM, DIT, DLT, DYNAMIC, EST, GEOM1-4, EPT, MPT, OFP 출력 테이블 등 record 포맷p.74
Nastran Data Definition Language (NDDL)DATABLK, PARAM, PATH, QUAL 문p.1489
DMAP Modules and Statements모듈 분류 목록, 상세 설명 (Detailed Descriptions)p.1507
Detailed Descriptions of DMAP Modules and StatementsADD, MPYAD, READ, SDR2, OUTPUT2/4 등 개별 모듈p.1515
GlossaryData Block / Parameter glossary 및 naming conventionp.2634
Index색인p.2775

이 매뉴얼로 답할 수 있는 질문

  • DMAP에서 행렬 곱은 어떻게 작성하나? → MPYAD A,B,/D $[D]=[A][B] 를 수행한다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.32].
  • DMAP의 조건 분기/반복은 어떤 문으로 하나? → IF, JUMP/LABEL, IF()THEN, DO WHILE() 문을 사용한다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.46].
  • 고유값 추출 모듈은 무엇인가? → READ 모듈이 실대칭 시스템 고유값을 추출한다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.2360].
  • 결과를 외부 파일로 내보내려면? → OUTPUT2(.op2 형식) 또는 OUTPUT4 모듈을 쓴다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.2274].
  • .op2 출력 테이블의 헤더 코드(ApproachCode/Tablecode/Stresscode)는 어떻게 해석하나? → OFP 테이블 헤더 레코드 규약을 참조한다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.60].
  • GRID/CBAR/CQUAD4 카드가 내부적으로 어떤 data block 에 저장되나? → geometry 관련 GEOM1/GEOM2 테이블의 record 이미지로 저장된다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.664].
  • Element Summary Table(EST) 의 내용은? → 각 요소 타입·ID별로 반복되는 요소 요약 데이터를 담는다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.503].
  • 데이터베이스 스키마(qualifier/path)는 어떻게 정의하나? → NDDL의 PATH/QUAL 문으로 정의한다 [MSC_Nastran_2022.4_DMAP_Programmer_Guide.pdf p.1504].

핵심 항목

DMAP 언어·문:

대표 DMAP 모듈:

  • MPYAD — 행렬 곱 모듈
  • ADD — 행렬 덧셈 모듈
  • MERGE — 행렬 병합 모듈
  • UPARTN — USET 기반 행렬 분할 모듈
  • READ — 실대칭 고유값 추출 모듈
  • EMG — 요소 행렬 생성 모듈
  • SDR2 — 데이터 복원(stress/strain 출력 테이블 생성) 모듈
  • GKAD — 자유도 집합 테이블 생성 (GP4)
  • OUTPUT2 — 테이블/행렬을 .op2 로 출력하는 모듈
  • OUTPUT4 — 행렬을 외부 파일로 출력하는 모듈
  • MATGEN — 행렬 생성 유틸리티 모듈
  • PARAML — data block 속성 추출 모듈

대표 data block:

  • GEOM1 — geometry(CORD, GRID) Bulk Data 이미지 테이블
  • GEOM2 — element connection Bulk Data 이미지 테이블
  • GEOM3 — static/thermal load Bulk Data 이미지 테이블
  • GEOM4 — constraint(SPC, MPC, RBE) Bulk Data 이미지 테이블
  • EPT — element property(PSHELL, PBEAM 등) 테이블
  • MPT — material property(MAT1~MAT11) 테이블
  • DYNAMICS — dynamic load/method(EIGRL, FREQ, TLOAD) 테이블
  • BGPDT — Basic Grid Point Definition Table
  • USET — Displacement set definition table
  • SIL — Scalar Index List
  • EST — Element Summary Table
  • OFP Tables — 출력 파일 처리 테이블 (ApproachCode/Tablecode/Stresscode)

NDDL:

  • NDDL — Nastran Data Definition Language (DATABLK/PARAM/PATH/QUAL)

관련 문서