Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
Aleph::Testing::GridNetworkGenerator< Net > Class Template Reference

Grid network generator. More...

#include <random_network_generator.H>

Inheritance diagram for Aleph::Testing::GridNetworkGenerator< Net >:
[legend]
Collaboration diagram for Aleph::Testing::GridNetworkGenerator< Net >:
[legend]

Public Member Functions

 GridNetworkGenerator (const NetworkGeneratorConfig &cfg, size_t r=5, size_t c=5)
 
void generate (Net &net) override
 
- Public Member Functions inherited from Aleph::Testing::RandomNetworkGenerator< Net >
 RandomNetworkGenerator (const NetworkGeneratorConfig &cfg)
 
virtual ~RandomNetworkGenerator ()=default
 
void reseed ()
 Reset the random number generator to the original seed.
 
void reseed (unsigned new_seed)
 Reset with a specific seed (also updates config.seed)
 

Private Types

using Base = RandomNetworkGenerator< Net >
 
using Node = typename Net::Node
 

Private Member Functions

void insert_arc (Net &net, Node *src, Node *tgt)
 

Private Attributes

size_t rows
 
size_t cols
 
NetworkGeneratorConfig config
 

Additional Inherited Members

- Protected Types inherited from Aleph::Testing::RandomNetworkGenerator< Net >
using Node = typename Net::Node
 
using Arc = typename Net::Arc
 
- Protected Member Functions inherited from Aleph::Testing::RandomNetworkGenerator< Net >
double random_capacity ()
 
double random_cost ()
 
double random_prob ()
 
bool is_connected (const Net &net, Node *source, Node *sink)
 
void ensure_path (Net &net, Node *source, Node *sink, const std::vector< Node * > &nodes)
 
void insert_arc (Net &net, Node *src, Node *tgt)
 
- Protected Attributes inherited from Aleph::Testing::RandomNetworkGenerator< Net >
NetworkGeneratorConfig config
 
std::mt19937 rng
 
std::uniform_real_distribution< doublecapacity_dist
 
std::uniform_real_distribution< doublecost_dist
 
std::uniform_real_distribution< doubleprob_dist {0.0, 1.0}
 

Detailed Description

template<class Net>
class Aleph::Testing::GridNetworkGenerator< Net >

Grid network generator.

Generates a grid with flow from top-left to bottom-right. Good for testing scalability.

Definition at line 358 of file random_network_generator.H.

Member Typedef Documentation

◆ Base

◆ Node

Constructor & Destructor Documentation

◆ GridNetworkGenerator()

Member Function Documentation

◆ generate()

◆ insert_arc()

template<class Net >
void Aleph::Testing::RandomNetworkGenerator< Net >::insert_arc ( Net net,
Node src,
Node tgt 
)
inlineprivate

Member Data Documentation

◆ cols

◆ config

◆ rows


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