"수치해석" 시간에 배우는 FORTRAN --;

글쓴이: 익명 사용자 / 작성시간: 수, 2001/03/21 - 2:04오전
이번에 복학해서 부푼 꿈을 안고 1학년때의 성적부진을 만회하고자
수업에 열심인 공대 학생인데요. 꽈가 토목, 환경인데 그 중에
"수치해석"이라는 강의가 있습니다. 굳이 관련학과와의 연관성을
떠나서도 거의 모든 공학계열에 관여하고 있는 강의 같은데요.
글쎄, 수치해석의 도구로써 FORTRAN을 기반으로 책의 씌어져
있어요. 그리고 포트란코드가 베이식과 비교, 대조되어 보여
지는데 저는 지금 열씸히 씨와 파이쓴, PHP를 배우고 있는
입장에 또 한가지 보태서(물론 깊이는 안들어가겠지만)
배운다는게 걱정이네요. 포트란이라면 벌써 몇년전부터 종자가
말랐다는 이야기를 들었는데..음.. 어쨋든 배워두면 좋지만..
씨는 수치해석의 도구로써만 배우기엔 너무 힘들어서
아직까지 적합한 언어가 나오지 않아서 인가..
쩝..
뒤로걷는 느낌이 좀 듭니다.
Forums:
좀 가물거리기는 하지만...
BASIC, FORTRAN, COBOL...
뭐 이런 순으로 학교에서 배운기억은 나네요.
위에 쓴 언어들이 장점은 배우기가 쉽다는 거죠.
하지만 FORTRAN, COBOL은 사실 줄 맞추는 것 때문에 고생을 약간하죠.
FORTRAN은 7줄부터 시작해야하고 라벨은 1번째 줄부터 5번째까지만 가능하고
6번째는 '*'로 주석을 달 수 있고...
음... 많이 지났는데도 약간은 기억이 나네요...
하지만 어렵진 않아요. C에 비하면 양반이죠. C는 완전히 암호문 같지만
FORTRAN은 그래도 READ, WRITE 같이 정상적으로(?) 쓰여지는 명령어들이
있으니까요... ^^;
열씸히 하세요... 재미있는 경험이 될테니까요... 화이팅~~~
FORTRAN 이 최고라는 군요(g77 빼고)
지는데 저는 지금 열씸히 씨와 파이쓴, PHP를 배우고 있는
입장에 또 한가지 보태서(물론 깊이는 안들어가겠지만)
파이썬을 제일 좋아하지만 C, 파이썬, PHP, 포트란 모두
배우시는 것이 좋아 보입니다. 워낙이 성격이 다른 언어들이라
나름대로 제각기 용도가 다르지 않나요?
배운다는게 걱정이네요. 포트란이라면 벌써 몇년전부터 종자가
말랐다는 이야기를 들었는데..음.. 어쨋든 배워두면 좋지만..
친구가 계산화학을 하는데, 이야기를 들어보니 수치연산에는
포트란이 최고라는 군요. 원래 수치연산용을 스펙이 잡힌 것일 뿐만
아니라 컴파일러도 수치연산 속도를 염두에 두고 만든다는 군요.
수십편 쌓인 라이브러리도 무시할 수 없고. 그래서 계산할 생각이면
포트란이 최고랍디다. 계속 새 버전(표준)과 새 컴파일러가 나오고 ...
다만 g77은 꽝이랍니다. C만큼 느려서 ...
고로 포트란이 종자 말랐다는 이야기는 과장인 것 같습니다. 물론
컴퓨터로 밥먹으려면 별로 쓸데가 없겠지만, 컴퓨터로 하는 계산으로
밥먹으려면 여전히 & 앞으로도 포트란이 제일 먼저 익혀야될 언어겠지요.
고로 뒤로 가는 것은 전혀 아닐 듯.
전자/전기 관련 학과에만 수치해석이
있는 줄 알았는데.. 다른 과에서두 배우는군요..
제어과(제가 제어과가 아니라..)에선 수치해석을 매트랩으루 하더군요..
제가 포트란은 잘 모르지만.. 아마 수치해석에 적합하기 때문에 배우고 사용하는 것이
아닐까요.. ^^;
Re: "수치해석" 시간에 배우는 FORTRAN --;
포트란은 용도가 수치계산용으로 나온만큼 수치해석에서 아주 탁월합니다.
종자가 말랐다는 것은 글쓰신 분이 잘 모르셔서 그런거지, 자연과학분야에서는
C같은 것은 명함도 못내밉니다. 그리고 포트란도 포트란77, 포트란90, 95를 거쳐
포트란 2000이 나오려고 한답니다. 여러분이 대부분 아시는 것은 포트란 77이죠
참 여러가지 제약이 많고, 귀찮은데요. 포트란90만 되어도 줄 맞추고 어쩌구
하는 제약은 모두 사라졌고 아주 편리해졌습니다. 수치계산의 정밀도 면에서는
포트란을 따라올 언어는 거의 없습니다. 그리고, 지금까지 쌓여온 수많은 코드와
자료의 재활용 면에서도 아주 유리하죠....그리고, 포트란 그자체는 그렇게 어렵지
않습니다.....포트란90용 책을 추천하라면 Nyhoff가쓴 Fortran90 for engineer and
scientist가 쉽고 예제를 통한 풀이도 좋더군요..포트란77 배우시면서 한번
포트란90도 배워보시길......그럼
Re: "수치해석" 시간에 배우는 FORTRAN --;
Fortran요, 배우기 시작한 지 7년이 지났는데 아직도 그것 땜에
머리싸매고 공부한답니다.
예, 수치해석 분야에서는 아마도 부동의 1위가 아닌가(물론 우주시대가
막 열리기 시작하던 그당시 부터 축적되어진 경험을 포함하여)..
그리고 줄 맞추는 문제요?? compiler(? f77,f90,..?)에 따라
free format 도 있네요.
그리고 열 유체 분야의 상용 해석 프로그램의(STAR-CD ,CFX,.등등) solver는
대부분이 fortran으로 쓰여져 있다는 군요.(어마어마하게 비싸다고.누가
그러더군요..?)
즉 fortran을 배운다는 것은 후퇴가 아니라, 한 전문적인 분야로 뛰어든다는
것이 옳지 않은가 생각해봅니다. 저도 3년 전만해도 구닥다리라고
생각했었는데 지금의 생각은 조금 변한 것 같습니다.
기본적인 것은 열심히 배워두시는게 좋으실 듯 싶네요.
Re: 저는 대안(?)으로 GSL을 생각해보는데..
GNU Scientific Library 가 있죠.
학부에서 배우는 수치해석학에 대한 솔루션 정도야 이미 C/C++로도 잘 나와있지 않나요? (저도 학부생.. ^^)
그리고 수치해석이든 게임 프로그래밍이든 - 언어가 중요한 게 아니라 그 분야의 라이브러리가 얼마나 잘
만들어져 있느냐가 문제일듯... Fortran이 쉬워봐야 그것도 하나의 언어죠- 현재 가장 익숙한 게 C라면
당연히 Fortran보다 C/C++이 훨씬 쉽겠죠.
** 쩝, GSL로 요번 학기 전산물리(수치해석보다는 물리학 문제의 모델링에 중점을 둠) 프로젝트라도
해보려는데... 역쉬 "시간"이... T.T
그리고 아직은.. 수치해석/과학라이브러리가 제일 빠방하게 마련되어 있는 건 Fortran? 이건 GSL의
매뉴얼에서도 언급되어 있더군요.
Re: "수치해석" 시간에 배우는 FORTRAN --;
G77이 느린 이유는, 진정한 포트란이 아니기 때문입니다.
컴파일시 f2c란 프로그램을 이용하여 소스를 c코드로 변환하여 컴파일 합니다.
컴파일한 자체가 c보다 빨라질수 없는거지요.
돈주고 파는 포트란은 물론 그렇지 않고요..
제가 관리하는 서버중 1대는 digital alpha + digital unix인데..
요놈에 돈주고 산 포트란을 깔아 씁니다.
나머지 인텔기반 리눅스 기계에서는 g77을 쓰고요.
전 수치해석 전공이 아니라 잘 모르지만,
수치해석 하시는 분은 확실이 돈주고 산놈이 빠르다고 하시군요..
거럼..
Re: "수치해석" 시간에 배우는 FORTRAN --;
잠시 어디서 들은 기억이 있는데, 병렬처리 슈퍼컴 프로그램밍은
상당수 C/C++ Fortran 같은 걸로 하는 걸로 알고 있는데요. 그리고
계속해서 새로운 버전이 나오고 있구요. 구닥다리는 아니라고 봅니다.
그리고 저 같은 경우도 전공관련 코드를 보면 포트란이 훨씬 간단해
보이더군요.
Re: "수치해석" 시간에 배우는 FORTRAN --;
흠.. 이번에 저두 수치해석을 듣는데... ( 저두 토목 -_-;)
책에 C 랑 포트란 두가지 언어로 나와 았더군요,.
그러나 확실할게 알고리즘을 표현하는게
역시 포트란이 아닐까 생각합니다.(저만 그런가? -_-;)
재미있씁니다. -_-;
ps 시간나시면 공학용 계산기에 있는 프로그램으로
여러가지 알고리즘을 구현해보세여..재미있습니다.
요며칠 그거 하느라고 날밤새고 있습니다. -)
#ffffff wrote..
이번에 복학해서 부푼 꿈을 안고 1학년때의 성적부진을 만회하고자
수업에 열심인 공대 학생인데요. 꽈가 토목, 환경인데 그 중에
"수치해석"이라는 강의가 있습니다. 굳이 관련학과와의 연관성을
떠나서도 거의 모든 공학계열에 관여하고 있는 강의 같은데요.
글쎄, 수치해석의 도구로써 FORTRAN을 기반으로 책의 씌어져
있어요. 그리고 포트란코드가 베이식과 비교, 대조되어 보여
지는데 저는 지금 열씸히 씨와 파이쓴, PHP를 배우고 있는
입장에 또 한가지 보태서(물론 깊이는 안들어가겠지만)
배운다는게 걱정이네요. 포트란이라면 벌써 몇년전부터 종자가
말랐다는 이야기를 들었는데..음.. 어쨋든 배워두면 좋지만..
씨는 수치해석의 도구로써만 배우기엔 너무 힘들어서
아직까지 적합한 언어가 나오지 않아서 인가..
쩝..
뒤로걷는 느낌이 좀 듭니다.
Re: "수치해석" 시간에 배우는 FORTRAN --;
아마도 수치해석쪽에서 FORTRAN을 못버리는건
언어의 간결함과( 언어자체를 배우기위해서 많은시간을 투자할 필요가 없음)
그 간결함에서 나오는 컴파일코드의 고속성.
컴퓨터의 태동기 부터 수십년간 검증되고 안정화 되어온 수많은 수치해석
관련 라이브러리(IMSL등등)들 때문이 아닌가 생각되네요.
밑에 어떤분이 GSL을 대안으로 생각한다고 하셨는데 기존의 유명한 수치해석
라이브러리에 비교하면 발톱의 때정도나 될라나..
혀튼 요즘의 유명한 공학용 해석프로그램들을 보면 겉모습은 화려한 GUI이지만
내부적으로 해석하는 부분은 거의다 FORTRAN으로 짜여져 있지요.
무식하게 계산해내는거라면 아직 FORTRAN은 건재하다고 봅니다.
실제로 외국에는 FORTRAN관련 제품만 팔아서 먹고 사는 회사가 아직 많습니다.
Re: "수치해석" 시간에 배우는 FORTRAN --;
언젠가 학교 다닐 때 선배 둘이서 C와 Fortran 중에서 어느 것이
빠른지 내기를 한 적이 있습니다.
결과는 예상을 깨고 C의 승리였습니다. 일반적인 계산 코드는
Fortran이 더 빠르지만, C로 웬갖 테크닉을 부리니까 더 빨라지더군요.
거의 C의 언어적 특성을 이용해서 어셈블 코딩을 한 듯한 느낌이
들 정도의 코드였습니다.
저의 생각은? 저는 C를 훨씬 좋아하지만, 자기 편한 거 쓰는 것이
좋겠지요.
저가 나온 학교 모과 모선배는 포트란을 거의 파스칼처럼 사용하는
인간입니다. 그 코드도 나쁘지 않았습니다.
감사함다.
Re: "수치해석" 시간에 배우는 FORTRAN --;
언젠가 학교 다닐 때 선배 둘이서 C와 Fortran 중에서 어느 것이
빠른지 내기를 한 적이 있습니다.
결과는 예상을 깨고 C의 승리였습니다. 일반적인 계산 코드는
Fortran이 더 빠르지만, C로 웬갖 테크닉을 부리니까 더 빨라지더군요.
거의 C의 언어적 특성을 이용해서 어셈블 코딩을 한 듯한 느낌이
들 정도의 코드였습니다.
저의 생각은? 저는 C를 훨씬 좋아하지만, 자기 편한 거 쓰는 것이
좋겠지요.
저가 나온 학교 모과 모선배는 포트란을 거의 파스칼처럼 사용하는
인간입니다. 그 코드도 나쁘지 않았습니다.
감사함다.
Compiler 에 따라서 속도 차이가...
무지하게 납니다. 예를 들어서 g77 같은 경우는 '이게 베이식이야 ?'
라는 생각이 들 정도로 기어서 갑니다.
하지만, Digital 이나 후지쯔의 컴파일러로 컴파일 하면 ... 장난 아닙니다.