Park91 A

Implementation of the bi-fidelity Park (‘91) A function as defined in:

Shifeng Xiong, Peter Z. G. Qian & C. F. Jeff Wu (2013) Sequential Design and Analysis of High-Accuracy and Low-Accuracy Computer Codes, Technometrics, 55:1, 37-46, DOI: 10.1080/00401706.2012.723572

Function definitions:

\[f_h(x_1, x_2, x_3, x_4) = \dfrac{x_1}{2} \Bigg(\sqrt{1 + (x_2 + x_3^2) * \dfrac{x_4}{x_1^2}} - 1\Bigg) + (x_1 + 3x_4)\exp(1 + \sin(x_3))\]
\[f_l(x_1, x_2, x_3, x_4) = (1+\sin(x_1) / 10)f_h(x_1, x_2, x_3, x_4) + -2x_1 + x_2^2 + x_3^2 + 0.5\]

Adapted from matlab implementation at

by: Sonja Surjanovic and Derek Bingham, Simon Fraser University

Copyright 2013. Derek Bingham, Simon Fraser University.

THERE IS NO WARRANTY, EXPRESS OR IMPLIED. WE DO NOT ASSUME ANY LIABILITY FOR THE USE OF THIS SOFTWARE. If software is modified to produce derivative works, such modified software should be clearly marked. Additionally, this program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; version 2.0 of the License. Accordingly, this program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

l_bound = [1e-08, 0, 0, 0]

Lower bound for Park91A function

park91a = MultiFidelityFunction(Park91A, [1. 1. 1. 1.], [1.e-08 0.e+00 0.e+00 0.e+00], fidelity_names=['high', 'low'])

4D Park91A function with fidelities ‘high’ and ‘low’

park91a_hf(xx)

PARK (1991) FUNCTION 1

INPUT: xx = [x1, x2, x3, x4]

park91a_lf(xx)

PARK (1991) FUNCTION 1, LOWER FIDELITY CODE Calls: park91a_hf This function, from Xiong et al. (2013), is used as the “low-accuracy code” version of the function park91a_hf.

INPUT: xx = [x1, x2, x3, x4]

u_bound = [1, 1, 1, 1]

Upper bound for Park91A function