Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <?php
- error_reporting(E_ALL);
- if(preg_match('#/1(?:\s+)(\d+)(?:\s+)?(?:,+)?(?:\s+)?(\d+)(?:\s+)?(?:,+)?(?:\s+)?(\d+)#iu', $_TEXT, $res))
- {
- # $res[1] is Max Peak Power
- # $res[2] is Impedance
- # $res[3] is Crest Factor (log)
- $accuracy = 2; // число знаков после запятой
- $mpp = $res[1];
- $imp = $res[2];
- $crest = $res[3];
- ### Counting Max Peak Voltage
- $result['mpv'] = round(sqrt($mpp * $imp), $accuracy); // корень квадратный + округление до 4 знака
- ### Counting Crest Factor (lin)
- $result['crest_lin'] = round(pow(10, $crest / 20), $accuracy); // степень + округление
- ### Crest Factor
- $result['crest_factor'] = round($result['mpv'] / $result['crest_lin'], $accuracy);
- ### RMS Power Rating
- $result['rms_pr'] = round($result['crest_factor'] * $result['crest_factor'] / $imp, 0);
- ### 3dB Crest Factor (1.41:1)
- $result['3db_crest_factor'] = round($result['mpv'] * 0.707, $accuracy); // деление + округление
- ### 3 dB RMS Power Rating
- $result['3db_rms_pr'] = round($result['3db_crest_factor'] * $result['3db_crest_factor'] / $imp, 0);
- ### 6dB Crest Factor (2:1)
- $result['6db_crest_factor'] = round($result['mpv'] / 2, $accuracy);
- ### 6 dB RMS Power Rating
- $result['6db_rms_pr'] = round($result['6db_crest_factor'] * $result['6db_crest_factor'] / $imp, 0);
- ### 12dB Crest Factor (4:1)
- $result['12db_crest_factor'] = round($result['mpv'] / 4, $accuracy);
- ### 12 dB RMS Power Rating
- $result['12db_rms_pr'] = round($result['12db_crest_factor'] * $result['12db_crest_factor'] / $imp, 0);
- ### 16dB Crest Factor (6.3:1)
- $result['16db_crest_factor'] = round($result['mpv'] * 0.15848932, $accuracy);
- ### 16 dB RMS Power Rating
- $result['16db_rms_pr'] = round($result['16db_crest_factor'] * $result['16db_crest_factor'] / $imp, 0);
- $message = '```';
- $message .= 'Max Peak Power: '.$mpp.' Watts Peak'.PHP_EOL;
- $message .= 'Impedance: '.$imp.' Ohms'.PHP_EOL;
- $message .= 'Max Peak Voltage: '.$result['mpv'].' Volts Peak'.PHP_EOL;
- $message .= PHP_EOL;
- $message .= 'Crest Factor (log): '.$crest.' dB'.PHP_EOL;
- $message .= 'Crest Factor (lin): '.$result['crest_lin'].':1'.PHP_EOL;
- $message .= 'Crest Factor: '.$result['crest_factor'].' Volts RMS'.PHP_EOL;
- $message .= 'RMS Power Rating: '.$result['rms_pr'].' Watts RMS'.PHP_EOL;
- $message .= PHP_EOL;
- $message .= '3dB Crest Factor (1.41:1): '.$result['3db_crest_factor'].' Volts RMS'.PHP_EOL;
- $message .= 'RMS Power Rating: '.$result['3db_rms_pr'].' Watts RMS Sine Wave'.PHP_EOL;
- $message .= PHP_EOL;
- $message .= '6dB Crest Factor (2:1): '.$result['6db_crest_factor'].' Volts RMS'.PHP_EOL;
- $message .= 'RMS Power Rating: '.$result['6db_rms_pr'].' Watts RMS AES/EIA Noise'.PHP_EOL;
- $message .= PHP_EOL;
- $message .= '12dB Crest Factor (4:1): '.$result['12db_crest_factor'].' Volts RMS'.PHP_EOL;
- $message .= 'RMS Power Rating: '.$result['12db_rms_pr'].' Watts RMS Pink Noise'.PHP_EOL;
- $message .= PHP_EOL;
- $message .= '16dB Crest Factor (6.3:1): '.$result['16db_crest_factor'].' Volts RMS'.PHP_EOL;
- $message .= 'RMS Power Rating: '.$result['16db_rms_pr'].' Watts RMS Music'.PHP_EOL;
- $message .= '```';
- sendMessage($_CHAT['id'], $message, 'Markdown');
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement