All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Member Functions | Friends | List of all members
NetworKit::DynamicHyperbolicGenerator Class Reference

#include <DynamicHyperbolicGenerator.h>

Public Member Functions

 DynamicHyperbolicGenerator (count n=1000, double avgDegree=6, double exp=3, double T=0, double moveEachStep=0, double moveDistance=0)
 Initialize a dynamic hyperbolic generator and generate initial node positions Node movement happens in discrete time steps. More...
 
 DynamicHyperbolicGenerator (std::vector< double > &angles, std::vector< double > &radii, double R, double alpha, double T=0, double moveEachStep=0, double moveDistance=0)
 Initialize a dynamic hyperbolic generator with given initial node positions in polar coordinates Node movement happens in discrete time steps. More...
 
 DynamicHyperbolicGenerator ()
 Default constructor. More...
 
std::vector< GraphEventgenerate (count nSteps) override
 Run the dynamic, changes state of generator. More...
 
Graph getGraph () const
 Get the graph corresponding to the current state of the generator. More...
 
std::vector< Point< float > > getCoordinates () const
 Get coordinates in native representation. More...
 
- Public Member Functions inherited from NetworKit::DynamicGraphGenerator
virtual ~DynamicGraphGenerator ()=default
 Default destructor. More...
 

Friends

class GeneratorsGTest
 

Additional Inherited Members

- Protected Attributes inherited from NetworKit::DynamicGraphGenerator
Graph G
 

Constructor & Destructor Documentation

NetworKit::DynamicHyperbolicGenerator::DynamicHyperbolicGenerator ( count  n = 1000,
double  avgDegree = 6,
double  exp = 3,
double  T = 0,
double  moveEachStep = 0,
double  moveDistance = 0 
)

Initialize a dynamic hyperbolic generator and generate initial node positions Node movement happens in discrete time steps.

Parameters
nnumber of nodes
avgDegreeexpected average degree of target graph
expexponent of power-law degree distribution
Ttemperature parameter in edge probabilities
moveEachStepfraction of nodes which are moved at each time step, should be non-negative
moveDistancebase value for the node movements
NetworKit::DynamicHyperbolicGenerator::DynamicHyperbolicGenerator ( std::vector< double > &  angles,
std::vector< double > &  radii,
double  R,
double  alpha,
double  T = 0,
double  moveEachStep = 0,
double  moveDistance = 0 
)

Initialize a dynamic hyperbolic generator with given initial node positions in polar coordinates Node movement happens in discrete time steps.

Parameters
anglesangular coordinates of initial positions
radiiradial coordinates of initial positions
Rradius of hyperbolic disk
alphadispersion parameter of point distribution
Ttemperature parameter in edge probabilities
moveEachStepfraction of nodes which are moved at each time step, should be non-negative
moveDistancebase value for the node movements
NetworKit::DynamicHyperbolicGenerator::DynamicHyperbolicGenerator ( )

Default constructor.

Member Function Documentation

std::vector< GraphEvent > NetworKit::DynamicHyperbolicGenerator::generate ( count  nSteps)
overridevirtual

Run the dynamic, changes state of generator.

Parameters
nStepsnumber of time steps to iterate over
Returns
changed edges

Implements NetworKit::DynamicGraphGenerator.

std::vector< Point< float > > NetworKit::DynamicHyperbolicGenerator::getCoordinates ( ) const

Get coordinates in native representation.

Returns
vector of 2D-Points in Cartesian coordinates
Graph NetworKit::DynamicHyperbolicGenerator::getGraph ( ) const

Get the graph corresponding to the current state of the generator.

Does not change the generator

Returns
graph at the current state

The next call is unnecessarily expensive, since it constructs a new QuadTree / bands. Reduces code duplication, though.

Friends And Related Function Documentation

friend class GeneratorsGTest
friend

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