transform_vars_gallagher_blockrotation.c File Reference

Implementation of performing a block-rotation transformation on decision values for the Gallagher function. The block-rotation is applied only once per call and the result is stored such that the sub-problems can access it. More...

#include <assert.h>
#include "coco.h"
#include "coco_problem.c"
#include "transform_vars_blockrotation_helpers.c"

Data Structures

struct  transform_vars_gallagher_blockrotation_t
 Data type for transform_vars_gallagher_blockrotation. More...
 
struct  f_gallagher_versatile_data_t
 Data type in problem->versatile_data of f_gallagher.c. More...
 

Functions

static void transform_vars_gallagher_blockrotation_free (void *thing)
 Frees the data object. More...
 
static void f_gallagher_versatile_data_free (coco_problem_t *problem)
 allows to free the gallagher_versatile_data part of the problem. More...
 
static void transform_vars_gallagher_blockrotation_evaluate (coco_problem_t *problem, const double *x, double *y)
 Evaluates the transformation. More...
 
static coco_problem_ttransform_vars_gallagher_blockrotation (coco_problem_t *inner_problem)
 

Detailed Description

Implementation of performing a block-rotation transformation on decision values for the Gallagher function. The block-rotation is applied only once per call and the result is stored such that the sub-problems can access it.

Function Documentation

static void f_gallagher_versatile_data_free ( coco_problem_t problem)
static

allows to free the gallagher_versatile_data part of the problem.

static coco_problem_t* transform_vars_gallagher_blockrotation ( coco_problem_t inner_problem)
static
static void transform_vars_gallagher_blockrotation_evaluate ( coco_problem_t problem,
const double *  x,
double *  y 
)
static

Evaluates the transformation.

static void transform_vars_gallagher_blockrotation_free ( void *  thing)
static

Frees the data object.