C+ C NAME: C Mk_D2V N C PURPOSE: C Make a velocity map at the density map surface if there is none available C by assuming constant momentum flux (that mv^2 = constant). C (Note that there are two subroutines here - one to make a density C map as well.) This program is only used if there is no data for one C or the other analysis. C CATEGORY: C Data processing C CALLING SEQUENCE: C call Mk_D2VN(N,DD,VV,DEN1AU,Speed,FALLOFF,RR) C INPUTS: C DD(N) real Density map C N integer # data points C DEN1AU real Average solar wind density at 1 AU C Speed real Average solar wind speed at 1 AU C FALLOFF real Radial falloff of density C RR real Velocity map reference height C OUTPUTS: C VV(N) real Velocity map C FUNCTIONS/SUBROUTINES: C PROCEDURE: C Bad values (indicated by BadR4()) are not processed C MODIFICATION HISTORY: C NOV, 1995 B. Jackson (STEL,UCSD) C- subroutine Mk_D2VN(N,DD,VV,DEN1AU,Speed,FALLOFF,RR) real VV(N), ! Velocity map & DD(N) ! Density map Bad = BadR4() R1AU = 1.0 CONST = (Speed**2)*DEN1AU*((R1AU/RR)**FALLOFF) do I=1,N ! Make velocity map if (DD(I) .eq. Bad) then VV(I) = Bad else VV(I) = sqrt(CONST/DD(I)) end if end do return end C+ C NAME: C Mk_V2D N C PURPOSE: C Make a density map from the velocity map surface using the constant momentum C flux assumption (that mv^2 = constant). C CATEGORY: C Data processing C CALLING SEQUENCE: C call Mk_V2DN(N,VV,DD,Speed,DEN1AU,RR) C INPUTS: C VV(N) real Velocity map C nLng integer # longitudes C nLat integer # latitudes C Speed real Average solar wind speed at 1 AU C DEN1AU real Average solar wind density at 1 AU C FALLOFF real Radial falloff of density C RR real Velocity map reference height C OUTPUTS: C DD(nLng,nLat) real Density map C FUNCTIONS/SUBROUTINES: C PROCEDURE: C Bad values (indicated by BadR4()) are not processed C MODIFICATION HISTORY: C NOV, 1995 B. Jackson (STEL,UCSD) C- subroutine Mk_V2DN(N,VV,DD,Speed,DEN1AU,FALLOFF,RR) real VV(N), DD(N) ! Velocity and density Bad = BadR4() R1AU = 1.0 CONST = (Speed**2)*DEN1AU*((R1AU/RR)**FALLOFF) do I=1,N if (VV(I) .eq. Bad) then DD(I) = Bad else DD(I) = CONST/(VV(I)**2 ) end if end do return end