# Function to select optimal network of protected areas based on connectivity

### Description

This function finds the optimal network of protected areas based on connectivity using the eigenvalue perturbation approach described in Nilsson Jacobi & Jonsson (2011).

### Usage

1 2 3 |

### Arguments

`conn.mat` |
a square connectivity matrix. |

`nev` |
number of eigenvalues and associated eigenvectors to be calculated. |

`delta` |
the effect of protecting site i (e.g. increase in survival or fecundity in protected areas relative to unprotected areas). Now a single value, in future it will be possible to specify site-specific values. The perturbation theory used in the construction of the algorithm assumes delta to be small (e.g. delta=0.1). However, higher values give also good results. |

`theta` |
the threshold of donor times recipient value that a site must have to be selected. |

`M` |
the maximal number of sites selected from each subpopulation even if there are more sites above the threshold theta |

`epsilon.lambda` |
Threshold for removing complex eigenvalues. |

`epsilon.uv` |
Threshold for removing eigenvectors with elements of opposite signs of comparable magnitude. |

`only.list` |
Logical, whether the function return only the list of selected sites or also the predicted impact of each selected site on the eigenvalues |

`...` |
Additional arguments for the |

### Value

If only.list is `TRUE`

, just returns the list of selected sites.
If `FALSE`

, then result will be a list containing selected sites and
predicted impact of each selected site on the eigenvalues.

### Author(s)

Marco Andrello marco.andrello@gmail.com

### References

Jacobi, M. N., and Jonsson, P. R. 2011. Optimal networks of nature reserves can be found through eigenvalue perturbation theory of the connectivity matrix. Ecological Applications, 21: 1861-1870.