wiki:CoolingObjects

Version 2 (modified by trac, 12 years ago) ( diff )

Cooling Objects

A source term that in general applies everywhere, but may be applied only in certain regions:

If you wish to use this object, you must have iCooling as a variable in your &ProblemData namelist (and declare it as an integer), and, in addition, add the following to your problem.f90 file in ProblemModuleInit:

    IF(iCooling>0) THEN
       IF (.NOT. lRestart) THEN
           ! see sources/cooling.f90::CreateCoolingObject for
           ! default values of a cooling source term
           CALL CreateCoolingObject(coolingobj)
       ELSE
           coolingobj => firstcoolingobj
       END IF
    END IF

    coolingobj%iCooling=iCooling
    SELECT CASE(iCooling) ! cases defined in sources/cooling.f90
    CASE(NoCool)          ! 0
    CASE(AnalyticCool)    ! 1
       coolingobj%alpha=alpha
       coolingobj%beta=beta
    CASE(DMCool)          ! 2
    CASE(IICool)          ! 3
    CASE DEFAULT
    END SELECT

    coolingobj%floortemp=0.001   ! Floortemp shuts off cooling lower than this number
    coolingobj%mintemp=0.001     ! Mintemp protects against temperatures lower 
                                 ! than this number (always resets to this temperature)

Note: See TracWiki for help on using the wiki.