box_behnken


box_behnken, a Python code which returns a set of sample argument values to be used to analyze the behavior of a function.

Given DIM_NUM parameters, each of which is prescribed to lie between a minimum and maximum range, and a function taking these parameters as arguments, this program returns a table of sets of argument values that may be used to sample the function's behavior.

One sample point is the average. All other sample points are generated by setting a single spatial coordinate to its average value, and all other spatial coordinates to either the minimum or maximum. In this way, 1 + DIM_NUM*2^(DIM_NUM-1) points are generated.

Licensing:

The information on this web page is distributed under the MIT license.

Languages:

box_behnken is available in a C version and a C++ version and a Fortran77 version and a Fortran90 version and a MATLAB version and an Octave version and a Python.

Related Data and Programs:

halton, a Python code which computes elements of a Halton sequence.

hammersley, a Python code which computes elements of a Hammersley sequence.

latin_center, a Python code which computes elements of a Latin Hypercube dataset, choosing center points.

latin_edge, a Python code which computes elements of a Latin Hypercube dataset, choosing edge points.

latin_random, a Python code which computes elements of a Latin Hypercube dataset, choosing points at random.

sobol, a Python code which computes elements of a Sobol sequence.

uniform, a Python code which computes elements of a uniform pseudorandom sequence.

van_der_corput, a Python code which computes elements of a (1 dimensional) van der Corput sequence.

Reference:

  1. George Box, Donald Behnken,
    Some new three level designs for the study of quantitative variables,
    Technometrics,
    Volume 2, pages 455-475, 1960.

Source Code:


Last revised on 02 February 2026.