Project

General

Profile

Actions

Bug #327

closed

Erreur dans la formule des BP2 cross

Added by bruno katra almost 10 years ago. Updated almost 10 years ago.

Status:
Closed
Priority:
High
Assignee:
Start date:
09/02/2015
Due date:
% Done:

100%

Estimated time:
revision:
r57

Description

Je te propose de reprendre en douceur avec un ajustement de la formule de decom des données BP2_CROSS [es termes non-diagonaux: 10 RE (réels) + 10 IM (imaginaires)].
Actuellement il semblerait que tu aies appliqué la formule de transformation suivante :
BP2_CROSS_decom = BP2_CROSS_raw - 128 (shift des uint8 de 0 à 255 vers int8 de -128 à +127)

A priori je souhaiterais que tu implémentes plutôt cette formule:

BP2_CROSS_decom = BP2_CROSS_raw / 127.5 - 1

Explication:

- la fonction BP2_set qui qui calcul ces valeurs fait l'opération de shift et de caste, avec arrondi à 0.5 près, suivante :
lfr_bp2 = uin8_t( [(cross+1)/2] * 255 + 0.5 ) = uint8_t( cross*127.5 + 128 )

- d'où l'opération inverse proposée: cross = lfr_bp2 / 127.5 - 1 (donc erreur < à 0.5/127.5 = 1/255)

Bon retour!
Thomas

--
LPP - Laboratoire de Physique des Plasmas
UMR 7648 CNRS/Ecole Polytechnique/UPMC/Université Paris-Sud 11
Ecole Polytechnique, route de Saclay, 91128 Palaiseau cedex
Bureau: 412-1014
Tél: +33 (0)1 6933 5856
Fax: +33 (0)1 6933 5906
Web: http://www.lpp.fr
--

Actions

Also available in: Atom PDF