====== LDPC graph generation ====== ==== Description ==== A small demo which allows you to generate random instances of a given LDPC ensemble. The corresponding code is displayed as a “Tanner” graph, i.e., as a bipartite graph in which variables and checks correspond to nodes (blue circles for variables and red squares for checks) and the edges of the graph indicate what variables participate in what checks. ==== Input method and options ==== You should enter the degree distribution as polynomials. There are three different ways of doing it. * **Edge perspective:** In this case enter the polynomials as ∑i λi xi-1, where λi is the fraction of edges connected to a variable(check) node of degree i. //Notice that the power to x is i-1.// * **Node perspective:** In this case enter the polynomials as ∑ii xi, where ∧i is the fraction of variable (check) nodes of degree i. * **Number of nodes:** This is the same as node perspective except that instead of the fraction of nodes, ∧i denotes the //number of nodes//. \\ **Block length** is the number of variable nodes.\\ \\ ===Type of graph=== There are three type of options regarding the type of graph which will be generated corresponding to a given degree distribution. * **Standard Ensemble** In this option, all the graphs which satisfy a given degree distribution criterion are contained. * **Ensembles with degree two separated** In this option, all the degree two variable nodes are shown in a contiguous manner. * **Ensemble with degree two in a ring** In this option, all the degree two variable nodes form a cycle.