svf-tools 1.0.285 → 1.0.286
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE.TXT +6 -4
- package/SVF-doxygen/html/html/dir_63dba4c559aa5986900c35e27974bafc.html +83 -0
- package/SVF-doxygen/html/html/dir_97aefd0d527b934f1d99a682da8fe6a9.html +2 -0
- package/SVF-doxygen/html/html/dir_d1b325ac671111a54e189ae033ba710d.html +87 -0
- package/SVF-doxygen/html/html/dir_d44c64559bbebec7f509842c48db8b23.html +2 -0
- package/SVF-doxygen/html/html/fastcluster_8cpp.html +263 -0
- package/SVF-doxygen/html/html/fastcluster_8cpp_source.html +88 -0
- package/SVF-doxygen/html/html/fastcluster_8h.html +278 -0
- package/SVF-doxygen/html/html/fastcluster_8h_source.html +86 -0
- package/SVF-doxygen/html/html/fastcluster__R__dm_8cpp_8inc.html +79 -0
- package/SVF-doxygen/html/html/fastcluster__R__dm_8cpp_8inc_source.html +77 -0
- package/SVF-doxygen/html/html/fastcluster__dm_8cpp_8inc.html +89 -0
- package/SVF-doxygen/html/html/fastcluster__dm_8cpp_8inc_source.html +80 -0
- package/SVF-doxygen/html/html/files.html +220 -214
- package/SVF-doxygen/html/html/globals_c.html +82 -74
- package/SVF-doxygen/html/html/globals_enum.html +3 -0
- package/SVF-doxygen/html/html/globals_eval.html +19 -0
- package/SVF-doxygen/html/html/globals_f.html +6 -3
- package/SVF-doxygen/html/html/globals_func_c.html +46 -38
- package/SVF-doxygen/html/html/globals_func_f.html +3 -0
- package/SVF-doxygen/html/html/globals_func_h.html +4 -0
- package/SVF-doxygen/html/html/globals_h.html +22 -0
- package/SVF-doxygen/html/html/globals_r.html +3 -3
- package/SVF-doxygen/html/html/globals_s.html +7 -9
- package/SVF-doxygen/html/html/menudata.js +1 -0
- package/SVF-doxygen/html/html/search/all_12.js +1 -1
- package/SVF-doxygen/html/html/search/all_13.js +4 -4
- package/SVF-doxygen/html/html/search/all_3.js +2 -0
- package/SVF-doxygen/html/html/search/all_6.js +5 -0
- package/SVF-doxygen/html/html/search/all_8.js +7 -0
- package/SVF-doxygen/html/html/search/enums_4.js +1 -2
- package/SVF-doxygen/html/html/search/enums_5.js +2 -2
- package/SVF-doxygen/html/html/search/enums_6.js +2 -3
- package/SVF-doxygen/html/html/search/enums_7.js +3 -6
- package/SVF-doxygen/html/html/search/enums_8.js +6 -1
- package/SVF-doxygen/html/html/search/enums_9.js +1 -5
- package/SVF-doxygen/html/html/search/enums_a.js +5 -1
- package/SVF-doxygen/html/html/search/enums_b.js +1 -4
- package/SVF-doxygen/html/html/search/enums_c.html +26 -0
- package/SVF-doxygen/html/html/search/enums_c.js +7 -0
- package/SVF-doxygen/html/html/search/enumvalues_7.js +5 -0
- package/SVF-doxygen/html/html/search/files_5.js +4 -0
- package/SVF-doxygen/html/html/search/functions_2.js +2 -0
- package/SVF-doxygen/html/html/search/functions_5.js +1 -0
- package/SVF-doxygen/html/html/search/functions_7.js +1 -0
- package/SVF-doxygen/html/html/search/searchdata.js +1 -1
- package/include/FastCluster/LICENSE.TXT +13 -0
- package/include/FastCluster/fastcluster.h +79 -0
- package/lib/CMakeLists.txt +4 -1
- package/lib/FastCluster/LICENSE.TXT +13 -0
- package/lib/FastCluster/fastcluster.cpp +170 -0
- package/lib/FastCluster/fastcluster_R_dm.cpp.inc +115 -0
- package/lib/FastCluster/fastcluster_dm.cpp.inc +1795 -0
- package/package.json +1 -1
package/LICENSE.TXT
CHANGED
|
@@ -32,7 +32,9 @@ which apply to that code.
|
|
|
32
32
|
The following pieces of software have additional or alternate copyrights,
|
|
33
33
|
licenses, and/or restrictions:
|
|
34
34
|
|
|
35
|
-
Program
|
|
36
|
-
-------
|
|
37
|
-
CUDD-2.5.0
|
|
38
|
-
|
|
35
|
+
Program Directory
|
|
36
|
+
------- ---------
|
|
37
|
+
CUDD-2.5.0 include/CUDD/
|
|
38
|
+
lib/CUDD/
|
|
39
|
+
fastcluster/hclust-cpp include/FastCluster/
|
|
40
|
+
lib/FastCluster/
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
3
|
+
<head>
|
|
4
|
+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
5
|
+
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
6
|
+
<meta name="generator" content="Doxygen 1.8.13"/>
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
8
|
+
<title>Static Value-Flow Analysis: /home/runner/work/SVF/SVF/include/FastCluster Directory Reference</title>
|
|
9
|
+
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
10
|
+
<script type="text/javascript" src="jquery.js"></script>
|
|
11
|
+
<script type="text/javascript" src="dynsections.js"></script>
|
|
12
|
+
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
13
|
+
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
14
|
+
<script type="text/javascript" src="search/search.js"></script>
|
|
15
|
+
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
16
|
+
</head>
|
|
17
|
+
<body>
|
|
18
|
+
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
19
|
+
<div id="titlearea">
|
|
20
|
+
<table cellspacing="0" cellpadding="0">
|
|
21
|
+
<tbody>
|
|
22
|
+
<tr style="height: 56px;">
|
|
23
|
+
<td id="projectalign" style="padding-left: 0.5em;">
|
|
24
|
+
<div id="projectname">Static Value-Flow Analysis
|
|
25
|
+
</div>
|
|
26
|
+
</td>
|
|
27
|
+
</tr>
|
|
28
|
+
</tbody>
|
|
29
|
+
</table>
|
|
30
|
+
</div>
|
|
31
|
+
<!-- end header part -->
|
|
32
|
+
<!-- Generated by Doxygen 1.8.13 -->
|
|
33
|
+
<script type="text/javascript">
|
|
34
|
+
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
35
|
+
</script>
|
|
36
|
+
<script type="text/javascript" src="menudata.js"></script>
|
|
37
|
+
<script type="text/javascript" src="menu.js"></script>
|
|
38
|
+
<script type="text/javascript">
|
|
39
|
+
$(function() {
|
|
40
|
+
initMenu('',true,false,'search.php','Search');
|
|
41
|
+
$(document).ready(function() { init_search(); });
|
|
42
|
+
});
|
|
43
|
+
</script>
|
|
44
|
+
<div id="main-nav"></div>
|
|
45
|
+
<!-- window showing the filter options -->
|
|
46
|
+
<div id="MSearchSelectWindow"
|
|
47
|
+
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
48
|
+
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
49
|
+
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
<!-- iframe showing the search results (closed by default) -->
|
|
53
|
+
<div id="MSearchResultsWindow">
|
|
54
|
+
<iframe src="javascript:void(0)" frameborder="0"
|
|
55
|
+
name="MSearchResults" id="MSearchResults">
|
|
56
|
+
</iframe>
|
|
57
|
+
</div>
|
|
58
|
+
|
|
59
|
+
<div id="nav-path" class="navpath">
|
|
60
|
+
<ul>
|
|
61
|
+
<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li><li class="navelem"><a class="el" href="dir_63dba4c559aa5986900c35e27974bafc.html">FastCluster</a></li> </ul>
|
|
62
|
+
</div>
|
|
63
|
+
</div><!-- top -->
|
|
64
|
+
<div class="header">
|
|
65
|
+
<div class="headertitle">
|
|
66
|
+
<div class="title">FastCluster Directory Reference</div> </div>
|
|
67
|
+
</div><!--header-->
|
|
68
|
+
<div class="contents">
|
|
69
|
+
<table class="memberdecls">
|
|
70
|
+
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
|
|
71
|
+
Files</h2></td></tr>
|
|
72
|
+
<tr class="memitem:fastcluster_8h"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="fastcluster_8h.html">fastcluster.h</a> <a href="fastcluster_8h_source.html">[code]</a></td></tr>
|
|
73
|
+
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
74
|
+
</table>
|
|
75
|
+
</div><!-- contents -->
|
|
76
|
+
<!-- start footer part -->
|
|
77
|
+
<hr class="footer"/><address class="footer"><small>
|
|
78
|
+
Generated by  <a href="http://www.doxygen.org/index.html">
|
|
79
|
+
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
|
80
|
+
</a> 1.8.13
|
|
81
|
+
</small></address>
|
|
82
|
+
</body>
|
|
83
|
+
</html>
|
|
@@ -73,6 +73,8 @@ Directories</h2></td></tr>
|
|
|
73
73
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
74
74
|
<tr class="memitem:dir_a2e0925241bda41874822f3c661ab74b"><td class="memItemLeft" align="right" valign="top">directory  </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a2e0925241bda41874822f3c661ab74b.html">DDA</a></td></tr>
|
|
75
75
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
76
|
+
<tr class="memitem:dir_d1b325ac671111a54e189ae033ba710d"><td class="memItemLeft" align="right" valign="top">directory  </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_d1b325ac671111a54e189ae033ba710d.html">FastCluster</a></td></tr>
|
|
77
|
+
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
76
78
|
<tr class="memitem:dir_1870ebf480d659cc38d2dd7ac3aa8993"><td class="memItemLeft" align="right" valign="top">directory  </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_1870ebf480d659cc38d2dd7ac3aa8993.html">Graphs</a></td></tr>
|
|
77
79
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
78
80
|
<tr class="memitem:dir_bc6718691322c6f2c598235b847813b9"><td class="memItemLeft" align="right" valign="top">directory  </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_bc6718691322c6f2c598235b847813b9.html">MemoryModel</a></td></tr>
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
3
|
+
<head>
|
|
4
|
+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
5
|
+
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
6
|
+
<meta name="generator" content="Doxygen 1.8.13"/>
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
8
|
+
<title>Static Value-Flow Analysis: /home/runner/work/SVF/SVF/lib/FastCluster Directory Reference</title>
|
|
9
|
+
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
10
|
+
<script type="text/javascript" src="jquery.js"></script>
|
|
11
|
+
<script type="text/javascript" src="dynsections.js"></script>
|
|
12
|
+
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
13
|
+
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
14
|
+
<script type="text/javascript" src="search/search.js"></script>
|
|
15
|
+
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
16
|
+
</head>
|
|
17
|
+
<body>
|
|
18
|
+
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
19
|
+
<div id="titlearea">
|
|
20
|
+
<table cellspacing="0" cellpadding="0">
|
|
21
|
+
<tbody>
|
|
22
|
+
<tr style="height: 56px;">
|
|
23
|
+
<td id="projectalign" style="padding-left: 0.5em;">
|
|
24
|
+
<div id="projectname">Static Value-Flow Analysis
|
|
25
|
+
</div>
|
|
26
|
+
</td>
|
|
27
|
+
</tr>
|
|
28
|
+
</tbody>
|
|
29
|
+
</table>
|
|
30
|
+
</div>
|
|
31
|
+
<!-- end header part -->
|
|
32
|
+
<!-- Generated by Doxygen 1.8.13 -->
|
|
33
|
+
<script type="text/javascript">
|
|
34
|
+
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
35
|
+
</script>
|
|
36
|
+
<script type="text/javascript" src="menudata.js"></script>
|
|
37
|
+
<script type="text/javascript" src="menu.js"></script>
|
|
38
|
+
<script type="text/javascript">
|
|
39
|
+
$(function() {
|
|
40
|
+
initMenu('',true,false,'search.php','Search');
|
|
41
|
+
$(document).ready(function() { init_search(); });
|
|
42
|
+
});
|
|
43
|
+
</script>
|
|
44
|
+
<div id="main-nav"></div>
|
|
45
|
+
<!-- window showing the filter options -->
|
|
46
|
+
<div id="MSearchSelectWindow"
|
|
47
|
+
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
48
|
+
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
49
|
+
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
<!-- iframe showing the search results (closed by default) -->
|
|
53
|
+
<div id="MSearchResultsWindow">
|
|
54
|
+
<iframe src="javascript:void(0)" frameborder="0"
|
|
55
|
+
name="MSearchResults" id="MSearchResults">
|
|
56
|
+
</iframe>
|
|
57
|
+
</div>
|
|
58
|
+
|
|
59
|
+
<div id="nav-path" class="navpath">
|
|
60
|
+
<ul>
|
|
61
|
+
<li class="navelem"><a class="el" href="dir_97aefd0d527b934f1d99a682da8fe6a9.html">lib</a></li><li class="navelem"><a class="el" href="dir_d1b325ac671111a54e189ae033ba710d.html">FastCluster</a></li> </ul>
|
|
62
|
+
</div>
|
|
63
|
+
</div><!-- top -->
|
|
64
|
+
<div class="header">
|
|
65
|
+
<div class="headertitle">
|
|
66
|
+
<div class="title">FastCluster Directory Reference</div> </div>
|
|
67
|
+
</div><!--header-->
|
|
68
|
+
<div class="contents">
|
|
69
|
+
<table class="memberdecls">
|
|
70
|
+
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="files"></a>
|
|
71
|
+
Files</h2></td></tr>
|
|
72
|
+
<tr class="memitem:fastcluster_8cpp"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="fastcluster_8cpp.html">fastcluster.cpp</a> <a href="fastcluster_8cpp_source.html">[code]</a></td></tr>
|
|
73
|
+
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
74
|
+
<tr class="memitem:fastcluster__dm_8cpp_8inc"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="fastcluster__dm_8cpp_8inc.html">fastcluster_dm.cpp.inc</a> <a href="fastcluster__dm_8cpp_8inc_source.html">[code]</a></td></tr>
|
|
75
|
+
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
76
|
+
<tr class="memitem:fastcluster__R__dm_8cpp_8inc"><td class="memItemLeft" align="right" valign="top">file  </td><td class="memItemRight" valign="bottom"><a class="el" href="fastcluster__R__dm_8cpp_8inc.html">fastcluster_R_dm.cpp.inc</a> <a href="fastcluster__R__dm_8cpp_8inc_source.html">[code]</a></td></tr>
|
|
77
|
+
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
78
|
+
</table>
|
|
79
|
+
</div><!-- contents -->
|
|
80
|
+
<!-- start footer part -->
|
|
81
|
+
<hr class="footer"/><address class="footer"><small>
|
|
82
|
+
Generated by  <a href="http://www.doxygen.org/index.html">
|
|
83
|
+
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
|
84
|
+
</a> 1.8.13
|
|
85
|
+
</small></address>
|
|
86
|
+
</body>
|
|
87
|
+
</html>
|
|
@@ -73,6 +73,8 @@ Directories</h2></td></tr>
|
|
|
73
73
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
74
74
|
<tr class="memitem:dir_1ef28ffd5b1a0676d84f8349afe04309"><td class="memItemLeft" align="right" valign="top">directory  </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_1ef28ffd5b1a0676d84f8349afe04309.html">DDA</a></td></tr>
|
|
75
75
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
76
|
+
<tr class="memitem:dir_63dba4c559aa5986900c35e27974bafc"><td class="memItemLeft" align="right" valign="top">directory  </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_63dba4c559aa5986900c35e27974bafc.html">FastCluster</a></td></tr>
|
|
77
|
+
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
76
78
|
<tr class="memitem:dir_fa02919a30fec2d2c2d591b4d920d648"><td class="memItemLeft" align="right" valign="top">directory  </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_fa02919a30fec2d2c2d591b4d920d648.html">Graphs</a></td></tr>
|
|
77
79
|
<tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr>
|
|
78
80
|
<tr class="memitem:dir_eef3a4ca6ca2cab0eb5fbea30ec32c1a"><td class="memItemLeft" align="right" valign="top">directory  </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_eef3a4ca6ca2cab0eb5fbea30ec32c1a.html">MemoryModel</a></td></tr>
|
|
@@ -0,0 +1,263 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
2
|
+
<html xmlns="http://www.w3.org/1999/xhtml">
|
|
3
|
+
<head>
|
|
4
|
+
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
|
|
5
|
+
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
|
|
6
|
+
<meta name="generator" content="Doxygen 1.8.13"/>
|
|
7
|
+
<meta name="viewport" content="width=device-width, initial-scale=1"/>
|
|
8
|
+
<title>Static Value-Flow Analysis: /home/runner/work/SVF/SVF/lib/FastCluster/fastcluster.cpp File Reference</title>
|
|
9
|
+
<link href="tabs.css" rel="stylesheet" type="text/css"/>
|
|
10
|
+
<script type="text/javascript" src="jquery.js"></script>
|
|
11
|
+
<script type="text/javascript" src="dynsections.js"></script>
|
|
12
|
+
<link href="search/search.css" rel="stylesheet" type="text/css"/>
|
|
13
|
+
<script type="text/javascript" src="search/searchdata.js"></script>
|
|
14
|
+
<script type="text/javascript" src="search/search.js"></script>
|
|
15
|
+
<link href="doxygen.css" rel="stylesheet" type="text/css" />
|
|
16
|
+
</head>
|
|
17
|
+
<body>
|
|
18
|
+
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
|
|
19
|
+
<div id="titlearea">
|
|
20
|
+
<table cellspacing="0" cellpadding="0">
|
|
21
|
+
<tbody>
|
|
22
|
+
<tr style="height: 56px;">
|
|
23
|
+
<td id="projectalign" style="padding-left: 0.5em;">
|
|
24
|
+
<div id="projectname">Static Value-Flow Analysis
|
|
25
|
+
</div>
|
|
26
|
+
</td>
|
|
27
|
+
</tr>
|
|
28
|
+
</tbody>
|
|
29
|
+
</table>
|
|
30
|
+
</div>
|
|
31
|
+
<!-- end header part -->
|
|
32
|
+
<!-- Generated by Doxygen 1.8.13 -->
|
|
33
|
+
<script type="text/javascript">
|
|
34
|
+
var searchBox = new SearchBox("searchBox", "search",false,'Search');
|
|
35
|
+
</script>
|
|
36
|
+
<script type="text/javascript" src="menudata.js"></script>
|
|
37
|
+
<script type="text/javascript" src="menu.js"></script>
|
|
38
|
+
<script type="text/javascript">
|
|
39
|
+
$(function() {
|
|
40
|
+
initMenu('',true,false,'search.php','Search');
|
|
41
|
+
$(document).ready(function() { init_search(); });
|
|
42
|
+
});
|
|
43
|
+
</script>
|
|
44
|
+
<div id="main-nav"></div>
|
|
45
|
+
<!-- window showing the filter options -->
|
|
46
|
+
<div id="MSearchSelectWindow"
|
|
47
|
+
onmouseover="return searchBox.OnSearchSelectShow()"
|
|
48
|
+
onmouseout="return searchBox.OnSearchSelectHide()"
|
|
49
|
+
onkeydown="return searchBox.OnSearchSelectKey(event)">
|
|
50
|
+
</div>
|
|
51
|
+
|
|
52
|
+
<!-- iframe showing the search results (closed by default) -->
|
|
53
|
+
<div id="MSearchResultsWindow">
|
|
54
|
+
<iframe src="javascript:void(0)" frameborder="0"
|
|
55
|
+
name="MSearchResults" id="MSearchResults">
|
|
56
|
+
</iframe>
|
|
57
|
+
</div>
|
|
58
|
+
|
|
59
|
+
<div id="nav-path" class="navpath">
|
|
60
|
+
<ul>
|
|
61
|
+
<li class="navelem"><a class="el" href="dir_97aefd0d527b934f1d99a682da8fe6a9.html">lib</a></li><li class="navelem"><a class="el" href="dir_d1b325ac671111a54e189ae033ba710d.html">FastCluster</a></li> </ul>
|
|
62
|
+
</div>
|
|
63
|
+
</div><!-- top -->
|
|
64
|
+
<div class="header">
|
|
65
|
+
<div class="summary">
|
|
66
|
+
<a href="#func-members">Functions</a> </div>
|
|
67
|
+
<div class="headertitle">
|
|
68
|
+
<div class="title">fastcluster.cpp File Reference</div> </div>
|
|
69
|
+
</div><!--header-->
|
|
70
|
+
<div class="contents">
|
|
71
|
+
<div class="textblock"><code>#include <assert.h></code><br />
|
|
72
|
+
<code>#include <vector></code><br />
|
|
73
|
+
<code>#include <algorithm></code><br />
|
|
74
|
+
<code>#include "<a class="el" href="fastcluster_8h_source.html">FastCluster/fastcluster.h</a>"</code><br />
|
|
75
|
+
<code>#include "<a class="el" href="fastcluster__dm_8cpp_8inc_source.html">fastcluster_dm.cpp.inc</a>"</code><br />
|
|
76
|
+
<code>#include "<a class="el" href="fastcluster__R__dm_8cpp_8inc_source.html">fastcluster_R_dm.cpp.inc</a>"</code><br />
|
|
77
|
+
</div>
|
|
78
|
+
<p><a href="fastcluster_8cpp_source.html">Go to the source code of this file.</a></p>
|
|
79
|
+
<table class="memberdecls">
|
|
80
|
+
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
|
|
81
|
+
Functions</h2></td></tr>
|
|
82
|
+
<tr class="memitem:a8abcd9d66492e761592578e82ce2cba0"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="fastcluster_8cpp.html#a8abcd9d66492e761592578e82ce2cba0">fc_isnan</a> (double x)</td></tr>
|
|
83
|
+
<tr class="separator:a8abcd9d66492e761592578e82ce2cba0"><td class="memSeparator" colspan="2"> </td></tr>
|
|
84
|
+
<tr class="memitem:a4815993b37ce6e177c9838584e4cda24"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="fastcluster_8cpp.html#a4815993b37ce6e177c9838584e4cda24">cutree_k</a> (int n, const int *merge, int nclust, int *labels)</td></tr>
|
|
85
|
+
<tr class="separator:a4815993b37ce6e177c9838584e4cda24"><td class="memSeparator" colspan="2"> </td></tr>
|
|
86
|
+
<tr class="memitem:a8dbbd465af9ed88a066301ac83ce6961"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="fastcluster_8cpp.html#a8dbbd465af9ed88a066301ac83ce6961">cutree_cdist</a> (int n, const int *merge, double *height, double cdist, int *labels)</td></tr>
|
|
87
|
+
<tr class="separator:a8dbbd465af9ed88a066301ac83ce6961"><td class="memSeparator" colspan="2"> </td></tr>
|
|
88
|
+
<tr class="memitem:acccd226cbdf0944b5c9e24c84a4599c9"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="fastcluster_8cpp.html#acccd226cbdf0944b5c9e24c84a4599c9">hclust_fast</a> (int n, double *distmat, int method, int *merge, double *height)</td></tr>
|
|
89
|
+
<tr class="separator:acccd226cbdf0944b5c9e24c84a4599c9"><td class="memSeparator" colspan="2"> </td></tr>
|
|
90
|
+
</table>
|
|
91
|
+
<h2 class="groupheader">Function Documentation</h2>
|
|
92
|
+
<a id="a8dbbd465af9ed88a066301ac83ce6961"></a>
|
|
93
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a8dbbd465af9ed88a066301ac83ce6961">◆ </a></span>cutree_cdist()</h2>
|
|
94
|
+
|
|
95
|
+
<div class="memitem">
|
|
96
|
+
<div class="memproto">
|
|
97
|
+
<table class="memname">
|
|
98
|
+
<tr>
|
|
99
|
+
<td class="memname">void cutree_cdist </td>
|
|
100
|
+
<td>(</td>
|
|
101
|
+
<td class="paramtype">int </td>
|
|
102
|
+
<td class="paramname"><em>n</em>, </td>
|
|
103
|
+
</tr>
|
|
104
|
+
<tr>
|
|
105
|
+
<td class="paramkey"></td>
|
|
106
|
+
<td></td>
|
|
107
|
+
<td class="paramtype">const int * </td>
|
|
108
|
+
<td class="paramname"><em>merge</em>, </td>
|
|
109
|
+
</tr>
|
|
110
|
+
<tr>
|
|
111
|
+
<td class="paramkey"></td>
|
|
112
|
+
<td></td>
|
|
113
|
+
<td class="paramtype">double * </td>
|
|
114
|
+
<td class="paramname"><em>height</em>, </td>
|
|
115
|
+
</tr>
|
|
116
|
+
<tr>
|
|
117
|
+
<td class="paramkey"></td>
|
|
118
|
+
<td></td>
|
|
119
|
+
<td class="paramtype">double </td>
|
|
120
|
+
<td class="paramname"><em>cdist</em>, </td>
|
|
121
|
+
</tr>
|
|
122
|
+
<tr>
|
|
123
|
+
<td class="paramkey"></td>
|
|
124
|
+
<td></td>
|
|
125
|
+
<td class="paramtype">int * </td>
|
|
126
|
+
<td class="paramname"><em>labels</em> </td>
|
|
127
|
+
</tr>
|
|
128
|
+
<tr>
|
|
129
|
+
<td></td>
|
|
130
|
+
<td>)</td>
|
|
131
|
+
<td></td><td></td>
|
|
132
|
+
</tr>
|
|
133
|
+
</table>
|
|
134
|
+
</div><div class="memdoc">
|
|
135
|
+
|
|
136
|
+
<p class="definition">Definition at line <a class="el" href="fastcluster_8cpp_source.html#l00096">96</a> of file <a class="el" href="fastcluster_8cpp_source.html">fastcluster.cpp</a>.</p>
|
|
137
|
+
<div class="fragment"><div class="line"><a name="l00096"></a><span class="lineno"> 96</span>  {</div><div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div><div class="line"><a name="l00098"></a><span class="lineno"> 98</span>  <span class="keywordtype">int</span> k;</div><div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div><div class="line"><a name="l00100"></a><span class="lineno"> 100</span>  <span class="keywordflow">for</span> (k=0; k<(n-1); k++) {</div><div class="line"><a name="l00101"></a><span class="lineno"> 101</span>  <span class="keywordflow">if</span> (height[k] >= cdist) {</div><div class="line"><a name="l00102"></a><span class="lineno"> 102</span>  <span class="keywordflow">break</span>;</div><div class="line"><a name="l00103"></a><span class="lineno"> 103</span>  }</div><div class="line"><a name="l00104"></a><span class="lineno"> 104</span>  }</div><div class="line"><a name="l00105"></a><span class="lineno"> 105</span>  <a class="code" href="fastcluster_8cpp.html#a4815993b37ce6e177c9838584e4cda24">cutree_k</a>(n, merge, n-k, labels);</div><div class="line"><a name="l00106"></a><span class="lineno"> 106</span> }</div><div class="ttc" id="fastcluster_8cpp_html_a4815993b37ce6e177c9838584e4cda24"><div class="ttname"><a href="fastcluster_8cpp.html#a4815993b37ce6e177c9838584e4cda24">cutree_k</a></div><div class="ttdeci">void cutree_k(int n, const int *merge, int nclust, int *labels)</div><div class="ttdef"><b>Definition:</b> <a href="fastcluster_8cpp_source.html#l00034">fastcluster.cpp:34</a></div></div>
|
|
138
|
+
</div><!-- fragment -->
|
|
139
|
+
</div>
|
|
140
|
+
</div>
|
|
141
|
+
<a id="a4815993b37ce6e177c9838584e4cda24"></a>
|
|
142
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a4815993b37ce6e177c9838584e4cda24">◆ </a></span>cutree_k()</h2>
|
|
143
|
+
|
|
144
|
+
<div class="memitem">
|
|
145
|
+
<div class="memproto">
|
|
146
|
+
<table class="memname">
|
|
147
|
+
<tr>
|
|
148
|
+
<td class="memname">void cutree_k </td>
|
|
149
|
+
<td>(</td>
|
|
150
|
+
<td class="paramtype">int </td>
|
|
151
|
+
<td class="paramname"><em>n</em>, </td>
|
|
152
|
+
</tr>
|
|
153
|
+
<tr>
|
|
154
|
+
<td class="paramkey"></td>
|
|
155
|
+
<td></td>
|
|
156
|
+
<td class="paramtype">const int * </td>
|
|
157
|
+
<td class="paramname"><em>merge</em>, </td>
|
|
158
|
+
</tr>
|
|
159
|
+
<tr>
|
|
160
|
+
<td class="paramkey"></td>
|
|
161
|
+
<td></td>
|
|
162
|
+
<td class="paramtype">int </td>
|
|
163
|
+
<td class="paramname"><em>nclust</em>, </td>
|
|
164
|
+
</tr>
|
|
165
|
+
<tr>
|
|
166
|
+
<td class="paramkey"></td>
|
|
167
|
+
<td></td>
|
|
168
|
+
<td class="paramtype">int * </td>
|
|
169
|
+
<td class="paramname"><em>labels</em> </td>
|
|
170
|
+
</tr>
|
|
171
|
+
<tr>
|
|
172
|
+
<td></td>
|
|
173
|
+
<td>)</td>
|
|
174
|
+
<td></td><td></td>
|
|
175
|
+
</tr>
|
|
176
|
+
</table>
|
|
177
|
+
</div><div class="memdoc">
|
|
178
|
+
|
|
179
|
+
<p class="definition">Definition at line <a class="el" href="fastcluster_8cpp_source.html#l00034">34</a> of file <a class="el" href="fastcluster_8cpp_source.html">fastcluster.cpp</a>.</p>
|
|
180
|
+
<div class="fragment"><div class="line"><a name="l00034"></a><span class="lineno"> 34</span>  {</div><div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div><div class="line"><a name="l00036"></a><span class="lineno"> 36</span>  <span class="keywordtype">int</span> k,m1,m2,j,l;</div><div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div><div class="line"><a name="l00038"></a><span class="lineno"> 38</span>  <span class="keywordflow">if</span> (nclust > n || nclust < 2) {</div><div class="line"><a name="l00039"></a><span class="lineno"> 39</span>  <span class="keywordflow">for</span> (j=0; j<n; j++) labels[j] = 0;</div><div class="line"><a name="l00040"></a><span class="lineno"> 40</span>  <span class="keywordflow">return</span>;</div><div class="line"><a name="l00041"></a><span class="lineno"> 41</span>  }</div><div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div><div class="line"><a name="l00043"></a><span class="lineno"> 43</span>  <span class="comment">// assign to each observable the number of its last merge step</span></div><div class="line"><a name="l00044"></a><span class="lineno"> 44</span>  <span class="comment">// beware: indices of observables in merge start at 1 (R convention)</span></div><div class="line"><a name="l00045"></a><span class="lineno"> 45</span>  std::vector<int> last_merge(n, 0);</div><div class="line"><a name="l00046"></a><span class="lineno"> 46</span>  <span class="keywordflow">for</span> (k=1; k<=(n-nclust); k++) {</div><div class="line"><a name="l00047"></a><span class="lineno"> 47</span>  <span class="comment">// (m1,m2) = merge[k,]</span></div><div class="line"><a name="l00048"></a><span class="lineno"> 48</span>  m1 = merge[k-1];</div><div class="line"><a name="l00049"></a><span class="lineno"> 49</span>  m2 = merge[n-1+k-1];</div><div class="line"><a name="l00050"></a><span class="lineno"> 50</span>  <span class="keywordflow">if</span> (m1 < 0 && m2 < 0) { <span class="comment">// both single observables</span></div><div class="line"><a name="l00051"></a><span class="lineno"> 51</span>  last_merge[-m1-1] = last_merge[-m2-1] = k;</div><div class="line"><a name="l00052"></a><span class="lineno"> 52</span>  }</div><div class="line"><a name="l00053"></a><span class="lineno"> 53</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (m1 < 0 || m2 < 0) { <span class="comment">// one is a cluster</span></div><div class="line"><a name="l00054"></a><span class="lineno"> 54</span>  <span class="keywordflow">if</span>(m1 < 0) { j = -m1; m1 = m2; } <span class="keywordflow">else</span> j = -m2;</div><div class="line"><a name="l00055"></a><span class="lineno"> 55</span>  <span class="comment">// merging single observable and cluster</span></div><div class="line"><a name="l00056"></a><span class="lineno"> 56</span>  <span class="keywordflow">for</span>(l = 0; l < n; l++)</div><div class="line"><a name="l00057"></a><span class="lineno"> 57</span>  <span class="keywordflow">if</span> (last_merge[l] == m1)</div><div class="line"><a name="l00058"></a><span class="lineno"> 58</span>  last_merge[l] = k;</div><div class="line"><a name="l00059"></a><span class="lineno"> 59</span>  last_merge[j-1] = k;</div><div class="line"><a name="l00060"></a><span class="lineno"> 60</span>  }</div><div class="line"><a name="l00061"></a><span class="lineno"> 61</span>  <span class="keywordflow">else</span> { <span class="comment">// both cluster</span></div><div class="line"><a name="l00062"></a><span class="lineno"> 62</span>  <span class="keywordflow">for</span>(l=0; l < n; l++) {</div><div class="line"><a name="l00063"></a><span class="lineno"> 63</span>  <span class="keywordflow">if</span>( last_merge[l] == m1 || last_merge[l] == m2 )</div><div class="line"><a name="l00064"></a><span class="lineno"> 64</span>  last_merge[l] = k;</div><div class="line"><a name="l00065"></a><span class="lineno"> 65</span>  }</div><div class="line"><a name="l00066"></a><span class="lineno"> 66</span>  }</div><div class="line"><a name="l00067"></a><span class="lineno"> 67</span>  }</div><div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div><div class="line"><a name="l00069"></a><span class="lineno"> 69</span>  <span class="comment">// assign cluster labels</span></div><div class="line"><a name="l00070"></a><span class="lineno"> 70</span>  <span class="keywordtype">int</span> label = 0;</div><div class="line"><a name="l00071"></a><span class="lineno"> 71</span>  std::vector<int> z(n,-1);</div><div class="line"><a name="l00072"></a><span class="lineno"> 72</span>  <span class="keywordflow">for</span> (j=0; j<n; j++) {</div><div class="line"><a name="l00073"></a><span class="lineno"> 73</span>  <span class="keywordflow">if</span> (last_merge[j] == 0) { <span class="comment">// still singleton</span></div><div class="line"><a name="l00074"></a><span class="lineno"> 74</span>  labels[j] = label++;</div><div class="line"><a name="l00075"></a><span class="lineno"> 75</span>  } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00076"></a><span class="lineno"> 76</span>  <span class="keywordflow">if</span> (z[last_merge[j]] < 0) {</div><div class="line"><a name="l00077"></a><span class="lineno"> 77</span>  z[last_merge[j]] = label++;</div><div class="line"><a name="l00078"></a><span class="lineno"> 78</span>  }</div><div class="line"><a name="l00079"></a><span class="lineno"> 79</span>  labels[j] = z[last_merge[j]];</div><div class="line"><a name="l00080"></a><span class="lineno"> 80</span>  }</div><div class="line"><a name="l00081"></a><span class="lineno"> 81</span>  }</div><div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div></div><!-- fragment -->
|
|
181
|
+
</div>
|
|
182
|
+
</div>
|
|
183
|
+
<a id="a8abcd9d66492e761592578e82ce2cba0"></a>
|
|
184
|
+
<h2 class="memtitle"><span class="permalink"><a href="#a8abcd9d66492e761592578e82ce2cba0">◆ </a></span>fc_isnan()</h2>
|
|
185
|
+
|
|
186
|
+
<div class="memitem">
|
|
187
|
+
<div class="memproto">
|
|
188
|
+
<table class="memname">
|
|
189
|
+
<tr>
|
|
190
|
+
<td class="memname">bool fc_isnan </td>
|
|
191
|
+
<td>(</td>
|
|
192
|
+
<td class="paramtype">double </td>
|
|
193
|
+
<td class="paramname"><em>x</em></td><td>)</td>
|
|
194
|
+
<td></td>
|
|
195
|
+
</tr>
|
|
196
|
+
</table>
|
|
197
|
+
</div><div class="memdoc">
|
|
198
|
+
|
|
199
|
+
<p class="definition">Definition at line <a class="el" href="fastcluster_8cpp_source.html#l00019">19</a> of file <a class="el" href="fastcluster_8cpp_source.html">fastcluster.cpp</a>.</p>
|
|
200
|
+
<div class="fragment"><div class="line"><a name="l00019"></a><span class="lineno"> 19</span> { <span class="keywordflow">return</span> <span class="keyword">false</span>; }</div></div><!-- fragment -->
|
|
201
|
+
</div>
|
|
202
|
+
</div>
|
|
203
|
+
<a id="acccd226cbdf0944b5c9e24c84a4599c9"></a>
|
|
204
|
+
<h2 class="memtitle"><span class="permalink"><a href="#acccd226cbdf0944b5c9e24c84a4599c9">◆ </a></span>hclust_fast()</h2>
|
|
205
|
+
|
|
206
|
+
<div class="memitem">
|
|
207
|
+
<div class="memproto">
|
|
208
|
+
<table class="memname">
|
|
209
|
+
<tr>
|
|
210
|
+
<td class="memname">int hclust_fast </td>
|
|
211
|
+
<td>(</td>
|
|
212
|
+
<td class="paramtype">int </td>
|
|
213
|
+
<td class="paramname"><em>n</em>, </td>
|
|
214
|
+
</tr>
|
|
215
|
+
<tr>
|
|
216
|
+
<td class="paramkey"></td>
|
|
217
|
+
<td></td>
|
|
218
|
+
<td class="paramtype">double * </td>
|
|
219
|
+
<td class="paramname"><em>distmat</em>, </td>
|
|
220
|
+
</tr>
|
|
221
|
+
<tr>
|
|
222
|
+
<td class="paramkey"></td>
|
|
223
|
+
<td></td>
|
|
224
|
+
<td class="paramtype">int </td>
|
|
225
|
+
<td class="paramname"><em>method</em>, </td>
|
|
226
|
+
</tr>
|
|
227
|
+
<tr>
|
|
228
|
+
<td class="paramkey"></td>
|
|
229
|
+
<td></td>
|
|
230
|
+
<td class="paramtype">int * </td>
|
|
231
|
+
<td class="paramname"><em>merge</em>, </td>
|
|
232
|
+
</tr>
|
|
233
|
+
<tr>
|
|
234
|
+
<td class="paramkey"></td>
|
|
235
|
+
<td></td>
|
|
236
|
+
<td class="paramtype">double * </td>
|
|
237
|
+
<td class="paramname"><em>height</em> </td>
|
|
238
|
+
</tr>
|
|
239
|
+
<tr>
|
|
240
|
+
<td></td>
|
|
241
|
+
<td>)</td>
|
|
242
|
+
<td></td><td></td>
|
|
243
|
+
</tr>
|
|
244
|
+
</table>
|
|
245
|
+
</div><div class="memdoc">
|
|
246
|
+
|
|
247
|
+
<p class="definition">Definition at line <a class="el" href="fastcluster_8cpp_source.html#l00133">133</a> of file <a class="el" href="fastcluster_8cpp_source.html">fastcluster.cpp</a>.</p>
|
|
248
|
+
<div class="fragment"><div class="line"><a name="l00133"></a><span class="lineno"> 133</span>  {</div><div class="line"><a name="l00134"></a><span class="lineno"> 134</span>  </div><div class="line"><a name="l00135"></a><span class="lineno"> 135</span>  <span class="comment">// call appropriate culstering function</span></div><div class="line"><a name="l00136"></a><span class="lineno"> 136</span>  cluster_result Z2(n-1);</div><div class="line"><a name="l00137"></a><span class="lineno"> 137</span>  <span class="keywordflow">if</span> (method == <a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024">HCLUST_METHOD_SINGLE</a>) {</div><div class="line"><a name="l00138"></a><span class="lineno"> 138</span>  <span class="comment">// single link</span></div><div class="line"><a name="l00139"></a><span class="lineno"> 139</span>  MST_linkage_core(n, distmat, Z2);</div><div class="line"><a name="l00140"></a><span class="lineno"> 140</span>  }</div><div class="line"><a name="l00141"></a><span class="lineno"> 141</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (method == <a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4">HCLUST_METHOD_COMPLETE</a>) {</div><div class="line"><a name="l00142"></a><span class="lineno"> 142</span>  <span class="comment">// complete link</span></div><div class="line"><a name="l00143"></a><span class="lineno"> 143</span>  NN_chain_core<METHOD_METR_COMPLETE, t_float>(n, distmat, NULL, Z2);</div><div class="line"><a name="l00144"></a><span class="lineno"> 144</span>  }</div><div class="line"><a name="l00145"></a><span class="lineno"> 145</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (method == <a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115">HCLUST_METHOD_AVERAGE</a>) {</div><div class="line"><a name="l00146"></a><span class="lineno"> 146</span>  <span class="comment">// best average distance</span></div><div class="line"><a name="l00147"></a><span class="lineno"> 147</span>  <span class="keywordtype">double</span>* members = <span class="keyword">new</span> <span class="keywordtype">double</span>[n];</div><div class="line"><a name="l00148"></a><span class="lineno"> 148</span>  <span class="keywordflow">for</span> (<span class="keywordtype">int</span> i=0; i<n; i++) members[i] = 1;</div><div class="line"><a name="l00149"></a><span class="lineno"> 149</span>  NN_chain_core<METHOD_METR_AVERAGE, t_float>(n, distmat, members, Z2);</div><div class="line"><a name="l00150"></a><span class="lineno"> 150</span>  <span class="keyword">delete</span>[] members;</div><div class="line"><a name="l00151"></a><span class="lineno"> 151</span>  }</div><div class="line"><a name="l00152"></a><span class="lineno"> 152</span>  <span class="keywordflow">else</span> <span class="keywordflow">if</span> (method == <a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddaa453b79910d9c6f7f57a179bcdf63474">HCLUST_METHOD_MEDIAN</a>) {</div><div class="line"><a name="l00153"></a><span class="lineno"> 153</span>  <span class="comment">// best median distance (beware: O(n^3))</span></div><div class="line"><a name="l00154"></a><span class="lineno"> 154</span>  generic_linkage<METHOD_METR_MEDIAN, t_float>(n, distmat, NULL, Z2);</div><div class="line"><a name="l00155"></a><span class="lineno"> 155</span>  }</div><div class="line"><a name="l00156"></a><span class="lineno"> 156</span>  <span class="keywordflow">else</span> {</div><div class="line"><a name="l00157"></a><span class="lineno"> 157</span>  <span class="keywordflow">return</span> 1;</div><div class="line"><a name="l00158"></a><span class="lineno"> 158</span>  }</div><div class="line"><a name="l00159"></a><span class="lineno"> 159</span>  </div><div class="line"><a name="l00160"></a><span class="lineno"> 160</span>  <span class="keywordtype">int</span>* order = <span class="keyword">new</span> <span class="keywordtype">int</span>[n];</div><div class="line"><a name="l00161"></a><span class="lineno"> 161</span>  <span class="keywordflow">if</span> (method == <a class="code" href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddaa453b79910d9c6f7f57a179bcdf63474">HCLUST_METHOD_MEDIAN</a>) {</div><div class="line"><a name="l00162"></a><span class="lineno"> 162</span>  generate_R_dendrogram<true>(merge, height, order, Z2, n);</div><div class="line"><a name="l00163"></a><span class="lineno"> 163</span>  } <span class="keywordflow">else</span> {</div><div class="line"><a name="l00164"></a><span class="lineno"> 164</span>  generate_R_dendrogram<false>(merge, height, order, Z2, n);</div><div class="line"><a name="l00165"></a><span class="lineno"> 165</span>  }</div><div class="line"><a name="l00166"></a><span class="lineno"> 166</span> </div><div class="line"><a name="l00167"></a><span class="lineno"> 167</span>  <span class="keyword">delete</span>[] order; <span class="comment">// only needed for visualization</span></div><div class="line"><a name="l00168"></a><span class="lineno"> 168</span>  </div><div class="line"><a name="l00169"></a><span class="lineno"> 169</span>  <span class="keywordflow">return</span> 0;</div><div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div><div class="ttc" id="fastcluster_8h_html_a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4"><div class="ttname"><a href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda44ce22fdfc560f27242e9b8f8e7009f4">HCLUST_METHOD_COMPLETE</a></div><div class="ttdef"><b>Definition:</b> <a href="fastcluster_8h_source.html#l00069">fastcluster.h:69</a></div></div>
|
|
249
|
+
<div class="ttc" id="fastcluster_8h_html_a4205a14ad66b3320d2e94c61d74913ddaa453b79910d9c6f7f57a179bcdf63474"><div class="ttname"><a href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddaa453b79910d9c6f7f57a179bcdf63474">HCLUST_METHOD_MEDIAN</a></div><div class="ttdef"><b>Definition:</b> <a href="fastcluster_8h_source.html#l00073">fastcluster.h:73</a></div></div>
|
|
250
|
+
<div class="ttc" id="fastcluster_8h_html_a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024"><div class="ttname"><a href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913ddad16cc6362447cc32292c4af4c6fe8024">HCLUST_METHOD_SINGLE</a></div><div class="ttdef"><b>Definition:</b> <a href="fastcluster_8h_source.html#l00067">fastcluster.h:67</a></div></div>
|
|
251
|
+
<div class="ttc" id="fastcluster_8h_html_a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115"><div class="ttname"><a href="fastcluster_8h.html#a4205a14ad66b3320d2e94c61d74913dda3ab72664fc61704a1ba46bddbc347115">HCLUST_METHOD_AVERAGE</a></div><div class="ttdef"><b>Definition:</b> <a href="fastcluster_8h_source.html#l00071">fastcluster.h:71</a></div></div>
|
|
252
|
+
</div><!-- fragment -->
|
|
253
|
+
</div>
|
|
254
|
+
</div>
|
|
255
|
+
</div><!-- contents -->
|
|
256
|
+
<!-- start footer part -->
|
|
257
|
+
<hr class="footer"/><address class="footer"><small>
|
|
258
|
+
Generated by  <a href="http://www.doxygen.org/index.html">
|
|
259
|
+
<img class="footer" src="doxygen.png" alt="doxygen"/>
|
|
260
|
+
</a> 1.8.13
|
|
261
|
+
</small></address>
|
|
262
|
+
</body>
|
|
263
|
+
</html>
|