lifeloss

package
v0.0.0-...-366b2a4 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Sep 26, 2024 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Examples

Constants

This section is empty.

Variables

View Source
var DefaultHighLethalityBytes []byte
View Source
var DefaultLowLethalityBytes []byte
View Source
var RescDamMasonryConcreteBrick = StabilityCriteria{
	MinimumVelocity:    6.6,
	MinimumDepth:       0.0,
	DepthTimesVelocity: 75.3,
}
View Source
var RescDamWoodAnchored = StabilityCriteria{
	MinimumVelocity:    0.0,
	MinimumDepth:       0.0,
	DepthTimesVelocity: 75.3,
}
View Source
var RescDamWoodUnanchored = StabilityCriteria{
	MinimumVelocity:    0.0,
	MinimumDepth:       0.0,
	DepthTimesVelocity: 32.3,
}

@TODO: add interface for Stability as well as adding Engineered Stability mobile homes stability which will require paired data, max velocity, uncertainty and probably some other features.

Functions

func LifeLossDefaultResults

func LifeLossDefaultResults() []interface{}

func LifeLossHeader

func LifeLossHeader() []string

Types

type LethalityCurve

type LethalityCurve struct {
	// contains filtered or unexported fields
}

func (LethalityCurve) Sample

func (lc LethalityCurve) Sample() float64

func (LethalityCurve) SampleWithSeededRand

func (lc LethalityCurve) SampleWithSeededRand(rand *rand.Rand) float64

type LethalityZone

type LethalityZone int
const (
	LowLethality  LethalityZone = 1
	HighLethality LethalityZone = 2
)

type LifeLossEngine

type LifeLossEngine struct {
	LethalityCurves   map[LethalityZone]LethalityCurve
	StabilityCriteria map[string]StabilityCriteria
	WarningSystem     warning.WarningResponseSystem
	ResultsHeader     []string
	SeedGenerator     *rand.Rand
}

func Init

func Init(seed int64, warningSystem warning.WarningResponseSystem) LifeLossEngine

Init in the lifeloss package creates a life loss engine with the default settings

func (LifeLossEngine) ComputeLifeLoss

func (LifeLossEngine) EvaluateStabilityCriteria

func (le LifeLossEngine) EvaluateStabilityCriteria(e hazards.HazardEvent, s structures.StructureDeterministic) (Stability, error)

type Mobility

type Mobility uint
const (
	Unknown   Mobility = 0 //0
	Mobile    Mobility = 1 //1
	NotMobile Mobility = 2 //2
)

type Stability

type Stability uint
const (
	Stable    Stability = 1 //1
	Collapsed Stability = 2 //2
)

func (Stability) String

func (s Stability) String() string

type StabilityCriteria

type StabilityCriteria struct {
	//curve paireddata.PairedData //assume x is depth and y is velocity?
	//curve paireddata.UncertaintyPairedData
	MinimumVelocity    float64
	MinimumDepth       float64
	DepthTimesVelocity float64
}
Example
package main

import (
	"fmt"

	"github.com/USACE/go-consequences/hazards"
	"github.com/USACE/go-consequences/lifeloss"
)

func main() {

	sc := lifeloss.RescDamWoodUnanchored

	h := hazards.DepthandDVEvent{}
	h.SetDV(30)
	h.SetDepth(100)
	result := sc.Evaluate(h)
	fmt.Println(result)
}
Output:

Stable

func (StabilityCriteria) Evaluate

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL