2014-06-21 1 views
0

의 복합 유형 배열을 선언하는 방법내가 리눅스에 포트란에서 복잡한 유형의 1 차원 배열을 초기화 할 몇 가지 도움이 필요 포트란 90

문 위
complex(kind=dp),dimension(8),public:: zc = (/(0.0_dp,0.0_dp) ,(-3.496991526333D001,0.0_dp) , 
(-3.944481647220D+000 , 0.0_dp) , (-4.294180799072D+000 , 0.0_dp) , 
(-4.294180799072D+000, -1.0_dp) , (-3.944481647220D+000,-1.0_dp) , 
(-3.496991526333D-   001,-1.0_dp) , (0.0_dp,-1.0_dp)/) ! z computational 

는 (Windows 용) 포트란 파워 스테이션에서 작동하지만 Linux에서. 그것은 다음과 같은 오류를

Missing ')' in statement at or before (1) 

참고를 제공합니다는 '1'B 3, 4 단지 어떤 w/쉼표입니다. 프로그램의 확장자는 .f90입니다.

+0

Linux의 컴파일러는 무엇입니까? 어떤 소스 형태입니까? 어떤 열에서 시작합니까? –

+0

@VladimirF, 대단히 감사합니다. 코드는 앰퍼샌드를 사용하여 작업했습니다. 확장 프로그램에서 자유 형식 (.f90)을 사용하고 있다고 결론을 내릴 수 있습니다. 그러나 여는 괄호와 슬래시 사이에 공백을두면 컴파일 오류가 발생합니다. 그래서 공간도 중요합니다. 필자는 각 복소수 다음에 앰퍼샌드를 배치 한 다음 새로운 라인에서 계속했습니다. 다시 감사합니다 – user3763284

답변

2

올바른 줄 바꾸기 방법을 사용해야합니다. 고정 된 양식 (보통 .f, .form)을 사용하는 경우 새 줄의 여섯 번째 열에 문자를 놓은 다음 명령문을 작성하십시오. 공백이 자유 형식으로 중요하기 때문에이 값을 사용하는 것이 좋습니다. 그렇지 않으면 -3.496991526333D- 001이 작동하지 않습니다. 그러나 !은 자유 형식의 주석을 나타냅니다. 자유 형식을 사용하는 경우 번호를 수정하십시오. 고정 된 형태로 컬럼 72를지나 가지 않도록하십시오. 예를 들어

: 자유 형식 (일반적으로 .f90) 다음의 하나에 계속 라인의에서 &을 사용

 complex(kind=dp),dimension(8),public:: zc = (/(0.0_dp,0.0_dp) ,(-3.496991526333D001,0.0_dp) , 
    * (-3.944481647220D+000 , 0.0_dp) , (-4.294180799072D+000 , 0.0_dp) , 
    * (-4.294180799072D+000, -1.0_dp) , (-3.944481647220D+000,-1.0_dp) , 
    * (-3.496991526333D-001,-1.0_dp) , (0.0_dp,-1.0_dp)/) 
C z computational 

.

complex(kind=dp),dimension(8),public:: zc = (/(0.0_dp,0.0_dp) ,(-3.496991526333D001,0.0_dp) , & 
(-3.944481647220D+000 , 0.0_dp) , (-4.294180799072D+000 , 0.0_dp) , & 
(-4.294180799072D+000, -1.0_dp) , (-3.944481647220D+000,-1.0_dp) , & 
(-3.496991526333D-001,-1.0_dp) , (0.0_dp,-1.0_dp)/) !z computational 

올바른 소스 형식에 대한 자세한 내용은 Fortran 튜토리얼을 참조하십시오.

관련 문제