Hi Regis, thank you for your reply. I am going to explain how I address this problem, to understand if it is correct.
I have five input parameters and, every time the function _exec(x) is executed, I print the value of each variable and the result obtained from that combination of input values. The values I print are in the physical space. At the end of the FORM analysis, I get the value of the design point in the physical space and I search for that combination of parameters in the list of printed input variables. The result associated to these parameters is the one that I compare with the threshold to calculate the constraint error. To make an example with numbers, I have 5 input parameters with distributions: param_1 = TruncatedNormal(20, 1, 16, 24) param_2 = TruncatedNormal(17.5, 0.88, 14, 21) param_3 = TruncatedNormal(20, 1, 16, 24) param_4 = TruncatedNormal(20, 1, 16, 24) param_5 = TruncatedNormal(20, 1, 16, 24) The threshold of the criterion I have chosen is 850. Every time _exec() is called (at each evaluation), I have a list of input parameters and the corresponding result, for example: [20.0673673248819, 17.3184136978776, 19.9079471477259, 20.1402093633652, 20.0223766740268] and the result is [825.665964705004] At the end of the analysis, the design point is: standard_space_point: ['param_1 = 0.1997867549606676', 'param_2 = -0.055279300017051544', 'param_3 = -0.0628992654226241', 'param_4 = 0.5183599165842491', 'param_5 = -0.10839510883000002'] physical_space_point: ['param_1 = 20.199773930262452', 'param_2 = 17.451357610548104', 'param_3 = 19.937104724030977', 'param_4 = 20.518323977607277', 'param_5 = 19.89161178413688'] I take the values corresponding to the physical space point and I find the corresponding result, i.e. 845.307471892986. Does this correspond to f(x_opt)? Then I calculate the constraint error as |845.307471892986 - 850| = 4.692528107014 Is this the correct procedure? If not, how do I get the constraint error without using getConstraintError()? In this example, the value that is returned by getConstraintError() is 4.59252810701402 and I want to understand how this is calculated. Thank you in advance for your time and your help! 2017-03-14 17:48 GMT+01:00 regis lebrun <[email protected]>: > Hi Anita, > > You are right, the constraint error is an obsolute error on the > constraint. It is equal to |f(x_opt) - s| = |f(T(u_opt)) - s| where f is > your code, T the inverse iso-probabilistic transformation that maps the > standard space into the physical space, u_opt the design point (so in the > standard space) and x_opt = T(u_opt) its image in the physical space. > > Are you 100% sure that you compute f at the correct point in your > verification? If you compare f(u_opt) with s, it is wrong (and I suspect > that you did it ;-)). Otherwise there is a bug and we need more input from > your side in order to catch it. > > Cheers > > Régis > > > > ________________________________ > De : Anita Laera <[email protected]> > À : [email protected] > Envoyé le : Mardi 14 mars 2017 15h25 > Objet : [ot-users] constraint error FORM > > > > Hi all, > I have a simple question regarding the constraint error of a FORM > analysis, the constraint error is defined as |f(u_n) - s| , i.e. the > absolute difference between the result and the threshold. > > In my case, the result in the design point is 845.307471892986 and the > threshold is 850 (in the physical space). > I would expect the constraint error to be about 4.69, but the value > obtained with the method getConstraintError() is 4.59. Why? > > If I calculate the difference between the result and the threshold for > each performed evaluation, I never find 4.59. > > Could it be different because it is calculated in the standard space u? > How could I verify the value? > > Thank you for your time! > _______________________________________________ > OpenTURNS users mailing list > [email protected] > http://openturns.org/mailman/listinfo/users >
_______________________________________________ OpenTURNS users mailing list [email protected] http://openturns.org/mailman/listinfo/users
