---
name: "Graph::Maker::Regular"
section: "3pm"
platform: "linux"
package: "libgraph-maker-perl"
version: "0.02-2"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/Graph::Maker::Regular"
---

# Graph::Maker::Regular(3pm)

Creates a k-regular graph.

## NAME

Graph::Maker::Regular - Creates a k-regular graph.

## VERSION

Version 0.01

## SYNOPSIS

Creates a regular graph with the number of nodes and the specified degree. A regular graph has every node connected to exactly K other nodes. If the graph is directed then edges are added in both directions to create an undirected graph.

```
        use strict;
        use warnings;
        use Graph;
        use Graph::Maker;
        use Graph::Maker::Regular;
        my $g = new Graph::Maker('regular', N => 10, K => 2, undirected => 1);
        # work with the graph
```

## FUNCTIONS

### new %params

Creates a k-regular graph with the number of nodes. The recognized parameters are graph\_maker, N, and K any others are passed onto Graph's constructor. If N is not given it defaults to 0. If K is not given it defaults to 0. N\*K must be even. If graph\_maker is specified and is it will be called to create the Graph class as desired (for example if you have a subclass of Graph). Will croak with the message "Could not form the requested graph..." if it is unable to create the requested graph.

## AUTHOR

Matt Spear, `"<batman900+cpan at gmail.com>"`

## BUGS

None at the moment...

Please report any bugs or feature requests to `"bug-graph-maker-regular at rt.cpan.org"`, or through the web interface at \<http://rt.cpan.org/NoAuth/ReportBug.html?Queue=Graph-Maker\>. If graph\_maker is specified it will be called to create the Graph class as desired (for example if you have a subclass of Graph), this defaults to create a Graph with the parameters specified.

## ACKNOWLEDGEMENTS

This package owes a lot to NetworkX.

## COPYRIGHT & LICENSE

Copyright 2008 Matt Spear, all rights reserved.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
