[프로젝트] DATCOM Input 파일 예시와 output 파일 예시

2022. 3. 15. 21:55·기타/설계 프로젝트 System Design

이전에 DATCOM에 관한 글을 써놓고 예시를 안 적은 것 같아서

내가 만든 코드의 예시를 보여주고자 한다. (도움이 되실지는 모르겠지만..)

 

그리고 그 .INP 파일로 DATCOM을 돌렸을 때 나오는 결과(.out 파일)도 보여주도록 한다. 다만 .out 파일은 엄청 길기 때문에 핵심적인 부분만 올린다.

 

1. INP 파일 예시

 

아래 코드는 .INP 파일의 예시이다.

DAMP
DERIV RAD
DIM M
CASEID Project-BODY
 $FLTCON NMACH = 1.0, MACH(1)=0.03, NALPHA = 20.0,
         ALSCHD(1) = -2.0, -1.0, 0.0, 1.0, 2.0, 3.0, 4.0, 5.0,
                     6.0, 7.0, 8.0, 9.0, 10.0, 12.0, 14.0, 16.0,
                     18.0, 19.0, 20.0, 25.0,
        WT = 10.682, NALT=1.0, ALT(1)=0.0,
        RNNUB=2.00E5, LOOP=1.0$
 $OPTINS SREF=0.100, CBARR=0.180, BLREF=0.445$
 $SYNTHS XCG=0.245874, ZCG=-0.012666, XW=0.200, ZW=0.0, ALIW=0.0,
         ZH=-0.020, XH=0.700, ALIH=-0.050, ZV=-0.020, XV=0.700$
 $BODY NX=7.0,
      X(1)=0.0,0.050,0.150,0.290,0.480,0.815,0.820,
      S(1)=0.0,0.000452,0.002827,0.001689,0.001256,0.000314,0.000023,0.00001$
 $WGPLNF CHRDTP=0.180, CHRDR=0.180, DHDADI=0.0, TYPE=1.0,
         SSPN=0.505, SSPNE=0.445, SAVSI=0.0, CHSTAT=0.25$
 $ASYFLP STYPE=4.0, NDELTA=9.0,
         DELTAL(1)=0.0,1.0,3.0,5.0,8.0,10.0,15.0,20.0,25.0,
         DELTAR(1)=0.0,-1.0,-3.0,-5.0,-8.0,-10.0,-15.0,-20.0,-25.0,
         CHRDFI=0.04, CHRDFO=0.04, SPANFI=0.185, SPANFO=0.505$
 $SYMFLP FTYPE=1.0, NTYPE=1.0, NDELTA=9.0,
         DELTA(1)=-20.0,-10.0,-5.0,-1.0,0.0,1.0,5.0,10.0,20.0,
         CHRDFI=0.020, CHRDFO=0.020, SPANFI=0.0001, SPANFO=0.090$
 $HTPLNF CHRDTP= 4.0, CHRDR=12.0, DHDADI=0.0, TYPE=1.0,
         SSPN=0.090, SSPNE=0.089, SAVSI=0.416, CHSTAT = 0.0$
 $VTPLNF CHRDTP= 3.5, CHRDR=12.0, DHDADI=0.0, TYPE=1.0,
         SSPN=0.120, SSPNE=0.119, SAVSI=0.353, CHSTAT = 0.0$
NACA-W-4-2412
NACA-H-4-0006
NACA-V-4-0006
NEXT CASE

 

개별 코드의 의미는 이전 글을 참고하면 좋을 것이다.

 

 

2. DATCOM을 FORTRAN으로 컴파일하기

 

 

위와 같이 .INP 파일을 만들어서 datcom을 돌리는데, 이 때는 FORTRAN에서 프로그램을 컴파일하는 방법을 알아야한다.

Digital datcom을 다운받으면 datcom.f 을 가지게 되는데 이 파일을 컴파일해서 .exe 파일로 만들어야 한다.

 

c코딩을 해보신 분들은 알겠지만 프로그램을 코딩하고 실행할 수 있게 만든게 exe파일이다.

 

포트란에서 컴파일하는 방법도 포스팅해놓았으니 참고하시고, 사실 datcom 파일에도 read me.txt에 나와있다.

 

To compile this program for your machine, use the command
gfortran datcom.f -o datcom.exe

이 말을 참고해서 컴파일하고, DATCOM.exe를 실행해보면 다음과 같이 나온다.

 

위 그림과 같이 input file name을 입력하라고 나온다. 내가 만든 .INP 파일 이름을 입력해주면 된다.

 

 

3. OUT 파일 확인하기

그러면 .out으로 나오는데 이 파일을 열어보시면 설정에 따라서 꽤 긴 파일이 나올 수도 있다.

참고로 .INP 파일은 어떻게 작성하고 .out 파일을 어떻게 열어야하는지 곤란할 수 있다. (딱히 열어주는 프로그램도 없다.)

나의 경우에는 atom이라는 코드 편집기에서 그냥 열었다. 어차피 txt파일과 별반 차이가 없어서 보기 편한 편집기에서 연 것 뿐이다. 다른 편집기를 쓰고 있으면 거기서 열어도 무방하다.

 

컴파일한 결과는 다음과 같다.

 

이런 표가 많이 나오는데 내가 코드를 잘못 작성한 경우에는 .out 코드를 잘 읽어보면 에러가 떴다고 알려줄 것이다.

제대로 된 결과가 안 보인다면 어떤 에러가 있는지도 살펴보자. (정확히 어떤 에러가 있는지 알려주는지는 기억이 안 난다.)

 

MATLAB에서는 이런 DATCOM의 output 파일을 읽어들이는 함수도 있는데 내가 썼을 때는 신통치 않았던 걸로 기억한다. 혹시 잘 작동한 걸 확인해보신 분이 있으면 알려주셨으면 좋겠다.

 

사실 이렇게 DATCOM을 돌리고 알게 된 것은, 이 비행기 결과에는 러더를 포함시킬 수 없다는 사실이었다.

DATCOM의 낡은 문서를 뒤적거려도 러더에 대한 내용은 찾을 수 없던 걸로 기억한다. 이 부분에 유념하며 사용하면 좋을 것이다.

 

저작자표시 비영리 변경금지 (새창열림)

'기타 > 설계 프로젝트 System Design' 카테고리의 다른 글

[프로젝트] Pixhawk 사에서 쓰는 controller 분석 (1)  (0) 2022.11.14
[프로젝트] 솔리드웍스 파일(SLDASM)을 Obj 파일로 변환하기  (0) 2022.08.29
[시뮬레이션] Flight Gear 사용법 (2) MATLAB과 연동  (2) 2022.02.08
[시뮬레이션] Flight gear 사용법 (1) 기본 설치 및 간단한 것들  (0) 2022.02.06
[프로젝트] Iterative Design Process  (0) 2021.01.19
'기타/설계 프로젝트 System Design' 카테고리의 다른 글
  • [프로젝트] Pixhawk 사에서 쓰는 controller 분석 (1)
  • [프로젝트] 솔리드웍스 파일(SLDASM)을 Obj 파일로 변환하기
  • [시뮬레이션] Flight Gear 사용법 (2) MATLAB과 연동
  • [시뮬레이션] Flight gear 사용법 (1) 기본 설치 및 간단한 것들
보통의공대생
보통의공대생
수학,프로그래밍,기계항공우주 등 공부하는 기록들을 남깁니다.
  • 보통의공대생
    뛰는 놈 위에 나는 공대생
    보통의공대생
  • 전체
    오늘
    어제
    • 분류 전체보기 (460)
      • 공지 (1)
      • 영어 공부 English Study (40)
        • 텝스 TEPS (7)
        • 글 Article (21)
        • 영상 Video (10)
      • 연구 Research (99)
        • 최적화 Optimization (3)
        • 데이터과학 Data Science (7)
        • 인공지능 Artificial Intelligent (40)
        • 제어 Control (45)
      • 프로그래밍 Programming (103)
        • 매트랩 MATLAB (25)
        • 파이썬 Python (33)
        • 줄리아 Julia (2)
        • C++ (3)
        • 리눅스 우분투 Ubuntu (6)
      • 항공우주 Aeronautical engineeri.. (21)
        • 항법 Navigation (0)
        • 유도 Guidance (0)
      • 기계공학 Mechanical engineering (13)
        • 열역학 Thermodynamics (0)
        • 고체역학 Statics & Solid mechan.. (10)
        • 동역학 Dynamics (1)
        • 유체역학 Fluid Dynamics (0)
      • 수학 Mathematics (34)
        • 선형대수학 Linear Algebra (18)
        • 미분방정식 Differential Equation (3)
        • 확률및통계 Probability & Sta.. (2)
        • 미적분학 Calculus (1)
        • 복소해석학 Complex Analysis (5)
        • 실해석학 Real Analysis (0)
      • 수치해석 Numerical Analysis (21)
      • 확률 및 랜덤프로세스 Random process (2)
      • 추론 & 추정 이론 Estimation (3)
      • 기타 (26)
        • 설계 프로젝트 System Design (8)
        • 논문작성 Writing (55)
        • 세미나 Seminar (2)
        • 생산성 Productivity (3)
      • 유학 생활 Daily (7)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    옵시디언
    Linear algebra
    인공지능
    딥러닝
    MATLAB
    ChatGPT
    생산성
    우분투
    JAX
    텝스
    Dear abby
    논문작성
    Zotero
    수치해석
    Julia
    고체역학
    Numerical Analysis
    matplotlib
    LaTeX
    논문작성법
    teps
    pytorch
    IEEE
    Python
    서버
    Statics
    obsidian
    에러기록
    텝스공부
    WOX
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
보통의공대생
[프로젝트] DATCOM Input 파일 예시와 output 파일 예시
상단으로

티스토리툴바