libftsh
A Fast Transform for Spherical Harmonics
 All Data Structures Files Functions Variables Defines
Data Fields
Dyadic_Gsearch_Save Struct Reference

Workspace for "best non-decreasing dyadic partition" search. More...

#include <libftsh.h>

Data Fields

int best_level
int num_levels
unsigned short int ** branching
unsigned int ** cost_full
unsigned int ** cost_asym
unsigned int * order_level
unsigned int * order_within

Detailed Description

Workspace for "best non-decreasing dyadic partition" search.

The structure Dyadic_Gsearch_Save is used to hold memory and some precomputed orderings for the "best non-decreasing dyadic partition" search. It is normaly initialized by dyadic_gsearch_init, used multiple times by dyadic_gsearch, and then freed by dyadic_gsearch_free.


Field Documentation

Tells at which level to start our partition at the left edge. From there we can follow branching to get the partition.

unsigned short int** branching

Used to keep track of the partition. Normally: For a particular [level][within] a value of

  • 0 means at the right edge
  • 1 means keep the samesize and
  • 2 means go up a size The first index goes from 0 to num_levels-1 and the second from 0 to 2^level -1
unsigned int** cost_asym

Stores the cost of a asymmetric bell expansion. Indexed like cost_full, but the entries [0][_], [_][0] and [num_levels-1][_] are not used

unsigned int** cost_full

Stores the cost of a full bell expansion. Indexed like branching.

The total number of levels to use.

unsigned int* order_level

Keeps track of the ordering in which to process the nodes. Here we keep just the level of the nodes

unsigned int* order_within

Here we keep the index of the ordered nodes within their respective levels. When combined with orderlev this identifies which interval is next.


The documentation for this struct was generated from the following file: