Class Behave

java.lang.Object
  extended byBehave

public class Behave
extends java.lang.Object

calculates the fire behavior according to the Rothermel model.


Field Summary
 double A
           
 double al
           
 double alDeg
           
 double alRad
           
 double asp
           
 double asp_r
           
 double B
           
 double beta
           
 double beta_opt
           
 double beta_ratio
           
 double C
           
 boolean canDerive
           
 double cos_asp
           
 double cos_splitRad
           
 double cos_wdr
           
 double dead
           
 double depth
           
 double E
           
 double efw
           
 double eps_d1
           
 double eps_d2
           
 double eps_d3
           
 double eps_lh
           
 double eps_lw
           
 double eta_M
           
 double eta_Md
           
 double eta_Ml
           
 double eta_s
           
 double fli
           
 double fln
           
 int fuelModel
           
 double fzd
           
 double gamma
           
 double gamma_max
           
 double heat
           
 double hn_d1
           
 double hn_d2
           
 double hn_d3
           
 double hn_lh
           
 double hn_lw
           
 double hpa
           
 double hsk
           
 double hskz
           
 double I_r
           
 boolean isCalculated
           
 double live
           
 double m_d1
           
 double m_d2
           
 double m_d3
           
 double m_lh
           
 double m_lw
           
 double Mf_dead
           
 double mx
           
 double Mx_live
           
 java.lang.String name
           
static double[] noData
           
 double phi_s
           
 double phi_t
           
 double phi_w
           
 double q_d1
           
 double q_d2
           
 double q_d3
           
 double q_lh
           
 double q_lw
           
 double rho_b
           
 double rho_p
           
 double rm_d
           
 double rm_l
           
 double ros
           
 double s_e
           
 double s_t
           
 double s2w_d
           
 double s2w_l
           
 double s2w_t
           
 double sdr
           
 double sdr_r
           
 double sigma
           
 double sin_asp
           
 double sin_splitRad
           
 double sin_wdr
           
 double slp
           
 double slp_r
           
 double splitDeg
           
 double splitRad
           
 double sumhd
           
 double sumhdm
           
 double sumhl
           
 double sv_d1
           
 double sv_d2
           
 double sv_d3
           
 double sv_lh
           
 double sv_lw
           
 double sw_d
           
 double sw_d1
           
 double sw_d2
           
 double sw_d3
           
 double sw_l
           
 double sw_lh
           
 double sw_lw
           
 double sw_t
           
 double sw2_d
           
 double sw2_l
           
 double sw2_t
           
 double swm_d
           
 double swm_l
           
 double swm_t
           
 double tan_slp
           
 double tau
           
 double vl
           
 double vx
           
 double vy
           
 double W
           
 double w_n
           
 double w0
           
 double w0_d1
           
 double w0_d2
           
 double w0_d3
           
 double w0_lh
           
 double w0_lw
           
 double wdr
           
 double wdr_r
           
 double wn_d
           
 double wn_d1
           
 double wn_d2
           
 double wn_d3
           
 double wn_l
           
 double wn_lh
           
 double wn_lw
           
 double wsp
           
 double xi
           
 
Constructor Summary
Behave()
          Initializes class variables
 
Method Summary
 java.lang.String calc()
          Calculates the Rothermel equations wrapper for the actual calculation, it first checks for consistent data.
protected  void calcFuel()
          calcFuel calculates: - characteristic surface-to-volume ration (sigma) - bulk densities (rho_b) - packing ratios (beta, beta_opt, beta_ratio) - net fuel loadings (wn_..) Exceptions are thrown if - w0 <= 0.
 void checkFuel()
          check if there is any fuel
protected  void combinedWindAndSlopeFactor()
          phi combined wind and slope factor assumptions: wsp > 0.
 double degreesToRadians(double degrees)
           
 double getRos()
          Returns the rate of spread
 boolean hasFuel()
          Is there fuel?
protected  void heatSink()
          heat sink term Rothermel (1972): eq.
protected  void moistureDamping()
          moistureDamping ********************************************************************* calculate the moisture damping coefficients for dead and live fuel Exceptions thrown if mx <= 0.
 double radiansToDegrees(double radians)
           
protected  void reactionVelocity()
          gamma': reaction velocity
 void setFuelModel(int fuelModel)
          Set the fuel model number.
 void setParameterMean(java.lang.String key, double value)
          Sets the mean value, i.e.
protected  void slopeFactor()
          phi_s: slope factor called from combinedWindAndSlopeFactor()
protected  void windFactor()
          phi_w: wind factor called from combinedWindAndSlopeFactor() conversion: sigma [1/ft] = sigma[1/m] * 0.3048! original formulae in Rothermel 1972, eq.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

noData

public static double[] noData

isCalculated

public boolean isCalculated

canDerive

public boolean canDerive

fuelModel

public int fuelModel

w0_d1

public double w0_d1

w0_d2

public double w0_d2

w0_d3

public double w0_d3

w0_lh

public double w0_lh

w0_lw

public double w0_lw

sv_d1

public double sv_d1

sv_d2

public double sv_d2

sv_d3

public double sv_d3

sv_lh

public double sv_lh

sv_lw

public double sv_lw

depth

public double depth

rho_p

public double rho_p

heat

public double heat

s_t

public double s_t

s_e

public double s_e

mx

public double mx

m_d1

public double m_d1

m_d2

public double m_d2

m_d3

public double m_d3

m_lh

public double m_lh

m_lw

public double m_lw

wsp

public double wsp

wdr

public double wdr

slp

public double slp

asp

public double asp

rho_b

public double rho_b

beta

public double beta

beta_opt

public double beta_opt

beta_ratio

public double beta_ratio

w_n

public double w_n

eta_s

public double eta_s

eta_M

public double eta_M

xi

public double xi

A

public double A

gamma

public double gamma

gamma_max

public double gamma_max

I_r

public double I_r

phi_s

public double phi_s

B

public double B

C

public double C

E

public double E

phi_w

public double phi_w

phi_t

public double phi_t

vx

public double vx

vy

public double vy

vl

public double vl

asp_r

public double asp_r

slp_r

public double slp_r

wdr_r

public double wdr_r

sdr_r

public double sdr_r

sin_asp

public double sin_asp

cos_asp

public double cos_asp

sin_wdr

public double sin_wdr

cos_wdr

public double cos_wdr

tan_slp

public double tan_slp

al

public double al

splitDeg

public double splitDeg

splitRad

public double splitRad

cos_splitRad

public double cos_splitRad

sin_splitRad

public double sin_splitRad

alDeg

public double alDeg

alRad

public double alRad

sw_d1

public double sw_d1

sw_d2

public double sw_d2

sw_d3

public double sw_d3

sw_lh

public double sw_lh

sw_lw

public double sw_lw

sw_d

public double sw_d

sw_l

public double sw_l

sw_t

public double sw_t

s2w_d

public double s2w_d

s2w_l

public double s2w_l

s2w_t

public double s2w_t

sw2_d

public double sw2_d

sw2_l

public double sw2_l

sw2_t

public double sw2_t

swm_d

public double swm_d

swm_l

public double swm_l

swm_t

public double swm_t

sigma

public double sigma

w0

public double w0

wn_d1

public double wn_d1

wn_d2

public double wn_d2

wn_d3

public double wn_d3

wn_lh

public double wn_lh

wn_lw

public double wn_lw

wn_d

public double wn_d

wn_l

public double wn_l

eps_d1

public double eps_d1

eps_d2

public double eps_d2

eps_d3

public double eps_d3

eps_lh

public double eps_lh

eps_lw

public double eps_lw

q_d1

public double q_d1

q_d2

public double q_d2

q_d3

public double q_d3

q_lh

public double q_lh

q_lw

public double q_lw

hskz

public double hskz

hn_d1

public double hn_d1

hn_d2

public double hn_d2

hn_d3

public double hn_d3

hn_lh

public double hn_lh

hn_lw

public double hn_lw

sumhd

public double sumhd

sumhl

public double sumhl

sumhdm

public double sumhdm

W

public double W

eta_Ml

public double eta_Ml

eta_Md

public double eta_Md

rm_d

public double rm_d

rm_l

public double rm_l

Mf_dead

public double Mf_dead

Mx_live

public double Mx_live

dead

public double dead

live

public double live

sdr

public double sdr

efw

public double efw

hsk

public double hsk

ros

public double ros

tau

public double tau

hpa

public double hpa

fzd

public double fzd

fli

public double fli

fln

public double fln

name

public java.lang.String name
Constructor Detail

Behave

public Behave()
Initializes class variables

Method Detail

checkFuel

public void checkFuel()
check if there is any fuel


hasFuel

public boolean hasFuel()
Is there fuel?

Returns:
boolean

setFuelModel

public void setFuelModel(int fuelModel)
Set the fuel model number.

Parameters:
fuelModel - a number identifying a fuel model

setParameterMean

public void setParameterMean(java.lang.String key,
                             double value)
Sets the mean value, i.e. the expectation value, of a parameter.

Parameters:
key - Name of a Parameter
value - value of parameter

getRos

public double getRos()
Returns the rate of spread


calc

public java.lang.String calc()
Calculates the Rothermel equations wrapper for the actual calculation, it first checks for consistent data.


calcFuel

protected void calcFuel()
                 throws java.lang.Exception
calcFuel calculates: - characteristic surface-to-volume ration (sigma) - bulk densities (rho_b) - packing ratios (beta, beta_opt, beta_ratio) - net fuel loadings (wn_..) Exceptions are thrown if - w0 <= 0. no fuel specified - sw_t <= 0. surface-to-voume-ratios not properly specified - depth <= 0. depth of fuel bed not properly specified

Throws:
java.lang.Exception

slopeFactor

protected void slopeFactor()
phi_s: slope factor called from combinedWindAndSlopeFactor()


windFactor

protected void windFactor()
phi_w: wind factor called from combinedWindAndSlopeFactor() conversion: sigma [1/ft] = sigma[1/m] * 0.3048! original formulae in Rothermel 1972, eq. XXXXX B = 0.013298 * Math.pow(sigma,0.54); C = 7.47 * Math.exp(-0.06919 * Math.pow(sigma,0.55)); E = 0.715 * Math.exp(0.0001094 * sigma);


combinedWindAndSlopeFactor

protected void combinedWindAndSlopeFactor()
phi combined wind and slope factor assumptions: wsp > 0. and/or slp > 0. -> phi_t


moistureDamping

protected void moistureDamping()
                        throws java.lang.Exception
moistureDamping ********************************************************************* calculate the moisture damping coefficients for dead and live fuel Exceptions thrown if mx <= 0.

Throws:
java.lang.Exception

reactionVelocity

protected void reactionVelocity()
gamma': reaction velocity


heatSink

protected void heatSink()
                 throws java.lang.Exception
heat sink term Rothermel (1972): eq. (77) + (78)

Throws:
java.lang.Exception

degreesToRadians

public double degreesToRadians(double degrees)
Parameters:
degrees - the angle to convert Converts degrees into radians.

radiansToDegrees

public double radiansToDegrees(double radians)