# QuantLib_HazardRateStructure man page

HazardRateStructure — Hazard-rate term structure.

## Synopsis

`#include <ql/termstructures/credit/hazardratestructure.hpp>`

Inherits **DefaultProbabilityTermStructure**.

Inherited by **FactorSpreadedHazardRateCurve**, **FlatHazardRate**, **InterpolatedHazardRateCurve< Interpolator >**, and **SpreadedHazardRateCurve**.

### Public Member Functions

**Constructors**

See the **TermStructure** documentation for issues regarding constructors.

**HazardRateStructure** (const **DayCounter** &**dayCounter**=**DayCounter**(), const std::vector< **Handle**< **Quote** > > &jumps=std::vector< **Handle**< **Quote** > >(), const std::vector< **Date** > &jumpDates=std::vector< **Date** >())**HazardRateStructure** (const **Date** &**referenceDate**, const **Calendar** &cal=**Calendar**(), const **DayCounter** &**dayCounter**=**DayCounter**(), const std::vector< **Handle**< **Quote** > > &jumps=std::vector< **Handle**< **Quote** > >(), const std::vector< **Date** > &jumpDates=std::vector< **Date** >())**HazardRateStructure** (**Natural settlementDays**, const **Calendar** &cal, const **DayCounter** &**dayCounter**=**DayCounter**(), const std::vector< **Handle**< **Quote** > > &jumps=std::vector< **Handle**< **Quote** > >(), const std::vector< **Date** > &jumpDates=std::vector< **Date** >())

### Protected Member Functions

**Calculations**

This method must be implemented in derived classes to perform the actual calculations. When it is called, range check has already been performed; therefore, it must assume that extrapolation is required.

virtual **Real hazardRateImpl** (**Time**) const =0

hazard rate calculation

**DefaultProbabilityTermStructure implementation**

**Probability survivalProbabilityImpl** (**Time**) const**Real defaultDensityImpl** (**Time**) const

default density calculation

### Additional Inherited Members

## Detailed Description

Hazard-rate term structure.

This abstract class acts as an adapter to **DefaultProbabilityTermStructure** allowing the programmer to implement only the `hazardRateImpl(Time)`

method in derived classes.

Survival/default probabilities and default densities are calculated from hazard rates.

Hazard rates are defined with annual frequency and continuous compounding.

## Member Function Documentation

### Probability survivalProbabilityImpl (Time) const [protected], [virtual]

survival probability calculation implemented in terms of the hazard rate $ h(t) $ as [ S(t) = \xpleft( - int_0^t h( au) d au right). ]

**Warning**This default implementation uses numerical integration, which might be inefficient and inaccurate. Derived classes should override it if a more efficient implementation is available.

Implements **DefaultProbabilityTermStructure**.

Reimplemented in **InterpolatedHazardRateCurve< Interpolator >**.

## Author

Generated automatically by Doxygen for QuantLib from the source code.

## Referenced By

The man page HazardRateStructure(3) is an alias of QuantLib_HazardRateStructure(3).