(* L = 10 log (10^(db1/10) + 10^(db2/10) + 10^(db3/10) ) | db1,db2,db3 > 0 forklaring: L = det samlede lydniveau (i db) log = 10tals logaritmen ^=potens ( "opløftet i" ) db1, 2, 3, .....: de forskellige lyd niveauer (i db)
For nemheds skyld skrives formlen lidt om :
A = 10^(db1/10) B = 10^(db2/10) C = 10^(db3/10)
Således bliver
L = 10 log (A + B + C) | db1, db2, db3 > 0 *)
function CalculateDiffer(const db1, db2, db3: Double): Double; var A, B, C: Double; begin A := Power(10, (db1/10)); B := Power(10, (db2/10)); C := Power(10, (db3/10)); Result := 10 * Log10(A + B + C); end;
Tak borrisholt for den gode forklaring! Jeg vil gerne lave det så den kan tage hensyn til at nogle af værdierne kan være 0, eller et editboxen simpelthen er tom, er det til at lave, så den helt lader være med at inkludere de felter i udregningen?
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.