경계요소법에 대한 객체지향 프로그래밍
본 자료는 4페이지 의 미리보기를 제공합니다. 이미지를 클릭하여 주세요.
닫기
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
해당 자료는 4페이지 까지만 미리보기를 제공합니다.
4페이지 이후부터 다운로드 후 확인할 수 있습니다.

목차

1. 서 론

2. 객체지향 프로그래밍에 대한 기본 원리

3. OOP에 의한 경계요소법
3.1 기본 클래스
3.2 특별한 문제의 BEM 솔루션을 위한 클래스
3.3 문제의 해결

4. 결 론

참 고 문 헌

본문내용

해 결과를 출력한다.
BEM_Object에서 키워드인 "protected"와 "public"는 억세스 지정자이다. 단지, 이 클래스 자체나 자식 클래스는 "protect"라고 기록된 속성과 함수를 억세스 할 수 있다. 그래서 캡슐화의 체계를 보장한다. "public"으로 기록된 함수는 다른 클래스에서 참조될 수 있다. 키워드 "virtual"에서 그 키워드에 선언된 멤버함수는 그것이 불려지는 상황에 관계없이 멤버함수의 적절한 버젼이 사용되도록 한다. 이와 같은 정의로 다형화가 성취되어 증식 루틴들이 구현될 수 있다.
3D 문제에서 3D 클래스는 쉽게 클래스 BEM_Object로부터 파생될 수 있으며 바로 BEM_Object에 대한 가상함수의 증식을 실행한다. 새로운 클래스는 이 클래스의 전체 속성을 계승할 수 있으며 부모 클래스를 억세스 한다. 이것이 일종의 다형화이다. 이 클래스에서 사용된 다른 클래스는 Point, Matix, MaterialCh, BitCard이다. Point는 Carstesian 시스템에서 리얼 포인트를 나타내도록 설계하며, MaterialCh는 재료의 형을 나타내고, Matrix는 수학적인 행렬에 대한 객체 명이다. BitCard는 단지 컴퓨터 메모리에서 한 바이트 길이를 가진다는 것을 정의하며 경계 형을 기록하는데 사용한다. 두 개의 중요한 멤버함수에 대한 소스코드가 그림4와 그림5에 나타나 있다.
3.3 문제의 해결
BEM의 절차는 위의 클래스의 정의처럼 매우 간결하다. 먼저, 설계된 BEM 클래스 데이터 형으로 하나의 객체를 정의한다. 그때 선택 메시지에 따라 명시된 활동을 실행한다. C++코드로 작성된 주요 프로그램이 그림6에서 보여주고 있다. 클래스의 소스코드는 헤드 파일에 포함되어 있다.
# include
# include
# include
# include
# include
# include
# include "matrix.h"
# include "pointm.h"
# include "const.h"
# include "basic.h"
# include "bem.h"
//main
void main()
{
BEM_Object thisProblem;
thisProblem.InitialOut();
thisProblem.Assembler();
thisProblem.EquationSolve();
thisProblem.Results();
}
그림 6. Source code of main program.
4. 결 론
BEM의 기본 개념을 OOP로 표현하였다. 데이터에 대한 모듈러 절차(서브루틴)가 집중하는 절차 지향 프로그램과 비교해서, BEM에 대한 OOP의 주요 작업은 어떻게 실제 문제를 가정하여 객체를 설계하느냐 하는 것이다. 계승, 캡슐화, 다형화와 같은 OOP의 특징은 다른 체계의 문제들을 다루는 일반적인 BEM 소프트웨어에 사용하는데 매우 효과적이다. 먼저, 우리는 일반적인 BEM 속성과 활동(함수)에 대한 데이터 추상화를 시작하고 기본 클래스를 설계한다. 둘째로, 다른 문제들에 대한 클래스는 기본 클래스로부터 파생될 수 있으며, 그것은 기본 클래스에 대한 부분 속성이나 전체 속성, 활동을 계승하게 된다. 파생된 클래스의 부가적인 특징은 OOP의 다형화에 유용할 것이다. 마지막으로, 명시된 문제의 객체는 그 문제의 메시지와 함께 정의한다. 그래서 객체는 위에서 주어진 절차에 따라 활동하며 문제를 해결한다. OOP로 작성된 BEM의 코드는 매우 간결하며, 읽고, 다시 쓰고, 유지하기가 쉽다. 반면에, OOP 언어 그 자체는 다른 응용 소프트웨어보다 시스템 소프트웨어로 사용할 수 있다. 그래서, 뛰어난 컴퓨터 인터페이스를 갖는 BEM 소프트웨어를 작성할 수 있다.
참 고 문 헌
1. Shriver B. Wenger P. Research directions in object-oriented programming. Cam-
bridge,MA:MIT Press,1987.
2. Stroutstrup B. The C++programming language. Reading,MA:Addison-Wesely, 1982.
3. Dubois-PelerinY,Zimmermann T. Object-oriented finite element programming. III An efficient implementation in C++. Computing Methods and Applied Mechanical Engineering 1993;108:165-83.
4. Mackie RI. Object oriented programming of the finite element. International Journal of Numerical Methods Engineering 1992;35:425-36.
5. Abdalla JA, Yoon CJ. Object oriented finite element and graphics data translation facility. ASCE Journal of Computing in Civil Engineering 1992;6:302-22.
6. Forde BWR, Foschi RB, Stiemer SF. Objec-oriented finite element analysis, Computing and Structures 1990;34:353-74.
7. Zeglinski GW, Han RPS. Object oriented matrix classes for use in a finite element code using C++. International Journal of Numerical in Methods Engineering 1994;37:3921-37.
8. Brabbia CA, Telles JCT, Wrobel LC. Boundary element techniques; theory and applications in engineering. Berlin:Springer Verlag,1984.
  • 가격2,300
  • 페이지수12페이지
  • 등록일2002.12.06
  • 저작시기2002.12
  • 파일형식한글(hwp)
  • 자료번호#214637
본 자료는 최근 2주간 다운받은 회원이 없습니다.
청소해
다운로드 장바구니