a00025.html 66 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  2. <html>
  3. <head>
  4. <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
  5. <title>GTL - Graph Template Library: ratio_cut_partition Class Reference</title>
  6. <link href="doxygen.css" rel="stylesheet" type="text/css">
  7. </head>
  8. <body>
  9. <p class="links">
  10. <a href="../index.html">Home</a> |
  11. Documentation |
  12. <a href="../register.html">Download</a> |
  13. <a href="../platforms.html">Platforms</a> |
  14. <a href="../refer.html">Projects</a> |
  15. <a href="../lists.html">Mailing Lists</a> |
  16. <a href="../history.html">Version History</a>
  17. </p>
  18. <!-- Generated by Doxygen 1.5.3 -->
  19. <div class="tabs">
  20. <ul>
  21. <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
  22. <li class="current"><a href="classes.html"><span>Classes</span></a></li>
  23. <li><a href="files.html"><span>Files</span></a></li>
  24. <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
  25. </ul>
  26. </div>
  27. <div class="tabs">
  28. <ul>
  29. <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
  30. <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
  31. <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
  32. <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
  33. </ul>
  34. </div>
  35. <h1>ratio_cut_partition Class Reference</h1><!-- doxytag: class="ratio_cut_partition" --><!-- doxytag: inherits="algorithm" -->Heuristic <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> bi-partitioning <a class="el" href="a00001.html" title="Abstract baseclass for all algoritm-classes.">algorithm</a> (Wei-Cheng).
  36. <a href="#_details">More...</a>
  37. <p>
  38. <div class="dynheader">
  39. Inheritance diagram for ratio_cut_partition:</div>
  40. <div class="dynsection">
  41. <p><center><img src="a00194.gif" border="0" usemap="#a00195" alt="Inheritance graph"></center>
  42. <map name="a00195">
  43. <area shape="rect" href="a00001.html" title="Abstract baseclass for all algoritm&#45;classes." alt="" coords="31,7,108,31"></map>
  44. <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
  45. <div class="dynheader">
  46. Collaboration diagram for ratio_cut_partition:</div>
  47. <div class="dynsection">
  48. <p><center><img src="a00196.gif" border="0" usemap="#a00197" alt="Collaboration graph"></center>
  49. <map name="a00197">
  50. <area shape="rect" href="a00001.html" title="Abstract baseclass for all algoritm&#45;classes." alt="" coords="625,5,703,29"><area shape="rect" href="a00020.html" title="A node in a graph." alt="" coords="639,92,689,116"><area shape="rect" title="source_node\ntarget_node" alt="" coords="687,100,695,108"><area shape="rect" title="source_node\ntarget_node" alt="" coords="983,165,991,173"><area shape="rect" title="int_node" alt="" coords="635,95,643,103"><area shape="rect" title="int_node" alt="" coords="687,93,695,101"><area shape="rect" href="a00021.html" title="node_map\&lt; int \&gt;" alt="" coords="603,145,725,169"><area shape="rect" title="gain_value\nnode_weight" alt="" coords="721,157,729,165"><area shape="rect" title="gain_value\nnode_weight" alt="" coords="936,172,944,180"><area shape="rect" href="a00019.html" title="ne_map\&lt; node, int, graph, allocator\&lt; int \&gt; \&gt;" alt="" coords="111,145,393,169"><area shape="rect" href="a00021.html" title="node_map\&lt; list\&lt; node \&gt;::iterator \&gt;" alt="" coords="551,193,777,217"><area shape="rect" title="position_in_bucket" alt="" coords="775,200,783,208"><area shape="rect" title="position_in_bucket" alt="" coords="936,189,944,197"><area shape="rect" href="a00019.html" title="ne_map\&lt; node, list\&lt; node \&gt;::iterator, graph, allocator\&lt; list\&lt; node \&gt;::iterator \&gt; \&gt;" alt="" coords="5,193,499,217"><area shape="rect" href="a00011.html" title="edge_map\&lt; int \&gt;" alt="" coords="603,267,725,291"><area shape="rect" title="aside\nbside\nedge_weight" alt="" coords="721,279,729,287"><area shape="rect" title="aside\nbside\nedge_weight" alt="" coords="988,191,996,199"><area shape="rect" href="a00019.html" title="ne_map\&lt; edge, int, graph, allocator\&lt; int \&gt; \&gt;" alt="" coords="111,267,393,291"><area shape="rect" href="a00011.html" title="edge_map\&lt; list\&lt; node \&gt; \&gt;" alt="" coords="575,327,753,351"><area shape="rect" title="unlockedA\nunlockedB" alt="" coords="749,345,757,353"><area shape="rect" title="unlockedA\nunlockedB" alt="" coords="996,191,1004,199"><area shape="rect" href="a00019.html" title="ne_map\&lt; edge, list\&lt; node \&gt;, graph, allocator\&lt; list\&lt; node \&gt; \&gt; \&gt;" alt="" coords="55,327,449,351"></map>
  51. <center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
  52. <p>
  53. <a href="a00198.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
  54. <tr><td></td></tr>
  55. <tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
  56. <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a></td></tr>
  57. <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef short int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a></td></tr>
  58. <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef list&lt; <a class="el" href="a00010.html">edge</a> &gt;<br>
  59. ::const_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#5269af60e49810067411b085a1341adc">cut_edges_iterator</a></td></tr>
  60. <tr><td class="memItemLeft" nowrap align="right" valign="top">typedef list&lt; <a class="el" href="a00020.html">node</a> &gt;<br>
  61. ::const_iterator&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">nodes_of_one_side_iterator</a></td></tr>
  62. <tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
  63. <tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#56e283d4ec5a06115146982e86c65878">ratio_cut_partition</a> ()</td></tr>
  64. <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#b61c1b108ba230abd0a921b095b5abdc">~ratio_cut_partition</a> ()</td></tr>
  65. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#4c143f82aac5fee3b955414ab7d6ce19">set_vars</a> (const <a class="el" href="a00014.html">graph</a> &amp;G, const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;node_weight, const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;edge_weight)</td></tr>
  66. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#acd519cdb1760af792e22d57e746c07f">set_vars</a> (const <a class="el" href="a00014.html">graph</a> &amp;G, const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;node_weight, const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;edge_weight, const <a class="el" href="a00020.html">node</a> source_node, const <a class="el" href="a00020.html">node</a> target_node)</td></tr>
  67. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#67ea2ccb8b5cce2e4acd8e10e112a962">set_vars</a> (const <a class="el" href="a00014.html">graph</a> &amp;G, const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;node_weight, const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;edge_weight, const <a class="el" href="a00020.html">node</a> source_node, const <a class="el" href="a00020.html">node</a> target_node, const <a class="el" href="a00021.html">node_map</a>&lt; <a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a> &gt; &amp;init_side)</td></tr>
  68. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#2c09504b727a1b1d1e2f99a3a42de05b">set_vars</a> (const <a class="el" href="a00014.html">graph</a> &amp;G, const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;node_weight, const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;edge_weight, const <a class="el" href="a00020.html">node</a> source_node, const <a class="el" href="a00020.html">node</a> target_node, const <a class="el" href="a00021.html">node_map</a>&lt; <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a> &gt; &amp;fixed)</td></tr>
  69. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#0ed59d80c7e15d2865d6aa4657ae3f78">set_vars</a> (const <a class="el" href="a00014.html">graph</a> &amp;G, const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;node_weight, const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;edge_weight, const <a class="el" href="a00020.html">node</a> source_node, const <a class="el" href="a00020.html">node</a> target_node, const <a class="el" href="a00021.html">node_map</a>&lt; <a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a> &gt; &amp;init_side, const <a class="el" href="a00021.html">node_map</a>&lt; <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a> &gt; &amp;fixed)</td></tr>
  70. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#f5a76fa0ecaf2c75792cc2c1574994c7">store_cut_edges</a> (const bool set)</td></tr>
  71. <tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#f0efdeab02cb235df47e2339c196051f">store_nodesAB</a> (const bool set)</td></tr>
  72. <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">check</a> (<a class="el" href="a00014.html">graph</a> &amp;G)</td></tr>
  73. <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#4ab180ca4cf57c811e3478c3de4c4dc3">run</a> (<a class="el" href="a00014.html">graph</a> &amp;G)</td></tr>
  74. <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#4fc9beab107546850974ffd5a47c1e7f">get_cutsize</a> ()</td></tr>
  75. <tr><td class="memItemLeft" nowrap align="right" valign="top">double&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#9a61b2be36953d57e36fbb511cf1aa96">get_cutratio</a> ()</td></tr>
  76. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#58297f476305db83785ab0dfaee02a75">get_side_of_node</a> (const <a class="el" href="a00020.html">node</a> &amp;n) const </td></tr>
  77. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#c92bcfeda33420b0f4c1bf873b04644b">operator[]</a> (const <a class="el" href="a00020.html">node</a> &amp;n) const </td></tr>
  78. <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#c8acd8f7dd03f9034b300ded4b7433c2">get_weight_on_sideA</a> (const <a class="el" href="a00014.html">graph</a> &amp;G) const </td></tr>
  79. <tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#540d6e5fdf509a65d06f0704b029719a">get_weight_on_sideB</a> (const <a class="el" href="a00014.html">graph</a> &amp;G) const </td></tr>
  80. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00025.html#5269af60e49810067411b085a1341adc">cut_edges_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#254e3c1f15855db67557f80f2513a378">cut_edges_begin</a> () const </td></tr>
  81. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00025.html#5269af60e49810067411b085a1341adc">cut_edges_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#7bcefed3f3e1dc93e4d8bf259134a43b">cut_edges_end</a> () const </td></tr>
  82. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">nodes_of_one_side_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#9292652c9b0a2f806dcff77c03396d85">nodes_of_sideA_begin</a> () const </td></tr>
  83. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">nodes_of_one_side_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#f7464a3a4f6ed4beeeff9d834fa102ef">nodes_of_sideA_end</a> () const </td></tr>
  84. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">nodes_of_one_side_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#cfa58a6af383c1afb17fa1c7d0389cfe">nodes_of_sideB_begin</a> () const </td></tr>
  85. <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">nodes_of_one_side_iterator</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#7a4f67c08c143eab4d1b0c89fdddde9d">nodes_of_sideB_end</a> () const </td></tr>
  86. <tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#941fa7af07b89ba98454bbf31140061b">reset</a> ()</td></tr>
  87. <tr><td colspan="2"><br><h2>Static Public Attributes</h2></td></tr>
  88. <tr><td class="memItemLeft" nowrap align="right" valign="top">static const <a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#81bfe2382ea876b98112143593612cb4">A</a></td></tr>
  89. <tr><td class="memItemLeft" nowrap align="right" valign="top">static const <a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#df8f7eaaf11ff5461f3f4404010a05cb">B</a></td></tr>
  90. <tr><td class="memItemLeft" nowrap align="right" valign="top">static const <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#c964b04d22ceb3ea2d49780df72032f3">FIXA</a></td></tr>
  91. <tr><td class="memItemLeft" nowrap align="right" valign="top">static const <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#31884bac5dce93e880836925a2cc71c9">FIXB</a></td></tr>
  92. <tr><td class="memItemLeft" nowrap align="right" valign="top">static const <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00025.html#2a1522e3dc701ac6af359614a111a1df">UNFIXED</a></td></tr>
  93. </table>
  94. <hr><a name="_details"></a><h2>Detailed Description</h2>
  95. Heuristic <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> bi-partitioning <a class="el" href="a00001.html" title="Abstract baseclass for all algoritm-classes.">algorithm</a> (Wei-Cheng).
  96. <p>
  97. This class implements a heuristic <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> bi-partitioning <a class="el" href="a00001.html" title="Abstract baseclass for all algoritm-classes.">algorithm</a> using the ratio cut method proposed by Y. C. Wei and C. K. Cheng in 1991.<p>
  98. In the case E is the set of edges of the <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a>, the <a class="el" href="a00001.html" title="Abstract baseclass for all algoritm-classes.">algorithm</a> needs <code>O(|E|)</code> time to proceed.<p>
  99. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00012.html" title="Heuristic graph bi-partitioning algorithm (Fiduccia-Mattheyses).">fm_partition</a> </dd></dl>
  100. <hr><h2>Member Typedef Documentation</h2>
  101. <a class="anchor" name="ce53442bd0c1e21fbf00858ec6f6b456"></a><!-- doxytag: member="ratio_cut_partition::side_type" ref="ce53442bd0c1e21fbf00858ec6f6b456" args="" -->
  102. <div class="memitem">
  103. <div class="memproto">
  104. <table class="memname">
  105. <tr>
  106. <td class="memname">typedef int <a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">ratio_cut_partition::side_type</a> </td>
  107. </tr>
  108. </table>
  109. </div>
  110. <div class="memdoc">
  111. <p>
  112. Return type of <a class="el" href="a00025.html#58297f476305db83785ab0dfaee02a75">ratio_cut_partition::get_side_of_node</a>.<p>
  113. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#81bfe2382ea876b98112143593612cb4">ratio_cut_partition::A</a> <p>
  114. <a class="el" href="a00025.html#df8f7eaaf11ff5461f3f4404010a05cb">ratio_cut_partition::B</a> </dd></dl>
  115. </div>
  116. </div><p>
  117. <a class="anchor" name="558dda40abda8ab03edb4605dbb81e36"></a><!-- doxytag: member="ratio_cut_partition::fix_type" ref="558dda40abda8ab03edb4605dbb81e36" args="" -->
  118. <div class="memitem">
  119. <div class="memproto">
  120. <table class="memname">
  121. <tr>
  122. <td class="memname">typedef short int <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">ratio_cut_partition::fix_type</a> </td>
  123. </tr>
  124. </table>
  125. </div>
  126. <div class="memdoc">
  127. <p>
  128. Fix type of each <a class="el" href="a00020.html" title="A node in a graph.">node</a> (needed with <a class="el" href="a00025.html#4c143f82aac5fee3b955414ab7d6ce19">ratio_cut_partition::set_vars</a>).<p>
  129. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#c964b04d22ceb3ea2d49780df72032f3">ratio_cut_partition::FIXA</a> <p>
  130. <a class="el" href="a00025.html#31884bac5dce93e880836925a2cc71c9">ratio_cut_partition::FIXB</a> <p>
  131. <a class="el" href="a00025.html#2a1522e3dc701ac6af359614a111a1df">ratio_cut_partition::UNFIXED</a> </dd></dl>
  132. </div>
  133. </div><p>
  134. <a class="anchor" name="5269af60e49810067411b085a1341adc"></a><!-- doxytag: member="ratio_cut_partition::cut_edges_iterator" ref="5269af60e49810067411b085a1341adc" args="" -->
  135. <div class="memitem">
  136. <div class="memproto">
  137. <table class="memname">
  138. <tr>
  139. <td class="memname">typedef list&lt;<a class="el" href="a00010.html">edge</a>&gt;::const_iterator <a class="el" href="a00025.html#5269af60e49810067411b085a1341adc">ratio_cut_partition::cut_edges_iterator</a> </td>
  140. </tr>
  141. </table>
  142. </div>
  143. <div class="memdoc">
  144. <p>
  145. Iterator type for edges which belong to the cut.
  146. </div>
  147. </div><p>
  148. <a class="anchor" name="4f667099b56ded1bfef8f1fb4d09f81c"></a><!-- doxytag: member="ratio_cut_partition::nodes_of_one_side_iterator" ref="4f667099b56ded1bfef8f1fb4d09f81c" args="" -->
  149. <div class="memitem">
  150. <div class="memproto">
  151. <table class="memname">
  152. <tr>
  153. <td class="memname">typedef list&lt;<a class="el" href="a00020.html">node</a>&gt;::const_iterator <a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">ratio_cut_partition::nodes_of_one_side_iterator</a> </td>
  154. </tr>
  155. </table>
  156. </div>
  157. <div class="memdoc">
  158. <p>
  159. Iterator type for nodes of a side.
  160. </div>
  161. </div><p>
  162. <hr><h2>Constructor &amp; Destructor Documentation</h2>
  163. <a class="anchor" name="56e283d4ec5a06115146982e86c65878"></a><!-- doxytag: member="ratio_cut_partition::ratio_cut_partition" ref="56e283d4ec5a06115146982e86c65878" args="()" -->
  164. <div class="memitem">
  165. <div class="memproto">
  166. <table class="memname">
  167. <tr>
  168. <td class="memname">ratio_cut_partition::ratio_cut_partition </td>
  169. <td>(</td>
  170. <td class="paramname"> </td>
  171. <td>&nbsp;)&nbsp;</td>
  172. <td width="100%"></td>
  173. </tr>
  174. </table>
  175. </div>
  176. <div class="memdoc">
  177. <p>
  178. Default constructor.<p>
  179. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00001.html#b79e1ddec2f2afdf4b36b10724db8b15" title="Creates an algorithm object.">algorithm::algorithm</a> </dd></dl>
  180. </div>
  181. </div><p>
  182. <a class="anchor" name="b61c1b108ba230abd0a921b095b5abdc"></a><!-- doxytag: member="ratio_cut_partition::~ratio_cut_partition" ref="b61c1b108ba230abd0a921b095b5abdc" args="()" -->
  183. <div class="memitem">
  184. <div class="memproto">
  185. <table class="memname">
  186. <tr>
  187. <td class="memname">virtual ratio_cut_partition::~ratio_cut_partition </td>
  188. <td>(</td>
  189. <td class="paramname"> </td>
  190. <td>&nbsp;)&nbsp;</td>
  191. <td width="100%"><code> [virtual]</code></td>
  192. </tr>
  193. </table>
  194. </div>
  195. <div class="memdoc">
  196. <p>
  197. Destructor.<p>
  198. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00001.html#dca9b1e7fa3afd914519a9dbb44e9fd5" title="Destroys the algorithm object.">algorithm::~algorithm</a> </dd></dl>
  199. </div>
  200. </div><p>
  201. <hr><h2>Member Function Documentation</h2>
  202. <a class="anchor" name="4c143f82aac5fee3b955414ab7d6ce19"></a><!-- doxytag: member="ratio_cut_partition::set_vars" ref="4c143f82aac5fee3b955414ab7d6ce19" args="(const graph &amp;G, const node_map&lt; int &gt; &amp;node_weight, const edge_map&lt; int &gt; &amp;edge_weight)" -->
  203. <div class="memitem">
  204. <div class="memproto">
  205. <table class="memname">
  206. <tr>
  207. <td class="memname">void ratio_cut_partition::set_vars </td>
  208. <td>(</td>
  209. <td class="paramtype">const <a class="el" href="a00014.html">graph</a> &amp;&nbsp;</td>
  210. <td class="paramname"> <em>G</em>, </td>
  211. </tr>
  212. <tr>
  213. <td class="paramkey"></td>
  214. <td></td>
  215. <td class="paramtype">const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;&nbsp;</td>
  216. <td class="paramname"> <em>node_weight</em>, </td>
  217. </tr>
  218. <tr>
  219. <td class="paramkey"></td>
  220. <td></td>
  221. <td class="paramtype">const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;&nbsp;</td>
  222. <td class="paramname"> <em>edge_weight</em></td><td>&nbsp;</td>
  223. </tr>
  224. <tr>
  225. <td></td>
  226. <td>)</td>
  227. <td></td><td></td><td width="100%"></td>
  228. </tr>
  229. </table>
  230. </div>
  231. <div class="memdoc">
  232. <p>
  233. Sets variables. Must be executed before <a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a>! <code>source_node</code> and <code>target_node</code> will be determined automatically.<p>
  234. <dl compact><dt><b>Parameters:</b></dt><dd>
  235. <table border="0" cellspacing="2" cellpadding="0">
  236. <tr><td valign="top"></td><td valign="top"><em>G</em>&nbsp;</td><td>undirected <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> </td></tr>
  237. <tr><td valign="top"></td><td valign="top"><em>node_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00020.html" title="A node in a graph.">node</a> </td></tr>
  238. <tr><td valign="top"></td><td valign="top"><em>edge_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00010.html" title="An edge in a graph.">edge</a>. </td></tr>
  239. </table>
  240. </dl>
  241. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a> </dd></dl>
  242. </div>
  243. </div><p>
  244. <a class="anchor" name="acd519cdb1760af792e22d57e746c07f"></a><!-- doxytag: member="ratio_cut_partition::set_vars" ref="acd519cdb1760af792e22d57e746c07f" args="(const graph &amp;G, const node_map&lt; int &gt; &amp;node_weight, const edge_map&lt; int &gt; &amp;edge_weight, const node source_node, const node target_node)" -->
  245. <div class="memitem">
  246. <div class="memproto">
  247. <table class="memname">
  248. <tr>
  249. <td class="memname">void ratio_cut_partition::set_vars </td>
  250. <td>(</td>
  251. <td class="paramtype">const <a class="el" href="a00014.html">graph</a> &amp;&nbsp;</td>
  252. <td class="paramname"> <em>G</em>, </td>
  253. </tr>
  254. <tr>
  255. <td class="paramkey"></td>
  256. <td></td>
  257. <td class="paramtype">const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;&nbsp;</td>
  258. <td class="paramname"> <em>node_weight</em>, </td>
  259. </tr>
  260. <tr>
  261. <td class="paramkey"></td>
  262. <td></td>
  263. <td class="paramtype">const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;&nbsp;</td>
  264. <td class="paramname"> <em>edge_weight</em>, </td>
  265. </tr>
  266. <tr>
  267. <td class="paramkey"></td>
  268. <td></td>
  269. <td class="paramtype">const <a class="el" href="a00020.html">node</a>&nbsp;</td>
  270. <td class="paramname"> <em>source_node</em>, </td>
  271. </tr>
  272. <tr>
  273. <td class="paramkey"></td>
  274. <td></td>
  275. <td class="paramtype">const <a class="el" href="a00020.html">node</a>&nbsp;</td>
  276. <td class="paramname"> <em>target_node</em></td><td>&nbsp;</td>
  277. </tr>
  278. <tr>
  279. <td></td>
  280. <td>)</td>
  281. <td></td><td></td><td width="100%"></td>
  282. </tr>
  283. </table>
  284. </div>
  285. <div class="memdoc">
  286. <p>
  287. Sets variables. Must be executed before <a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a>! In order to get good results, you should take two <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> theoretically far away nodes as source and target.<p>
  288. <dl compact><dt><b>Parameters:</b></dt><dd>
  289. <table border="0" cellspacing="2" cellpadding="0">
  290. <tr><td valign="top"></td><td valign="top"><em>G</em>&nbsp;</td><td>undirected <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> </td></tr>
  291. <tr><td valign="top"></td><td valign="top"><em>node_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00020.html" title="A node in a graph.">node</a> </td></tr>
  292. <tr><td valign="top"></td><td valign="top"><em>edge_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00010.html" title="An edge in a graph.">edge</a> </td></tr>
  293. <tr><td valign="top"></td><td valign="top"><em>source_node</em>&nbsp;</td><td>start-node, remains on side <code>A</code> </td></tr>
  294. <tr><td valign="top"></td><td valign="top"><em>target_node</em>&nbsp;</td><td>end-node, remains on side <code>B</code> </td></tr>
  295. </table>
  296. </dl>
  297. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a> </dd></dl>
  298. </div>
  299. </div><p>
  300. <a class="anchor" name="67ea2ccb8b5cce2e4acd8e10e112a962"></a><!-- doxytag: member="ratio_cut_partition::set_vars" ref="67ea2ccb8b5cce2e4acd8e10e112a962" args="(const graph &amp;G, const node_map&lt; int &gt; &amp;node_weight, const edge_map&lt; int &gt; &amp;edge_weight, const node source_node, const node target_node, const node_map&lt; side_type &gt; &amp;init_side)" -->
  301. <div class="memitem">
  302. <div class="memproto">
  303. <table class="memname">
  304. <tr>
  305. <td class="memname">void ratio_cut_partition::set_vars </td>
  306. <td>(</td>
  307. <td class="paramtype">const <a class="el" href="a00014.html">graph</a> &amp;&nbsp;</td>
  308. <td class="paramname"> <em>G</em>, </td>
  309. </tr>
  310. <tr>
  311. <td class="paramkey"></td>
  312. <td></td>
  313. <td class="paramtype">const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;&nbsp;</td>
  314. <td class="paramname"> <em>node_weight</em>, </td>
  315. </tr>
  316. <tr>
  317. <td class="paramkey"></td>
  318. <td></td>
  319. <td class="paramtype">const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;&nbsp;</td>
  320. <td class="paramname"> <em>edge_weight</em>, </td>
  321. </tr>
  322. <tr>
  323. <td class="paramkey"></td>
  324. <td></td>
  325. <td class="paramtype">const <a class="el" href="a00020.html">node</a>&nbsp;</td>
  326. <td class="paramname"> <em>source_node</em>, </td>
  327. </tr>
  328. <tr>
  329. <td class="paramkey"></td>
  330. <td></td>
  331. <td class="paramtype">const <a class="el" href="a00020.html">node</a>&nbsp;</td>
  332. <td class="paramname"> <em>target_node</em>, </td>
  333. </tr>
  334. <tr>
  335. <td class="paramkey"></td>
  336. <td></td>
  337. <td class="paramtype">const <a class="el" href="a00021.html">node_map</a>&lt; <a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a> &gt; &amp;&nbsp;</td>
  338. <td class="paramname"> <em>init_side</em></td><td>&nbsp;</td>
  339. </tr>
  340. <tr>
  341. <td></td>
  342. <td>)</td>
  343. <td></td><td></td><td width="100%"></td>
  344. </tr>
  345. </table>
  346. </div>
  347. <div class="memdoc">
  348. <p>
  349. Sets variables. Must be executed before <a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a>! In order to get good results, you should take two <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> theoretically far away nodes as source and target. Additionally <code>init_side</code> should nearly be in balance. <code>source_node</code> must be on side <code>A</code> in <code> init_side</code> and <code>target_node</code> on side <code>B </code> respectively.<p>
  350. <dl compact><dt><b>Parameters:</b></dt><dd>
  351. <table border="0" cellspacing="2" cellpadding="0">
  352. <tr><td valign="top"></td><td valign="top"><em>G</em>&nbsp;</td><td>undirected <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> </td></tr>
  353. <tr><td valign="top"></td><td valign="top"><em>node_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00020.html" title="A node in a graph.">node</a> </td></tr>
  354. <tr><td valign="top"></td><td valign="top"><em>edge_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00010.html" title="An edge in a graph.">edge</a> </td></tr>
  355. <tr><td valign="top"></td><td valign="top"><em>source_node</em>&nbsp;</td><td>start-node, remains on side <code>A</code> </td></tr>
  356. <tr><td valign="top"></td><td valign="top"><em>target_node</em>&nbsp;</td><td>end-node, remains on side <code>B</code> </td></tr>
  357. <tr><td valign="top"></td><td valign="top"><em>init_side</em>&nbsp;</td><td>initial bi-partitioning </td></tr>
  358. </table>
  359. </dl>
  360. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a> </dd></dl>
  361. </div>
  362. </div><p>
  363. <a class="anchor" name="2c09504b727a1b1d1e2f99a3a42de05b"></a><!-- doxytag: member="ratio_cut_partition::set_vars" ref="2c09504b727a1b1d1e2f99a3a42de05b" args="(const graph &amp;G, const node_map&lt; int &gt; &amp;node_weight, const edge_map&lt; int &gt; &amp;edge_weight, const node source_node, const node target_node, const node_map&lt; fix_type &gt; &amp;fixed)" -->
  364. <div class="memitem">
  365. <div class="memproto">
  366. <table class="memname">
  367. <tr>
  368. <td class="memname">void ratio_cut_partition::set_vars </td>
  369. <td>(</td>
  370. <td class="paramtype">const <a class="el" href="a00014.html">graph</a> &amp;&nbsp;</td>
  371. <td class="paramname"> <em>G</em>, </td>
  372. </tr>
  373. <tr>
  374. <td class="paramkey"></td>
  375. <td></td>
  376. <td class="paramtype">const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;&nbsp;</td>
  377. <td class="paramname"> <em>node_weight</em>, </td>
  378. </tr>
  379. <tr>
  380. <td class="paramkey"></td>
  381. <td></td>
  382. <td class="paramtype">const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;&nbsp;</td>
  383. <td class="paramname"> <em>edge_weight</em>, </td>
  384. </tr>
  385. <tr>
  386. <td class="paramkey"></td>
  387. <td></td>
  388. <td class="paramtype">const <a class="el" href="a00020.html">node</a>&nbsp;</td>
  389. <td class="paramname"> <em>source_node</em>, </td>
  390. </tr>
  391. <tr>
  392. <td class="paramkey"></td>
  393. <td></td>
  394. <td class="paramtype">const <a class="el" href="a00020.html">node</a>&nbsp;</td>
  395. <td class="paramname"> <em>target_node</em>, </td>
  396. </tr>
  397. <tr>
  398. <td class="paramkey"></td>
  399. <td></td>
  400. <td class="paramtype">const <a class="el" href="a00021.html">node_map</a>&lt; <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a> &gt; &amp;&nbsp;</td>
  401. <td class="paramname"> <em>fixed</em></td><td>&nbsp;</td>
  402. </tr>
  403. <tr>
  404. <td></td>
  405. <td>)</td>
  406. <td></td><td></td><td width="100%"></td>
  407. </tr>
  408. </table>
  409. </div>
  410. <div class="memdoc">
  411. <p>
  412. Sets variables. Must be executed before <a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a>! In order to get good results, you should take two <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> theoretically far away nodes as source and target. <code>source_node</code> must not be fixed on side <code>B </code>. <code>target_node</code> must not be fixed on side <code>A </code>.<p>
  413. <dl compact><dt><b>Parameters:</b></dt><dd>
  414. <table border="0" cellspacing="2" cellpadding="0">
  415. <tr><td valign="top"></td><td valign="top"><em>G</em>&nbsp;</td><td>undirected <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> </td></tr>
  416. <tr><td valign="top"></td><td valign="top"><em>node_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00020.html" title="A node in a graph.">node</a> </td></tr>
  417. <tr><td valign="top"></td><td valign="top"><em>edge_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00010.html" title="An edge in a graph.">edge</a> </td></tr>
  418. <tr><td valign="top"></td><td valign="top"><em>source_node</em>&nbsp;</td><td>start-node, remains on side <code>A</code> </td></tr>
  419. <tr><td valign="top"></td><td valign="top"><em>target_node</em>&nbsp;</td><td>end-node, remains on side <code>B</code> </td></tr>
  420. <tr><td valign="top"></td><td valign="top"><em>fixed</em>&nbsp;</td><td>fixed nodes </td></tr>
  421. </table>
  422. </dl>
  423. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a> </dd></dl>
  424. </div>
  425. </div><p>
  426. <a class="anchor" name="0ed59d80c7e15d2865d6aa4657ae3f78"></a><!-- doxytag: member="ratio_cut_partition::set_vars" ref="0ed59d80c7e15d2865d6aa4657ae3f78" args="(const graph &amp;G, const node_map&lt; int &gt; &amp;node_weight, const edge_map&lt; int &gt; &amp;edge_weight, const node source_node, const node target_node, const node_map&lt; side_type &gt; &amp;init_side, const node_map&lt; fix_type &gt; &amp;fixed)" -->
  427. <div class="memitem">
  428. <div class="memproto">
  429. <table class="memname">
  430. <tr>
  431. <td class="memname">void ratio_cut_partition::set_vars </td>
  432. <td>(</td>
  433. <td class="paramtype">const <a class="el" href="a00014.html">graph</a> &amp;&nbsp;</td>
  434. <td class="paramname"> <em>G</em>, </td>
  435. </tr>
  436. <tr>
  437. <td class="paramkey"></td>
  438. <td></td>
  439. <td class="paramtype">const <a class="el" href="a00021.html">node_map</a>&lt; int &gt; &amp;&nbsp;</td>
  440. <td class="paramname"> <em>node_weight</em>, </td>
  441. </tr>
  442. <tr>
  443. <td class="paramkey"></td>
  444. <td></td>
  445. <td class="paramtype">const <a class="el" href="a00011.html">edge_map</a>&lt; int &gt; &amp;&nbsp;</td>
  446. <td class="paramname"> <em>edge_weight</em>, </td>
  447. </tr>
  448. <tr>
  449. <td class="paramkey"></td>
  450. <td></td>
  451. <td class="paramtype">const <a class="el" href="a00020.html">node</a>&nbsp;</td>
  452. <td class="paramname"> <em>source_node</em>, </td>
  453. </tr>
  454. <tr>
  455. <td class="paramkey"></td>
  456. <td></td>
  457. <td class="paramtype">const <a class="el" href="a00020.html">node</a>&nbsp;</td>
  458. <td class="paramname"> <em>target_node</em>, </td>
  459. </tr>
  460. <tr>
  461. <td class="paramkey"></td>
  462. <td></td>
  463. <td class="paramtype">const <a class="el" href="a00021.html">node_map</a>&lt; <a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a> &gt; &amp;&nbsp;</td>
  464. <td class="paramname"> <em>init_side</em>, </td>
  465. </tr>
  466. <tr>
  467. <td class="paramkey"></td>
  468. <td></td>
  469. <td class="paramtype">const <a class="el" href="a00021.html">node_map</a>&lt; <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a> &gt; &amp;&nbsp;</td>
  470. <td class="paramname"> <em>fixed</em></td><td>&nbsp;</td>
  471. </tr>
  472. <tr>
  473. <td></td>
  474. <td>)</td>
  475. <td></td><td></td><td width="100%"></td>
  476. </tr>
  477. </table>
  478. </div>
  479. <div class="memdoc">
  480. <p>
  481. Sets variables. Must be executed before <a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a>! In order to get good results, you should take two <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> theoretically far away nodes as source and target. Additionally <code>init_side</code> should nearly be in balance. Fixed nodes are on their fix side, their initial side is overwritten then. <code>source_node</code> must be on side A in <code>init_side </code> and <code>target_node</code> on side B respectively. <code>source_node</code> must not be fixed on side <code>B </code>. <code>target_node</code> must not be fixed on side <code>A </code>.<p>
  482. <dl compact><dt><b>Parameters:</b></dt><dd>
  483. <table border="0" cellspacing="2" cellpadding="0">
  484. <tr><td valign="top"></td><td valign="top"><em>G</em>&nbsp;</td><td>undirected <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> </td></tr>
  485. <tr><td valign="top"></td><td valign="top"><em>node_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00020.html" title="A node in a graph.">node</a> </td></tr>
  486. <tr><td valign="top"></td><td valign="top"><em>edge_weight</em>&nbsp;</td><td>weight of each <a class="el" href="a00010.html" title="An edge in a graph.">edge</a> </td></tr>
  487. <tr><td valign="top"></td><td valign="top"><em>source_node</em>&nbsp;</td><td>start-node, remains on side <code>A</code> </td></tr>
  488. <tr><td valign="top"></td><td valign="top"><em>target_node</em>&nbsp;</td><td>end-node, remains on side <code>B</code> </td></tr>
  489. <tr><td valign="top"></td><td valign="top"><em>init_side</em>&nbsp;</td><td>initial bi-partitioning </td></tr>
  490. <tr><td valign="top"></td><td valign="top"><em>fixed</em>&nbsp;</td><td>fixed nodes </td></tr>
  491. </table>
  492. </dl>
  493. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#c4bdc17520a51ffda1a51294ed8e83ef">ratio_cut_partition::check</a> </dd></dl>
  494. </div>
  495. </div><p>
  496. <a class="anchor" name="f5a76fa0ecaf2c75792cc2c1574994c7"></a><!-- doxytag: member="ratio_cut_partition::store_cut_edges" ref="f5a76fa0ecaf2c75792cc2c1574994c7" args="(const bool set)" -->
  497. <div class="memitem">
  498. <div class="memproto">
  499. <table class="memname">
  500. <tr>
  501. <td class="memname">void ratio_cut_partition::store_cut_edges </td>
  502. <td>(</td>
  503. <td class="paramtype">const bool&nbsp;</td>
  504. <td class="paramname"> <em>set</em> </td>
  505. <td>&nbsp;)&nbsp;</td>
  506. <td width="100%"></td>
  507. </tr>
  508. </table>
  509. </div>
  510. <div class="memdoc">
  511. <p>
  512. Enables the storing of cut-edges. If enabled the list of cut-edges can be traversed using <a class="el" href="a00025.html#5269af60e49810067411b085a1341adc">ratio_cut_partition::cut_edges_iterator</a>.<p>
  513. <dl compact><dt><b>Parameters:</b></dt><dd>
  514. <table border="0" cellspacing="2" cellpadding="0">
  515. <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>if <code>true</code> cut_edges will be stored </td></tr>
  516. </table>
  517. </dl>
  518. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#254e3c1f15855db67557f80f2513a378">ratio_cut_partition::cut_edges_begin</a> <p>
  519. <a class="el" href="a00025.html#7bcefed3f3e1dc93e4d8bf259134a43b">ratio_cut_partition::cut_edges_end</a> </dd></dl>
  520. </div>
  521. </div><p>
  522. <a class="anchor" name="f0efdeab02cb235df47e2339c196051f"></a><!-- doxytag: member="ratio_cut_partition::store_nodesAB" ref="f0efdeab02cb235df47e2339c196051f" args="(const bool set)" -->
  523. <div class="memitem">
  524. <div class="memproto">
  525. <table class="memname">
  526. <tr>
  527. <td class="memname">void ratio_cut_partition::store_nodesAB </td>
  528. <td>(</td>
  529. <td class="paramtype">const bool&nbsp;</td>
  530. <td class="paramname"> <em>set</em> </td>
  531. <td>&nbsp;)&nbsp;</td>
  532. <td width="100%"></td>
  533. </tr>
  534. </table>
  535. </div>
  536. <div class="memdoc">
  537. <p>
  538. Enables the storing of nodes on their side. If enabled the nodes of each side can be traversed using <a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">ratio_cut_partition::nodes_of_one_side_iterator</a>.<p>
  539. <dl compact><dt><b>Parameters:</b></dt><dd>
  540. <table border="0" cellspacing="2" cellpadding="0">
  541. <tr><td valign="top"></td><td valign="top"><em>set</em>&nbsp;</td><td>if <code>true</code> nodes on their side will be stored </td></tr>
  542. </table>
  543. </dl>
  544. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#9292652c9b0a2f806dcff77c03396d85">ratio_cut_partition::nodes_of_sideA_begin</a> <p>
  545. <a class="el" href="a00025.html#f7464a3a4f6ed4beeeff9d834fa102ef">ratio_cut_partition::nodes_of_sideA_end</a> <p>
  546. <a class="el" href="a00025.html#cfa58a6af383c1afb17fa1c7d0389cfe">ratio_cut_partition::nodes_of_sideB_begin</a> <p>
  547. <a class="el" href="a00025.html#7a4f67c08c143eab4d1b0c89fdddde9d">ratio_cut_partition::nodes_of_sideB_end</a> </dd></dl>
  548. </div>
  549. </div><p>
  550. <a class="anchor" name="c4bdc17520a51ffda1a51294ed8e83ef"></a><!-- doxytag: member="ratio_cut_partition::check" ref="c4bdc17520a51ffda1a51294ed8e83ef" args="(graph &amp;G)" -->
  551. <div class="memitem">
  552. <div class="memproto">
  553. <table class="memname">
  554. <tr>
  555. <td class="memname">virtual int ratio_cut_partition::check </td>
  556. <td>(</td>
  557. <td class="paramtype"><a class="el" href="a00014.html">graph</a> &amp;&nbsp;</td>
  558. <td class="paramname"> <em>G</em> </td>
  559. <td>&nbsp;)&nbsp;</td>
  560. <td width="100%"><code> [virtual]</code></td>
  561. </tr>
  562. </table>
  563. </div>
  564. <div class="memdoc">
  565. <p>
  566. Checks whether following preconditions are satisfied: <ul>
  567. <li>
  568. One of the <a class="el" href="a00025.html#4c143f82aac5fee3b955414ab7d6ce19">ratio_cut_partition::set_vars</a> procedures has been executed before. </li>
  569. <li>
  570. <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> <code>G</code> is undirected. </li>
  571. <li>
  572. if applied, <code>source_node</code> and <code>target_node </code> are 2 distinct nodes with <a class="el" href="a00020.html" title="A node in a graph.">node</a> weights &gt; 0. </li>
  573. <li>
  574. only node_weights &gt;= 0 are applied. </li>
  575. <li>
  576. only edge_weights &gt;= 0 are applied. </li>
  577. <li>
  578. if <code>G</code> has more than 2 nodes, then at least two of them have a weight &gt; 0. </li>
  579. <li>
  580. if applied fixed source <a class="el" href="a00020.html" title="A node in a graph.">node</a>, <code>fixed[source_node] </code> is <code>FIXA</code>. </li>
  581. <li>
  582. if applied fixed target <a class="el" href="a00020.html" title="A node in a graph.">node</a>, <code>fixed[target_node] </code> is <code>FIXB</code>. </li>
  583. </ul>
  584. <p>
  585. <dl compact><dt><b>Parameters:</b></dt><dd>
  586. <table border="0" cellspacing="2" cellpadding="0">
  587. <tr><td valign="top"></td><td valign="top"><em>G</em>&nbsp;</td><td><a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> </td></tr>
  588. </table>
  589. </dl>
  590. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code><a class="el" href="a00001.html#f1a0078e153aa99c24f9bdf0d97f67105114c20e4a96a76b5de9f28bf15e282b">algorithm::GTL_OK</a></code> on success, <code><a class="el" href="a00001.html#f1a0078e153aa99c24f9bdf0d97f67106fcf574690bbd6cf710837a169510dd7">algorithm::GTL_ERROR</a></code> otherwise </dd></dl>
  591. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#4c143f82aac5fee3b955414ab7d6ce19">ratio_cut_partition::set_vars</a> <p>
  592. <a class="el" href="a00001.html#76361fb03ad1cf643affc51821e43bed" title="Checks whether all preconditions are satisfied.">algorithm::check</a> </dd></dl>
  593. <p>Implements <a class="el" href="a00001.html#76361fb03ad1cf643affc51821e43bed">algorithm</a>.</p>
  594. </div>
  595. </div><p>
  596. <a class="anchor" name="4ab180ca4cf57c811e3478c3de4c4dc3"></a><!-- doxytag: member="ratio_cut_partition::run" ref="4ab180ca4cf57c811e3478c3de4c4dc3" args="(graph &amp;G)" -->
  597. <div class="memitem">
  598. <div class="memproto">
  599. <table class="memname">
  600. <tr>
  601. <td class="memname">int ratio_cut_partition::run </td>
  602. <td>(</td>
  603. <td class="paramtype"><a class="el" href="a00014.html">graph</a> &amp;&nbsp;</td>
  604. <td class="paramname"> <em>G</em> </td>
  605. <td>&nbsp;)&nbsp;</td>
  606. <td width="100%"><code> [virtual]</code></td>
  607. </tr>
  608. </table>
  609. </div>
  610. <div class="memdoc">
  611. <p>
  612. Computes a partitioning of <code>G</code>, that means a division of its vertices in two sides <code><a class="el" href="a00025.html#81bfe2382ea876b98112143593612cb4">ratio_cut_partition::A</a></code> and <code><a class="el" href="a00025.html#df8f7eaaf11ff5461f3f4404010a05cb">ratio_cut_partition::B</a></code>.<p>
  613. <dl compact><dt><b>Parameters:</b></dt><dd>
  614. <table border="0" cellspacing="2" cellpadding="0">
  615. <tr><td valign="top"></td><td valign="top"><em>G</em>&nbsp;</td><td><a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> </td></tr>
  616. </table>
  617. </dl>
  618. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code><a class="el" href="a00001.html#f1a0078e153aa99c24f9bdf0d97f67105114c20e4a96a76b5de9f28bf15e282b">algorithm::GTL_OK</a></code> on success, <code><a class="el" href="a00001.html#f1a0078e153aa99c24f9bdf0d97f67106fcf574690bbd6cf710837a169510dd7">algorithm::GTL_ERROR</a></code> otherwise </dd></dl>
  619. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00001.html#734b189509a8d6b56b65f8ff772d43ca" title="Applies algorithm to graph g.">algorithm::run</a> </dd></dl>
  620. <p>Implements <a class="el" href="a00001.html#734b189509a8d6b56b65f8ff772d43ca">algorithm</a>.</p>
  621. </div>
  622. </div><p>
  623. <a class="anchor" name="4fc9beab107546850974ffd5a47c1e7f"></a><!-- doxytag: member="ratio_cut_partition::get_cutsize" ref="4fc9beab107546850974ffd5a47c1e7f" args="()" -->
  624. <div class="memitem">
  625. <div class="memproto">
  626. <table class="memname">
  627. <tr>
  628. <td class="memname">int ratio_cut_partition::get_cutsize </td>
  629. <td>(</td>
  630. <td class="paramname"> </td>
  631. <td>&nbsp;)&nbsp;</td>
  632. <td width="100%"></td>
  633. </tr>
  634. </table>
  635. </div>
  636. <div class="memdoc">
  637. <p>
  638. Gets the size of the cut after bi-partitioning.<p>
  639. <dl class="return" compact><dt><b>Returns:</b></dt><dd>cutsize </dd></dl>
  640. </div>
  641. </div><p>
  642. <a class="anchor" name="9a61b2be36953d57e36fbb511cf1aa96"></a><!-- doxytag: member="ratio_cut_partition::get_cutratio" ref="9a61b2be36953d57e36fbb511cf1aa96" args="()" -->
  643. <div class="memitem">
  644. <div class="memproto">
  645. <table class="memname">
  646. <tr>
  647. <td class="memname">double ratio_cut_partition::get_cutratio </td>
  648. <td>(</td>
  649. <td class="paramname"> </td>
  650. <td>&nbsp;)&nbsp;</td>
  651. <td width="100%"></td>
  652. </tr>
  653. </table>
  654. </div>
  655. <div class="memdoc">
  656. <p>
  657. Gets the ratio of the cut after bi-partitioning as defined in [WeiChe91].<p>
  658. <dl class="return" compact><dt><b>Returns:</b></dt><dd>cutratio </dd></dl>
  659. </div>
  660. </div><p>
  661. <a class="anchor" name="58297f476305db83785ab0dfaee02a75"></a><!-- doxytag: member="ratio_cut_partition::get_side_of_node" ref="58297f476305db83785ab0dfaee02a75" args="(const node &amp;n) const " -->
  662. <div class="memitem">
  663. <div class="memproto">
  664. <table class="memname">
  665. <tr>
  666. <td class="memname"><a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a> ratio_cut_partition::get_side_of_node </td>
  667. <td>(</td>
  668. <td class="paramtype">const <a class="el" href="a00020.html">node</a> &amp;&nbsp;</td>
  669. <td class="paramname"> <em>n</em> </td>
  670. <td>&nbsp;)&nbsp;</td>
  671. <td width="100%"> const</td>
  672. </tr>
  673. </table>
  674. </div>
  675. <div class="memdoc">
  676. <p>
  677. Gets side of the <a class="el" href="a00020.html" title="A node in a graph.">node</a> after bi-partitioning.<p>
  678. <dl compact><dt><b>Parameters:</b></dt><dd>
  679. <table border="0" cellspacing="2" cellpadding="0">
  680. <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td><a class="el" href="a00020.html" title="A node in a graph.">node</a> of <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> G </td></tr>
  681. </table>
  682. </dl>
  683. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code><a class="el" href="a00025.html#81bfe2382ea876b98112143593612cb4">ratio_cut_partition::A</a></code> if <code>n</code> lies on side <code>A</code>, <code><a class="el" href="a00025.html#df8f7eaaf11ff5461f3f4404010a05cb">ratio_cut_partition::B</a></code> otherwise </dd></dl>
  684. </div>
  685. </div><p>
  686. <a class="anchor" name="c92bcfeda33420b0f4c1bf873b04644b"></a><!-- doxytag: member="ratio_cut_partition::operator[]" ref="c92bcfeda33420b0f4c1bf873b04644b" args="(const node &amp;n) const " -->
  687. <div class="memitem">
  688. <div class="memproto">
  689. <table class="memname">
  690. <tr>
  691. <td class="memname"><a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a> ratio_cut_partition::operator[] </td>
  692. <td>(</td>
  693. <td class="paramtype">const <a class="el" href="a00020.html">node</a> &amp;&nbsp;</td>
  694. <td class="paramname"> <em>n</em> </td>
  695. <td>&nbsp;)&nbsp;</td>
  696. <td width="100%"> const</td>
  697. </tr>
  698. </table>
  699. </div>
  700. <div class="memdoc">
  701. <p>
  702. Gets side of the <a class="el" href="a00020.html" title="A node in a graph.">node</a> after bi-partitioning.<p>
  703. <dl compact><dt><b>Parameters:</b></dt><dd>
  704. <table border="0" cellspacing="2" cellpadding="0">
  705. <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td><a class="el" href="a00020.html" title="A node in a graph.">node</a> of <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> G </td></tr>
  706. </table>
  707. </dl>
  708. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code><a class="el" href="a00025.html#81bfe2382ea876b98112143593612cb4">ratio_cut_partition::A</a></code> if <code>n</code> lies on side <code>A</code>, <code><a class="el" href="a00025.html#df8f7eaaf11ff5461f3f4404010a05cb">ratio_cut_partition::B</a></code> otherwise </dd></dl>
  709. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#58297f476305db83785ab0dfaee02a75">ratio_cut_partition::get_side_of_node</a> </dd></dl>
  710. </div>
  711. </div><p>
  712. <a class="anchor" name="c8acd8f7dd03f9034b300ded4b7433c2"></a><!-- doxytag: member="ratio_cut_partition::get_weight_on_sideA" ref="c8acd8f7dd03f9034b300ded4b7433c2" args="(const graph &amp;G) const " -->
  713. <div class="memitem">
  714. <div class="memproto">
  715. <table class="memname">
  716. <tr>
  717. <td class="memname">int ratio_cut_partition::get_weight_on_sideA </td>
  718. <td>(</td>
  719. <td class="paramtype">const <a class="el" href="a00014.html">graph</a> &amp;&nbsp;</td>
  720. <td class="paramname"> <em>G</em> </td>
  721. <td>&nbsp;)&nbsp;</td>
  722. <td width="100%"> const</td>
  723. </tr>
  724. </table>
  725. </div>
  726. <div class="memdoc">
  727. <p>
  728. Gets the sum of all <a class="el" href="a00020.html" title="A node in a graph.">node</a> weights from nodes on side <code>A </code>.<p>
  729. <dl compact><dt><b>Parameters:</b></dt><dd>
  730. <table border="0" cellspacing="2" cellpadding="0">
  731. <tr><td valign="top"></td><td valign="top"><em>G</em>&nbsp;</td><td><a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> </td></tr>
  732. </table>
  733. </dl>
  734. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code>node_weight_on_sideA</code> </dd></dl>
  735. </div>
  736. </div><p>
  737. <a class="anchor" name="540d6e5fdf509a65d06f0704b029719a"></a><!-- doxytag: member="ratio_cut_partition::get_weight_on_sideB" ref="540d6e5fdf509a65d06f0704b029719a" args="(const graph &amp;G) const " -->
  738. <div class="memitem">
  739. <div class="memproto">
  740. <table class="memname">
  741. <tr>
  742. <td class="memname">int ratio_cut_partition::get_weight_on_sideB </td>
  743. <td>(</td>
  744. <td class="paramtype">const <a class="el" href="a00014.html">graph</a> &amp;&nbsp;</td>
  745. <td class="paramname"> <em>G</em> </td>
  746. <td>&nbsp;)&nbsp;</td>
  747. <td width="100%"> const</td>
  748. </tr>
  749. </table>
  750. </div>
  751. <div class="memdoc">
  752. <p>
  753. Gets the sum of all <a class="el" href="a00020.html" title="A node in a graph.">node</a> weights from nodes on side <code>B </code>.<p>
  754. <dl compact><dt><b>Parameters:</b></dt><dd>
  755. <table border="0" cellspacing="2" cellpadding="0">
  756. <tr><td valign="top"></td><td valign="top"><em>G</em>&nbsp;</td><td><a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a> </td></tr>
  757. </table>
  758. </dl>
  759. <dl class="return" compact><dt><b>Returns:</b></dt><dd><code>node_weight_on_sideB</code> </dd></dl>
  760. </div>
  761. </div><p>
  762. <a class="anchor" name="254e3c1f15855db67557f80f2513a378"></a><!-- doxytag: member="ratio_cut_partition::cut_edges_begin" ref="254e3c1f15855db67557f80f2513a378" args="() const " -->
  763. <div class="memitem">
  764. <div class="memproto">
  765. <table class="memname">
  766. <tr>
  767. <td class="memname"><a class="el" href="a00025.html#5269af60e49810067411b085a1341adc">cut_edges_iterator</a> ratio_cut_partition::cut_edges_begin </td>
  768. <td>(</td>
  769. <td class="paramname"> </td>
  770. <td>&nbsp;)&nbsp;</td>
  771. <td width="100%"> const</td>
  772. </tr>
  773. </table>
  774. </div>
  775. <div class="memdoc">
  776. <p>
  777. Iterate through all edges which belong to the cut, that means all edges with end-nodes on different sides. It is only valid if enabled with <a class="el" href="a00025.html#f5a76fa0ecaf2c75792cc2c1574994c7">ratio_cut_partition::store_cut_edges</a> before.<p>
  778. <dl class="return" compact><dt><b>Returns:</b></dt><dd>start for iteration through all cut edges </dd></dl>
  779. </div>
  780. </div><p>
  781. <a class="anchor" name="7bcefed3f3e1dc93e4d8bf259134a43b"></a><!-- doxytag: member="ratio_cut_partition::cut_edges_end" ref="7bcefed3f3e1dc93e4d8bf259134a43b" args="() const " -->
  782. <div class="memitem">
  783. <div class="memproto">
  784. <table class="memname">
  785. <tr>
  786. <td class="memname"><a class="el" href="a00025.html#5269af60e49810067411b085a1341adc">cut_edges_iterator</a> ratio_cut_partition::cut_edges_end </td>
  787. <td>(</td>
  788. <td class="paramname"> </td>
  789. <td>&nbsp;)&nbsp;</td>
  790. <td width="100%"> const</td>
  791. </tr>
  792. </table>
  793. </div>
  794. <div class="memdoc">
  795. <p>
  796. End-Iterator for iteration through all edges which belong to the cut. It is only valid if enabled with <a class="el" href="a00025.html#f5a76fa0ecaf2c75792cc2c1574994c7">ratio_cut_partition::store_cut_edges</a> before.<p>
  797. <dl class="return" compact><dt><b>Returns:</b></dt><dd>end for iteration through all cut-edges </dd></dl>
  798. </div>
  799. </div><p>
  800. <a class="anchor" name="9292652c9b0a2f806dcff77c03396d85"></a><!-- doxytag: member="ratio_cut_partition::nodes_of_sideA_begin" ref="9292652c9b0a2f806dcff77c03396d85" args="() const " -->
  801. <div class="memitem">
  802. <div class="memproto">
  803. <table class="memname">
  804. <tr>
  805. <td class="memname"><a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">nodes_of_one_side_iterator</a> ratio_cut_partition::nodes_of_sideA_begin </td>
  806. <td>(</td>
  807. <td class="paramname"> </td>
  808. <td>&nbsp;)&nbsp;</td>
  809. <td width="100%"> const</td>
  810. </tr>
  811. </table>
  812. </div>
  813. <div class="memdoc">
  814. <p>
  815. Iterate through all nodes which belong to side <code>A</code>, It is only valid if enabled with <a class="el" href="a00025.html#f0efdeab02cb235df47e2339c196051f">ratio_cut_partition::store_nodesAB</a> before.<p>
  816. <dl class="return" compact><dt><b>Returns:</b></dt><dd>start for iteration through all nodes on <code>A</code> </dd></dl>
  817. </div>
  818. </div><p>
  819. <a class="anchor" name="f7464a3a4f6ed4beeeff9d834fa102ef"></a><!-- doxytag: member="ratio_cut_partition::nodes_of_sideA_end" ref="f7464a3a4f6ed4beeeff9d834fa102ef" args="() const " -->
  820. <div class="memitem">
  821. <div class="memproto">
  822. <table class="memname">
  823. <tr>
  824. <td class="memname"><a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">nodes_of_one_side_iterator</a> ratio_cut_partition::nodes_of_sideA_end </td>
  825. <td>(</td>
  826. <td class="paramname"> </td>
  827. <td>&nbsp;)&nbsp;</td>
  828. <td width="100%"> const</td>
  829. </tr>
  830. </table>
  831. </div>
  832. <div class="memdoc">
  833. <p>
  834. End-Iterator for iteration through all nodes which belong to side <code>A</code>, It is only valid if enabled with <a class="el" href="a00025.html#f0efdeab02cb235df47e2339c196051f">ratio_cut_partition::store_nodesAB</a> before.<p>
  835. <dl class="return" compact><dt><b>Returns:</b></dt><dd>end for iteration through all nodes on <code>A</code> </dd></dl>
  836. </div>
  837. </div><p>
  838. <a class="anchor" name="cfa58a6af383c1afb17fa1c7d0389cfe"></a><!-- doxytag: member="ratio_cut_partition::nodes_of_sideB_begin" ref="cfa58a6af383c1afb17fa1c7d0389cfe" args="() const " -->
  839. <div class="memitem">
  840. <div class="memproto">
  841. <table class="memname">
  842. <tr>
  843. <td class="memname"><a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">nodes_of_one_side_iterator</a> ratio_cut_partition::nodes_of_sideB_begin </td>
  844. <td>(</td>
  845. <td class="paramname"> </td>
  846. <td>&nbsp;)&nbsp;</td>
  847. <td width="100%"> const</td>
  848. </tr>
  849. </table>
  850. </div>
  851. <div class="memdoc">
  852. <p>
  853. Iterate through all nodes which belong to side <code>B</code>, It is only valid if enabled with <a class="el" href="a00025.html#f0efdeab02cb235df47e2339c196051f">ratio_cut_partition::store_nodesAB</a> before.<p>
  854. <dl class="return" compact><dt><b>Returns:</b></dt><dd>start for iteration through all nodes on <code>B</code> </dd></dl>
  855. </div>
  856. </div><p>
  857. <a class="anchor" name="7a4f67c08c143eab4d1b0c89fdddde9d"></a><!-- doxytag: member="ratio_cut_partition::nodes_of_sideB_end" ref="7a4f67c08c143eab4d1b0c89fdddde9d" args="() const " -->
  858. <div class="memitem">
  859. <div class="memproto">
  860. <table class="memname">
  861. <tr>
  862. <td class="memname"><a class="el" href="a00025.html#4f667099b56ded1bfef8f1fb4d09f81c">nodes_of_one_side_iterator</a> ratio_cut_partition::nodes_of_sideB_end </td>
  863. <td>(</td>
  864. <td class="paramname"> </td>
  865. <td>&nbsp;)&nbsp;</td>
  866. <td width="100%"> const</td>
  867. </tr>
  868. </table>
  869. </div>
  870. <div class="memdoc">
  871. <p>
  872. End-Iterator for iteration through all nodes which belong to side <code>B</code>, It is only valid if enabled with <a class="el" href="a00025.html#f0efdeab02cb235df47e2339c196051f">ratio_cut_partition::store_nodesAB</a> before.<p>
  873. <dl class="return" compact><dt><b>Returns:</b></dt><dd>end for iteration through all nodes on <code>B</code> </dd></dl>
  874. </div>
  875. </div><p>
  876. <a class="anchor" name="941fa7af07b89ba98454bbf31140061b"></a><!-- doxytag: member="ratio_cut_partition::reset" ref="941fa7af07b89ba98454bbf31140061b" args="()" -->
  877. <div class="memitem">
  878. <div class="memproto">
  879. <table class="memname">
  880. <tr>
  881. <td class="memname">virtual void ratio_cut_partition::reset </td>
  882. <td>(</td>
  883. <td class="paramname"> </td>
  884. <td>&nbsp;)&nbsp;</td>
  885. <td width="100%"><code> [virtual]</code></td>
  886. </tr>
  887. </table>
  888. </div>
  889. <div class="memdoc">
  890. <p>
  891. Resets <a class="el" href="a00025.html" title="Heuristic graph bi-partitioning algorithm (Wei-Cheng).">ratio_cut_partition</a>, i.e. prepares the <a class="el" href="a00001.html" title="Abstract baseclass for all algoritm-classes.">algorithm</a> to be applied to another <a class="el" href="a00014.html" title="A directed or undirected graph.">graph</a>.<p>
  892. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00001.html#21aba63d066ae7897de6ca7d8425c408" title="Resets algorithm.">algorithm::reset</a> </dd></dl>
  893. <p>Implements <a class="el" href="a00001.html#21aba63d066ae7897de6ca7d8425c408">algorithm</a>.</p>
  894. </div>
  895. </div><p>
  896. <hr><h2>Member Data Documentation</h2>
  897. <a class="anchor" name="81bfe2382ea876b98112143593612cb4"></a><!-- doxytag: member="ratio_cut_partition::A" ref="81bfe2382ea876b98112143593612cb4" args="" -->
  898. <div class="memitem">
  899. <div class="memproto">
  900. <table class="memname">
  901. <tr>
  902. <td class="memname">const <a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a> <a class="el" href="a00025.html#81bfe2382ea876b98112143593612cb4">ratio_cut_partition::A</a><code> [static]</code> </td>
  903. </tr>
  904. </table>
  905. </div>
  906. <div class="memdoc">
  907. <p>
  908. <code>A</code> means the <a class="el" href="a00020.html" title="A node in a graph.">node</a> is on side A.<p>
  909. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">ratio_cut_partition::side_type</a> </dd></dl>
  910. </div>
  911. </div><p>
  912. <a class="anchor" name="df8f7eaaf11ff5461f3f4404010a05cb"></a><!-- doxytag: member="ratio_cut_partition::B" ref="df8f7eaaf11ff5461f3f4404010a05cb" args="" -->
  913. <div class="memitem">
  914. <div class="memproto">
  915. <table class="memname">
  916. <tr>
  917. <td class="memname">const <a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">side_type</a> <a class="el" href="a00025.html#df8f7eaaf11ff5461f3f4404010a05cb">ratio_cut_partition::B</a><code> [static]</code> </td>
  918. </tr>
  919. </table>
  920. </div>
  921. <div class="memdoc">
  922. <p>
  923. <code>B</code> means the <a class="el" href="a00020.html" title="A node in a graph.">node</a> is on side B.<p>
  924. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#ce53442bd0c1e21fbf00858ec6f6b456">ratio_cut_partition::side_type</a> </dd></dl>
  925. </div>
  926. </div><p>
  927. <a class="anchor" name="c964b04d22ceb3ea2d49780df72032f3"></a><!-- doxytag: member="ratio_cut_partition::FIXA" ref="c964b04d22ceb3ea2d49780df72032f3" args="" -->
  928. <div class="memitem">
  929. <div class="memproto">
  930. <table class="memname">
  931. <tr>
  932. <td class="memname">const <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a> <a class="el" href="a00025.html#c964b04d22ceb3ea2d49780df72032f3">ratio_cut_partition::FIXA</a><code> [static]</code> </td>
  933. </tr>
  934. </table>
  935. </div>
  936. <div class="memdoc">
  937. <p>
  938. <code>FIXA</code> means fix <a class="el" href="a00020.html" title="A node in a graph.">node</a> on side <code>A</code>.<p>
  939. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a00025.html#4c143f82aac5fee3b955414ab7d6ce19">ratio_cut_partition::set_vars</a> </dd></dl>
  940. </div>
  941. </div><p>
  942. <a class="anchor" name="31884bac5dce93e880836925a2cc71c9"></a><!-- doxytag: member="ratio_cut_partition::FIXB" ref="31884bac5dce93e880836925a2cc71c9" args="" -->
  943. <div class="memitem">
  944. <div class="memproto">
  945. <table class="memname">
  946. <tr>
  947. <td class="memname">const <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a> <a class="el" href="a00025.html#31884bac5dce93e880836925a2cc71c9">ratio_cut_partition::FIXB</a><code> [static]</code> </td>
  948. </tr>
  949. </table>
  950. </div>
  951. <div class="memdoc">
  952. <p>
  953. <code>FIXB</code> means fix <a class="el" href="a00020.html" title="A node in a graph.">node</a> on side <code>B</code>.<p>
  954. <dl class="see" compact><dt><b>See also:</b></dt><dd>ratio_cut_partition::fixe_type </dd></dl>
  955. </div>
  956. </div><p>
  957. <a class="anchor" name="2a1522e3dc701ac6af359614a111a1df"></a><!-- doxytag: member="ratio_cut_partition::UNFIXED" ref="2a1522e3dc701ac6af359614a111a1df" args="" -->
  958. <div class="memitem">
  959. <div class="memproto">
  960. <table class="memname">
  961. <tr>
  962. <td class="memname">const <a class="el" href="a00025.html#558dda40abda8ab03edb4605dbb81e36">fix_type</a> <a class="el" href="a00025.html#2a1522e3dc701ac6af359614a111a1df">ratio_cut_partition::UNFIXED</a><code> [static]</code> </td>
  963. </tr>
  964. </table>
  965. </div>
  966. <div class="memdoc">
  967. <p>
  968. <code>UNFIXED</code> means <a class="el" href="a00020.html" title="A node in a graph.">node</a> is free.<p>
  969. <dl class="see" compact><dt><b>See also:</b></dt><dd>ratio_cut_partition::fixe_type </dd></dl>
  970. </div>
  971. </div><p>
  972. <p class="links">
  973. <a href="http://www.uni-passau.de/">University of Passau</a>
  974. &nbsp;-&nbsp;
  975. <a href="http://www.fmi.uni-passau.de/">FMI</a>
  976. &nbsp;-&nbsp;
  977. <a href="http://www.fmi.uni-passau.de/fmi/lehrstuehle/brandenburg/">Theoretical
  978. Computer Science</a>
  979. </p>
  980. <div class="copyright">
  981. Design &copy; 2002, 2003 <a href="mailto:raitner@fmi.uni-passau.de">Marcus Raitner</a>, University of Passau
  982. </div>
  983. </body>
  984. </html>