Hey Danke Casioi für die vielen Ideen
wie dein Tipp schon sagt, ist das wohl der einzige weg:
***
if(2d) then
berechnung mit CellNum2d
else
berechnung mit CellNum3d
endif
***
so habe ich das im Programm jetzt auch ausgeführt, das wollte ich halt umgehen
dass ich dafür zwei Variablen benutzen muss, da im Programm dann sehr oft die Unterscheidung kommt, ob jetzt CellNum2d oder CellNum3d benutzt wird
wie hier:
if (dim3log) then
NumZ=1
endif
do i=1,NumX
do j=1,NumY
do k=1,NumZ !für 3D
if (dim3log) then
ic=CellNum3d(i,j,k) !für 3D
else
ic=CellNum2d(i,j)
endif
enddo
enddo
enddo
und ich hatte halt Angst, dass dadurch dadurch die Rechnendauer ansteigt, da er immer wieder die if-Abfrage behandeln muss.
Aber wie gesagt ist das der einzige Weg.
Vielen Dank nochmal!