Block-Structured AMR Software Framework
Loading...
Searching...
No Matches
amrex::ClusterList Class Reference

A list of Cluster objects. More...

#include <AMReX_Cluster.H>

Public Member Functions

 ClusterList ()=default
 The default constructor.
 
 ClusterList (IntVect *pts, Long len)
 Construct a list containing Cluster(pts,len).
 
 ClusterList (IntVect *pts, Long len, const Box &domain, int whole_domain_dir)
 Construct a list containing a single Cluster, clustering in a reduced number of dimensions.
 
 ~ClusterList ()
 The destructor.
 
 ClusterList (const ClusterList &)=delete
 
 ClusterList (ClusterList &&)=delete
 
ClusterListoperator= (const ClusterList &)=delete
 
ClusterListoperator= (ClusterList &&)=delete
 
int length () const
 Return number of clusters in list.
 
void append (Cluster *c)
 Add cluster to end of list.
 
BoxArray boxArray () const
 Return array of boxes corresponding to clusters.
 
void boxArray (BoxArray &ba) const
 Return array of boxes corresponding to clusters in argument.
 
BoxList boxList () const
 Return list of boxes corresponding to clusters.
 
void boxList (BoxList &blst) const
 Return list of boxes corresponding to clusters in argument.
 
void chop (Real eff)
 Chop all clusters in list that have poor efficiency.
 
void new_chop (Real eff)
 Chop all clusters in list that have poor efficiency. This version calls new_chop() instead of chop()
 
void intersect (BoxArray &ba)
 Intersect clusters with BoxArray to insure cluster boxes are interior to the domain of BoxArray. Note that ba is modified during the process.
 

Detailed Description

A list of Cluster objects.

A container class for Cluster.

Constructor & Destructor Documentation

◆ ClusterList() [1/5]

amrex::ClusterList::ClusterList ( )
default

The default constructor.

◆ ClusterList() [2/5]

amrex::ClusterList::ClusterList ( IntVect pts,
Long  len 
)

Construct a list containing Cluster(pts,len).

Parameters
ptsPointer to tagged IntVects (owned by caller).
lenNumber of tagged entries in pts.

◆ ClusterList() [3/5]

amrex::ClusterList::ClusterList ( IntVect pts,
Long  len,
const Box domain,
int  whole_domain_dir 
)

Construct a list containing a single Cluster, clustering in a reduced number of dimensions.

The tagged points are projected onto the low end of domain in direction whole_domain_dir, so that the clustering is performed in one fewer dimension. The boxes returned by boxList and boxArray span the entire domain in that direction. In other words, tagging a single cell behaves as if the whole line of cells through it in that direction were tagged. Pass -1 for whole_domain_dir to disable this.

Note that the array pts is modified.

Parameters
ptsPointer to tagged IntVects (owned by caller).
lenNumber of tagged entries in pts.
domainProblem domain in the index space of pts.
whole_domain_dirDirection spanning the entire domain, or -1.

◆ ~ClusterList()

amrex::ClusterList::~ClusterList ( )

The destructor.

◆ ClusterList() [4/5]

amrex::ClusterList::ClusterList ( const ClusterList )
delete

◆ ClusterList() [5/5]

amrex::ClusterList::ClusterList ( ClusterList &&  )
delete

Member Function Documentation

◆ append()

void amrex::ClusterList::append ( Cluster c)
inline

Add cluster to end of list.

Parameters
cCluster pointer whose ownership is transferred into the list.

◆ boxArray() [1/2]

BoxArray amrex::ClusterList::boxArray ( ) const

Return array of boxes corresponding to clusters.

◆ boxArray() [2/2]

void amrex::ClusterList::boxArray ( BoxArray ba) const

Return array of boxes corresponding to clusters in argument.

Parameters
baOutput BoxArray filled with cluster bounding boxes.

◆ boxList() [1/2]

BoxList amrex::ClusterList::boxList ( ) const

Return list of boxes corresponding to clusters.

◆ boxList() [2/2]

void amrex::ClusterList::boxList ( BoxList blst) const

Return list of boxes corresponding to clusters in argument.

Parameters
blstOutput BoxList filled with cluster bounding boxes.

◆ chop()

void amrex::ClusterList::chop ( Real  eff)

Chop all clusters in list that have poor efficiency.

Parameters
effMinimum acceptable tagging efficiency.

◆ intersect()

void amrex::ClusterList::intersect ( BoxArray ba)

Intersect clusters with BoxArray to insure cluster boxes are interior to the domain of BoxArray. Note that ba is modified during the process.

Parameters
baBoxArray to intersect against (modified in place).

◆ length()

int amrex::ClusterList::length ( ) const
inline

Return number of clusters in list.

◆ new_chop()

void amrex::ClusterList::new_chop ( Real  eff)

Chop all clusters in list that have poor efficiency. This version calls new_chop() instead of chop()

Parameters
effMinimum acceptable tagging efficiency.

◆ operator=() [1/2]

ClusterList & amrex::ClusterList::operator= ( ClusterList &&  )
delete

◆ operator=() [2/2]

ClusterList & amrex::ClusterList::operator= ( const ClusterList )
delete

The documentation for this class was generated from the following files: