fortran

    0

    1답변

    에서 gfortran을 사용하는 OPEN 문에서 구문 오류 Cygwin을 사용하여 'zone_b.f'라는 Fortran 소스 파일을 컴파일하려고하면 실행 프로그램을 생성 할 때 오류가 발생합니다. 포트란 파일은 웹에서 다운로드 할 수 있습니다. 정확한 코드는 here에서 볼 수 있습니다. 나는 다음과 같은 오류 발생 다음 명령을 사용하여 컴파일 할 때 :

    0

    1답변

    Duffing 방정식에 대한 간단한 한계 사이클을 성공적으로 보여주는 프로그램을 작성했습니다. 그러나 이제는이 경우 Poincaré 섹션을 그려야합니다. t*omega = 2*pi*n과 같은 일정한 시간 간격으로 위상 공간 다이어그램의 스냅 샷을 찍어서이 작업을 수행해야합니다. 이 경우에 오메가가 1로 설정되어 있기 때문에 이것은 단지 t = 2*pi*n

    2

    1답변

    프로그램이 디버그 플래그 인 -g을 컴파일하면 추가 정보 로깅을 추가하려고합니다. gfortran을 사용하고 있습니다 (비록 내가 -g이 보편적이라고 생각하기는하지만). 이 경우 프로그램을 밟아 보면 gdb에서 특히 지루할 것입니다. if (compiledwithg()) then print *, extraNiceInfo endif 내가 다음

    2

    1답변

    파일의 특정 위치에 쓸 데이터가 있습니다. 각 위치는 나에게 배열로 주어진다. 현재 mpi_file_write_at를 사용하여 특정 위치에 각 변수를 작성하여 변수를 작성합니다. 위치는 인접하지도 않고 순서가 지정되지 않으므로 프로그램이 파일을 앞뒤로 이동합니다. DO I=1,SIZE(VALUES) POS=ALL_POS(I) VAL=VAL

    1

    2답변

    Fortran에서 문자열을 반복 할 수 있는지 알고 싶습니다. 예를 들어 다음 코드 있는지 알고 싶습니다 DO p=a,b,c,t,r ... END DO 는 페이지가 writen 때마다 A B C 형 t 및 R을 대체 할 것이다.

    1

    1답변

    더 작은 차원의 배열에 대한 포인터를 만들고 싶습니다. 예를 들어, 배열이 arr(1:2, 1:10, 1:10)입니다. 이제는 arr(1:1, 1:10, 1:10)에 대한 포인터를 만들고 싶습니다. 그러나 먼저 인덱스와 같은 모양으로 이름을 지정해야할지 모릅니다. (2 : 2, 1:10, 1 : 10). 2 차원 (매트릭스)의 배열을 함수에 보내고 싶기 때

    1

    1답변

    나는 여기 차원 2의 랜덤 워크 (random walk)에 대한 매우 간단한 프로그램 (이론 물리학에 대한 수치 메소드 내 클래스) 썼다는 것입니다 : 결국 program random_walk implicit none integer, parameter :: Nwalker = 1000000 integer, parameter :: Nstep = 100

    1

    1답변

    간단한 질문 : 저는 대기 모델에서 Fortran 코드를보고 있습니다. 실제 변수가 선언 될 때마다 항상 선언됩니다. real :: foo = 1 대신 real :: foo = 1.으로 지정하십시오. 그 뒤에 오는 소수점이 필요합니까? 그리고 이름 목록 파일에서 매개 변수를 읽을 때 이러한 규칙이 변경됩니까? 예를 들어, I는 이름 목록 대신 &main_n

    2

    1답변

    가변 길이 문자열을 사용하여 NetCDF에서 일부 데이터를 읽으려고합니다. NetCDF 호출을 사용하려면 데이터를 수용 할만큼 충분히 큰 문자열을 제공해야합니다. 그러나 나는 문제가있다. gfortran 컴파일러의 이상한 동작에서 문제를 제거했습니다. 적어도 그것이 그렇다고 생각하지만 Fortran 90 기능 일 수 있습니다. 여기 샘플 코드입니다 : pr

    1

    1답변

    포트란과 관련하여 흥미로운 문제가 있습니다. 즉, 774840977에 3을 곱해서 1을 더하려고 할 때 일관된 산술 실수를하는 것처럼 보입니다. -1970444364를 인쇄합니다. 이는 분명히 정답이 아닙니다. 이제는 다른 곳에서도 이와 똑같은 실수를 저지르고 있다고 생각합니다. 그러나 일어날 때 이것을 찾아내는 것은 어렵습니다. 아래의 do 루프는 일반적