ML Version of the Day
Loading...
Searching...
No Matches
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

◆ aggr_count

int* ML_Aggregate_Struct::aggr_count

no. aggregates at each level

◆ aggr_info

int** ML_Aggregate_Struct::aggr_info

node to aggregate map

◆ aggr_options

void* ML_Aggregate_Struct::aggr_options

option about METIS and ParMETIS

◆ aggr_viz_and_stats

void* ML_Aggregate_Struct::aggr_viz_and_stats

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

◆ attach_scheme

int ML_Aggregate_Struct::attach_scheme

aggregate shape control

◆ begin_level

int ML_Aggregate_Struct::begin_level

finest grid level

◆ block_scaled_SA

int ML_Aggregate_Struct::block_scaled_SA

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

◆ coarsen_partial_dirichlet_dofs

int ML_Aggregate_Struct::coarsen_partial_dirichlet_dofs

interpolate Dirichlet directions in multiple PDEs per node case

◆ coarsen_scheme

int ML_Aggregate_Struct::coarsen_scheme

Uncoupled, Coupled, MIS

◆ cur_level

int ML_Aggregate_Struct::cur_level

temporary variable

◆ curr_threshold

double ML_Aggregate_Struct::curr_threshold

adjusted for levels

◆ do_qr

int ML_Aggregate_Struct::do_qr

should we do a qr?

◆ drop_tol_for_smoothing

double ML_Aggregate_Struct::drop_tol_for_smoothing

self-explanatory

◆ fine_complexity

double ML_Aggregate_Struct::fine_complexity

nnz of the finest A

◆ keep_agg_information

int ML_Aggregate_Struct::keep_agg_information

1: keep aggr_info
otherwise: free it

◆ keep_P_tentative

int ML_Aggregate_Struct::keep_P_tentative

keeping tentative prolongator

◆ max_coarse_size

int ML_Aggregate_Struct::max_coarse_size

maximum size of coarsest grid

◆ max_levels

int ML_Aggregate_Struct::max_levels

maximum number of levels

◆ max_neigh_already_selected

int ML_Aggregate_Struct::max_neigh_already_selected

complexity control

◆ min_nodes_per_aggregate

int ML_Aggregate_Struct::min_nodes_per_aggregate

aggregate size control

◆ nodal_coord

double** ML_Aggregate_Struct::nodal_coord

Coordinates of fine-grid nodes and aggregates

◆ nullspace_corrupted

int ML_Aggregate_Struct::nullspace_corrupted

indicates whether fine grid
nullspace has been overwritten

◆ nullspace_dim

int ML_Aggregate_Struct::nullspace_dim

self-explanatory

◆ nullspace_vect

double* ML_Aggregate_Struct::nullspace_vect

for null space vectors

◆ num_PDE_eqns

int ML_Aggregate_Struct::num_PDE_eqns

block size

◆ nvblocks

int ML_Aggregate_Struct::nvblocks

for variable blocks (finest)

◆ operator_complexity

double ML_Aggregate_Struct::operator_complexity

sum of nnz for all A's

◆ ordering

int ML_Aggregate_Struct::ordering

natural, random, graph

◆ P_tentative

struct ML_Operator_Struct** ML_Aggregate_Struct::P_tentative

so it can be reused later.

◆ phase3_agg_creation

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

◆ Restriction_smoothagg_transpose

int ML_Aggregate_Struct::Restriction_smoothagg_transpose

smoothed aggregation on A^T

◆ rowsum_threshold

double ML_Aggregate_Struct::rowsum_threshold

for dropping sub-CFL rows in reaction-diffusion

◆ smooth_existing_P_tentative

int ML_Aggregate_Struct::smooth_existing_P_tentative

already have P tent, don't create it

◆ smoothP_damping_factor

double ML_Aggregate_Struct::smoothP_damping_factor

for prolongator smoother

◆ smoothP_damping_sweeps

int* ML_Aggregate_Struct::smoothP_damping_sweeps

#prolongator smoother sweeps

◆ smoothP_type

int ML_Aggregate_Struct::smoothP_type

point, block

◆ threshold

double ML_Aggregate_Struct::threshold

for pruning matrix

◆ use_transpose

int ML_Aggregate_Struct::use_transpose

Used to build restriction by doing

◆ vblock_data

void* ML_Aggregate_Struct::vblock_data

holds data structure aggr_vblock

◆ vblock_info

int* ML_Aggregate_Struct::vblock_info

for variable blocks (finest)


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