Outflow Objects
Outflow Objects can be created within the ProblemModuleInit routine in problem.f90. To create outflows you first need to add a USE statements to your problem.f90
USE Outflows
Then in ProblemModuleInit declare a variable pointer of type OutflowDef
TYPE(OutflowDef), POINTER :: Outflow
Then create the Outflowand set the various parameters as in the following example
CALL CreateOutflow(Outflow) Outflow%velocity=20d0 Outflow%open_angle=1.57 Outflow%radius=2 CALL UpdateOutflow(Outflow)
This diagram shows the outflow geometry. If the open_angle is Pi/2, the base is automatically set to 0. Also, the outflow%fade parameter controls the ramping down of the outflow speed towards the edge of the outflow region. For non-zero opening angles, the fade applies to the angle. For opening angles of 0, the fade applies to the distance from the jet axis.
Here is a full list of the various Outflow parameters with their default values.
TYPE OutflowDef REAL(KIND=qPREC) :: t0=0 !Last time position was updated REAL(KIND=qPREC), DIMENSION(3) :: position = (/0d0,0d0,0d0/) !position of outflow object at t0 REAL(KIND=qPREC), DIMENSION(3) :: velocity = (/0d0,0d0,0d0/) !velocity of outflow object REAL(KIND=qPREC) :: theta=0d0 !Outflow angle from z axis REAL(KIND=qPREC) :: phi=0d0 !Outflow angle around z axis (from x) REAL(KIND=qPREC) :: density=1d0 !Density of Jet REAL(KIND=qPREC) :: temperature=1d0 !Temperature of Jet REAL(KIND=qPREC) :: speed=1d0 !Velocity of Jet REAL(KIND=qPREC) :: B=0 !Strength of peak magnetic field in computational units REAL(KIND=qPREC) :: begin=0 !When does jet turn on REAL(KIND=qPREC) :: duration=huge(1d0) !How long does jet run for REAL(KIND=qPREC) :: decay=0 !How quickly does the jet decay REAL(KIND=qPREC) :: base=0 !cylindrical radius of base of jet (ignored for spherical jets) REAL(KIND=qPREC) :: radius=1d0 !Radius of jet launching region REAL(KIND=qPREC) :: thickness=1d0 !Thickness of source region REAL(KIND=qPREC) :: open_angle=Pi/2d0 !Jet opening angle (half angle) in radians REAL(KIND=qPREC) :: fade=0d0 !Amount of jet fading near edges REAL(KIND=qPREC) :: oscAmplitude=0 !Amplitude of velocity Oscillations REAL(KIND=qPREC) :: oscPeriod=0 !Period of velocity oscillations REAL(KIND=qPREC) :: oscPhase=0 !Initial phase of velocity oscillations REAL(KIND=qPREC) :: PrecessAmplitude=0 !Precession angle in radians - measured from x' axis REAL(KIND=qPREC) :: PrecessPeriod=0 !Period of precession REAL(KIND=qPREC) :: PrecessPhase=0 !Initial phase of precession - measured from x'y' plane in rotated jet frame. END TYPE
Also see http://astrobear.pas.rochester.edu/trac/blog/johannjc08192013
Attachments (2)
- OutflowGeometry.png (164.5 KB ) - added by 10 years ago.
- OutflowObject.pptx (64.6 KB ) - added by 10 years ago.
Download all attachments as: .zip