Our group is working on a project for which we require the creation, fast manipulation (eg vertex removal/addition, other graph rewriting too) and some static analysis/tools (eg find graph diameter) of multigraphs. These graphs are typically ~10^3 vertices, but can often be up to 10^6 and scalability is very important.
So far we've been working with DAGs and therefore boost graph was sufficient for our purposes, but we have come across problems which require mixed graphs to represent - ie, graphs with both directed and undirected edges.
Are there any libraries (ideally in C++, but any language that supports OOP would do) which can fulfil these criteria?
Thanks for your time.
edit:: should point out it would be preferable to be open-source with MIT-style license, but the license is not a big deal.