ensemble.hpp File Reference

ensemble specific graph update classes, shape-aware acceptance rate calculation and global shape restriction. More...

#include <cmath>
#include <cassert>
#include "weight.hpp"
#include "graph.hpp"
#include "util.hpp"
#include "iterator.hpp"

Include dependency graph for ensemble.hpp:

This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  graphgen
namespace  graphgen::shape

Classes

class  graphgen::ensemble_base< W, S >
 Ensemble base class, defines generic typedefs, data fields, access methods for all ensemble classes. More...
class  graphgen::canonical< W, R >
 Ensemble class to sample graphs from the canonical statistical pseudo ensemble. More...
class  graphgen::microcanonical< W, R >
 Ensemble class to sample graphs from the micro-canonical statistical pseudo ensemble. More...
class  graphgen::grandcanonical< W, R >
 Ensemble class to sample graphs from the grand-canonical statistical pseudo ensemble. More...
class  graphgen::Ratio< R >
 Ratio functor calculates the appropriate weight ratio for a proposed local update. More...
struct  graphgen::shape::tree< W >
 Restriction functor proposes local updates preserving the tree propoerty of the simulated graph. More...
struct  graphgen::shape::simple< W >
 Restriction functor proposes local updates preserving the simple graph ensemble. More...
struct  graphgen::shape::noselflinks< W >
 Restriction functor proposes local updates to ensemble classes, preserving the ensemble of multi-link degenerate graphs. More...
struct  graphgen::shape::multigraph< W >
 Restriction functor proposes local updates to ensemble classes without any restrictions. More...

Functions

template<value_type::weight_value_type WV, template< value_type::weight_value_type WV >class W>
double graphgen::graph_weight (const undirected_graph &graph, const W< WV > &weight)
 Total graph weight function calculates the total (functional and configuration space measure) weight of a graph.
template<value_type::weight_value_type WV>
double graphgen::graph_weight (const undirected_graph &graph, const vertex_weight< WV > &weight)
 partial specialization graph_weight< WV,vertex_weight<WV> >
template<value_type::weight_value_type WV>
double graphgen::graph_weight (const undirected_graph &graph, const link_weight< WV > &weight)
 partial specialization graph_weight< WV,link_weight<WV> >


Detailed Description

ensemble specific graph update classes, shape-aware acceptance rate calculation and global shape restriction.

To instantiate a canonical network ensemble, using a pair factorized functional weight and sampling only simple graphs do for example

 canonical<link_weight<weight_type::logratio>, shape::simple> E 
Do some updates:
 E.update; E.sweep( some_number ); 

Generated on Wed Jun 2 14:49:04 2010 for GraphGen by  doxygen 1.5.6