Springen naar inhoud

Output uit subroutine in fortran


  • Log in om te kunnen reageren

#1

Merien

    Merien


  • >100 berichten
  • 124 berichten
  • Ervaren gebruiker

Geplaatst op 05 oktober 2009 - 16:09

Hoe kan ik de variabele 'B' uit mijn subroutine laten komen. Het allocaten wil niet lukken. Ideetjes zijn een beetje op.

De personen na mij die moeten namelijk gebruik maken van de 4D matrix 'B' die uit mijn subroutine zou moeten komen, maar tijdens het compilen blijft ie maar om de input 'B' vragen... :eusa_whistle:

Hieronder één van mijn probeerseltjes. Ik hoop dat het idee duidelijk is.
program wrapper

implicit none
double precision :: h, current, B_p, H_p
integer :: num_wires, B_path, L_path, H_path
real :: start, finish
double precision, allocatable, dimension (:,:,:,:) :: B

write(*,*) '- h -  voer de stapgrootte in mm in: '
read(*,*) h
write(*,*) '- num_wires -  voer het aantal draden in: '
read(*,*) num_wires
write(*,*) '- I -  voer de stroomsterkte door de spoel in (in ampère): '
read(*,*) current
write(*,*) '- B_p -  voer de breedte van het pad in (in meter): '
read(*,*) B_p
write(*,*) '- H_p -  voer de hoogte van het pad in (in meter): '
read(*,*) H_p

B_path = B_p/(h/1000)+1
L_path = 1.2/(h/1000)+1
H_path = H_p/(h/1000)+1
allocate( B(L_path, B_path, H_path, 3) )
B = 0.0



 call cpu_time(start)

 call Calc_B (h, num_wires, current, B_p, H_p, B) 
 
 call cpu_time(finish)
 write(*,*) 'REKENTIJD: ', finish - start, ' seconden'



end program wrapper

subroutine Calc_B (h, num_wires, current, B_p, H_p, B)

blablabla...

Dit forum kan gratis blijven vanwege banners als deze. Door te registeren zal de onderstaande banner overigens verdwijnen.

#2

Merien

    Merien


  • >100 berichten
  • 124 berichten
  • Ervaren gebruiker

Geplaatst op 07 oktober 2009 - 09:38

Hehehe...en toen bleek de compiler niet correct geìnstalleerd... :eusa_whistle:

Alles werkt ](*,)





0 gebruiker(s) lezen dit onderwerp

0 leden, 0 bezoekers, 0 anonieme gebruikers

Ook adverteren op onze website? Lees hier meer!

Vacatures