Development of a User-friendly Continuous-system Simulation Language

사용자 편의성을 고려한 연속체계 모의실험 언어의 개발

  • Published : 1993.10.01

Abstract

컴퓨터를 이용한 모의 실험 방법은 과학 및 공학 분야뿐만 아니라 경제,사회 현상등에도 널리 적용될 수 있는 유용한 도구이다. 그 중에서도 연속체계 모의 실험은 미분 방정식으로 모델링되는 시스템을 대상으로 하는 경우가 맡으며, 이를 위하여 그동안 맡은 연속체계 모의 실험 언어들이 개발되었다. 그러나 그들은 대부분 사용하기가 복잡하여 사용자 편의성을 고려한 모의 실험 언어에 대한 필요성이 증대되었다. 본 연구에서는 사용자에개 최대한 편의성을 제공하는 연속체계 모의 실험 언어인 PCSL (Postech Continuous-system Simulation language)을 개발하였다. PCSL 프로그램은 프로그램 헤더, 상수 정의부, 함수 정의부, 매개 변수 정의부, 초기화 선언부, 모델 정의부, 종료 조건 선언부, 출력 선언부 등으로 나누어 진다. 그리고 출력으로는 계산 결과를 파일에 저장, 흑은 수치로 인쇄하거나 그래프로 그려서 보여준다. PCSL 처리 시스템은 모델 정의부에서 주어진 미분방정식을 해석해서 digital-analog simulation 기법으로 풀 수 있는 형태로 변환하는 번역기와 이렇게 변환된 형태의 미분방정식과 여러 가지 조건들을 고려해서 C 프로그램을 생성해주는 생성기, 생성된 C 프로그램을 실행시켜서 그 결과를 얻는 실행기,그리고 사용자에게 편리한 입출력 방법을 제공하는 사용자 인터페이스로 구성된다. 번역기에서는 모델로 주어진 미분방정식의 종류를 결정한 후에 이들을 digital-analog simulation 기법으로 풀 수 있는 형태로 변환한다. 생성기에서는 번역기의 결과를 받고,프로그램 상의 여러 가지 조건들을 고려해서 C 프로그램을 생성한다. 여기서 생성된 C프로그램은 미분방정식을 포함하는 ‘f.c'와 조건들을 포함하는'main.h', 그리고 digital-analog simulation 기법을 이용하는 모의 실험 알고리즘을 구현한 'main.c'로 구성된다. 그리고 실행기에서는 생성기에서 생성한 C 프로그램을 실행시켜서 결과를 얻는다. 여기에서 필요로 하는 PCSL 프로그램의 내응은 종료 조건 선언부, 출력 선언부 등이다. 마지막으로 사용자 인터페이스는 사용자가 간편하게 PCSL 프로그램을 입력할 수 있게 도와주며 모의 실험 결과를 쉽게 화면상에 보여주기 위한 것이다. 이 때에 사용자가 원하면 계산 결과를 그래프로 그려서 보여주는 기능과 화면에 보이는 결과를 프린터로 출력할 수 있는 기능을 제공한다. 실형 결과로는 먼저 선형 상미분방정식의 예로 mass-damper-spring system, 비선형 상미분방정식의 예로는 van der Pol 방정식, 연립 상미분방정식의 예로는 mixing tank problem 등을 보였으며, 그의 공학에서 일어나는 여러 가지 문제들도 다루었다.

Keywords