MATLAB에서 행한 것을 모방하기 위해 Fortran 95 코드를 작성하려고하지만 배열 인덱스에 액세스하는 데 어려움을 겪고 있습니다. 코드는 아래에 표시된 것보다 훨씬 복잡하지만 이것이 요지입니다. 나는 do 루프를 피하는 것을 선호한다.Matlab의 Fortran 논리 인덱스
-> Matlab 명령. a, b, c가 같은 크기라고 가정합니다.
indx=find(a<0); % find all negative values of "a"
b(indx)=30.; % set those same elements in different array "b" to 30.
c(indx)=b(indx)./a(indx)
etc.
etc.
어떻게 저장하고 포트란에서 다른 배열에서 동일한 인덱스의 ""배열에서 해당 인덱스를 사용하여 조작 할 수 있습니다?
의 사용 가능한 복제 (https://stackoverflow.com/questions/21435589/fortran -equivalent-of-numpy-where-function) – francescalus
가깝지만 다른 배열에 적용 할 인덱스를 생성하는 데 유용하지 않은 논리 배열을 반환합니다. –
'pack'과 논리적 마스크를 사용하여 벡터 첨자의 역할을하는 인덱스의 배열을 제공하거나 마스크와 함께'where' 문/구조를 사용합니다. – francescalus