Documentation ¶
Index ¶
- Constants
- func Arrhenius(ea, t1, t0 float64) float64
- func Arrhenius25(ea, temp float64) float64
- func ArrheniusK(ea, t0, t1 float64) float64
- func CapacitorFIT(comp *Component, mission *Mission) (float64, error)
- func ConnectorFIT(comp *Component, mission *Mission) (float64, error)
- func Cs(class string, tags []string) float64
- func FIT(comp *Component, mission *Mission) (float64, error)
- func InductorFIT(comp *Component, mission *Mission) (float64, error)
- func IsSmd(c *Component) bool
- func Lbase_Pcb(nLayers, nConn, class int, tech float64) float64
- func Lbase_resistor(c *Component) (float64, float64, float64, float64, float64, float64)
- func Lchip_th(c *Component) float64
- func NorrisLandzberg(tdeltaRef, tdeltaUse, tmaxRef, tmaxUse, fRef, fUse float64, a, b, c float64) float64
- func OptoFIT(comp *Component, mission *Mission) (float64, error)
- func PcbFIT(mission *Mission, nLayers, nConn int) (float64, error)
- func PiInduced(comp *Component, phase *Phase) (float64, error)
- func PiInducedPcb(phase *Phase) float64
- func PiMech(grms float64) float64
- func PiPM() float64
- func PiProcess() float64
- func PiRH(ea, rh, temp float64) float64
- func PiRH2(ea, rh, temp float64, on bool) float64
- func PiRuggedising() float64
- func PiTCCase(nc int, time, tdelta, tmax float64) float64
- func PiTCSolder(nc int, time, duration, tdelta, tmax float64) float64
- func PiTV(tamb float64) float64
- func PiThermal(ea, temp float64, on bool) float64
- func PiThermal_cap(ea, tamb, sref, ratio float64) float64
- func PiThermal_voltageFactor(v, vmax float64) float64
- func PiezoFIT(comp *Component, mission *Mission) (float64, error)
- func ResistorFIT(comp *Component, mission *Mission) (float64, error)
- func Rthja_semi(pkg string, k bool) (int, float64, float64)
- func SemiconductorFIT(comp *Component, mission *Mission) (float64, error)
- type Bom
- type Component
- type Design
- type Mission
- type Package
- type Phase
Constants ¶
const InvBoltzman float64 = 11604.518
Variables ¶
This section is empty.
Functions ¶
func ConnectorFIT ¶
PCB connectors, SMD, less that one insertion/year
func Lbase_resistor ¶
returning lbase, A, lth, ltc, lmech, lrh
func NorrisLandzberg ¶
func NorrisLandzberg(tdeltaRef, tdeltaUse, tmaxRef, tmaxUse, fRef, fUse float64, a, b, c float64) float64
Norris-Landberg, general form
For SAC305 lead-free solder: a=2.3, b=0.3, c=4562 See "Norris–Landzberg Acceleration Factors and Goldmann Constants for SAC305 Lead-Free Electronics" (Journal of Electronic Packaging · September 2012) See also: https://www.lamar.edu/engineering/_files/documents/mechanical/dr.-fan-publications/2008/Fan%202008_13%20ECTC_3.pdf
func PiInducedPcb ¶
func PiPM ¶
func PiPM() float64
Quality and technical control over manufacturing of the item (Use default value)
func PiProcess ¶
func PiProcess() float64
quality and technical control over the development, manufacturing and usage process for the product containing the item (Use default value)
func PiRuggedising ¶
func PiRuggedising() float64
PiRuggedising represents the influence of the policy for taking account of overstresses in the product development. (Use default value)
func PiTCSolder ¶
Temperature cycling,solder joints, Norris-Landzberg model See https://www.lamar.edu/engineering/_files/documents/mechanical/dr.-fan-publications/2008/Fan%202008_13%20ECTC_3.pdf (The 1.9 factor is OK for lead-free also, according to this paper)
func PiThermal_cap ¶
func PiThermal_voltageFactor ¶
Applies to diodes < 1A (not zener or tvs)
Types ¶
type Component ¶
type Component struct { Name string // Denominator or reference Value float64 // Value in SI unit Tolerance float64 Code string // Part number Description string // Free description Class string Tags []string Block string // For classifying per block or function Package string N int // Number of devices Np int // TODO Number of pins Rtha float64 Vp, V, P, I, T float64 // Working conditions Vpmax, Vmax, Pmax, Imax, Tmax float64 // Device limits // Temperature coefficient. Set to NaN for undefined TC float64 FIT float64 }
type Package ¶
type Package struct { Name string Npins int Tags []string // contains filtered or unexported fields }
func NewPackage ¶
type Phase ¶
type Phase struct { Name string Duration float64 NCycles int CycleDuration float64 On bool Tamb float64 Tdelta float64 Tmax float64 RH float64 Grms float64 // 1 = weak, 3 = strong SalinePollution float64 // 1 = weak, 2 = moderate, 3 = strong AmbientPollution float64 // 1 = weak, 2 = moderate, 3 = strong ApplicationPollution float64 // Ingress protection (true = hermetic, sealed) IP bool Tags string // Application factor AppFactor float64 }