Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

cout.precision change apres l'écriture d'un système #410

Closed
bneveu opened this issue Oct 1, 2019 · 3 comments
Closed

cout.precision change apres l'écriture d'un système #410

bneveu opened this issue Oct 1, 2019 · 3 comments
Assignees
Labels

Comments

@bneveu
Copy link
Contributor

bneveu commented Oct 1, 2019

l'instruction
cout << sys << endl; (où sys est un System)

change le nombre de chiffres écrits par cout (cout.precision())
qui passe de 6 à 16
double a = 1.22222222222222222;
cout << a << endl;
cout << cout.precision() << endl;
cout << *sys << endl;
cout << a << endl;
cout << cout.precision() << endl;

1.22223
6
variables:
x1, x2, x3, x4, x5, x6, x7, x8, x9, x10, x11, x12, x13, x14, x15, x16, x17, x18, x19, x20
box:
([-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10] ; [-10, 10])
goal:
((((((((((((((((((((x1-1)^2+(2*((2x2^2)-x1)^2))+(3((2x3^2)-x2)^2))+(4((2x4^2)-x3)^2))+(5((2x5^2)-x4)^2))+(6((2x6^2)-x5)^2))+(7((2x7^2)-x6)^2))+(8((2x8^2)-x7)^2))+(9((2x9^2)-x8)^2))+(10((2x10^2)-x9)^2))+(11((2x11^2)-x10)^2))+(12((2x12^2)-x11)^2))+(13((2x13^2)-x12)^2))+(14((2x14^2)-x13)^2))+(15((2x15^2)-x14)^2))+(16((2x16^2)-x15)^2))+(17((2x17^2)-x16)^2))+(18((2x18^2)-x17)^2))+(19((2x19^2)-x18)^2))+(20((2*x20^2)-x19)^2))

1.222222222222223
16

@bneveu bneveu added the cleanup label Oct 1, 2019
@gchabert gchabert self-assigned this Oct 2, 2019
@gchabert
Copy link
Contributor

gchabert commented Oct 2, 2019

C'est en fait au niveau de gaol (affichage d'un intervalle) que la précision est effectivement fixée à 16.
Une solution serait de modifier gaol (fichier gaol_common.cpp). Une autre serait de stocker/ restorer la précision courante au niveau du wrapper ibex (fichier interval_lib_wrapper/gaol/ibex_IntervalLibWrapper.cpp) mais je me demande si cela ne risque pas de ralentir les affichages longs (du genre, buffer de cellules).

@bneveu
Copy link
Contributor Author

bneveu commented Oct 3, 2019

Je pense que la deuxième solution serait la meilleure.
Ca doit etre rare d'avoir des affichages longs (sauf pour nous en debogage, mais on a le temps)

gchabert pushed a commit that referenced this issue Oct 4, 2019
@gchabert
Copy link
Contributor

gchabert commented Oct 4, 2019

ok c'est fait

@gchabert gchabert closed this as completed Oct 4, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants