ML  Version of the Day
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Attributes | List of all members
ML_Aggregate_Struct Struct Reference

#include <ml_aggregate.h>

Collaboration diagram for ML_Aggregate_Struct:
Collaboration graph
[legend]

Public Attributes

int ML_id
 
double print_flag
 
int max_coarse_size
 
int ordering
 
int min_nodes_per_aggregate
 
int max_neigh_already_selected
 
double threshold
 
double curr_threshold
 
double drop_tol_for_smoothing
 
int attach_scheme
 
double smoothP_damping_factor
 
int * smoothP_damping_sweeps
 
int smoothP_type
 
int coarsen_scheme
 
int * coarsen_scheme_level
 
int num_PDE_eqns
 
int nullspace_dim
 
double * nullspace_vect
 
int nullspace_corrupted
 
int * aggr_count
 
int keep_agg_information
 
int ** aggr_info
 
int max_levels
 
int begin_level
 
int cur_level
 
double operator_complexity
 
double fine_complexity
 
int nvblocks
 
int * vblock_info
 
int keep_P_tentative
 
struct ML_Operator_Struct ** P_tentative
 
int smooth_existing_P_tentative
 
int use_transpose
 
int Restriction_smoothagg_transpose
 
void * aggr_options
 
void * aggr_viz_and_stats
 
void * field_of_values
 
int block_scaled_SA
 
double phase3_agg_creation
 
double ** nodal_coord
 
int N_dimensions
 
void * vblock_data
 
int minimizing_energy
 
int cheap_minimizing_energy
 
double minimizing_energy_droptol
 
double * old_RowOmegas
 
int coarsen_rate
 
int semicoarsen_levels
 
char semicoarsen_coordinate
 
double rowsum_threshold
 
int do_qr
 
int coarsen_partial_dirichlet_dofs
 

Detailed Description

definition of the aggregate structure

Member Data Documentation

int* ML_Aggregate_Struct::aggr_count

no. aggregates at each level

int** ML_Aggregate_Struct::aggr_info

node to aggregate map

void* ML_Aggregate_Struct::aggr_options

option about METIS and ParMETIS

void* ML_Aggregate_Struct::aggr_viz_and_stats

information about the aggregates only if the user explicitely < requires them

int ML_Aggregate_Struct::attach_scheme

aggregate shape control

int ML_Aggregate_Struct::begin_level

finest grid level

int ML_Aggregate_Struct::block_scaled_SA

= 1 indicates that the prolongator smoother should use block diagonal scaling (blocksize = num_PDE_eqns)

int ML_Aggregate_Struct::coarsen_partial_dirichlet_dofs

interpolate Dirichlet directions in multiple PDEs per node case

int ML_Aggregate_Struct::coarsen_scheme

Uncoupled, Coupled, MIS

int ML_Aggregate_Struct::cur_level

temporary variable

double ML_Aggregate_Struct::curr_threshold

adjusted for levels

int ML_Aggregate_Struct::do_qr

should we do a qr?

double ML_Aggregate_Struct::drop_tol_for_smoothing

self-explanatory

double ML_Aggregate_Struct::fine_complexity

nnz of the finest A

int ML_Aggregate_Struct::keep_agg_information

1: keep aggr_info otherwise: free it

int ML_Aggregate_Struct::keep_P_tentative

keeping tentative prolongator

int ML_Aggregate_Struct::max_coarse_size

maximum size of coarsest grid

int ML_Aggregate_Struct::max_levels

maximum number of levels

int ML_Aggregate_Struct::max_neigh_already_selected

complexity control

int ML_Aggregate_Struct::min_nodes_per_aggregate

aggregate size control

double** ML_Aggregate_Struct::nodal_coord
                 Coordinates of fine-grid nodes

and aggregates

int ML_Aggregate_Struct::nullspace_corrupted

indicates whether fine grid nullspace has been overwritten

int ML_Aggregate_Struct::nullspace_dim

self-explanatory

double* ML_Aggregate_Struct::nullspace_vect

for null space vectors

int ML_Aggregate_Struct::num_PDE_eqns

block size

int ML_Aggregate_Struct::nvblocks

for variable blocks (finest)

double ML_Aggregate_Struct::operator_complexity

sum of nnz for all A's

int ML_Aggregate_Struct::ordering

natural, random, graph

struct ML_Operator_Struct** ML_Aggregate_Struct::P_tentative

so it can be reused later.

double ML_Aggregate_Struct::phase3_agg_creation

Steers how the MIS and Uncoupled handle phase 3 of aggregation. Values near 0 create few additional aggregates.Large values create many additional aggregates. Convergence can be improve convergence by new aggregates but nonzero fill-in increases on coarse meshes. Default: .5

int ML_Aggregate_Struct::Restriction_smoothagg_transpose

smoothed aggregation on A^T

double ML_Aggregate_Struct::rowsum_threshold

for dropping sub-CFL rows in reaction-diffusion

int ML_Aggregate_Struct::smooth_existing_P_tentative

already have P tent, don't create it

double ML_Aggregate_Struct::smoothP_damping_factor

for prolongator smoother

int* ML_Aggregate_Struct::smoothP_damping_sweeps

#prolongator smoother sweeps

int ML_Aggregate_Struct::smoothP_type

point, block

double ML_Aggregate_Struct::threshold

for pruning matrix

int ML_Aggregate_Struct::use_transpose

Used to build restriction by doing

void* ML_Aggregate_Struct::vblock_data

holds data structure aggr_vblock

int* ML_Aggregate_Struct::vblock_info

for variable blocks (finest)


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