Offset 1, 5 lines modified | Offset 1, 5 lines modified | ||
1 | ·1a28d682d38fc68335878c9d106a6dd2·636632·libdevel·optional·libspooles-dev_2.2-14_i386.deb | 1 | ·1a28d682d38fc68335878c9d106a6dd2·636632·libdevel·optional·libspooles-dev_2.2-14_i386.deb |
2 | ·2d8a24590017907acbfd966b17500c3c·1131612·debug·optional·libspooles2.2-dbgsym_2.2-14_i386.deb | 2 | ·2d8a24590017907acbfd966b17500c3c·1131612·debug·optional·libspooles2.2-dbgsym_2.2-14_i386.deb |
3 | ·1e06bc4ef4a054977c3cb0c2e3428569·485860·libs·optional·libspooles2.2_2.2-14_i386.deb | 3 | ·1e06bc4ef4a054977c3cb0c2e3428569·485860·libs·optional·libspooles2.2_2.2-14_i386.deb |
4 | · | 4 | ·b58ca8546e0c3fb479d42a9506af35bb·6815892·doc·optional·spooles-doc_2.2-14_all.deb |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2018-12-19·22:56:58.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2018-12-19·22:56:58.000000·debian-binary |
2 | -rw-r--r--···0········0········0·····194 | 2 | -rw-r--r--···0········0········0·····1940·2018-12-19·22:56:58.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0··6 | 3 | -rw-r--r--···0········0········0··6813760·2018-12-19·22:56:58.000000·data.tar.xz |
Offset 1, 13 lines modified | Offset 1, 13 lines modified | ||
1 | Package:·spooles-doc | 1 | Package:·spooles-doc |
2 | Source:·spooles | 2 | Source:·spooles |
3 | Version:·2.2-14 | 3 | Version:·2.2-14 |
4 | Architecture:·all | 4 | Architecture:·all |
5 | Maintainer:·Debian·Science·Maintainers·<debian-science-maintainers@lists.alioth.debian.org> | 5 | Maintainer:·Debian·Science·Maintainers·<debian-science-maintainers@lists.alioth.debian.org> |
6 | Installed-Size:·68 | 6 | Installed-Size:·6899 |
7 | Suggests:·libspooles2.2-dev | 7 | Suggests:·libspooles2.2-dev |
8 | Section:·doc | 8 | Section:·doc |
9 | Priority:·optional | 9 | Priority:·optional |
10 | Homepage:·http://www.netlib.org/linalg/spooles/ | 10 | Homepage:·http://www.netlib.org/linalg/spooles/ |
11 | Description:·SPOOLES·numerical·simulation·pre-·and·post-processor·documentation | 11 | Description:·SPOOLES·numerical·simulation·pre-·and·post-processor·documentation |
12 | ·SPOOLES·is·a·library·for·solving·sparse·real·and·complex·linear·systems·of | 12 | ·SPOOLES·is·a·library·for·solving·sparse·real·and·complex·linear·systems·of |
13 | ·equations,·written·in·the·C·language·using·object·oriented·design. | 13 | ·equations,·written·in·the·C·language·using·object·oriented·design. |
Offset 1, 56 lines modified | Offset 1, 56 lines modified | ||
1 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./ | 1 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./ |
2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/ | 2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/ |
3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/share/ | 3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/share/ |
4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/share/doc/ | 4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/share/doc/ |
5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ | 5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ |
6 | -rw-r--r--···0·root·········(0)·root·········(0)···152 | 6 | -rw-r--r--···0·root·········(0)·root·········(0)···152217·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/A2.ps.gz |
7 | -rw-r--r--···0·root·········(0)·root·········(0)···596035·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ASHCRAFC.ps.gz | 7 | -rw-r--r--···0·root·········(0)·root·········(0)···596035·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ASHCRAFC.ps.gz |
8 | -rw-r--r--···0·root·········(0)·root·········(0)····6 | 8 | -rw-r--r--···0·root·········(0)·root·········(0)····68013·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/AllInOne.ps.gz |
9 | -rw-r--r--···0·root·········(0)·root·········(0)···12 | 9 | -rw-r--r--···0·root·········(0)·root·········(0)···128123·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/BKL.ps.gz |
10 | -rw-r--r--···0·root·········(0)·root·········(0)···156 | 10 | -rw-r--r--···0·root·········(0)·root·········(0)···156278·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/BPG.ps.gz |
11 | -rw-r--r--···0·root·········(0)·root·········(0)···190 | 11 | -rw-r--r--···0·root·········(0)·root·········(0)···190604·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Chv.ps.gz |
12 | -rw-r--r--···0·root·········(0)·root·········(0)···101 | 12 | -rw-r--r--···0·root·········(0)·root·········(0)···101217·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ChvList.ps.gz |
13 | -rw-r--r--···0·root·········(0)·root·········(0)····94 | 13 | -rw-r--r--···0·root·········(0)·root·········(0)····94927·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ChvManager.ps.gz |
14 | -rw-r--r--···0·root·········(0)·root·········(0)···121 | 14 | -rw-r--r--···0·root·········(0)·root·········(0)···121188·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Coords.ps.gz |
15 | -rw-r--r--···0·root·········(0)·root·········(0)···116 | 15 | -rw-r--r--···0·root·········(0)·root·········(0)···116249·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/DSTree.ps.gz |
16 | -rw-r--r--···0·root·········(0)·root·········(0)···134 | 16 | -rw-r--r--···0·root·········(0)·root·········(0)···134331·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/DV.ps.gz |
17 | -rw-r--r--···0·root·········(0)·root·········(0)···11 | 17 | -rw-r--r--···0·root·········(0)·root·········(0)···118097·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/DenseMtx.ps.gz |
18 | -rw-r--r--···0·root·········(0)·root·········(0)···107 | 18 | -rw-r--r--···0·root·········(0)·root·········(0)···107739·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Drand.ps.gz |
19 | -rw-r--r--···0·root·········(0)·root·········(0)···121 | 19 | -rw-r--r--···0·root·········(0)·root·········(0)···121778·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/EGraph.ps.gz |
20 | -rw-r--r--···0·root·········(0)·root·········(0)···221 | 20 | -rw-r--r--···0·root·········(0)·root·········(0)···221256·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ETree.ps.gz |
21 | -rw-r--r--···0·root·········(0)·root·········(0)····8 | 21 | -rw-r--r--···0·root·········(0)·root·········(0)····88074·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Eigen.ps.gz |
22 | -rw-r--r--···0·root·········(0)·root·········(0)···179 | 22 | -rw-r--r--···0·root·········(0)·root·········(0)···179820·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/FrontMtx.ps.gz |
23 | -rw-r--r--···0·root·········(0)·root·········(0)···27 | 23 | -rw-r--r--···0·root·········(0)·root·········(0)···276056·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/FrontTrees.ps.gz |
24 | -rw-r--r--···0·root·········(0)·root·········(0)···184 | 24 | -rw-r--r--···0·root·········(0)·root·········(0)···184858·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/GPart.ps.gz |
25 | -rw-r--r--···0·root·········(0)·root·········(0)···190 | 25 | -rw-r--r--···0·root·········(0)·root·········(0)···190446·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Graph.ps.gz |
26 | -rw-r--r--···0·root·········(0)·root·········(0)···132 | 26 | -rw-r--r--···0·root·········(0)·root·········(0)···132123·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/I2Ohash.ps.gz |
27 | -rw-r--r--···0·root·········(0)·root·········(0)···110 | 27 | -rw-r--r--···0·root·········(0)·root·········(0)···110237·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/IIheap.ps.gz |
28 | -rw-r--r--···0·root·········(0)·root·········(0)···121 | 28 | -rw-r--r--···0·root·········(0)·root·········(0)···121987·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/IV.ps.gz |
29 | -rw-r--r--···0·root·········(0)·root·········(0)···124 | 29 | -rw-r--r--···0·root·········(0)·root·········(0)···124964·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/IVL.ps.gz |
30 | -rw-r--r--···0·root·········(0)·root·········(0)····95 | 30 | -rw-r--r--···0·root·········(0)·root·········(0)····95884·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Ideq.ps.gz |
31 | -rw-r--r--···0·root·········(0)·root·········(0)···205 | 31 | -rw-r--r--···0·root·········(0)·root·········(0)···205279·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/InpMtx.ps.gz |
32 | -rw-r--r--···0·root·········(0)·root·········(0)···127 | 32 | -rw-r--r--···0·root·········(0)·root·········(0)···127917·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/LinSol.ps.gz |
33 | -rw-r--r--···0·root·········(0)·root·········(0)····89 | 33 | -rw-r--r--···0·root·········(0)·root·········(0)····89692·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Lock.ps.gz |
34 | -rw-r--r--···0·root·········(0)·root·········(0)···176 | 34 | -rw-r--r--···0·root·········(0)·root·········(0)···176698·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/MPI.ps.gz |
35 | -rw-r--r--···0·root·········(0)·root·········(0)···168 | 35 | -rw-r--r--···0·root·········(0)·root·········(0)···168731·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/MSMD.ps.gz |
36 | -rw-r--r--···0·root·········(0)·root·········(0)···163 | 36 | -rw-r--r--···0·root·········(0)·root·········(0)···163707·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/MT.ps.gz |
37 | -rw-r--r--···0·root·········(0)·root·········(0)···146 | 37 | -rw-r--r--···0·root·········(0)·root·········(0)···146778·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Network.ps.gz |
38 | -rw-r--r--···0·root·········(0)·root·········(0)···143 | 38 | -rw-r--r--···0·root·········(0)·root·········(0)···143823·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/PatchAndGoInfo.ps.gz |
39 | -rw-r--r--···0·root·········(0)·root·········(0)···124 | 39 | -rw-r--r--···0·root·········(0)·root·········(0)···124968·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Pencil.ps.gz |
40 | -rw-r--r--···0·root·········(0)·root·········(0)···107 | 40 | -rw-r--r--···0·root·········(0)·root·········(0)···107499·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Perm.ps.gz |
41 | -rw-r--r--···0·root·········(0)·root·········(0)···149 | 41 | -rw-r--r--···0·root·········(0)·root·········(0)···149892·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ReferenceManual.ps.gz |
42 | -rw-r--r--···0·root·········(0)·root·········(0)···153 | 42 | -rw-r--r--···0·root·········(0)·root·········(0)···153279·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SemiImplMtx.ps.gz |
43 | -rw-r--r--···0·root·········(0)·root·········(0)···1347 | 43 | -rw-r--r--···0·root·········(0)·root·········(0)···134775·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SolveMap.ps.gz |
44 | -rw-r--r--···0·root·········(0)·root·········(0)···175 | 44 | -rw-r--r--···0·root·········(0)·root·········(0)···175975·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SubMtx.ps.gz |
45 | -rw-r--r--···0·root·········(0)·root·········(0)···101 | 45 | -rw-r--r--···0·root·········(0)·root·········(0)···101886·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SubMtxList.ps.gz |
46 | -rw-r--r--···0·root·········(0)·root·········(0)···11 | 46 | -rw-r--r--···0·root·········(0)·root·········(0)···118089·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SubMtxManager.ps.gz |
47 | -rw-r--r--···0·root·········(0)·root·········(0)···121 | 47 | -rw-r--r--···0·root·········(0)·root·········(0)···121185·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SymbFac.ps.gz |
48 | -rw-r--r--···0·root·········(0)·root·········(0)···168 | 48 | -rw-r--r--···0·root·········(0)·root·········(0)···168194·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Tree.ps.gz |
49 | -rw-r--r--···0·root·········(0)·root·········(0)···190 | 49 | -rw-r--r--···0·root·········(0)·root·········(0)···190491·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Utilities.ps.gz |
50 | -rw-r--r--···0·root·········(0)·root·········(0)···128 | 50 | -rw-r--r--···0·root·········(0)·root·········(0)···128192·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ZV.ps.gz |
51 | -rw-r--r--···0·root·········(0)·root·········(0)······758·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/changelog.Debian.gz | 51 | -rw-r--r--···0·root·········(0)·root·········(0)······758·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/changelog.Debian.gz |
52 | -rw-r--r--···0·root·········(0)·root·········(0)······378·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/copyright | 52 | -rw-r--r--···0·root·········(0)·root·········(0)······378·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/copyright |
53 | -rw-r--r--···0·root·········(0)·root·········(0)···189 | 53 | -rw-r--r--···0·root·········(0)·root·········(0)···189428·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/misc.ps.gz |
54 | -rw-r--r--···0·root·········(0)·root·········(0)·····9600·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/spooles.2.2.html | 54 | -rw-r--r--···0·root·········(0)·root·········(0)·····9600·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/spooles.2.2.html |
55 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/share/doc-base/ | 55 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2018-12-19·22:56:58.000000·./usr/share/doc-base/ |
56 | -rw-r--r--···0·root·········(0)·root·········(0)······430·2018-12-19·22:56:58.000000·./usr/share/doc-base/spooles-doc.spooles | 56 | -rw-r--r--···0·root·········(0)·root·········(0)······430·2018-12-19·22:56:58.000000·./usr/share/doc-base/spooles-doc.spooles |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·A2.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·A2.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2062, 20 lines modified | Offset 2062, 21 lines modified | ||
2062 | end·readonly·def | 2062 | end·readonly·def |
2063 | /Encoding·256·array | 2063 | /Encoding·256·array |
2064 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2064 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2065 | dup·44·/comma·put | 2065 | dup·44·/comma·put |
2066 | dup·48·/zero·put | 2066 | dup·48·/zero·put |
2067 | dup·49·/one·put | 2067 | dup·49·/one·put |
2068 | dup·50·/two·put | 2068 | dup·50·/two·put |
2069 | dup·52·/four·put | ||
2070 | dup·5 | 2069 | dup·53·/five·put |
2070 | dup·56·/eight·put | ||
2071 | dup·58·/colon·put | 2071 | dup·58·/colon·put |
2072 | dup·7 | 2072 | dup·70·/F·put |
2073 | dup·97·/a·put | 2073 | dup·97·/a·put |
2074 | dup·98·/b·put | ||
2074 | dup·1 | 2075 | dup·101·/e·put |
2075 | dup·114·/r·put | 2076 | dup·114·/r·put |
2076 | dup·117·/u·put | 2077 | dup·117·/u·put |
2077 | dup·121·/y·put | 2078 | dup·121·/y·put |
2078 | readonly·def | 2079 | readonly·def |
2079 | currentdict·end | 2080 | currentdict·end |
2080 | currentfile·eexec | 2081 | currentfile·eexec |
2081 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2082 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2259, 89 lines modified | Offset 2260, 93 lines modified | ||
2259 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2260 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2260 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2261 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2261 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2262 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2262 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2263 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2263 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2264 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2264 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2265 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2265 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2266 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2266 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2267 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2267 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2268 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2269 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2270 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2271 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2272 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2273 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2274 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2275 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2276 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2277 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2278 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2279 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2280 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2281 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2282 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2283 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2284 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2285 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2286 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2287 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2288 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2289 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2290 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2291 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2292 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2293 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2294 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2295 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2296 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2297 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2298 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2299 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2300 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2301 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2302 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2303 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2304 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2305 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2306 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2307 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2308 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2309 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2310 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2311 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2312 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2313 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2314 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2315 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2316 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2317 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2318 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2319 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2320 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2321 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2322 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2323 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2324 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2325 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2326 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2327 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2328 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2329 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2330 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2331 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2332 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2333 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2334 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2335 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2336 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2337 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2338 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2339 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2340 | 2268 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2269 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2270 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2271 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2272 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2273 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2274 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 22823/34711 bytes (65.75%) of diff not shown. |
Offset 20, 15 lines modified | Offset 20, 15 lines modified | ||
20 | ·············•·A2·IS·REAL(mtx)·is·1·if·mtx·has·real·entries·and·0·otherwise.\xd | 20 | ·············•·A2·IS·REAL(mtx)·is·1·if·mtx·has·real·entries·and·0·otherwise.\xd |
21 | ·············•·A2·IS·COMPLEX(mtx)·is·1·if·mtx·has·complex·entries·and·0·otherwise.\xd | 21 | ·············•·A2·IS·COMPLEX(mtx)·is·1·if·mtx·has·complex·entries·and·0·otherwise.\xd |
22 | ···········TheA2·copyEntriesToVector()methodusesthefollowingconstants:·A2·STRICT·LOWER,A2·LOWER,A2·DIAGONAL,\xd | 22 | ···········TheA2·copyEntriesToVector()methodusesthefollowingconstants:·A2·STRICT·LOWER,A2·LOWER,A2·DIAGONAL,\xd |
23 | ···········A2·UPPER,·A2·STRICT·UPPER,·A2·ALL·ENTRIES,·A2·BY·ROWS·and·A2·BY·COLUMNS.\xd | 23 | ···········A2·UPPER,·A2·STRICT·UPPER,·A2·ALL·ENTRIES,·A2·BY·ROWS·and·A2·BY·COLUMNS.\xd |
24 | ···········1.2··Prototypes·and·descriptions·of·A2·methods\xd | 24 | ···········1.2··Prototypes·and·descriptions·of·A2·methods\xd |
25 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·A2·object.\xd | 25 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·A2·object.\xd |
26 | ·············································1\xd | 26 | ·············································1\xd |
27 | ··············2······························A2·:·DRAFT· | 27 | ··············2······························A2·:·DRAFT·February·18,·2025\xd |
28 | ··············1.2.1··Basic·methods\xd | 28 | ··············1.2.1··Basic·methods\xd |
29 | ··············Asusual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing·any·allocated\xd | 29 | ··············Asusual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing·any·allocated\xd |
30 | ··············data,·and·free’ing·the·object.\xd | 30 | ··············data,·and·free’ing·the·object.\xd |
31 | ················1.·A2·*·A2_new·(·void·)·;\xd | 31 | ················1.·A2·*·A2_new·(·void·)·;\xd |
32 | ··················This·method·simply·allocates·storage·for·the·A2·structure·and·then·sets·the·default·fields·by·a·call·to\xd | 32 | ··················This·method·simply·allocates·storage·for·the·A2·structure·and·then·sets·the·default·fields·by·a·call·to\xd |
33 | ··················A2·setDefaultFields().\xd | 33 | ··················A2·setDefaultFields().\xd |
34 | ················2.·void·A2_setDefaultFields·(·A2·*mtx·)·;\xd | 34 | ················2.·void·A2_setDefaultFields·(·A2·*mtx·)·;\xd |
Offset 56, 15 lines modified | Offset 56, 15 lines modified | ||
56 | ················4.·int·A2_inc2·(·A2·*mtx·)·;\xd | 56 | ················4.·int·A2_inc2·(·A2·*mtx·)·;\xd |
57 | ··················This·method·returns·the·secondary·increment,·the·stride·in·memory·(with·respect·to·real·or·complex\xd | 57 | ··················This·method·returns·the·secondary·increment,·the·stride·in·memory·(with·respect·to·real·or·complex\xd |
58 | ··················entries)·between·adjacent·entries·in·the·same·row.\xd | 58 | ··················entries)·between·adjacent·entries·in·the·same·row.\xd |
59 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 59 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
60 | ················5.·double·*·A2_entries·(·A2·*mtx·)·;\xd | 60 | ················5.·double·*·A2_entries·(·A2·*mtx·)·;\xd |
61 | ··················This·method·returns·a·pointer·to·the·base·address·of·the·entries.\xd | 61 | ··················This·method·returns·a·pointer·to·the·base·address·of·the·entries.\xd |
62 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 62 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
63 | ···········································A2·:·DRAFT·· | 63 | ···········································A2·:·DRAFT··February·18,·2025·······················3\xd |
64 | ···············6.·double·*·A2_row·(·A2·*mtx,·int·irow·)·;\xd | 64 | ···············6.·double·*·A2_row·(·A2·*mtx,·int·irow·)·;\xd |
65 | ··················This·method·returns·a·pointer·to·the·leading·element·of·row·irow.\xd | 65 | ··················This·method·returns·a·pointer·to·the·leading·element·of·row·irow.\xd |
66 | ··················Error·checking:·If·mtx·or·entries·is·NULL,·or·if·irow·is·not·in·[0,n1-1],·an·error·message·is·printed\xd | 66 | ··················Error·checking:·If·mtx·or·entries·is·NULL,·or·if·irow·is·not·in·[0,n1-1],·an·error·message·is·printed\xd |
67 | ··················and·the·program·exits.\xd | 67 | ··················and·the·program·exits.\xd |
68 | ···············7.·double·*·A2_column·(·A2·*mtx,·int·jcol·)·;\xd | 68 | ···············7.·double·*·A2_column·(·A2·*mtx,·int·jcol·)·;\xd |
69 | ··················This·method·returns·a·pointer·to·the·leading·element·of·column·jcol.\xd | 69 | ··················This·method·returns·a·pointer·to·the·leading·element·of·column·jcol.\xd |
70 | ··················Error·checking:·If·mtx·or·entries·is·NULL,·or·if·jcol·is·not·in·[0,n2-1],·an·error·message·is·printed\xd | 70 | ··················Error·checking:·If·mtx·or·entries·is·NULL,·or·if·jcol·is·not·in·[0,n2-1],·an·error·message·is·printed\xd |
Offset 93, 15 lines modified | Offset 93, 15 lines modified | ||
93 | ··················or·if·jcol·is·not·in·[0,n2-1],·an·error·message·is·printed·and·the·program·exits.\xd | 93 | ··················or·if·jcol·is·not·in·[0,n2-1],·an·error·message·is·printed·and·the·program·exits.\xd |
94 | ··············13.·void·A2_pointerToComplexEntry·(·A2·*mtx,·int·irow,·int·jcol,\xd | 94 | ··············13.·void·A2_pointerToComplexEntry·(·A2·*mtx,·int·irow,·int·jcol,\xd |
95 | ···············································double·**ppReal,·double·**ppImag·)·;\xd | 95 | ···············································double·**ppReal,·double·**ppImag·)·;\xd |
96 | ··················This·method·sets·*ppReal·to·the·pointer·to·the·real·part·of·the·(irow,jcol)·entry,·and·sets·*ppImag\xd | 96 | ··················This·method·sets·*ppReal·to·the·pointer·to·the·real·part·of·the·(irow,jcol)·entry,·and·sets·*ppImag\xd |
97 | ··················to·the·pointer·to·the·imaginary·part·of·the·(irow,jcol)·entry.\xd | 97 | ··················to·the·pointer·to·the·imaginary·part·of·the·(irow,jcol)·entry.\xd |
98 | ··················Error·checking:·If·mtx,·ppReal·or·ppImag·is·NULL,·or·if·the·matrix·is·not·complex,·or·if·irow·is·not·in\xd | 98 | ··················Error·checking:·If·mtx,·ppReal·or·ppImag·is·NULL,·or·if·the·matrix·is·not·complex,·or·if·irow·is·not·in\xd |
99 | ··················[0,n1-1],·or·if·jcol·is·not·in·[0,n2-1],·an·error·message·is·printed·and·the·program·exits.\xd | 99 | ··················[0,n1-1],·or·if·jcol·is·not·in·[0,n2-1],·an·error·message·is·printed·and·the·program·exits.\xd |
100 | ··············4································ | 100 | ··············4································A2·:·DRAFT·February·18,·2025\xd |
101 | ··············1.2.3···Initialize·methods\xd | 101 | ··············1.2.3···Initialize·methods\xd |
102 | ·················1.·void·A2_init·(·A2·*mtx,·int·type,·int·n1,·int·n2,·int·inc1,·int·inc2,\xd | 102 | ·················1.·void·A2_init·(·A2·*mtx,·int·type,·int·n1,·int·n2,·int·inc1,·int·inc2,\xd |
103 | ··································double·*entries·)·;\xd | 103 | ··································double·*entries·)·;\xd |
104 | ···················This·is·the·basic·initializer·method.·We·require·that·mtx·not·be·NULL,·type·be·either·SPOOLES·REAL\xd | 104 | ···················This·is·the·basic·initializer·method.·We·require·that·mtx·not·be·NULL,·type·be·either·SPOOLES·REAL\xd |
105 | ···················or·SPOOLES·COMPLEX,·n1·and·n2·both·be·positive,·and·both·inc1·and·inc2·both·be·positive·and·that\xd | 105 | ···················or·SPOOLES·COMPLEX,·n1·and·n2·both·be·positive,·and·both·inc1·and·inc2·both·be·positive·and·that\xd |
106 | ···················one·of·them·be·equal·to·one.·Also,·we·only·initialize·a·full·matrix,·i.e.,·one·of·inc1·=·1·and·inc2·=\xd | 106 | ···················one·of·them·be·equal·to·one.·Also,·we·only·initialize·a·full·matrix,·i.e.,·one·of·inc1·=·1·and·inc2·=\xd |
107 | ···················nrow·or·inc1·=·ncol·and·inc2·=·1·must·hold.\xd | 107 | ···················nrow·or·inc1·=·ncol·and·inc2·=·1·must·hold.\xd |
Offset 134, 15 lines modified | Offset 134, 15 lines modified | ||
134 | ···················Error·checking:·If·A·or·workDV·is·NULL,·or·if·msglvl·>·0·and·msgFile·if·NULL,·an·error·message·is\xd | 134 | ···················Error·checking:·If·A·or·workDV·is·NULL,·or·if·msglvl·>·0·and·msgFile·if·NULL,·an·error·message·is\xd |
135 | ···················printed·and·the·program·exits.\xd | 135 | ···················printed·and·the·program·exits.\xd |
136 | ·················3.·void·A2_computeQ·(·A2·*Q,·A2·*A,·DV·*workDV,·int·msglvl,·FILE·*msgFile·)·;\xd | 136 | ·················3.·void·A2_computeQ·(·A2·*Q,·A2·*A,·DV·*workDV,·int·msglvl,·FILE·*msgFile·)·;\xd |
137 | ···················This·method·computes·Q·from·the·A·=·QR·factorization·computed·in·A2·QRreduce().·Note:·A·and·Q\xd | 137 | ···················This·method·computes·Q·from·the·A·=·QR·factorization·computed·in·A2·QRreduce().·Note:·A·and·Q\xd |
138 | ···················must·be·column·major.\xd | 138 | ···················must·be·column·major.\xd |
139 | ···················Error·checking:·If·Q,·A·or·workDV·is·NULL,·or·if·msglvl·>·0·and·msgFile·if·NULL,·an·error·message·is\xd | 139 | ···················Error·checking:·If·Q,·A·or·workDV·is·NULL,·or·if·msglvl·>·0·and·msgFile·if·NULL,·an·error·message·is\xd |
140 | ···················printed·and·the·program·exits.\xd | 140 | ···················printed·and·the·program·exits.\xd |
141 | ···········································A2·:·DRAFT·· | 141 | ···········································A2·:·DRAFT··February·18,·2025·······················5\xd |
142 | ···············4.·void·A2_applyQT·(·A2·*Y,·A2·*A,·A2·*X,·DV·*workDV,·int·msglvl,·FILE·*msgFile·)·;\xd | 142 | ···············4.·void·A2_applyQT·(·A2·*Y,·A2·*A,·A2·*X,·DV·*workDV,·int·msglvl,·FILE·*msgFile·)·;\xd |
143 | ·········································T···············H\xd | 143 | ·········································T···············H\xd |
144 | ··················This·method·computes·Y·=·Q·X·(if·real)·or·Y·=·Q·X·(if·complex),·where·Q·is·stored·in·Householder\xd | 144 | ··················This·method·computes·Y·=·Q·X·(if·real)·or·Y·=·Q·X·(if·complex),·where·Q·is·stored·in·Householder\xd |
145 | ··················vectors·inside·A.·We·assume·that·A2·reduce()·has·been·previously·called·with·A·as·an·argument.·Since\xd | 145 | ··················vectors·inside·A.·We·assume·that·A2·reduce()·has·been·previously·called·with·A·as·an·argument.·Since\xd |
146 | ··················Y·is·computed·column-by-column,·X·and·Y·can·be·the·same·A2·object.·The·workDV·object·is·resized\xd | 146 | ··················Y·is·computed·column-by-column,·X·and·Y·can·be·the·same·A2·object.·The·workDV·object·is·resized\xd |
147 | ··················as·necessary.·Note:·Y,·A·and·X·must·be·column·major.\xd | 147 | ··················as·necessary.·Note:·Y,·A·and·X·must·be·column·major.\xd |
148 | ··················Error·checking:·If·Y,·A,·X·or·workDV·is·NULL,·or·if·msglvl·>·0·and·msgFile·if·NULL,·or·if·Y,·A·or·X·is\xd | 148 | ··················Error·checking:·If·Y,·A,·X·or·workDV·is·NULL,·or·if·msglvl·>·0·and·msgFile·if·NULL,·or·if·Y,·A·or·X·is\xd |
Offset 174, 15 lines modified | Offset 174, 15 lines modified | ||
174 | ··················This·method·returns·the·infinity-norm·of·column·jcol·of·the·matrix.\xd | 174 | ··················This·method·returns·the·infinity-norm·of·column·jcol·of·the·matrix.\xd |
175 | ··················Error·checking:·If·mtx·is·NULL,·or·jcol·is·not·in·[0,n2-1],·an·error·message·is·printed·and·the·program\xd | 175 | ··················Error·checking:·If·mtx·is·NULL,·or·jcol·is·not·in·[0,n2-1],·an·error·message·is·printed·and·the·program\xd |
176 | ··················exits.\xd | 176 | ··················exits.\xd |
177 | ···············8.·double·A2_oneNormOfRow·(·A2·*mtx,·int·irow·)·;\xd | 177 | ···············8.·double·A2_oneNormOfRow·(·A2·*mtx,·int·irow·)·;\xd |
178 | ··················This·method·returns·the·one-norm·of·row·irow·of·the·matrix.\xd | 178 | ··················This·method·returns·the·one-norm·of·row·irow·of·the·matrix.\xd |
179 | ··················Error·checking:·If·mtx·is·NULL,·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and·the·program\xd | 179 | ··················Error·checking:·If·mtx·is·NULL,·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and·the·program\xd |
180 | ··················exits.\xd | 180 | ··················exits.\xd |
181 | ··············6······························A2·:·DRAFT· | 181 | ··············6······························A2·:·DRAFT·February·18,·2025\xd |
182 | ················9.·double·A2_twoNormOfRow·(·A2·*mtx,·int·irow·)·;\xd | 182 | ················9.·double·A2_twoNormOfRow·(·A2·*mtx,·int·irow·)·;\xd |
183 | ··················This·method·returns·the·two-norm·of·row·irow·of·the·matrix.\xd | 183 | ··················This·method·returns·the·two-norm·of·row·irow·of·the·matrix.\xd |
184 | ··················Error·checking:·If·mtx·is·NULL,·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and·the·program\xd | 184 | ··················Error·checking:·If·mtx·is·NULL,·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and·the·program\xd |
185 | ··················exits.\xd | 185 | ··················exits.\xd |
186 | ···············10.·double·A2_infinityNormOfRow·(·A2·*mtx,·int·irow·)·;\xd | 186 | ···············10.·double·A2_infinityNormOfRow·(·A2·*mtx,·int·irow·)·;\xd |
187 | ··················This·method·returns·the·infinity-norm·of·row·irow·of·the·matrix.\xd | 187 | ··················This·method·returns·the·infinity-norm·of·row·irow·of·the·matrix.\xd |
188 | ··················Error·checking:·If·mtx·is·NULL,·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and·the·program\xd | 188 | ··················Error·checking:·If·mtx·is·NULL,·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and·the·program\xd |
Offset 213, 15 lines modified | Offset 213, 15 lines modified | ||
213 | ··············1.2.7··Utility·methods\xd | 213 | ··············1.2.7··Utility·methods\xd |
214 | ················1.·int·A2_sizeOf·(·A2·*mtx·)·;\xd | 214 | ················1.·int·A2_sizeOf·(·A2·*mtx·)·;\xd |
215 | ··················This·method·returns·the·number·of·bytes·owned·by·this·object.\xd | 215 | ··················This·method·returns·the·number·of·bytes·owned·by·this·object.\xd |
216 | ··················Error·checking:·If·mtx·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd | 216 | ··················Error·checking:·If·mtx·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd |
217 | ················2.·void·A2_shiftBase·(·A2·*mtx,·int·rowoff,·int·coloff·)·;\xd | 217 | ················2.·void·A2_shiftBase·(·A2·*mtx,·int·rowoff,·int·coloff·)·;\xd |
218 | ··················This·method·is·used·to·shift·the·base·of·the·entries·and·adjust·dimensions·of·the·A2·object.\xd | 218 | ··················This·method·is·used·to·shift·the·base·of·the·entries·and·adjust·dimensions·of·the·A2·object.\xd |
219 | ··················mtx(0:n1-rowoff-1,0:n2-coloff-1)·:=·mtx(rowoff:n1-1,coloff:n2-1)\xd | 219 | ··················mtx(0:n1-rowoff-1,0:n2-coloff-1)·:=·mtx(rowoff:n1-1,coloff:n2-1)\xd |
220 | ···········································A2·:·DRAFT·· | 220 | ···········································A2·:·DRAFT··February·18,·2025·······················7\xd |
221 | ··················Error·checking:·If·mtx·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd | 221 | ··················Error·checking:·If·mtx·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd |
222 | ···············3.·int·A2_rowMajor·(·A2·*mtx·)·;\xd | 222 | ···············3.·int·A2_rowMajor·(·A2·*mtx·)·;\xd |
223 | ··················This·method·returns·1·if·the·storage·is·row·major,·otherwise·it·returns·zero.\xd | 223 | ··················This·method·returns·1·if·the·storage·is·row·major,·otherwise·it·returns·zero.\xd |
224 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 224 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
225 | ···············4.·int·A2_columnMajor·(·A2·*mtx·)·;\xd | 225 | ···············4.·int·A2_columnMajor·(·A2·*mtx·)·;\xd |
226 | ··················This·method·returns·1·if·the·storage·is·column·major,·otherwise·it·returns·zero.\xd | 226 | ··················This·method·returns·1·if·the·storage·is·column·major,·otherwise·it·returns·zero.\xd |
227 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 227 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
Offset 253, 15 lines modified | Offset 253, 15 lines modified | ||
253 | ··················This·method·fills·the·colZV·object·with·column·jcol·of·the·matrix.\xd | 253 | ··················This·method·fills·the·colZV·object·with·column·jcol·of·the·matrix.\xd |
254 | ··················Error·checking:·If·mtx·or·colZV·are·NULL,·or·if·the·matrix·is·not·complex,·or·if·jcol·is·not·in·[0,n2-1],\xd | 254 | ··················Error·checking:·If·mtx·or·colZV·are·NULL,·or·if·the·matrix·is·not·complex,·or·if·jcol·is·not·in·[0,n2-1],\xd |
255 | ··················an·error·message·is·printed·and·the·program·exits.\xd | 255 | ··················an·error·message·is·printed·and·the·program·exits.\xd |
256 | ··············12.·void·A2_setRow·(·A2·*mtx,·double·row[],·int·irow·)·;\xd | 256 | ··············12.·void·A2_setRow·(·A2·*mtx,·double·row[],·int·irow·)·;\xd |
257 | ··················This·method·fills·row·irow·of·the·matrix·with·the·entries·in·the·row[]·vector.\xd | 257 | ··················This·method·fills·row·irow·of·the·matrix·with·the·entries·in·the·row[]·vector.\xd |
258 | ··················Error·checking:·If·mtx,·entries·or·row[]·are·NULL,·or·if·irow·is·not·in·[0,n1-1],·an·error·message·is\xd | 258 | ··················Error·checking:·If·mtx,·entries·or·row[]·are·NULL,·or·if·irow·is·not·in·[0,n1-1],·an·error·message·is\xd |
259 | ··················printed·and·the·program·exits.\xd | 259 | ··················printed·and·the·program·exits.\xd |
260 | ········8················A2·:·DRAFT· | 260 | ········8················A2·:·DRAFT·February·18,·2025\xd |
261 | ········13.·void·A2_setRowDV·(·A2·*mtx,·DV·rowDV,·int·irow·)·;\xd | 261 | ········13.·void·A2_setRowDV·(·A2·*mtx,·DV·rowDV,·int·irow·)·;\xd |
262 | ··········This·method·fills·row·irow·of·the·matrix·with·the·entries·in·the·rowDV·object.\xd | 262 | ··········This·method·fills·row·irow·of·the·matrix·with·the·entries·in·the·rowDV·object.\xd |
263 | ··········Error·checking:·If·mtx·or·rowDV·are·NULL,·or·if·the·matrix·is·not·real,·or·if·irow·is·not·in·[0,n1-1],\xd | 263 | ··········Error·checking:·If·mtx·or·rowDV·are·NULL,·or·if·the·matrix·is·not·real,·or·if·irow·is·not·in·[0,n1-1],\xd |
264 | ··········an·error·message·is·printed·and·the·program·exits.\xd | 264 | ··········an·error·message·is·printed·and·the·program·exits.\xd |
265 | ········14.·void·A2_setRowZV·(·A2·*mtx,·ZV·rowZV,·int·irow·)·;\xd | 265 | ········14.·void·A2_setRowZV·(·A2·*mtx,·ZV·rowZV,·int·irow·)·;\xd |
266 | ··········This·method·fills·row·irow·of·the·matrix·with·the·entries·in·the·rowZV·object.\xd | 266 | ··········This·method·fills·row·irow·of·the·matrix·with·the·entries·in·the·rowZV·object.\xd |
267 | ··········Error·checking:·If·mtx·or·rowZV·are·NULL,·or·if·the·matrix·is·not·complex,·or·if·irow·is·not·in·[0,n1-1],\xd | 267 | ··········Error·checking:·If·mtx·or·rowZV·are·NULL,·or·if·the·matrix·is·not·complex,·or·if·irow·is·not·in·[0,n1-1],\xd |
Offset 294, 15 lines modified | Offset 294, 15 lines modified | ||
294 | ··········Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 294 | ··········Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
295 | ········22.·void·A2_copy·(·A2·*mtxA,·A2·*mtxB·)·;\xd | 295 | ········22.·void·A2_copy·(·A2·*mtxA,·A2·*mtxB·)·;\xd |
296 | ··········This·method·copies·entries·from·matrix·mtxB·into·matrix·mtxA.·Note,·mtxA·and·mtxB·need·not·be·of\xd | 296 | ··········This·method·copies·entries·from·matrix·mtxB·into·matrix·mtxA.·Note,·mtxA·and·mtxB·need·not·be·of\xd |
297 | ··········the·same·size,·the·leading·min(mtxA->n1,mtxB->n1)rows·and·min(mtxA->n2,mtxB->n2)columns·are\xd | 297 | ··········the·same·size,·the·leading·min(mtxA->n1,mtxB->n1)rows·and·min(mtxA->n2,mtxB->n2)columns·are\xd |
298 | ··········copied.\xd | 298 | ··········copied.\xd |
299 | ··········Error·checking:·If·mtxA·or·mtxB·is·NULL,·or·if·the·matrices·are·not·of·the·same·type,·an·error·message\xd | 299 | ··········Error·checking:·If·mtxA·or·mtxB·is·NULL,·or·if·the·matrices·are·not·of·the·same·type,·an·error·message\xd |
300 | ··········is·printed·and·the·program·exits.\xd | 300 | ··········is·printed·and·the·program·exits.\xd |
301 | ···········································A2·:·DRAFT·· | 301 | ···········································A2·:·DRAFT··February·18,·2025·······················9\xd |
302 | ··············23.·void·A2_sub·(·A2·*mtxA,·A2·*mtxB·)·;\xd | 302 | ··············23.·void·A2_sub·(·A2·*mtxA,·A2·*mtxB·)·;\xd |
303 | ··················This·method·subtracts·entries·in·matrix·mtxB·from·entries·in·matrix·mtxA.·Note,·mtxA·and·mtxB·need\xd | 303 | ··················This·method·subtracts·entries·in·matrix·mtxB·from·entries·in·matrix·mtxA.·Note,·mtxA·and·mtxB·need\xd |
304 | ··················not·be·of·the·same·size,·the·leading·min(mtxA->n1,mtxB->n1)·rows·and·min(mtxA->n2,mtxB->n2)\xd | 304 | ··················not·be·of·the·same·size,·the·leading·min(mtxA->n1,mtxB->n1)·rows·and·min(mtxA->n2,mtxB->n2)\xd |
305 | ··················columns·are·subtracted.\xd | 305 | ··················columns·are·subtracted.\xd |
306 | ··················Error·checking:·If·mtxA·or·mtxB·is·NULL,·or·if·the·matrices·are·not·of·the·same·type,·an·error·message\xd | 306 | ··················Error·checking:·If·mtxA·or·mtxB·is·NULL,·or·if·the·matrices·are·not·of·the·same·type,·an·error·message\xd |
307 | ··················is·printed·and·the·program·exits.\xd | 307 | ··················is·printed·and·the·program·exits.\xd |
308 | ··············24.·void·A2_swapRows·(·A2·*mtx,·int·irow1,·int·irow2·)·;\xd | 308 | ··············24.·void·A2_swapRows·(·A2·*mtx,·int·irow1,·int·irow2·)·;\xd |
Max diff block lines reached; 3018/14078 bytes (21.44%) of diff not shown. |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·AllInOne.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·AllInOne.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1374, 27 lines modified | Offset 1374, 29 lines modified | ||
1374 | /Encoding·256·array | 1374 | /Encoding·256·array |
1375 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1375 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1376 | dup·44·/comma·put | 1376 | dup·44·/comma·put |
1377 | dup·46·/period·put | 1377 | dup·46·/period·put |
1378 | dup·48·/zero·put | 1378 | dup·48·/zero·put |
1379 | dup·49·/one·put | 1379 | dup·49·/one·put |
1380 | dup·50·/two·put | 1380 | dup·50·/two·put |
1381 | dup·52·/four·put | ||
1382 | dup·5 | 1381 | dup·53·/five·put |
1382 | dup·56·/eight·put | ||
1383 | dup·65·/A·put | 1383 | dup·65·/A·put |
1384 | dup·66·/B·put | 1384 | dup·66·/B·put |
1385 | dup·67·/C·put | 1385 | dup·67·/C·put |
1386 | dup·68·/D·put | 1386 | dup·68·/D·put |
1387 | dup·70·/F·put | ||
1387 | dup·71·/G·put | 1388 | dup·71·/G·put |
1388 | dup·74·/J·put | 1389 | dup·74·/J·put |
1389 | dup·75·/K·put | 1390 | dup·75·/K·put |
1390 | dup·80·/P·put | 1391 | dup·80·/P·put |
1391 | dup·82·/R·put | 1392 | dup·82·/R·put |
1392 | dup·87·/W·put | 1393 | dup·87·/W·put |
1393 | dup·97·/a·put | 1394 | dup·97·/a·put |
1395 | dup·98·/b·put | ||
1394 | dup·99·/c·put | 1396 | dup·99·/c·put |
1395 | dup·101·/e·put | 1397 | dup·101·/e·put |
1396 | dup·102·/f·put | 1398 | dup·102·/f·put |
1397 | dup·103·/g·put | 1399 | dup·103·/g·put |
1398 | dup·104·/h·put | 1400 | dup·104·/h·put |
1399 | dup·105·/i·put | 1401 | dup·105·/i·put |
1400 | dup·107·/k·put | 1402 | dup·107·/k·put |
Offset 1588, 207 lines modified | Offset 1590, 219 lines modified | ||
1588 | 34DE10D995ABCAF45FBB3B6B73E80D05F4C51F8C29D4B0F67C8A86432A6C5E86 | 1590 | 34DE10D995ABCAF45FBB3B6B73E80D05F4C51F8C29D4B0F67C8A86432A6C5E86 |
1589 | F0126AB25A5CA2875B48C61CB8112A4CF9AA08F8B0157396CF63CBECDB8867CC | 1591 | F0126AB25A5CA2875B48C61CB8112A4CF9AA08F8B0157396CF63CBECDB8867CC |
1590 | AC10F060630C9BFBAD84B1FF01C814878F0C177F552BDC9BB181B14581C6E968 | 1592 | AC10F060630C9BFBAD84B1FF01C814878F0C177F552BDC9BB181B14581C6E968 |
1591 | DAAAB2896FCFB745795C4D2C87CC15BAA041EF80C5BDC12EC1F5786BB41A5A21 | 1593 | DAAAB2896FCFB745795C4D2C87CC15BAA041EF80C5BDC12EC1F5786BB41A5A21 |
1592 | 073EE0BC436B346E014DB4099EDC67BC432E470A4B779FD556341061CA3F2BE8 | 1594 | 073EE0BC436B346E014DB4099EDC67BC432E470A4B779FD556341061CA3F2BE8 |
1593 | EFA332637AEC878C2BB189CA3267B2BE5B8178E6B7889A33771F86276E6F0B8E | 1595 | EFA332637AEC878C2BB189CA3267B2BE5B8178E6B7889A33771F86276E6F0B8E |
1594 | 8E93B816AC7005575762EF4DE45E2794B7322F9B6D8E634FB8FF250D638EB502 | 1596 | 8E93B816AC7005575762EF4DE45E2794B7322F9B6D8E634FB8FF250D638EB502 |
1595 | 818321B3C46DB51B8EC6C2EF1D05C716519A3BD6B12A67239898F8A010C | 1597 | 818321B3C46DB51B8EC6C2EF1D05C716519A3BD6B12A67239898F8A010CFFB7C |
1596 | 5F98B639B1CCA391E8E72C3B7BCA757603E45860252B9430C2B59108094C406E | ||
1597 | 3488A7B276447B996367CAC4B345C878EB62E1A25B4FA057A5AA4AC1F48CDB0C | ||
1598 | 8AEA68F7CE7DCF59E58483DBC9BDD003771B04CC1AC3A0BA98AD9CC43DF7CC38 | ||
1599 | 72CB2C8DE93596934273247D48FA99288E762B45EA5A53EF684DE34B2A258F91 | ||
1600 | FFA8F98747970CF629A6AA0B502A12C052C618EAC473F8F71933A1249F78E167 | ||
1601 | F8F63A74FAF011ECAF83656F61D94D2083A6E96E7433C74DBD75B59A700980BA | ||
1602 | 6F10E8B58DA52ABD314BA086D9D03527F6B60037F883B74E4B268BCB101B0DD5 | ||
1603 | AD78BEC9ECDB537CC30DA36CB6A89269964AAB69D0496F7B066F6E6BB9DB874C | ||
1604 | E5A7D81EAB79F6F3BD7EE8980243CAC635045E36384181357D5B27F0081A0C5F | ||
1605 | C8D6DBBA75A36F394BDD94BF384052B0F49C8AE0F44E4DE57EE3D1C7FE73B242 | ||
1606 | A69A5CB53064013162122BB97555452CDD3D06645171DE53FADF72425A518092 | ||
1607 | ED601B61ACD5AF2E7C68E72A147F29630DD3383589EB195B842F3FB1D5D02CB2 | ||
1608 | FD370592D78AED95114A409B7C64A3CF625EDEBC194F5DBAE70A5E643AD50465 | ||
1609 | 9750ADC1F788EB274F9D8B573A93ABFBF0AE15AA59E6C62DFF92AE3A69A13BCA | ||
1610 | 596CD20AE2D9257B1CD8E678BFD9A8E659284AE3DCD521BDCA97D4F65F6D03B2 | ||
1611 | 042D540AB72E504830F03AEA815E662667A3EBC84EEA8D5765C590512D138C70 | ||
1612 | 674BFE85C088A1012EEBD6F051BAEFEB67AB4E46A34E26B52D0F438442EC7934 | ||
1613 | 59274364A388BF5EC671E4E5BD9DD22A75BED3BEE56EC6ED196AE15AC0EC9CB5 | ||
1614 | F60FBEFD59F10992FCCD3C2FC2C82BA701D32222C3A260C39FF6F62DBC786F26 | ||
1615 | 39A79A62CA866FEE75A9EDCC35232FAE9ECF5BD170EA05C1A9DB9B513B7DD837 | ||
1616 | A6BDFF7E1CB3509E78965A78AB494DE656DD8F62ED71A718AFADA019B74C1E51 | ||
1617 | BF18C629CA84EEC48CA9B8352C90CCADBC305461BBE12FB165B64CE5C432409C | ||
1618 | B6200C83D3513BBEC1243870A777C1A4B00BB9EFB3A6B1878B95A37E7276F706 | ||
1619 | 1934CDC8E5DB2E59189B0C050511A46FACAD4C10E9BD97363CBA94BA7078C922 | ||
1620 | BE901E5A6A9AF5A2B1621AD0650061F5DFDAF757C202000E6918ED6A26B7CB2F | ||
1621 | 78381C9B52127443C9FF0395B7F73E45373EAC0133646DA3475BBCFE84B100D4 | ||
1622 | 23178D16437815212EA507333F3EA8E8C5EAFC119AA87CC4ED4087B9926EA05E | ||
1623 | 0B346F78C2BF3D96B2D4A3404844F9C8DAAE05AE4E8275646BDCE4653194DCFE | ||
1624 | FA370B5B2976536219D6C427D18A6EB920AE81630E444A752631C8F7B8A7D6FB | ||
1625 | 1DA6401D584DB64700C874EA4DC2FC37003489BFFF5AA91C1BFEAC828C75B70E | ||
1626 | 142062C5823246137F49F7F1600AF762CDD15886CFC92C2873D55CACBDCF1E2A | ||
1627 | 126F799E7BBE5CCA9807EB906412835A62D89634BB08DF831ADEF64FA6691747 | ||
1628 | 8A9B2CB2545FF170DB5F4CFDC96FEA058288087900CA05B07FC4F60512E74376 | ||
1629 | 24FEC29B9FC9FE2A22A05B18B3B85CBD59157D10201912F4FE500185293B7F03 | ||
1630 | 63210C648F7F12812FDEDA1B793C6771604A64B2F8A17E92DC011FCB4DDCD6C0 | ||
1631 | 8FE5E42F4289E7827E96B3337DB4816A48AFF5E7AE2B9C9EE2B064A51660AF4F | ||
1632 | AD3B39FB3A02EBCD01E9A48ED773E3E351298AAC4718B8481236152F1EE78072 | ||
1633 | 533F341C2993BBCA85D89692247E858899DA28A13559C76AAE35A0491B9C262A | ||
1634 | F82C144870884A727638F29586ED6A3ED40BEA0F37655D474467F803249D985D | ||
1635 | F27A5E23AD82EEE2757B756887F5308B5A607A763EDF163F8CFAA71619C607EE | ||
1636 | 344B9DC873273C0975C06E54FABAEA08B5BF4938BEB11740E06C35C21C499BC2 | ||
1637 | 81197D62A592F2324D8F4A6B02AE20EB18E423405497D6AA13E41C76A5A0843A | ||
1638 | DB6D6DC073A3FF1565430CA9608F869B5C86B1931335F6239EB310C1601DBA15 | ||
1639 | EF85016CB40195C446CA073815B479F460D27B6C8FCC871854448FC0DD28B385 | ||
1640 | C5427D3861BA39D5AD40EA2E7A738D2D47F4FA2092FA1E527F06252D36A18E60 | ||
1641 | DD13E8ED57A39AB40547225C9EBEB5FA5F4925079D3F4741AE73BB5D5C7E74D0 | ||
1642 | 2A35EE24A912A8D55CD62031C4C6AEEB0FC4953B960E9701C92AFE9E5AA53CA4 | ||
1643 | 10CC72CD9B15187FD552065C517339CBF24C25A6B0889F4793976A915F6212BC | ||
1644 | CD529D70E1CBC728F22650C7731AB482F58D87EC0DF150589008AF6BC9FD3BA5 | ||
1645 | 57CF8E7F76302950A1D1DF2339113C29A03F3BE2F1B5CC6B328137AA94CCD857 | ||
1646 | 5653E0B1856DAEF710C921B4439BD426825121B23A899258302B01F836D45736 | ||
1647 | 1BC3F3678405B094E39C0000DB0AA65F54048AACABEA81BD1F3EDA7641DB205E | ||
1648 | D6BAA90F8AC2BA7C47348BED03D3D75902E3980A9FFBC0FFDEFF42D21E09B383 | ||
1649 | F71A402F77BE18C57B98A91A3B0D4457CABFFE0AE509AE7F251C1D8A5BB16863 | ||
1650 | AB82B89A68EA55EF0FF92D4AE943BBB02555CE8E90963DAE2E71D5B11C004C1C | ||
1651 | 1801A8D4DA94C39ECD73F61C5C1901E6E0ED799489A50010C21B8D7D4CD9A6C7 | ||
1652 | D2C7FC22D140A104CCBC3C17CE0B87CCB5FA67D066EAFED801CCA47EB865BD5E | ||
1653 | 60AFC204C40C874C11F772783874B7F44D0CC1521964C2A7F3F0508CC7899941 | ||
1654 | A620369D4E8BAC9721326CD1D41BC8388BB7C6AC0D1BD71E649C4AD6FB2DA461 | ||
1655 | 1B3B819CC89B8A646046DD6BFEA7273F701EF87FF401FDA632EFD7B6699A8439 | ||
1656 | EC0BBF3D802E39BD0A8126C39418B005B152ACB1504BB91CF73452A864E1FDEF | ||
1657 | F048A2DF65EE2E9AEC1EC979B9EB21C9CC7CBD8B3D748845F748D4053EFE06A3 | ||
1658 | 0BA35CB303B82435998035693D46536CECCC7404AD6C58CA937CB8A9C088BB76 | ||
1659 | 8F4C3983FB5D134BC1B07C7E78B404ED6B91902A171BF57A4B0598E548D1D885 | ||
1660 | 62380027A00AB03B48E6FC251D9E7CDFB33DC31B4C9AE5EBC0CCF3E9C29582E9 | ||
1661 | E29EE5A29E58318129621ADED6C62CB50878DC3F729AE8242491174AD80FF7AC | ||
1662 | 42719CEEB8F82770D0F1DB175EDF87A2E4E10C4D0008CB86D9E1F1E012CD4827 | ||
1663 | D727FFBA6D8A7A847FE55CF178D99D3CE585D63B0EEBCD9E048DA47F255486A9 | ||
1664 | A2C332698D938937F617889D318AE42AFBE53A16DD587C0BCC9DB13F9F38B377 | ||
1665 | DAC9B80EC7B6C8639668AD7A7B6B229635AEA4488A95E8A5BEFA154C70D7C852 | ||
1666 | 9EDF0A8C6B7D7CE404ED0A59505CDBA481B53C27CCEFA2F369E4348830A622C6 | ||
1667 | 6BD9D88A2118B5F03139B31DE63AD4466D7B7F6C61B55680AA0D736EF6308772 | ||
Max diff block lines reached; 2402/30413 bytes (7.90%) of diff not shown. |
Offset 1, 8 lines modified | Offset 1, 8 lines modified | ||
1 | ·····························Solving·Linear·Systems·using·SPOOLES·2.2\xd | 1 | ·····························Solving·Linear·Systems·using·SPOOLES·2.2\xd |
2 | ·································C.·C.·Ashcraft,·R.·G.·Grimes,·D.·J.·Pierce,·D.·K.·Wah\xd | 2 | ·································C.·C.·Ashcraft,·R.·G.·Grimes,·D.·J.·Pierce,·D.·K.·Wah\xd |
3 | ·················································Boeing·Phantom·Works∗\xd | 3 | ·················································Boeing·Phantom·Works∗\xd |
4 | ···················································· | 4 | ····················································February·18,·2025\xd |
5 | ·················∗P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124.·This·research·was·supported·in·part·by·the·DARPA\xd | 5 | ·················∗P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124.·This·research·was·supported·in·part·by·the·DARPA\xd |
6 | ···············Contract·DABT63-95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software\xd | 6 | ···············Contract·DABT63-95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software\xd |
7 | ···············Support·Initiative.\xd | 7 | ···············Support·Initiative.\xd |
8 | ·····························································1\xd | 8 | ·····························································1\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·BKL.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·BKL.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2555, 20 lines modified | Offset 2555, 21 lines modified | ||
2555 | end·readonly·def | 2555 | end·readonly·def |
2556 | /Encoding·256·array | 2556 | /Encoding·256·array |
2557 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2557 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2558 | dup·44·/comma·put | 2558 | dup·44·/comma·put |
2559 | dup·48·/zero·put | 2559 | dup·48·/zero·put |
2560 | dup·49·/one·put | 2560 | dup·49·/one·put |
2561 | dup·50·/two·put | 2561 | dup·50·/two·put |
2562 | dup·52·/four·put | ||
2563 | dup·5 | 2562 | dup·53·/five·put |
2563 | dup·56·/eight·put | ||
2564 | dup·58·/colon·put | 2564 | dup·58·/colon·put |
2565 | dup·7 | 2565 | dup·70·/F·put |
2566 | dup·97·/a·put | 2566 | dup·97·/a·put |
2567 | dup·98·/b·put | ||
2567 | dup·1 | 2568 | dup·101·/e·put |
2568 | dup·114·/r·put | 2569 | dup·114·/r·put |
2569 | dup·117·/u·put | 2570 | dup·117·/u·put |
2570 | dup·121·/y·put | 2571 | dup·121·/y·put |
2571 | readonly·def | 2572 | readonly·def |
2572 | currentdict·end | 2573 | currentdict·end |
2573 | currentfile·eexec | 2574 | currentfile·eexec |
2574 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2575 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2752, 89 lines modified | Offset 2753, 93 lines modified | ||
2752 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2753 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2753 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2754 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2754 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2755 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2755 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2756 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2756 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2757 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2757 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2758 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2758 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2759 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2759 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2760 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2760 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2761 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2762 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2763 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2764 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2765 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2766 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2767 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2768 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2769 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2770 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2771 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2772 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2773 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2774 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2775 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2776 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2777 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2778 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2779 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2780 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2781 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2782 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2783 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2784 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2785 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2786 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2787 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2788 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2789 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2790 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2791 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2792 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2793 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2794 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2795 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2796 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2797 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2798 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2799 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2800 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2801 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2802 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2803 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2804 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2805 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2806 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2807 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2808 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2809 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2810 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2811 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2812 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2813 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2814 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2815 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2816 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2817 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2818 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2819 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2820 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2821 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2822 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2823 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2824 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2825 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2826 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2827 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2828 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2829 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2830 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2831 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2832 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2833 | 2761 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2762 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2763 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2764 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2765 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2766 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2767 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 6232/18121 bytes (34.39%) of diff not shown. |
Offset 18, 15 lines modified | Offset 18, 15 lines modified | ||
18 | ·············•·int·ngaineval·:·number·of·gain·evaluations,·roughly·equivalent·to·the·number·of·degree\xd | 18 | ·············•·int·ngaineval·:·number·of·gain·evaluations,·roughly·equivalent·to·the·number·of·degree\xd |
19 | ···············evaluations·in·the·minimum·degree·algorithm\xd | 19 | ···············evaluations·in·the·minimum·degree·algorithm\xd |
20 | ·············•·int·*colors·:·pointer·to·an·int·vector·of·size·nreg,·colors[idom]·is·1·or·2·for·domain\xd | 20 | ·············•·int·*colors·:·pointer·to·an·int·vector·of·size·nreg,·colors[idom]·is·1·or·2·for·domain\xd |
21 | ···············idom,·colors[iseg]·is·0,·1·or·2·for·segment·iseg.\xd | 21 | ···············idom,·colors[iseg]·is·0,·1·or·2·for·segment·iseg.\xd |
22 | ·············•·int·*cweights·:·pointer·to·an·int·vector·of·size·3,·cweights[0]·contains·the·weight·of·the\xd | 22 | ·············•·int·*cweights·:·pointer·to·an·int·vector·of·size·3,·cweights[0]·contains·the·weight·of·the\xd |
23 | ···············separator,·cweights[1]·and·cweights[2]·contains·the·weights·of·the·two·components\xd | 23 | ···············separator,·cweights[1]·and·cweights[2]·contains·the·weights·of·the·two·components\xd |
24 | ·············································1\xd | 24 | ·············································1\xd |
25 | ·············2····························BKL·:·DRAFT· | 25 | ·············2····························BKL·:·DRAFT·February·18,·2025\xd |
26 | ················•·int·*regwghts·:·pointer·to·an·int·vector·of·size·nreg,·used·to·store·the·weights·of·the\xd | 26 | ················•·int·*regwghts·:·pointer·to·an·int·vector·of·size·nreg,·used·to·store·the·weights·of·the\xd |
27 | ··················domains·and·segments\xd | 27 | ··················domains·and·segments\xd |
28 | ················•·float·alpha·:·number·used·to·store·the·partition·evaluation·parameter,·the·cost·of·the\xd | 28 | ················•·float·alpha·:·number·used·to·store·the·partition·evaluation·parameter,·the·cost·of·the\xd |
29 | ··················partition·is\xd | 29 | ··················partition·is\xd |
30 | ··················balance·=·max(cweights[1],·cweights[2])/min(cweights[1],·cweights[2])·;\xd | 30 | ··················balance·=·max(cweights[1],·cweights[2])/min(cweights[1],·cweights[2])·;\xd |
31 | ··················cost····=·cweights[0]*(1.·+·alpha*balance)·;\xd | 31 | ··················cost····=·cweights[0]*(1.·+·alpha*balance)·;\xd |
32 | ·············1.2····Prototypes·and·descriptions·of·BKL·methods\xd | 32 | ·············1.2····Prototypes·and·descriptions·of·BKL·methods\xd |
Offset 47, 15 lines modified | Offset 47, 15 lines modified | ||
47 | ··················This·method·clears·any·data·allocated·by·the·object,·namely·the·colors·and·regwghts·vec-\xd | 47 | ··················This·method·clears·any·data·allocated·by·the·object,·namely·the·colors·and·regwghts·vec-\xd |
48 | ··················tors.·It·then·fills·the·structure’s·fields·with·default·values·with·a·call·to·BKL·setDefaultFields().\xd | 48 | ··················tors.·It·then·fills·the·structure’s·fields·with·default·values·with·a·call·to·BKL·setDefaultFields().\xd |
49 | ··················Error·checking:·If·bkl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 49 | ··················Error·checking:·If·bkl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
50 | ···············4.·void·BKL_free·(·BKL·*bkl·)·;\xd | 50 | ···············4.·void·BKL_free·(·BKL·*bkl·)·;\xd |
51 | ··················This·method·releases·any·storage·by·a·call·to·BKL·clearData()·then·free’s·the·storage·for\xd | 51 | ··················This·method·releases·any·storage·by·a·call·to·BKL·clearData()·then·free’s·the·storage·for\xd |
52 | ··················the·structure·with·a·call·to·free().\xd | 52 | ··················the·structure·with·a·call·to·free().\xd |
53 | ··················Error·checking:·If·bkl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 53 | ··················Error·checking:·If·bkl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
54 | ·······································BKL·:·DRAFT·· | 54 | ·······································BKL·:·DRAFT··February·18,·2025····················3\xd |
55 | ············1.3.1··Initializer·methods\xd | 55 | ············1.3.1··Initializer·methods\xd |
56 | ···············1.·void·BKL_init·(·BKL·*bkl,·BPG·*bpg,·float·alpha·)·;\xd | 56 | ···············1.·void·BKL_init·(·BKL·*bkl,·BPG·*bpg,·float·alpha·)·;\xd |
57 | ·················This·method·initializes·the·BKL·object·given·a·bipartite·graph·object·and·cost·function·pa-\xd | 57 | ·················This·method·initializes·the·BKL·object·given·a·bipartite·graph·object·and·cost·function·pa-\xd |
58 | ·················rameter·as·input.·Any·previous·data·is·cleared·with·a·call·to·BKL·clearData().·The·ndom,\xd | 58 | ·················rameter·as·input.·Any·previous·data·is·cleared·with·a·call·to·BKL·clearData().·The·ndom,\xd |
59 | ·················nseg·and·nreg·scalars·are·set,·the·regwghts[]·vector·allocated·and·filled,·and·the·colors[]\xd | 59 | ·················nseg·and·nreg·scalars·are·set,·the·regwghts[]·vector·allocated·and·filled,·and·the·colors[]\xd |
60 | ·················vector·allocated·and·filled·with·zeros.\xd | 60 | ·················vector·allocated·and·filled·with·zeros.\xd |
61 | ·················Error·checking:·If·bkl·or·bpg·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 61 | ·················Error·checking:·If·bkl·or·bpg·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
Offset 84, 15 lines modified | Offset 84, 15 lines modified | ||
84 | ·················This·method·returns·the·next·domain·id·in·a·grey·code·sequence,·used·to·exhaustively·search\xd | 84 | ·················This·method·returns·the·next·domain·id·in·a·grey·code·sequence,·used·to·exhaustively·search\xd |
85 | ·················of·a·subspace·of·partitions·defined·by·set·of·candidate·domains·to·flip.·The·value·count\xd | 85 | ·················of·a·subspace·of·partitions·defined·by·set·of·candidate·domains·to·flip.·The·value·count\xd |
86 | ·················ranges·from·1·to·2ndom.\xd | 86 | ·················ranges·from·1·to·2ndom.\xd |
87 | ·················Error·checking:·If·bkl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 87 | ·················Error·checking:·If·bkl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
88 | ···············6.·float·BKL_setInitPart·(·BKL·*bkl,·int·flag,·int·seed,·int·domcolors[]·)·;\xd | 88 | ···············6.·float·BKL_setInitPart·(·BKL·*bkl,·int·flag,·int·seed,·int·domcolors[]·)·;\xd |
89 | ·················This·method·sets·the·initial·partition·by·coloring·the·domains·and·segments.·The·flag\xd | 89 | ·················This·method·sets·the·initial·partition·by·coloring·the·domains·and·segments.·The·flag\xd |
90 | ·················parameter·has·the·following·values.\xd | 90 | ·················parameter·has·the·following·values.\xd |
91 | ··············4···························· | 91 | ··············4····························BKL·:·DRAFT·February·18,·2025\xd |
92 | ·····················•·flag·=·1·−→·random·coloring·of·the·domains\xd | 92 | ·····················•·flag·=·1·−→·random·coloring·of·the·domains\xd |
93 | ·····················•·flag·=·2·−→·one·black·domain,·(seed·%·ndom),·rest·are·white\xd | 93 | ·····················•·flag·=·2·−→·one·black·domain,·(seed·%·ndom),·rest·are·white\xd |
94 | ·····················•·flag·=·3·−→·one·black·pseudoperipheral·domain,·found·using·domain·(seed·%·ndom)\xd | 94 | ·····················•·flag·=·3·−→·one·black·pseudoperipheral·domain,·found·using·domain·(seed·%·ndom)\xd |
95 | ·······················as·root,·rest·are·white\xd | 95 | ·······················as·root,·rest·are·white\xd |
96 | ·····················•·flag·=·4·−→·roughly·half-half·split,·breadth·first·search·of·domains,·(seed·%·ndom)·as\xd | 96 | ·····················•·flag·=·4·−→·roughly·half-half·split,·breadth·first·search·of·domains,·(seed·%·ndom)·as\xd |
97 | ·······················root\xd | 97 | ·······················root\xd |
98 | ·····················•·flag·=·5·−→·roughly·half-half·split,·breadth·first·search·of·domains,·(seed·%·ndom)·as\xd | 98 | ·····················•·flag·=·5·−→·roughly·half-half·split,·breadth·first·search·of·domains,·(seed·%·ndom)·as\xd |
Offset 119, 15 lines modified | Offset 119, 15 lines modified | ||
119 | ···················The·|S|,·|B|·and·|W|·values·are·taken·from·the·cweights[]·vector.·If·min(|B|,|W|)·>·0,·this\xd | 119 | ···················The·|S|,·|B|·and·|W|·values·are·taken·from·the·cweights[]·vector.·If·min(|B|,|W|)·>·0,·this\xd |
120 | ···················function·returns··············\x12···················\x13\xd | 120 | ···················function·returns··············\x12···················\x13\xd |
121 | ··············································|S|·1+α∗max(|B|,|W|)·,\xd | 121 | ··············································|S|·1+α∗max(|B|,|W|)·,\xd |
122 | ·························································min(|B|,|W|)\xd | 122 | ·························································min(|B|,|W|)\xd |
123 | ···················································2\xd | 123 | ···················································2\xd |
124 | ···················otherwise·it·returns·(|S|·+·|B|·+·|W|)·.\xd | 124 | ···················otherwise·it·returns·(|S|·+·|B|·+·|W|)·.\xd |
125 | ···················Error·checking:·If·bkl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 125 | ···················Error·checking:·If·bkl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
126 | ··················································· | 126 | ···················································BKL·:·DRAFT·······February·18,·2025································5\xd |
127 | ···················3.·float·BKL_eval·(·BKL·*bkl,·int·Sweight,·int·Bweight,·int·Wweight·)·;\xd | 127 | ···················3.·float·BKL_eval·(·BKL·*bkl,·int·Sweight,·int·Bweight,·int·Wweight·)·;\xd |
128 | ······················The·|S|,·|B|·and·|W|·values·are·taken·from·the·Sweight,·Bweight·and·Wweight·parameters.\xd | 128 | ······················The·|S|,·|B|·and·|W|·values·are·taken·from·the·Sweight,·Bweight·and·Wweight·parameters.\xd |
129 | ······················If·min(|B|,|W|)·>·0,·this·function·returns\xd | 129 | ······················If·min(|B|,|W|)·>·0,·this·function·returns\xd |
130 | ························································|S|\x121+α∗·max(|B|,|W|)\x13,\xd | 130 | ························································|S|\x121+α∗·max(|B|,|W|)\x13,\xd |
131 | ·····································································min(|B|,|W|)\xd | 131 | ·····································································min(|B|,|W|)\xd |
132 | ······························································2\xd | 132 | ······························································2\xd |
133 | ······················otherwise·it·returns·(|S|·+·|B|·+·|W|)·.·The·method·checks·that·bkl·is·not·NULL.\xd | 133 | ······················otherwise·it·returns·(|S|·+·|B|·+·|W|)·.·The·method·checks·that·bkl·is·not·NULL.\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·BPG.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·BPG.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1427, 20 lines modified | Offset 1427, 21 lines modified | ||
1427 | end·readonly·def | 1427 | end·readonly·def |
1428 | /Encoding·256·array | 1428 | /Encoding·256·array |
1429 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1429 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1430 | dup·44·/comma·put | 1430 | dup·44·/comma·put |
1431 | dup·48·/zero·put | 1431 | dup·48·/zero·put |
1432 | dup·49·/one·put | 1432 | dup·49·/one·put |
1433 | dup·50·/two·put | 1433 | dup·50·/two·put |
1434 | dup·52·/four·put | ||
1435 | dup·5 | 1434 | dup·53·/five·put |
1435 | dup·56·/eight·put | ||
1436 | dup·58·/colon·put | 1436 | dup·58·/colon·put |
1437 | dup·7 | 1437 | dup·70·/F·put |
1438 | dup·97·/a·put | 1438 | dup·97·/a·put |
1439 | dup·98·/b·put | ||
1439 | dup·1 | 1440 | dup·101·/e·put |
1440 | dup·114·/r·put | 1441 | dup·114·/r·put |
1441 | dup·117·/u·put | 1442 | dup·117·/u·put |
1442 | dup·121·/y·put | 1443 | dup·121·/y·put |
1443 | readonly·def | 1444 | readonly·def |
1444 | currentdict·end | 1445 | currentdict·end |
1445 | currentfile·eexec | 1446 | currentfile·eexec |
1446 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1447 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1624, 89 lines modified | Offset 1625, 93 lines modified | ||
1624 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1625 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1625 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1626 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1626 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1627 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1627 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1628 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1628 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1629 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1629 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1630 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1630 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1631 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1631 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1632 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1632 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1633 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1634 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1635 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1636 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1637 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1638 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1639 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1640 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1641 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1642 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1643 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1644 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1645 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1646 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1647 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1648 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1649 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1650 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1651 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1652 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1653 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1654 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1655 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1656 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1657 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1658 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1659 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1660 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1661 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1662 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1663 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1664 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1665 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1666 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1667 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1668 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1669 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1670 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1671 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1672 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1673 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1674 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1675 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1676 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1677 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1678 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1679 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1680 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1681 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1682 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1683 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1684 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1685 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1686 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1687 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1688 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1689 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1690 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1691 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1692 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1693 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1694 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1695 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1696 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1697 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1698 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1699 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1700 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1701 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1702 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1703 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1704 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1705 | 1633 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1634 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1635 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1636 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1637 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1638 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1639 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 17549/29438 bytes (59.61%) of diff not shown. |
Offset 29, 15 lines modified | Offset 29, 15 lines modified | ||
29 | ········code·for·the·process·outweighed·(outline’d?)·the·BPG·code·for·the·data.·Now·if·someone·wants·to·modify\xd | 29 | ········code·for·the·process·outweighed·(outline’d?)·the·BPG·code·for·the·data.·Now·if·someone·wants·to·modify\xd |
30 | ········(and·hopefully·improve)·the·Kernighan-Lin·process,·they·won’t·alter·the·behavior·of·the·bipartite·graph\xd | 30 | ········(and·hopefully·improve)·the·Kernighan-Lin·process,·they·won’t·alter·the·behavior·of·the·bipartite·graph\xd |
31 | ········object.\xd | 31 | ········object.\xd |
32 | ·········Finding·the·Dulmage-Mendelsohn·decomposition·of·a·bipartite·graph·is·a·little·less·clear·cut.·When·the\xd | 32 | ·········Finding·the·Dulmage-Mendelsohn·decomposition·of·a·bipartite·graph·is·a·little·less·clear·cut.·When·the\xd |
33 | ········vertices·in·the·bipartite·graph·have·unit·weight,·the·process·is·straightforward.\xd | 33 | ········vertices·in·the·bipartite·graph·have·unit·weight,·the·process·is·straightforward.\xd |
34 | ·········•·Find·a·maximum·matching.\xd | 34 | ·········•·Find·a·maximum·matching.\xd |
35 | ·······························1\xd | 35 | ·······························1\xd |
36 | ········2················BPG·:·DRAFT· | 36 | ········2················BPG·:·DRAFT·February·18,·2025\xd |
37 | ·········•·Drop·an·alternating·level·structure·from·exposed·nodes·in·X.\xd | 37 | ·········•·Drop·an·alternating·level·structure·from·exposed·nodes·in·X.\xd |
38 | ·········•·Drop·an·alternating·level·structure·from·exposed·nodes·in·Y·.\xd | 38 | ·········•·Drop·an·alternating·level·structure·from·exposed·nodes·in·Y·.\xd |
39 | ·········•·Based·on·the·two·previous·steps,·partition·X·into·three·pieces·and·Y·into·three·pieces·and·form·a·new\xd | 39 | ·········•·Based·on·the·two·previous·steps,·partition·X·into·three·pieces·and·Y·into·three·pieces·and·form·a·new\xd |
40 | ··········separator·from·the·pieces.\xd | 40 | ··········separator·from·the·pieces.\xd |
41 | ········(If·these·terms·are·not·familiar,·see·[?];·our·present·purpose·is·a·discussion·of·software·design,·not·algorithms.)\xd | 41 | ········(If·these·terms·are·not·familiar,·see·[?];·our·present·purpose·is·a·discussion·of·software·design,·not·algorithms.)\xd |
42 | ········Amatching·is·a·very·common·operation·on·a·bipartite·graph,·so·it·is·not·unreasonable·to·expand·the·data\xd | 42 | ········Amatching·is·a·very·common·operation·on·a·bipartite·graph,·so·it·is·not·unreasonable·to·expand·the·data\xd |
43 | ········object·to·include·some·mechanism·for·matching,·e.g.,·a·mate[]·vector.·Finding·a·maximum·matching·is\xd | 43 | ········object·to·include·some·mechanism·for·matching,·e.g.,·a·mate[]·vector.·Finding·a·maximum·matching·is\xd |
Offset 78, 15 lines modified | Offset 78, 15 lines modified | ||
78 | ····················································b\xd | 78 | ····················································b\xd |
79 | ········separator·size.·But,·if·we·consider·S·∪·(Adj(S)·∩·B)·to·be·a·wide·separator,·the·resulting·separator·S·need\xd | 79 | ········separator·size.·But,·if·we·consider·S·∪·(Adj(S)·∩·B)·to·be·a·wide·separator,·the·resulting·separator·S·need\xd |
80 | ········not·be·a·separator·with·minimal·weight·that·is·found·within·the·wide·separator.·The·trick·is·that·some\xd | 80 | ········not·be·a·separator·with·minimal·weight·that·is·found·within·the·wide·separator.·The·trick·is·that·some\xd |
81 | ········nodes·in·Adj(S)∩B·might·be·absorbed·into·W.\xd | 81 | ········nodes·in·Adj(S)∩B·might·be·absorbed·into·W.\xd |
82 | ·········Onecanfindaseparatorwith·minimal·weight·from·the·wide·separator·S∪(Adj(S)∩B),·in·fact·from·any\xd | 82 | ·········Onecanfindaseparatorwith·minimal·weight·from·the·wide·separator·S∪(Adj(S)∩B),·in·fact·from·any\xd |
83 | ········wide·separator·that·contains·S,·by·solving·a·max·flow·problem.·The·drawback·is·that·the·network·induced\xd | 83 | ········wide·separator·that·contains·S,·by·solving·a·max·flow·problem.·The·drawback·is·that·the·network·induced\xd |
84 | ········by·S∪(Adj(S)∩B)·need·not·be·bipartite.·In·other·words,·a·bipartite·induced·graph·necessarily·implies·two\xd | 84 | ········by·S∪(Adj(S)∩B)·need·not·be·bipartite.·In·other·words,·a·bipartite·induced·graph·necessarily·implies·two\xd |
85 | ············································BPG·:·DRAFT·· | 85 | ············································BPG·:·DRAFT··February·18,·2025························3\xd |
86 | ··············layers·to·the·wide·separator,·but·the·converse·does·not·hold.·We·were·then·free·to·examine·wide·separators\xd | 86 | ··············layers·to·the·wide·separator,·but·the·converse·does·not·hold.·We·were·then·free·to·examine·wide·separators\xd |
87 | ··············that·had·more·than·two·layers·from·which·to·find·a·minimal·weight·separator.·It·turns·out·that·three·layers\xd | 87 | ··············that·had·more·than·two·layers·from·which·to·find·a·minimal·weight·separator.·It·turns·out·that·three·layers\xd |
88 | ··············is·better·than·two,·in·practice.\xd | 88 | ··············is·better·than·two,·in·practice.\xd |
89 | ················We·did·write·a·separate·object·to·solve·our·max·flow·problem;·see·the·Network·object.·To·smooth·a\xd | 89 | ················We·did·write·a·separate·object·to·solve·our·max·flow·problem;·see·the·Network·object.·To·smooth·a\xd |
90 | ··············separator,·i.e.,·to·improve·a·2-set·partition,·we·no·longer·have·need·of·the·bipartite·graph·object.·We·leave\xd | 90 | ··············separator,·i.e.,·to·improve·a·2-set·partition,·we·no·longer·have·need·of·the·bipartite·graph·object.·We·leave\xd |
91 | ··············the·two·Dulmage-Mendelsohn·methods·in·the·BPG·object·for·historical·and·sentimental·reasons.\xd | 91 | ··············the·two·Dulmage-Mendelsohn·methods·in·the·BPG·object·for·historical·and·sentimental·reasons.\xd |
92 | ··············1.1···Data·Structure\xd | 92 | ··············1.1···Data·Structure\xd |
Offset 110, 15 lines modified | Offset 110, 15 lines modified | ||
110 | ··················This·method·releases·the·storage·for·graph·via·a·call·to·Graph·clearData(),·and·then·the·structure’s\xd | 110 | ··················This·method·releases·the·storage·for·graph·via·a·call·to·Graph·clearData(),·and·then·the·structure’s\xd |
111 | ··················fields·are·then·set·to·their·default·values·with·a·call·to·BPG·setDefaultFields().\xd | 111 | ··················fields·are·then·set·to·their·default·values·with·a·call·to·BPG·setDefaultFields().\xd |
112 | ··················Error·checking:·If·bpg·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 112 | ··················Error·checking:·If·bpg·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
113 | ················4.·void·BPG_free·(·BPG·*bpg·)·;\xd | 113 | ················4.·void·BPG_free·(·BPG·*bpg·)·;\xd |
114 | ··················This·method·releases·any·storage·by·a·call·to·BPG·clearData()then·free’s·the·storage·for·the·structure\xd | 114 | ··················This·method·releases·any·storage·by·a·call·to·BPG·clearData()then·free’s·the·storage·for·the·structure\xd |
115 | ··················with·a·call·to·free().\xd | 115 | ··················with·a·call·to·free().\xd |
116 | ··················Error·checking:·If·bpg·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 116 | ··················Error·checking:·If·bpg·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
117 | ··············4····························· | 117 | ··············4·····························BPG·:·DRAFT·February·18,·2025\xd |
118 | ··············1.2.2··Initializer·methods\xd | 118 | ··············1.2.2··Initializer·methods\xd |
119 | ··············There·are·two·initializer·methods.\xd | 119 | ··············There·are·two·initializer·methods.\xd |
120 | ················1.·void·BPG_init·(·BPG·*bpg,·int·nX,·int·nY,·Graph·*graph·)·;\xd | 120 | ················1.·void·BPG_init·(·BPG·*bpg,·int·nX,·int·nY,·Graph·*graph·)·;\xd |
121 | ··················This·method·initializes·the·BPG·object·when·all·three·of·its·fields·are·given·in·the·calling·sequence.·The\xd | 121 | ··················This·method·initializes·the·BPG·object·when·all·three·of·its·fields·are·given·in·the·calling·sequence.·The\xd |
122 | ··················Graphobject·has·nX·+·nY·vertices.·Note,·the·BPG·object·now·“owns”·the·Graph·object·and·so·will·free\xd | 122 | ··················Graphobject·has·nX·+·nY·vertices.·Note,·the·BPG·object·now·“owns”·the·Graph·object·and·so·will·free\xd |
123 | ··················the·Graph·object·when·it·is·free’d.·The·Graph·object·may·contains·edges·between·nodes·in·X·and·Y,\xd | 123 | ··················the·Graph·object·when·it·is·free’d.·The·Graph·object·may·contains·edges·between·nodes·in·X·and·Y,\xd |
124 | ··················but·these·edges·are·swapped·to·the·end·of·each·adjacency·list·and·the·size·of·each·list·is·then·set.\xd | 124 | ··················but·these·edges·are·swapped·to·the·end·of·each·adjacency·list·and·the·size·of·each·list·is·then·set.\xd |
Offset 151, 15 lines modified | Offset 151, 15 lines modified | ||
151 | ··········································int·mark[],·int·tag·)·;\xd | 151 | ··········································int·mark[],·int·tag·)·;\xd |
152 | ··················This·method·drops·a·level·structure·from·vertex·root,·fills·the·dist[]·vector·with·the·distances·from\xd | 152 | ··················This·method·drops·a·level·structure·from·vertex·root,·fills·the·dist[]·vector·with·the·distances·from\xd |
153 | ··················root,·and·returns·the·number·of·levels·created.·The·mark[]·vector·is·used·to·mark·nodes·with·the·tag\xd | 153 | ··················root,·and·returns·the·number·of·levels·created.·The·mark[]·vector·is·used·to·mark·nodes·with·the·tag\xd |
154 | ··················value·as·they·are·placed·in·the·level·structure.·The·list[]·vector·is·used·to·accumulate·the·nodes·as\xd | 154 | ··················value·as·they·are·placed·in·the·level·structure.·The·list[]·vector·is·used·to·accumulate·the·nodes·as\xd |
155 | ··················they·are·placed·in·the·level·structure.\xd | 155 | ··················they·are·placed·in·the·level·structure.\xd |
156 | ··················Error·checking:·If·bpg,·list,·dist·or·mark·is·NULL,·or·if·root·is·not·in·[0,·nX+nY),·an·error·message\xd | 156 | ··················Error·checking:·If·bpg,·list,·dist·or·mark·is·NULL,·or·if·root·is·not·in·[0,·nX+nY),·an·error·message\xd |
157 | ··················is·printed·and·the·program·exits.\xd | 157 | ··················is·printed·and·the·program·exits.\xd |
158 | ··················································· | 158 | ···················································BPG·:·DRAFT·····February·18,·2025·······························5\xd |
159 | ················1.2.5····Dulmage-Mendelsohn·decomposition·method\xd | 159 | ················1.2.5····Dulmage-Mendelsohn·decomposition·method\xd |
160 | ················There·is·one·method·to·find·the·Dulmage-Mendelsohn·decomposition·that·uses·matching·when·the·graph\xd | 160 | ················There·is·one·method·to·find·the·Dulmage-Mendelsohn·decomposition·that·uses·matching·when·the·graph\xd |
161 | ················is·unit·weight·and·a·generalized·matching·technique·otherwise.·There·is·a·second·method·to·find·the\xd | 161 | ················is·unit·weight·and·a·generalized·matching·technique·otherwise.·There·is·a·second·method·to·find·the\xd |
162 | ················decomposition·using·a·Ford-Fulkerson·algorithm·to·find·a·max·flow·and·a·min-cut·on·a·bipartite·network.\xd | 162 | ················decomposition·using·a·Ford-Fulkerson·algorithm·to·find·a·max·flow·and·a·min-cut·on·a·bipartite·network.\xd |
163 | ················This·has·largely·been·superceded·by·the·Network·object.\xd | 163 | ················This·has·largely·been·superceded·by·the·Network·object.\xd |
164 | ··················1.·void·BPG_DMdecomposition·(·BPG·*bpg,·int·dmflags[],·int·stats[],\xd | 164 | ··················1.·void·BPG_DMdecomposition·(·BPG·*bpg,·int·dmflags[],·int·stats[],\xd |
165 | ···················································int·msglvl,·FILE·*msgFile·)\xd | 165 | ···················································int·msglvl,·FILE·*msgFile·)\xd |
Offset 204, 15 lines modified | Offset 204, 15 lines modified | ||
204 | ·····················the·value·returned·from·the·called·routine.\xd | 204 | ·····················the·value·returned·from·the·called·routine.\xd |
205 | ·····················Error·checking:·If·bpg·or·fn·is·NULL,·or·if·fn·is·not·of·the·form·*.bpgf·(for·a·formatted·file)·or·*.bpgb\xd | 205 | ·····················Error·checking:·If·bpg·or·fn·is·NULL,·or·if·fn·is·not·of·the·form·*.bpgf·(for·a·formatted·file)·or·*.bpgb\xd |
206 | ·····················(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd | 206 | ·····················(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd |
207 | ··················2.·int·BPG_readFromFormattedFile·(·BPG·*bpg,·FILE·*fp·)·;\xd | 207 | ··················2.·int·BPG_readFromFormattedFile·(·BPG·*bpg,·FILE·*fp·)·;\xd |
208 | ·····················This·method·reads·a·BPG·object·from·a·formatted·file.·If·there·are·no·errors·in·reading·the·data,·the\xd | 208 | ·····················This·method·reads·a·BPG·object·from·a·formatted·file.·If·there·are·no·errors·in·reading·the·data,·the\xd |
209 | ·····················value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd | 209 | ·····················value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd |
210 | ·····················Error·checking:·If·bpg·or·fp·is·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 210 | ·····················Error·checking:·If·bpg·or·fp·is·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
211 | ···········6························BPG·:·DRAFT· | 211 | ···········6························BPG·:·DRAFT·February·18,·2025\xd |
212 | ·············3.·int·BPG_readFromBinaryFile·(·BPG·*bpg,·FILE·*fp·)·;\xd | 212 | ·············3.·int·BPG_readFromBinaryFile·(·BPG·*bpg,·FILE·*fp·)·;\xd |
213 | ···············This·method·reads·a·BPG·object·from·a·binary·file.·If·there·are·no·errors·in·reading·the·data,·the·value\xd | 213 | ···············This·method·reads·a·BPG·object·from·a·binary·file.·If·there·are·no·errors·in·reading·the·data,·the·value\xd |
214 | ···············1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd | 214 | ···············1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd |
215 | ···············Error·checking:·If·bpg·or·fp·is·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 215 | ···············Error·checking:·If·bpg·or·fp·is·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
216 | ·············4.·int·BPG_writeToFile·(·BPG·*bpg,·char·*fn·)·;\xd | 216 | ·············4.·int·BPG_writeToFile·(·BPG·*bpg,·char·*fn·)·;\xd |
217 | ···············ThismethodwritesaBPGobjecttoafile.·Themethodtriestoopenthefileandifitissuccessful,it·then\xd | 217 | ···············ThismethodwritesaBPGobjecttoafile.·Themethodtriestoopenthefileandifitissuccessful,it·then\xd |
218 | ···············calls·BPG·writeFromFormattedFile()or·BPG·writeFromBinaryFile(),closes·the·file·and·returns·the\xd | 218 | ···············calls·BPG·writeFromFormattedFile()or·BPG·writeFromBinaryFile(),closes·the·file·and·returns·the\xd |
Offset 243, 15 lines modified | Offset 243, 15 lines modified | ||
243 | ···············BPG·writeStats()·method).\xd | 243 | ···············BPG·writeStats()·method).\xd |
244 | ················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means·the·BPG\xd | 244 | ················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means·the·BPG\xd |
245 | ··················object·is·written·to·the·message·file.\xd | 245 | ··················object·is·written·to·the·message·file.\xd |
246 | ················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd | 246 | ················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd |
247 | ··················file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output·data.\xd | 247 | ··················file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output·data.\xd |
248 | ················•·The·inFile·parameter·is·the·input·file·for·the·BPG·object.·It·must·be·of·the·form·*.bpgf·or\xd | 248 | ················•·The·inFile·parameter·is·the·input·file·for·the·BPG·object.·It·must·be·of·the·form·*.bpgf·or\xd |
249 | ··················*.bpgb.·The·BPG·object·is·read·from·the·file·via·the·BPG·readFromFile()·method.\xd | 249 | ··················*.bpgb.·The·BPG·object·is·read·from·the·file·via·the·BPG·readFromFile()·method.\xd |
250 | ············································BPG·:·DRAFT·· | 250 | ············································BPG·:·DRAFT··February·18,·2025························7\xd |
251 | ····················•·The·outFile·parameter·is·the·output·file·for·the·BPG·object.·If·outFile·is·none·then·the·BPG\xd | 251 | ····················•·The·outFile·parameter·is·the·output·file·for·the·BPG·object.·If·outFile·is·none·then·the·BPG\xd |
252 | ······················object·is·not·written·to·a·file.·Otherwise,·the·BPG·writeToFile()·method·is·called·to·write·the\xd | 252 | ······················object·is·not·written·to·a·file.·Otherwise,·the·BPG·writeToFile()·method·is·called·to·write·the\xd |
253 | ······················graph·to·a·formatted·file·(if·outFile·is·of·the·form·*.bpgf),·or·a·binary·file·(if·outFile·is·of·the\xd | 253 | ······················graph·to·a·formatted·file·(if·outFile·is·of·the·form·*.bpgf),·or·a·binary·file·(if·outFile·is·of·the\xd |
254 | ······················form·*.bpgb).\xd | 254 | ······················form·*.bpgb).\xd |
255 | ················2.·extractBPG·msglvl·msgFile·inGraphFile·inCompidsIVfile\xd | 255 | ················2.·extractBPG·msglvl·msgFile·inGraphFile·inCompidsIVfile\xd |
256 | ···································icomp·outMapFile·outBPGfile\xd | 256 | ···································icomp·outMapFile·outBPGfile\xd |
257 | ··················This·driver·program·reads·in·a·Graph·object·and·an·IV·object·that·contains·the·component·ids.·(A\xd | 257 | ··················This·driver·program·reads·in·a·Graph·object·and·an·IV·object·that·contains·the·component·ids.·(A\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·Chv.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·Chv.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2518, 20 lines modified | Offset 2518, 21 lines modified | ||
2518 | end·readonly·def | 2518 | end·readonly·def |
2519 | /Encoding·256·array | 2519 | /Encoding·256·array |
2520 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2520 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2521 | dup·44·/comma·put | 2521 | dup·44·/comma·put |
2522 | dup·48·/zero·put | 2522 | dup·48·/zero·put |
2523 | dup·49·/one·put | 2523 | dup·49·/one·put |
2524 | dup·50·/two·put | 2524 | dup·50·/two·put |
2525 | dup·52·/four·put | ||
2526 | dup·5 | 2525 | dup·53·/five·put |
2526 | dup·56·/eight·put | ||
2527 | dup·58·/colon·put | 2527 | dup·58·/colon·put |
2528 | dup·7 | 2528 | dup·70·/F·put |
2529 | dup·97·/a·put | 2529 | dup·97·/a·put |
2530 | dup·98·/b·put | ||
2530 | dup·1 | 2531 | dup·101·/e·put |
2531 | dup·114·/r·put | 2532 | dup·114·/r·put |
2532 | dup·117·/u·put | 2533 | dup·117·/u·put |
2533 | dup·121·/y·put | 2534 | dup·121·/y·put |
2534 | readonly·def | 2535 | readonly·def |
2535 | currentdict·end | 2536 | currentdict·end |
2536 | currentfile·eexec | 2537 | currentfile·eexec |
2537 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2538 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2715, 89 lines modified | Offset 2716, 93 lines modified | ||
2715 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2716 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2716 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2717 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2717 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2718 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2718 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2719 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2719 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2720 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2720 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2721 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2721 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2722 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2722 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2723 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2723 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2724 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2725 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2726 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2727 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2728 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2729 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2730 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2731 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2732 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2733 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2734 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2735 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2736 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2737 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2738 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2739 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2740 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2741 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2742 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2743 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2744 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2745 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2746 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2747 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2748 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2749 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2750 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2751 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2752 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2753 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2754 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2755 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2756 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2757 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2758 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2759 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2760 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2761 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2762 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2763 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2764 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2765 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2766 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2767 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2768 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2769 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2770 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2771 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2772 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2773 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2774 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2775 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2776 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2777 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2778 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2779 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2780 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2781 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2782 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2783 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2784 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2785 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2786 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2787 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2788 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2789 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2790 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2791 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2792 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2793 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2794 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2795 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2796 | 2724 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2725 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2726 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2727 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2728 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2729 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2730 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 41233/53122 bytes (77.62%) of diff not shown. |
Offset 23, 15 lines modified | Offset 23, 15 lines modified | ||
23 | ·························unnecessary,·that·we·put·on·the·Chv·object·—·the·number·of·rows·in·the·(2,1)·block·and·number·of\xd | 23 | ·························unnecessary,·that·we·put·on·the·Chv·object·—·the·number·of·rows·in·the·(2,1)·block·and·number·of\xd |
24 | ·························columns·in·the·(1,2)·block·are·equal.·The·Chv·object·is·used·within·the·context·of·a·factorization·of\xd | 24 | ·························columns·in·the·(1,2)·block·are·equal.·The·Chv·object·is·used·within·the·context·of·a·factorization·of\xd |
25 | ·························a·sparse·matrix·that·is·assumed·to·have·symmetric·structure.·If·we·ever·extend·the·code·to·handle\xd | 25 | ·························a·sparse·matrix·that·is·assumed·to·have·symmetric·structure.·If·we·ever·extend·the·code·to·handle\xd |
26 | ·························a·true·nonsymmetric·structure·factorization·(e.g.,·umfpack·and·superlu),·then·we·can·modify\xd | 26 | ·························a·true·nonsymmetric·structure·factorization·(e.g.,·umfpack·and·superlu),·then·we·can·modify\xd |
27 | ·························the·Chv·object·to·handle·unequal·rows·and·columns.\xd | 27 | ·························the·Chv·object·to·handle·unequal·rows·and·columns.\xd |
28 | ·······························During·a·factorization,·a·front·has·to·take·part·in·four·distinct·operations.\xd | 28 | ·······························During·a·factorization,·a·front·has·to·take·part·in·four·distinct·operations.\xd |
29 | ·······································································································1\xd | 29 | ·······································································································1\xd |
30 | ····························2······························································· | 30 | ····························2·······························································Chv·:·DRAFT·February·18,·2025\xd |
31 | ··································1.·Assemble·entries·from·the·original·matrix·(or·matrix·pencil).·(See·the·Chv·addChevron()\xd | 31 | ··································1.·Assemble·entries·from·the·original·matrix·(or·matrix·pencil).·(See·the·Chv·addChevron()\xd |
32 | ·······································method.)\xd | 32 | ·······································method.)\xd |
33 | ··································2.·Accumulate·updates·from·descendant·fronts.·(See·the·Chv·update{S,H,N}()·methods.)\xd | 33 | ··································2.·Accumulate·updates·from·descendant·fronts.·(See·the·Chv·update{S,H,N}()·methods.)\xd |
34 | ··································3.·Assembleanypostponeddatafromitschildrenfronts.·(SeetheChv·assemblePostponedData()\xd | 34 | ··································3.·Assembleanypostponeddatafromitschildrenfronts.·(SeetheChv·assemblePostponedData()\xd |
35 | ·······································method.)\xd | 35 | ·······································method.)\xd |
36 | ··································4.·Computethefactorization·ofthecompletely·assembledfront.·(SeetheChv·factor()method.)\xd | 36 | ··································4.·Computethefactorization·ofthecompletely·assembledfront.·(SeetheChv·factor()method.)\xd |
37 | ···································The·implementor·of·a·front·object·has·a·great·deal·of·freedom·to·design·the·underlying·data\xd | 37 | ···································The·implementor·of·a·front·object·has·a·great·deal·of·freedom·to·design·the·underlying·data\xd |
Offset 65, 15 lines modified | Offset 65, 15 lines modified | ||
65 | ····························defineitsrowsandcolumns.·ForasymmetricorHermitianmatrix,·weonlystorethecolumnindices.\xd | 65 | ····························defineitsrowsandcolumns.·ForasymmetricorHermitianmatrix,·weonlystorethecolumnindices.\xd |
66 | ····························For·a·nonsymmetric·matrix,·we·store·the·both·the·row·and·column·indices.·This·second·case·may\xd | 66 | ····························For·a·nonsymmetric·matrix,·we·store·the·both·the·row·and·column·indices.·This·second·case·may\xd |
67 | ····························seem·unnecessary,·since·we·assume·that·the·larger·global·matrix·has·symmetric·structure.·However,\xd | 67 | ····························seem·unnecessary,·since·we·assume·that·the·larger·global·matrix·has·symmetric·structure.·However,\xd |
68 | ····························during·a·factorization·with·pivoting·enabled,·a·pivot·element·may·be·chosen·from·anywhere·in·the\xd | 68 | ····························during·a·factorization·with·pivoting·enabled,·a·pivot·element·may·be·chosen·from·anywhere·in·the\xd |
69 | ····························(1,1)·block,·so·the·row·indices·and·column·indices·may·no·longer·be·identical.\xd | 69 | ····························(1,1)·block,·so·the·row·indices·and·column·indices·may·no·longer·be·identical.\xd |
70 | ···································AChv·object·is·inherently·a·serial,·single·threaded·object,·meaning·it·is·designed·so·that·only\xd | 70 | ···································AChv·object·is·inherently·a·serial,·single·threaded·object,·meaning·it·is·designed·so·that·only\xd |
71 | ····························one·thread·or·process·“owns”·or·operates·on·a·particular·Chv·object.·A·Chv·object·is·an·“atom”\xd | 71 | ····························one·thread·or·process·“owns”·or·operates·on·a·particular·Chv·object.·A·Chv·object·is·an·“atom”\xd |
72 | ······································Chv·:·DRAFT·· | 72 | ······································Chv·:·DRAFT···February·18,·2025···················3\xd |
73 | ············of·communication.·It·stores·postponed·rows·and·columns·to·be·assembled·in·a·parent·front.·It\xd | 73 | ············of·communication.·It·stores·postponed·rows·and·columns·to·be·assembled·in·a·parent·front.·It\xd |
74 | ············might·have·to·be·written·to·and·read·from·a·file·in·an·out-of-core·implementation.·In·a·distributed\xd | 74 | ············might·have·to·be·written·to·and·read·from·a·file·in·an·out-of-core·implementation.·In·a·distributed\xd |
75 | ············environment,·it·is·communicated·between·processes.·For·these·reasons,·we·designed·the·object·so\xd | 75 | ············environment,·it·is·communicated·between·processes.·For·these·reasons,·we·designed·the·object·so\xd |
76 | ············that·its·data·(the·scalars·that·describe·its·dimensions,·id·and·type,·the·row·and·column·indices,\xd | 76 | ············that·its·data·(the·scalars·that·describe·its·dimensions,·id·and·type,·the·row·and·column·indices,\xd |
77 | ············and·its·entries)·are·found·in·contiguous·storage·managed·by·a·DV·object.·A·file·operation·can·be\xd | 77 | ············and·its·entries)·are·found·in·contiguous·storage·managed·by·a·DV·object.·A·file·operation·can·be\xd |
78 | ············done·with·a·single·read·or·write,·a·message·can·be·sent·without·packing·and·unpacking·data,·or\xd | 78 | ············done·with·a·single·read·or·write,·a·message·can·be·sent·without·packing·and·unpacking·data,·or\xd |
79 | ············defining·a·new·datatype.·Managing·working·storage·for·a·number·of·Chv·objects·is·now·simpler.\xd | 79 | ············defining·a·new·datatype.·Managing·working·storage·for·a·number·of·Chv·objects·is·now·simpler.\xd |
Offset 100, 15 lines modified | Offset 100, 15 lines modified | ||
100 | ···············•·int·symflag·:·symmetry·flag\xd | 100 | ···············•·int·symflag·:·symmetry·flag\xd |
101 | ···················–·SPOOLES·SYMMETRIC·=⇒·symmetric·entries\xd | 101 | ···················–·SPOOLES·SYMMETRIC·=⇒·symmetric·entries\xd |
102 | ···················–·SPOOLES·HERMITIAN·=⇒·Hermitian·entries\xd | 102 | ···················–·SPOOLES·HERMITIAN·=⇒·Hermitian·entries\xd |
103 | ···················–·SPOOLES·NONSYMMETRIC·=⇒·nonsymmetric·entries\xd | 103 | ···················–·SPOOLES·NONSYMMETRIC·=⇒·nonsymmetric·entries\xd |
104 | ···············•·int·*rowind·:·pointer·to·the·base·address·of·the·int·vector·that·contains·row·indices.\xd | 104 | ···············•·int·*rowind·:·pointer·to·the·base·address·of·the·int·vector·that·contains·row·indices.\xd |
105 | ···············•·int·*colind·:·pointer·to·the·base·address·of·the·int·vector·that·contains·column·indices.\xd | 105 | ···············•·int·*colind·:·pointer·to·the·base·address·of·the·int·vector·that·contains·column·indices.\xd |
106 | ···············•·double·*entries:·pointer·to·the·base·address·of·the·double·vector·that·contains·the·entries.\xd | 106 | ···············•·double·*entries:·pointer·to·the·base·address·of·the·double·vector·that·contains·the·entries.\xd |
107 | ··············4···························· | 107 | ··············4····························Chv·:·DRAFT·February·18,·2025\xd |
108 | ·················•·DV·wrkDV·:·object·that·manages·the·owned·working·storage.\xd | 108 | ·················•·DV·wrkDV·:·object·that·manages·the·owned·working·storage.\xd |
109 | ·················•·Chv·*next·:·link·to·a·next·object·in·a·singly·linked·list.\xd | 109 | ·················•·Chv·*next·:·link·to·a·next·object·in·a·singly·linked·list.\xd |
110 | ·················One·can·query·the·type·and·symmetry·of·the·object·using·these·simple·macros.\xd | 110 | ·················One·can·query·the·type·and·symmetry·of·the·object·using·these·simple·macros.\xd |
111 | ·················•·CHV·IS·REAL(chv)·is·1·if·chv·has·real·entries·and·0·otherwise.\xd | 111 | ·················•·CHV·IS·REAL(chv)·is·1·if·chv·has·real·entries·and·0·otherwise.\xd |
112 | ·················•·CHV·IS·COMPLEX(chv)·is·1·if·chv·has·complex·entries·and·0·otherwise.\xd | 112 | ·················•·CHV·IS·COMPLEX(chv)·is·1·if·chv·has·complex·entries·and·0·otherwise.\xd |
113 | ·················•·CHV·IS·SYMMETRIC(chv)·is·1·if·chv·is·symmetric·and·0·otherwise.\xd | 113 | ·················•·CHV·IS·SYMMETRIC(chv)·is·1·if·chv·is·symmetric·and·0·otherwise.\xd |
114 | ·················•·CHV·IS·HERMITIAN(chv)·is·1·if·chv·is·Hermitian·and·0·otherwise.\xd | 114 | ·················•·CHV·IS·HERMITIAN(chv)·is·1·if·chv·is·Hermitian·and·0·otherwise.\xd |
Offset 131, 15 lines modified | Offset 131, 15 lines modified | ||
131 | ··················This·method·clears·the·object·and·free’s·any·owned·data·by·invoking·the·clearData()\xd | 131 | ··················This·method·clears·the·object·and·free’s·any·owned·data·by·invoking·the·clearData()\xd |
132 | ··················methods·for·its·internal·DV·object.·There·is·a·concluding·call·to·Chv·setDefaultFields().\xd | 132 | ··················methods·for·its·internal·DV·object.·There·is·a·concluding·call·to·Chv·setDefaultFields().\xd |
133 | ··················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 133 | ··················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
134 | ················4.·void·Chv_free·(·Chv·*chv·)·;\xd | 134 | ················4.·void·Chv_free·(·Chv·*chv·)·;\xd |
135 | ··················This·method·releases·any·storage·by·a·call·to·Chv·clearData()·and·then·free·the·space·for\xd | 135 | ··················This·method·releases·any·storage·by·a·call·to·Chv·clearData()·and·then·free·the·space·for\xd |
136 | ··················chv.\xd | 136 | ··················chv.\xd |
137 | ··················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 137 | ··················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
138 | ··············································Chv·:·DRAFT····· | 138 | ··············································Chv·:·DRAFT·····February·18,·2025···························5\xd |
139 | ···············1.2.2···Instance·methods\xd | 139 | ···············1.2.2···Instance·methods\xd |
140 | ·················1.·int·Chv_id·(·Chv·*chv·)·;\xd | 140 | ·················1.·int·Chv_id·(·Chv·*chv·)·;\xd |
141 | ····················This·method·returns·the·id·of·the·object.\xd | 141 | ····················This·method·returns·the·id·of·the·object.\xd |
142 | ····················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 142 | ····················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
143 | ·················2.·int·Chv_type·(·Chv·*chv·)·;\xd | 143 | ·················2.·int·Chv_type·(·Chv·*chv·)·;\xd |
144 | ····················This·method·returns·the·type·of·the·object.\xd | 144 | ····················This·method·returns·the·type·of·the·object.\xd |
145 | ·······················•·SPOOLES·REAL·=⇒·real·entries\xd | 145 | ·······················•·SPOOLES·REAL·=⇒·real·entries\xd |
Offset 167, 15 lines modified | Offset 167, 15 lines modified | ||
167 | ····················Error·checking:·If·chv,·pncol·or·pcolind·is·NULL,·an·error·message·is·printed·and·zero·is\xd | 167 | ····················Error·checking:·If·chv,·pncol·or·pcolind·is·NULL,·an·error·message·is·printed·and·zero·is\xd |
168 | ····················returned.\xd | 168 | ····················returned.\xd |
169 | ·················7.·int···Chv_nent·(·Chv·*chv·)·;\xd | 169 | ·················7.·int···Chv_nent·(·Chv·*chv·)·;\xd |
170 | ····················This·method·returns·number·of·matrix·entries·that·the·object·contains.·Note,·for·a·complex\xd | 170 | ····················This·method·returns·number·of·matrix·entries·that·the·object·contains.·Note,·for·a·complex\xd |
171 | ····················chevron,·this·is·the·number·of·double·precision·complex·entries,·equal·to·one·half·the·number\xd | 171 | ····················chevron,·this·is·the·number·of·double·precision·complex·entries,·equal·to·one·half·the·number\xd |
172 | ····················of·double·precision·entries·that·are·stored.\xd | 172 | ····················of·double·precision·entries·that·are·stored.\xd |
173 | ····················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 173 | ····················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
174 | ··············6······························ | 174 | ··············6······························Chv·:·DRAFT·February·18,·2025\xd |
175 | ·················8.·double·*·Chv_entries·(·Chv·*chv·)·;\xd | 175 | ·················8.·double·*·Chv_entries·(·Chv·*chv·)·;\xd |
176 | ···················This·method·returns·the·entries·field·of·the·object,·a·pointer·to·the·base·location·of·the\xd | 176 | ···················This·method·returns·the·entries·field·of·the·object,·a·pointer·to·the·base·location·of·the\xd |
177 | ···················double·precision·array·that·stores·the·complex·data.\xd | 177 | ···················double·precision·array·that·stores·the·complex·data.\xd |
178 | ···················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 178 | ···················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
179 | ·················9.·double·*·Chv_diagLocation·(·Chv·*chv,·int·ichv·)·;\xd | 179 | ·················9.·double·*·Chv_diagLocation·(·Chv·*chv,·int·ichv·)·;\xd |
180 | ···················This·method·returns·a·pointer·to·the·address·of·the·entry·in·the·ichv’th·diagonal·location.\xd | 180 | ···················This·method·returns·a·pointer·to·the·address·of·the·entry·in·the·ichv’th·diagonal·location.\xd |
181 | ···················For·a·real·chevron,·to·find·the·entry·k·places·to·the·right·of·the·diagonal·entry,·add·k·to·the\xd | 181 | ···················For·a·real·chevron,·to·find·the·entry·k·places·to·the·right·of·the·diagonal·entry,·add·k·to·the\xd |
Offset 205, 15 lines modified | Offset 205, 15 lines modified | ||
205 | ················14.·void··Chv_complexEntry·(·Chv·*chv,·int·irow,·int·jcol,\xd | 205 | ················14.·void··Chv_complexEntry·(·Chv·*chv,·int·irow,·int·jcol,\xd |
206 | ··············································double·*pReal,·double·*pImag·)·;\xd | 206 | ··············································double·*pReal,·double·*pImag·)·;\xd |
207 | ···················This·method·fills·*pReal·with·the·real·part·and·*pImag·with·the·imaginary·part·of·the·the\xd | 207 | ···················This·method·fills·*pReal·with·the·real·part·and·*pImag·with·the·imaginary·part·of·the·the\xd |
208 | ···················entry·in·row·irow·and·column·jcol.·Note,·irow·and·jcol·are·local·indices,·i.e.,·0·≤·irow·<\xd | 208 | ···················entry·in·row·irow·and·column·jcol.·Note,·irow·and·jcol·are·local·indices,·i.e.,·0·≤·irow·<\xd |
209 | ···················nD+nLand0≤jcol<nD+nU.\xd | 209 | ···················nD+nLand0≤jcol<nD+nU.\xd |
210 | ···················Error·checking:·If·chv,·pReal·or·pImag·is·NULL,·or·if·irow·or·jcol·is·out·of·range,·an·error\xd | 210 | ···················Error·checking:·If·chv,·pReal·or·pImag·is·NULL,·or·if·irow·or·jcol·is·out·of·range,·an·error\xd |
211 | ···················message·is·printed·and·the·program·exits.\xd | 211 | ···················message·is·printed·and·the·program·exits.\xd |
212 | ············································ | 212 | ············································Chv·:·DRAFT·····February·18,·2025·························7\xd |
213 | ················15.·Chv_locationOfComplexEntry·(·Chv·*chv,·int·irow,·int·jcol,\xd | 213 | ················15.·Chv_locationOfComplexEntry·(·Chv·*chv,·int·irow,·int·jcol,\xd |
214 | ···················································double·**ppReal,·double·**ppImag·)·;\xd | 214 | ···················································double·**ppReal,·double·**ppImag·)·;\xd |
215 | ···················This·method·fills·*ppReal·with·a·pointer·to·the·real·part·and·*ppImag·with·a·pointer·to·the\xd | 215 | ···················This·method·fills·*ppReal·with·a·pointer·to·the·real·part·and·*ppImag·with·a·pointer·to·the\xd |
216 | ···················imaginary·part·of·the·entry·in·row·irow·and·column·jcol.·Note,·irow·and·jcol·are·local\xd | 216 | ···················imaginary·part·of·the·entry·in·row·irow·and·column·jcol.·Note,·irow·and·jcol·are·local\xd |
217 | ···················indices,·i.e.,·0·≤·irow·<·nD+nL·and·0·≤·jcol·<·nD+nU.\xd | 217 | ···················indices,·i.e.,·0·≤·irow·<·nD+nL·and·0·≤·jcol·<·nD+nU.\xd |
218 | ···················Error·checking:·If·chv,·ppReal·or·ppImag·is·NULL,·or·if·irow·or·jcol·is·out·of·range,·an·error\xd | 218 | ···················Error·checking:·If·chv,·ppReal·or·ppImag·is·NULL,·or·if·irow·or·jcol·is·out·of·range,·an·error\xd |
219 | ···················message·is·printed·and·the·program·exits.\xd | 219 | ···················message·is·printed·and·the·program·exits.\xd |
Offset 242, 15 lines modified | Offset 242, 15 lines modified | ||
242 | ···················is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 242 | ···················is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
243 | ·················3.·void·Chv_initFromBuffer·(·Chv·*chv·)·;\xd | 243 | ·················3.·void·Chv_initFromBuffer·(·Chv·*chv·)·;\xd |
244 | ···················This·initializer·method·is·used·to·set·the·scalar·and·pointer·fields·when·the·object’s·buffer·is\xd | 244 | ···················This·initializer·method·is·used·to·set·the·scalar·and·pointer·fields·when·the·object’s·buffer·is\xd |
245 | ···················already·preloaded.·This·functionality·is·used·in·the·MPI·factorization·where·a·Chv·object·is\xd | 245 | ···················already·preloaded.·This·functionality·is·used·in·the·MPI·factorization·where·a·Chv·object·is\xd |
246 | ···················sent·and·received,·more·precisely,·the·workspace·buffer·owned·by·the·Chv·object·is·sent·and\xd | 246 | ···················sent·and·received,·more·precisely,·the·workspace·buffer·owned·by·the·Chv·object·is·sent·and\xd |
247 | ···················received.\xd | 247 | ···················received.\xd |
248 | ···················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 248 | ···················Error·checking:·If·chv·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
249 | ···············8································ | 249 | ···············8································Chv·:·DRAFT·February·18,·2025\xd |
250 | ···············1.2.4···Search·methods\xd | 250 | ···············1.2.4···Search·methods\xd |
251 | ··················1.·int·Chv_maxabsInDiagonal11·(·Chv·*chv,·int·mark[],·int·tag,·double·*pmaxval·)·;\xd | 251 | ··················1.·int·Chv_maxabsInDiagonal11·(·Chv·*chv,·int·mark[],·int·tag,·double·*pmaxval·)·;\xd |
252 | ·····················This·method·returns·the·location·of·the·first·tagged·element·with·the·largest·magnitude·in\xd | 252 | ·····················This·method·returns·the·location·of·the·first·tagged·element·with·the·largest·magnitude·in\xd |
253 | ·····················the·diagonal·of·the·(1,1)·block.·Element·jj·must·have·mark[jj]·=·tag·to·be·eligible.·Its\xd | 253 | ·····················the·diagonal·of·the·(1,1)·block.·Element·jj·must·have·mark[jj]·=·tag·to·be·eligible.·Its\xd |
254 | ·····················magnitude·is·returned·in·*pmaxval.·Note,·if·the·chevron·is·complex,·the·location·is·in·terms\xd | 254 | ·····················magnitude·is·returned·in·*pmaxval.·Note,·if·the·chevron·is·complex,·the·location·is·in·terms\xd |
255 | ·····················of·the·complex·entries,·not·in·the·real·entries,·i.e.,·if·k·=·Chv·maxabsDiagonal11(chv,...),\xd | 255 | ·····················of·the·complex·entries,·not·in·the·real·entries,·i.e.,·if·k·=·Chv·maxabsDiagonal11(chv,...),\xd |
256 | ·····················then·the·complex·entry·is·found·in·chv->entries[2*kk:2*kk+1].\xd | 256 | ·····················then·the·complex·entry·is·found·in·chv->entries[2*kk:2*kk+1].\xd |
Offset 281, 15 lines modified | Offset 281, 15 lines modified | ||
281 | ·····················in·*pmaxval.·Note,·if·the·chevron·is·complex,·the·location·is·in·terms·of·the·complex·entries,\xd | 281 | ·····················in·*pmaxval.·Note,·if·the·chevron·is·complex,·the·location·is·in·terms·of·the·complex·entries,\xd |
282 | ·····················not·in·the·real·entries,·i.e.,·if·k·=·Chv·maxabsRow(chv,...),·then·the·complex·entry·is·found\xd | 282 | ·····················not·in·the·real·entries,·i.e.,·if·k·=·Chv·maxabsRow(chv,...),·then·the·complex·entry·is·found\xd |
283 | ·····················in·chv->entries[2*kk:2*kk+1].\xd | 283 | ·····················in·chv->entries[2*kk:2*kk+1].\xd |
284 | ·····················Error·checking:·If·chv·is·NULL·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and\xd | 284 | ·····················Error·checking:·If·chv·is·NULL·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and\xd |
285 | ·····················the·program·exits.\xd | 285 | ·····················the·program·exits.\xd |
286 | ··················5.·int·Chv_maxabsInColumn·(·Chv·*chv,·int·jcol,·int·rowmark[],\xd | 286 | ··················5.·int·Chv_maxabsInColumn·(·Chv·*chv,·int·jcol,·int·rowmark[],\xd |
287 | ··················································int·tag,·double·*pmaxval·)·;\xd | 287 | ··················································int·tag,·double·*pmaxval·)·;\xd |
288 | ···············································Chv·:·DRAFT····· | 288 | ···············································Chv·:·DRAFT·····February·18,·2025····························9\xd |
289 | ····················This·method·returns·the·location·of·the·first·element·with·the·largest·magnitude·in·column\xd | 289 | ····················This·method·returns·the·location·of·the·first·element·with·the·largest·magnitude·in·column\xd |
290 | ····················jcol.·Element·jj·must·have·rowmark[jj]·=·tag·to·be·eligible.·Its·magnitude·is·returned\xd | 290 | ····················jcol.·Element·jj·must·have·rowmark[jj]·=·tag·to·be·eligible.·Its·magnitude·is·returned\xd |
291 | ····················in·*pmaxval.·Note,·if·the·chevron·is·complex,·the·location·is·in·terms·of·the·complex·entries,\xd | 291 | ····················in·*pmaxval.·Note,·if·the·chevron·is·complex,·the·location·is·in·terms·of·the·complex·entries,\xd |
292 | ····················not·in·the·real·entries,·i.e.,·if·k·=·Chv·maxabsColumn11(chv,...),·then·the·complex·entry\xd | 292 | ····················not·in·the·real·entries,·i.e.,·if·k·=·Chv·maxabsColumn11(chv,...),·then·the·complex·entry\xd |
293 | ····················is·found·in·chv->entries[2*kk:2*kk+1].\xd | 293 | ····················is·found·in·chv->entries[2*kk:2*kk+1].\xd |
294 | ····················Error·checking:·If·chv·is·NULL·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and\xd | 294 | ····················Error·checking:·If·chv·is·NULL·or·irow·is·not·in·[0,n1-1],·an·error·message·is·printed·and\xd |
295 | ····················the·program·exits.\xd | 295 | ····················the·program·exits.\xd |
Max diff block lines reached; 19823/31974 bytes (62.00%) of diff not shown. |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·ChvList.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·ChvList.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1762, 20 lines modified | Offset 1762, 21 lines modified | ||
1762 | end·readonly·def | 1762 | end·readonly·def |
1763 | /Encoding·256·array | 1763 | /Encoding·256·array |
1764 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1764 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1765 | dup·44·/comma·put | 1765 | dup·44·/comma·put |
1766 | dup·48·/zero·put | 1766 | dup·48·/zero·put |
1767 | dup·49·/one·put | 1767 | dup·49·/one·put |
1768 | dup·50·/two·put | 1768 | dup·50·/two·put |
1769 | dup·52·/four·put | ||
1770 | dup·5 | 1769 | dup·53·/five·put |
1770 | dup·56·/eight·put | ||
1771 | dup·58·/colon·put | 1771 | dup·58·/colon·put |
1772 | dup·7 | 1772 | dup·70·/F·put |
1773 | dup·97·/a·put | 1773 | dup·97·/a·put |
1774 | dup·98·/b·put | ||
1774 | dup·1 | 1775 | dup·101·/e·put |
1775 | dup·114·/r·put | 1776 | dup·114·/r·put |
1776 | dup·117·/u·put | 1777 | dup·117·/u·put |
1777 | dup·121·/y·put | 1778 | dup·121·/y·put |
1778 | readonly·def | 1779 | readonly·def |
1779 | currentdict·end | 1780 | currentdict·end |
1780 | currentfile·eexec | 1781 | currentfile·eexec |
1781 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1782 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1959, 89 lines modified | Offset 1960, 93 lines modified | ||
1959 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1960 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1960 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1961 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1961 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1962 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1962 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1963 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1963 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1964 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1964 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1965 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1965 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1966 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1966 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1967 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1967 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1968 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1969 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1970 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1971 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1972 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1973 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1974 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1975 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1976 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1977 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1978 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1979 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1980 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1981 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1982 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1983 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1984 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1985 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1986 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1987 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1988 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1989 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1990 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1991 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1992 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1993 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1994 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1995 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1996 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1997 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1998 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1999 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2000 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2001 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2002 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2003 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2004 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2005 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2006 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2007 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2008 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2009 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2010 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2011 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2012 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2013 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2014 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2015 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2016 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2017 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2018 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2019 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2020 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2021 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2022 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2023 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2024 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2025 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2026 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2027 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2028 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2029 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2030 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2031 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2032 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2033 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2034 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2035 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2036 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2037 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2038 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2039 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2040 | 1968 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1969 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1970 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1971 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1972 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1973 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1974 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 7413/19306 bytes (38.40%) of diff not shown. |
Offset 22, 15 lines modified | Offset 22, 15 lines modified | ||
22 | ·······The·first·two·operations·are·queries,·and·can·be·done·without·locking·the·list.·The·third·operation\xd | 22 | ·······The·first·two·operations·are·queries,·and·can·be·done·without·locking·the·list.·The·third·operation\xd |
23 | ·······needs·a·lock·only·when·two·or·more·threads·will·be·inserting·objects·into·the·list.·The·fourth\xd | 23 | ·······needs·a·lock·only·when·two·or·more·threads·will·be·inserting·objects·into·the·list.·The·fourth\xd |
24 | ·······operation·requires·a·lock·only·when·one·thread·will·add·an·object·while·another·thread·removes\xd | 24 | ·······operation·requires·a·lock·only·when·one·thread·will·add·an·object·while·another·thread·removes\xd |
25 | ·······the·object·and·the·incoming·count·is·not·yet·zero.\xd | 25 | ·······the·object·and·the·incoming·count·is·not·yet·zero.\xd |
26 | ·········Having·a·lock·associated·with·a·ChvList·object·is·optional,·for·example,·it·is·not·needed·during\xd | 26 | ·········Having·a·lock·associated·with·a·ChvList·object·is·optional,·for·example,·it·is·not·needed·during\xd |
27 | ·······a·serial·factorization·nor·a·MPI·factorization.·In·the·latter·case·there·is·one·ChvList·per·process.\xd | 27 | ·······a·serial·factorization·nor·a·MPI·factorization.·In·the·latter·case·there·is·one·ChvList·per·process.\xd |
28 | ·····························1\xd | 28 | ·····························1\xd |
29 | ··············2·························· | 29 | ··············2··························ChvList·:·DRAFT·February·18,·2025\xd |
30 | ··············For·a·multithreaded·factorization·there·is·one·ChvList·object·that·is·shared·by·all·threads.·The\xd | 30 | ··············For·a·multithreaded·factorization·there·is·one·ChvList·object·that·is·shared·by·all·threads.·The\xd |
31 | ··············mutualexclusion·lock·that·is·(optionally)·embedded·in·the·ChvListobject·is·a·Lock·object·from·this\xd | 31 | ··············mutualexclusion·lock·that·is·(optionally)·embedded·in·the·ChvListobject·is·a·Lock·object·from·this\xd |
32 | ··············library.·It·is·inside·the·Lock·object·that·we·have·a·mutual·exclusion·lock.·Presently·we·support·the\xd | 32 | ··············library.·It·is·inside·the·Lock·object·that·we·have·a·mutual·exclusion·lock.·Presently·we·support·the\xd |
33 | ··············Solaris·and·POSIX·thread·packages.·Porting·the·multithreaded·codes·to·another·platform·should\xd | 33 | ··············Solaris·and·POSIX·thread·packages.·Porting·the·multithreaded·codes·to·another·platform·should\xd |
34 | ··············be·simple·if·the·POSIX·thread·package·is·present.·Another·type·of·thread·package·will·require\xd | 34 | ··············be·simple·if·the·POSIX·thread·package·is·present.·Another·type·of·thread·package·will·require\xd |
35 | ··············some·modifications·to·the·Lock·object,·but·none·to·the·ChvList·objects.\xd | 35 | ··············some·modifications·to·the·Lock·object,·but·none·to·the·ChvList·objects.\xd |
36 | ··············1.1···Data·Structure\xd | 36 | ··············1.1···Data·Structure\xd |
Offset 52, 15 lines modified | Offset 52, 15 lines modified | ||
52 | ················1.·ChvList·*·ChvList_new·(·void·)·;\xd | 52 | ················1.·ChvList·*·ChvList_new·(·void·)·;\xd |
53 | ··················This·method·simply·allocates·storage·for·the·ChvList·structure·and·then·sets·the·default\xd | 53 | ··················This·method·simply·allocates·storage·for·the·ChvList·structure·and·then·sets·the·default\xd |
54 | ··················fields·by·a·call·to·ChvList·setDefaultFields().\xd | 54 | ··················fields·by·a·call·to·ChvList·setDefaultFields().\xd |
55 | ················2.·void·ChvList_setDefaultFields·(·ChvList·*list·)·;\xd | 55 | ················2.·void·ChvList_setDefaultFields·(·ChvList·*list·)·;\xd |
56 | ··················The·structure’s·fields·are·set·to·default·values:·nlist·and·nlocks·set·to·zero,·and·heads,\xd | 56 | ··················The·structure’s·fields·are·set·to·default·values:·nlist·and·nlocks·set·to·zero,·and·heads,\xd |
57 | ··················counts,·lock·and·flags·are·set·to·NULL·.\xd | 57 | ··················counts,·lock·and·flags·are·set·to·NULL·.\xd |
58 | ··················Error·checking:·If·list·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 58 | ··················Error·checking:·If·list·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
59 | ·····································ChvList·:·DRAFT·· | 59 | ·····································ChvList·:·DRAFT··February·18,·2025···················3\xd |
60 | ···············3.·void·ChvList_clearData·(·ChvList·*list·)·;\xd | 60 | ···············3.·void·ChvList_clearData·(·ChvList·*list·)·;\xd |
61 | ·················This·method·clears·the·object·and·free’s·any·owned·data·by·calling·Chv·free()·for·each\xd | 61 | ·················This·method·clears·the·object·and·free’s·any·owned·data·by·calling·Chv·free()·for·each\xd |
62 | ·················object·on·the·free·list.·If·heads·is·not·NULL,·it·is·free’d.·If·counts·is·not·NULL,·it·is·free’d\xd | 62 | ·················object·on·the·free·list.·If·heads·is·not·NULL,·it·is·free’d.·If·counts·is·not·NULL,·it·is·free’d\xd |
63 | ·················via·a·call·to·IVfree().·If·flags·is·not·NULL,·it·is·free’d·via·a·call·to·CVfree().·If·the\xd | 63 | ·················via·a·call·to·IVfree().·If·flags·is·not·NULL,·it·is·free’d·via·a·call·to·CVfree().·If·the\xd |
64 | ·················lock·is·not·NULL,·it·is·destroyed·via·a·call·to·Lock·free().·There·is·a·concluding·call·to\xd | 64 | ·················lock·is·not·NULL,·it·is·destroyed·via·a·call·to·Lock·free().·There·is·a·concluding·call·to\xd |
65 | ·················ChvList·setDefaultFields().\xd | 65 | ·················ChvList·setDefaultFields().\xd |
66 | ·················Error·checking:·If·list·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 66 | ·················Error·checking:·If·list·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | ·················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd | 87 | ·················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd |
88 | ·················is·printed·and·zero·is·returned.\xd | 88 | ·················is·printed·and·zero·is·returned.\xd |
89 | ···············2.·int·ChvList_isCountZero·(·ChvList·*list,·int·ilist·)·;\xd | 89 | ···············2.·int·ChvList_isCountZero·(·ChvList·*list,·int·ilist·)·;\xd |
90 | ·················If·counts·is·NULL,·or·if·counts[ilist]·equal·to·zero,·the·method·returns·1.·Otherwise,·the\xd | 90 | ·················If·counts·is·NULL,·or·if·counts[ilist]·equal·to·zero,·the·method·returns·1.·Otherwise,·the\xd |
91 | ·················method·returns·0.\xd | 91 | ·················method·returns·0.\xd |
92 | ·················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd | 92 | ·················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd |
93 | ·················is·printed·and·zero·is·returned.\xd | 93 | ·················is·printed·and·zero·is·returned.\xd |
94 | ··············4·························· | 94 | ··············4··························ChvList·:·DRAFT·February·18,·2025\xd |
95 | ················3.·Chv·*·ChvList_getList·(·ChvList·*list,·int·ilist·)·;\xd | 95 | ················3.·Chv·*·ChvList_getList·(·ChvList·*list,·int·ilist·)·;\xd |
96 | ··················If·list·ilist·is·empty,·the·method·returns·NULL.·Otherwise,·if·the·list·needs·to·be·locked,·the\xd | 96 | ··················If·list·ilist·is·empty,·the·method·returns·NULL.·Otherwise,·if·the·list·needs·to·be·locked,·the\xd |
97 | ··················lock·is·locked.·The·head·of·the·list·is·saved·to·a·pointer·and·then·the·head·is·set·to·NULL.\xd | 97 | ··················lock·is·locked.·The·head·of·the·list·is·saved·to·a·pointer·and·then·the·head·is·set·to·NULL.\xd |
98 | ··················If·the·list·was·locked,·the·number·of·locks·is·incremented·and·the·lock·unlocked.·The·saved\xd | 98 | ··················If·the·list·was·locked,·the·number·of·locks·is·incremented·and·the·lock·unlocked.·The·saved\xd |
99 | ··················pointer·is·returned.\xd | 99 | ··················pointer·is·returned.\xd |
100 | ··················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd | 100 | ··················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd |
101 | ··················is·printed·and·zero·is·returned.\xd | 101 | ··················is·printed·and·zero·is·returned.\xd |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·ChvManager.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·ChvManager.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1159, 20 lines modified | Offset 1159, 21 lines modified | ||
1159 | end·readonly·def | 1159 | end·readonly·def |
1160 | /Encoding·256·array | 1160 | /Encoding·256·array |
1161 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1161 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1162 | dup·44·/comma·put | 1162 | dup·44·/comma·put |
1163 | dup·48·/zero·put | 1163 | dup·48·/zero·put |
1164 | dup·49·/one·put | 1164 | dup·49·/one·put |
1165 | dup·50·/two·put | 1165 | dup·50·/two·put |
1166 | dup·52·/four·put | ||
1167 | dup·5 | 1166 | dup·53·/five·put |
1167 | dup·56·/eight·put | ||
1168 | dup·58·/colon·put | 1168 | dup·58·/colon·put |
1169 | dup·7 | 1169 | dup·70·/F·put |
1170 | dup·97·/a·put | 1170 | dup·97·/a·put |
1171 | dup·98·/b·put | ||
1171 | dup·1 | 1172 | dup·101·/e·put |
1172 | dup·114·/r·put | 1173 | dup·114·/r·put |
1173 | dup·117·/u·put | 1174 | dup·117·/u·put |
1174 | dup·121·/y·put | 1175 | dup·121·/y·put |
1175 | readonly·def | 1176 | readonly·def |
1176 | currentdict·end | 1177 | currentdict·end |
1177 | currentfile·eexec | 1178 | currentfile·eexec |
1178 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1179 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1356, 89 lines modified | Offset 1357, 93 lines modified | ||
1356 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1357 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1357 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1358 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1358 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1359 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1359 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1360 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1360 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1361 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1361 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1362 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1362 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1363 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1363 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1364 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1364 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1365 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1366 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1367 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1368 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1369 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1370 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1371 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1372 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1373 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1374 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1375 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1376 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1377 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1378 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1379 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1380 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1381 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1382 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1383 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1384 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1385 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1386 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1387 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1388 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1389 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1390 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1391 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1392 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1393 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1394 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1395 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1396 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1397 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1398 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1399 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1400 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1401 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1402 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1403 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1404 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1405 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1406 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1407 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1408 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1409 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1410 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1411 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1412 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1413 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1414 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1415 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1416 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1417 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1418 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1419 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1420 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1421 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1422 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1423 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1424 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1425 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1426 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1427 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1428 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1429 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1430 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1431 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1432 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1433 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1434 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1435 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1436 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1437 | 1365 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1366 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1367 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1368 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1369 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1370 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1371 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 6454/18350 bytes (35.17%) of diff not shown. |
Offset 23, 15 lines modified | Offset 23, 15 lines modified | ||
23 | ····················finds·a·smallest·object·of·that·size·or·larger.)·If·there·is·no·object·on·the·free·pool·of·sufficient\xd | 23 | ····················finds·a·smallest·object·of·that·size·or·larger.)·If·there·is·no·object·on·the·free·pool·of·sufficient\xd |
24 | ····················size,·one·is·created·and·returned.·When·the·user·releases·an·object·to·the·manager,·the·object\xd | 24 | ····················size,·one·is·created·and·returned.·When·the·user·releases·an·object·to·the·manager,·the·object\xd |
25 | ····················is·placed·on·the·free·pool.\xd | 25 | ····················is·placed·on·the·free·pool.\xd |
26 | ···············For·the·factorization,·serial,·multithreaded·or·MPI,·we·recommend·using·the·recycling·mode.\xd | 26 | ···············For·the·factorization,·serial,·multithreaded·or·MPI,·we·recommend·using·the·recycling·mode.\xd |
27 | ··················A·multithreaded·environment·creates·some·difficulties.·Should·there·be·one·manager·object\xd | 27 | ··················A·multithreaded·environment·creates·some·difficulties.·Should·there·be·one·manager·object\xd |
28 | ···············per·thread,·or·should·all·the·threads·share·one·object?·We·have·chosen·the·latter·course,·but·this\xd | 28 | ···············per·thread,·or·should·all·the·threads·share·one·object?·We·have·chosen·the·latter·course,·but·this\xd |
29 | ····························································1\xd | 29 | ····························································1\xd |
30 | ··············2··························DChvList·:·DRAFT· | 30 | ··············2··························DChvList·:·DRAFT·February·18,·2025\xd |
31 | ··············requires·that·a·lock·be·present·to·guard·the·critical·section·of·code·where·one·searches·or·adds·an\xd | 31 | ··············requires·that·a·lock·be·present·to·guard·the·critical·section·of·code·where·one·searches·or·adds·an\xd |
32 | ··············object·to·the·list.·The·lock·we·use·is·a·Lock·object,·and·so·the·ChvManager·code·is·completely\xd | 32 | ··············object·to·the·list.·The·lock·we·use·is·a·Lock·object,·and·so·the·ChvManager·code·is·completely\xd |
33 | ··············independent·of·the·thread·package.·Porting·to·a·new·system·might·require·some·modification·to\xd | 33 | ··············independent·of·the·thread·package.·Porting·to·a·new·system·might·require·some·modification·to\xd |
34 | ··············the·Lock,·but·none·to·the·manager·object.\xd | 34 | ··············the·Lock,·but·none·to·the·manager·object.\xd |
35 | ·················Each·manager·object·keeps·track·of·certain·statistics,·bytes·in·their·workspaces,·the·total\xd | 35 | ·················Each·manager·object·keeps·track·of·certain·statistics,·bytes·in·their·workspaces,·the·total\xd |
36 | ··············number·of·bytes·requested,·the·number·of·requests·for·a·Chv·objects,·the·number·of·releases,·and\xd | 36 | ··············number·of·bytes·requested,·the·number·of·requests·for·a·Chv·objects,·the·number·of·releases,·and\xd |
37 | ··············the·number·of·locks·and·unlocks.\xd | 37 | ··············the·number·of·locks·and·unlocks.\xd |
Offset 54, 15 lines modified | Offset 54, 15 lines modified | ||
54 | ··············ChvManager·object.\xd | 54 | ··············ChvManager·object.\xd |
55 | ··············1.2.1··Basic·methods\xd | 55 | ··············1.2.1··Basic·methods\xd |
56 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 56 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
57 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 57 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
58 | ················1.·ChvManager·*·ChvManager_new·(·void·)·;\xd | 58 | ················1.·ChvManager·*·ChvManager_new·(·void·)·;\xd |
59 | ··················This·method·simply·allocates·storage·for·the·ChvManager·structure·and·then·sets·the·default\xd | 59 | ··················This·method·simply·allocates·storage·for·the·ChvManager·structure·and·then·sets·the·default\xd |
60 | ··················fields·by·a·call·to·ChvManager·setDefaultFields().\xd | 60 | ··················fields·by·a·call·to·ChvManager·setDefaultFields().\xd |
61 | ···································· | 61 | ····································DChvList·:·DRAFT···February·18,·2025··················3\xd |
62 | ···············2.·void·ChvManager_setDefaultFields·(·ChvManager·*manager·)·;\xd | 62 | ···············2.·void·ChvManager_setDefaultFields·(·ChvManager·*manager·)·;\xd |
63 | ·················Thestructure’sfieldsaresettodefaultvalues:·mode,nactive,nbytesactive,nbytesrequested,\xd | 63 | ·················Thestructure’sfieldsaresettodefaultvalues:·mode,nactive,nbytesactive,nbytesrequested,\xd |
64 | ·················nbytesalloc,·nrequests,·nreleases,·nlocks·and·nunlocks·set·to·zero,·and·head·and·lock\xd | 64 | ·················nbytesalloc,·nrequests,·nreleases,·nlocks·and·nunlocks·set·to·zero,·and·head·and·lock\xd |
65 | ·················are·set·to·NULL·.\xd | 65 | ·················are·set·to·NULL·.\xd |
66 | ·················Error·checking:·If·manager·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 66 | ·················Error·checking:·If·manager·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
67 | ···············3.·void·ChvManager_clearData·(·ChvManager·*manager·)·;\xd | 67 | ···············3.·void·ChvManager_clearData·(·ChvManager·*manager·)·;\xd |
68 | ·················This·method·clears·the·object·and·free’s·any·owned·data·by·calling·Chv·free()·for·each\xd | 68 | ·················This·method·clears·the·object·and·free’s·any·owned·data·by·calling·Chv·free()·for·each\xd |
Offset 89, 15 lines modified | Offset 89, 15 lines modified | ||
89 | ···············2.·void·ChvManager_releaseObject·(·ChvManager·*manager,·Chv·*chv·)·;\xd | 89 | ···············2.·void·ChvManager_releaseObject·(·ChvManager·*manager,·Chv·*chv·)·;\xd |
90 | ·················This·method·releases·the·chv·instance·into·the·free·pool·of·objects.\xd | 90 | ·················This·method·releases·the·chv·instance·into·the·free·pool·of·objects.\xd |
91 | ·················Error·checking:·If·manager·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 91 | ·················Error·checking:·If·manager·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
92 | ···············3.·void·ChvManager_releaseListOfObjects·(·ChvManager·*manager,·Chv·*chv·)·;\xd | 92 | ···············3.·void·ChvManager_releaseListOfObjects·(·ChvManager·*manager,·Chv·*chv·)·;\xd |
93 | ·················This·method·releases·a·list·of·Chv·objects·into·the·free·pool·of·objects.·The·head·of·the·list\xd | 93 | ·················This·method·releases·a·list·of·Chv·objects·into·the·free·pool·of·objects.·The·head·of·the·list\xd |
94 | ·················is·the·chv·instance.\xd | 94 | ·················is·the·chv·instance.\xd |
95 | ·················Error·checking:·If·manager·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 95 | ·················Error·checking:·If·manager·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
96 | ··············4··························DChvList·:·DRAFT· | 96 | ··············4··························DChvList·:·DRAFT·February·18,·2025\xd |
97 | ··············1.2.4··IO·methods\xd | 97 | ··············1.2.4··IO·methods\xd |
98 | ················1.·void·ChvManager_writeForHumanEye·(·ChvManager·*manager,·FILE·*fp·)·;\xd | 98 | ················1.·void·ChvManager_writeForHumanEye·(·ChvManager·*manager,·FILE·*fp·)·;\xd |
99 | ··················This·method·writes·the·statistics·to·a·file·in·user·readable·form.\xd | 99 | ··················This·method·writes·the·statistics·to·a·file·in·user·readable·form.\xd |
100 | ··················Error·checking:·If·manager·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 100 | ··················Error·checking:·If·manager·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
101 | ·······Index\xd | 101 | ·······Index\xd |
102 | ·······ChvManager·clearData(),·3\xd | 102 | ·······ChvManager·clearData(),·3\xd |
103 | ·······ChvManager·free(),·3\xd | 103 | ·······ChvManager·free(),·3\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·Coords.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·Coords.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1238, 20 lines modified | Offset 1238, 21 lines modified | ||
1238 | end·readonly·def | 1238 | end·readonly·def |
1239 | /Encoding·256·array | 1239 | /Encoding·256·array |
1240 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1240 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1241 | dup·44·/comma·put | 1241 | dup·44·/comma·put |
1242 | dup·48·/zero·put | 1242 | dup·48·/zero·put |
1243 | dup·49·/one·put | 1243 | dup·49·/one·put |
1244 | dup·50·/two·put | 1244 | dup·50·/two·put |
1245 | dup·52·/four·put | ||
1246 | dup·5 | 1245 | dup·53·/five·put |
1246 | dup·56·/eight·put | ||
1247 | dup·58·/colon·put | 1247 | dup·58·/colon·put |
1248 | dup·7 | 1248 | dup·70·/F·put |
1249 | dup·97·/a·put | 1249 | dup·97·/a·put |
1250 | dup·98·/b·put | ||
1250 | dup·1 | 1251 | dup·101·/e·put |
1251 | dup·114·/r·put | 1252 | dup·114·/r·put |
1252 | dup·117·/u·put | 1253 | dup·117·/u·put |
1253 | dup·121·/y·put | 1254 | dup·121·/y·put |
1254 | readonly·def | 1255 | readonly·def |
1255 | currentdict·end | 1256 | currentdict·end |
1256 | currentfile·eexec | 1257 | currentfile·eexec |
1257 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1258 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1435, 89 lines modified | Offset 1436, 93 lines modified | ||
1435 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1436 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1436 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1437 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1437 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1438 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1438 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1439 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1439 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1440 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1440 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1441 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1441 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1442 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1442 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1443 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1443 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1444 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1445 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1446 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1447 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1448 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1449 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1450 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1451 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1452 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1453 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1454 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1455 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1456 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1457 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1458 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1459 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1460 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1461 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1462 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1463 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1464 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1465 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1466 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1467 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1468 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1469 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1470 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1471 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1472 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1473 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1474 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1475 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1476 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1477 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1478 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1479 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1480 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1481 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1482 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1483 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1484 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1485 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1486 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1487 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1488 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1489 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1490 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1491 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1492 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1493 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1494 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1495 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1496 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1497 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1498 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1499 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1500 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1501 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1502 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1503 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1504 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1505 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1506 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1507 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1508 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1509 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1510 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1511 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1512 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1513 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1514 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1515 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1516 | 1444 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1445 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1446 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1447 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1448 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1449 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1450 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 12412/24304 bytes (51.07%) of diff not shown. |
Offset 18, 15 lines modified | Offset 18, 15 lines modified | ||
18 | ··················1.2·····Prototypes·and·descriptions·of·Coords·methods\xd | 18 | ··················1.2·····Prototypes·and·descriptions·of·Coords·methods\xd |
19 | ··················This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 19 | ··················This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
20 | ··················Coords·object.\xd | 20 | ··················Coords·object.\xd |
21 | ··················1.2.1····Basic·methods\xd | 21 | ··················1.2.1····Basic·methods\xd |
22 | ··················As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 22 | ··················As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
23 | ··················any·allocated·data,·and·free’ing·the·object.\xd | 23 | ··················any·allocated·data,·and·free’ing·the·object.\xd |
24 | ·········································································1\xd | 24 | ·········································································1\xd |
25 | ··············2···························Coords·:·DRAFT· | 25 | ··············2···························Coords·:·DRAFT·February·18,·2025\xd |
26 | ················1.·Coords·*·Coords_new·(·void·)·;\xd | 26 | ················1.·Coords·*·Coords_new·(·void·)·;\xd |
27 | ···················This·method·simply·allocates·storage·for·the·Coords·structure·and·then·sets·the·default·fields\xd | 27 | ···················This·method·simply·allocates·storage·for·the·Coords·structure·and·then·sets·the·default·fields\xd |
28 | ···················by·a·call·to·Coords·setDefaultFields().\xd | 28 | ···················by·a·call·to·Coords·setDefaultFields().\xd |
29 | ················2.·void·Coords_setDefaultFields·(·Coords·*coords·)·;\xd | 29 | ················2.·void·Coords_setDefaultFields·(·Coords·*coords·)·;\xd |
30 | ···················This·method·sets·the·structure’s·fields·are·set·to·default·values:·type·=·COORDS·BY·TUPLE,\xd | 30 | ···················This·method·sets·the·structure’s·fields·are·set·to·default·values:·type·=·COORDS·BY·TUPLE,\xd |
31 | ···················ndim·=·ncoor·=·0·and·coors·=·NULL.\xd | 31 | ···················ndim·=·ncoor·=·0·and·coors·=·NULL.\xd |
32 | ···················Error·checking:·If·coords·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 32 | ···················Error·checking:·If·coords·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
Offset 54, 15 lines modified | Offset 54, 15 lines modified | ||
54 | ···················point,·bbox[2]·=·x-coordinate·of·the·northeast·point,·and·bbox[3]·=·y-coordinate·of·the\xd | 54 | ···················point,·bbox[2]·=·x-coordinate·of·the·northeast·point,·and·bbox[3]·=·y-coordinate·of·the\xd |
55 | ···················northeast·point.\xd | 55 | ···················northeast·point.\xd |
56 | ···················Error·checking:·If·coordsbboxisNULL,oriftypeisnotCOORDS·BY·TUPLEorCOORDS·BY·COORD,\xd | 56 | ···················Error·checking:·If·coordsbboxisNULL,oriftypeisnotCOORDS·BY·TUPLEorCOORDS·BY·COORD,\xd |
57 | ···················or·if·any·of·n1,·n2·or·ncomp·are·nonpositive,·an·error·message·is·printed·and·the·program\xd | 57 | ···················or·if·any·of·n1,·n2·or·ncomp·are·nonpositive,·an·error·message·is·printed·and·the·program\xd |
58 | ···················exits.\xd | 58 | ···················exits.\xd |
59 | ················3.·void·Coords_init27P·(·Coords·*coords,·float·bbox[],·int·type,\xd | 59 | ················3.·void·Coords_init27P·(·Coords·*coords,·float·bbox[],·int·type,\xd |
60 | ·········································int·n1,·int·n2,·int·n3,·int·ncomp·)·;\xd | 60 | ·········································int·n1,·int·n2,·int·n3,·int·ncomp·)·;\xd |
61 | ···········································Coords·:·DRAFT···· | 61 | ···········································Coords·:·DRAFT····February·18,·2025························3\xd |
62 | ···················This·method·initializes·a·Coords·object·for·a·27-point·operator·on·a·n1·×n2·×n3·grid·with\xd | 62 | ···················This·method·initializes·a·Coords·object·for·a·27-point·operator·on·a·n1·×n2·×n3·grid·with\xd |
63 | ···················ncomp·degrees·of·freedom·at·a·grid·point.·The·grid’s·location·is·given·by·the·bounding\xd | 63 | ···················ncomp·degrees·of·freedom·at·a·grid·point.·The·grid’s·location·is·given·by·the·bounding\xd |
64 | ···················box·vector,·bbox[0]·=·x-coordinate·of·the·southwest·point,·bbox[1]·=·y-coordinate·of·the\xd | 64 | ···················box·vector,·bbox[0]·=·x-coordinate·of·the·southwest·point,·bbox[1]·=·y-coordinate·of·the\xd |
65 | ···················southwest·point,·bbox[2]·=·z-coordinate·of·the·southwest·point,·bbox[3]·=·x-coordinate\xd | 65 | ···················southwest·point,·bbox[2]·=·z-coordinate·of·the·southwest·point,·bbox[3]·=·x-coordinate\xd |
66 | ···················of·the·northeast·point,·bbox[4]·=·y-coordinate·of·the·northeast·point,·and·bbox[5]·=·z-\xd | 66 | ···················of·the·northeast·point,·bbox[4]·=·y-coordinate·of·the·northeast·point,·and·bbox[5]·=·z-\xd |
67 | ···················coordinate·of·the·northeast·point.\xd | 67 | ···················coordinate·of·the·northeast·point.\xd |
68 | ···················Error·checking:·If·coordsbboxisNULL,oriftypeisnotCOORDS·BY·TUPLEorCOORDS·BY·COORD,\xd | 68 | ···················Error·checking:·If·coordsbboxisNULL,oriftypeisnotCOORDS·BY·TUPLEorCOORDS·BY·COORD,\xd |
Offset 94, 15 lines modified | Offset 94, 15 lines modified | ||
94 | ···················does·not·lie·in·the·range·[0,ncoor),·an·error·message·is·printed·and·the·program·exits.\xd | 94 | ···················does·not·lie·in·the·range·[0,ncoor),·an·error·message·is·printed·and·the·program·exits.\xd |
95 | ·················5.·void·Coords_setValue·(·Coords·*coords,·int·idim,·int·icoor,·float·val·)·;\xd | 95 | ·················5.·void·Coords_setValue·(·Coords·*coords,·int·idim,·int·icoor,·float·val·)·;\xd |
96 | ···················Thismethodsetsthefloatvalueoftheidim-thcoordinateoftheicoor-thgridpoint.·Forex-\xd | 96 | ···················Thismethodsetsthefloatvalueoftheidim-thcoordinateoftheicoor-thgridpoint.·Forex-\xd |
97 | ···················ample,·Coords·setValue(coords,·1,·27,·1.2)·sets·x····=1.2,·Coords·setValue(coords,\xd | 97 | ···················ample,·Coords·setValue(coords,·1,·27,·1.2)·sets·x····=1.2,·Coords·setValue(coords,\xd |
98 | ······································································27\xd | 98 | ······································································27\xd |
99 | ···················2,·16,·3.3)·sets·y··=3.3,·and·Coords·setValue(coords,·3,·118,·0)·sets·z·····=0.\xd | 99 | ···················2,·16,·3.3)·sets·y··=3.3,·and·Coords·setValue(coords,·3,·118,·0)·sets·z·····=0.\xd |
100 | ·····································16·····················································118\xd | 100 | ·····································16·····················································118\xd |
101 | ··············4···························Coords·:·DRAFT· | 101 | ··············4···························Coords·:·DRAFT·February·18,·2025\xd |
102 | ···················Error·checking:·If·coords·is·NULL,·or·if·idim·does·not·lie·in·the·range·[1,ndim],·or·if·icoor\xd | 102 | ···················Error·checking:·If·coords·is·NULL,·or·if·idim·does·not·lie·in·the·range·[1,ndim],·or·if·icoor\xd |
103 | ···················does·not·lie·in·the·range·[0,ncoor),·an·error·message·is·printed·and·the·program·exits.\xd | 103 | ···················does·not·lie·in·the·range·[0,ncoor),·an·error·message·is·printed·and·the·program·exits.\xd |
104 | ··············1.2.4··IO·methods\xd | 104 | ··············1.2.4··IO·methods\xd |
105 | ··············There·are·the·usual·eight·IO·routines.·The·file·structure·of·a·Coords·object·is·simple:·type,·ndim,\xd | 105 | ··············There·are·the·usual·eight·IO·routines.·The·file·structure·of·a·Coords·object·is·simple:·type,·ndim,\xd |
106 | ··············ncoor·followed·by·the·coors[]·vector.\xd | 106 | ··············ncoor·followed·by·the·coors[]·vector.\xd |
107 | ················1.·int·Coords_readFromFile·(·Coords·*coords,·char·*filename·)·;\xd | 107 | ················1.·int·Coords_readFromFile·(·Coords·*coords,·char·*filename·)·;\xd |
108 | ···················This·method·read·a·Coords·object·from·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,·it\xd | 108 | ···················This·method·read·a·Coords·object·from·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,·it\xd |
Offset 129, 15 lines modified | Offset 129, 15 lines modified | ||
129 | ···················This·method·writes·a·Coords·object·to·a·formatted·file.·If·there·are·no·errors·in·writing·the\xd | 129 | ···················This·method·writes·a·Coords·object·to·a·formatted·file.·If·there·are·no·errors·in·writing·the\xd |
130 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd | 130 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd |
131 | ···················Error·checking:·If·coords·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 131 | ···················Error·checking:·If·coords·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
132 | ················6.·int·Coords_writeToBinaryFile·(·Coords·*coords,·FILE·*fp·)·;\xd | 132 | ················6.·int·Coords_writeToBinaryFile·(·Coords·*coords,·FILE·*fp·)·;\xd |
133 | ···················This·method·writes·a·Coords·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the\xd | 133 | ···················This·method·writes·a·Coords·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the\xd |
134 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd | 134 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd |
135 | ···················Error·checking:·If·coords·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 135 | ···················Error·checking:·If·coords·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
136 | ·····································Coords·:·DRAFT·· | 136 | ·····································Coords·:·DRAFT··February·18,·2025···················5\xd |
137 | ···············7.·int·Coords_writeForHumanEye·(·Coords·*coords,·FILE·*fp·)·;\xd | 137 | ···············7.·int·Coords_writeForHumanEye·(·Coords·*coords,·FILE·*fp·)·;\xd |
138 | ·················This·method·write·the·Coords·object·to·a·file·in·an·easy·to·read·fashion.·The·method\xd | 138 | ·················This·method·write·the·Coords·object·to·a·file·in·an·easy·to·read·fashion.·The·method\xd |
139 | ·················Coords·writeStats()·is·called·to·write·out·the·header·and·statistics.·The·coors[]·vector·is\xd | 139 | ·················Coords·writeStats()·is·called·to·write·out·the·header·and·statistics.·The·coors[]·vector·is\xd |
140 | ·················then·printed·out.·The·value·1·is·returned.\xd | 140 | ·················then·printed·out.·The·value·1·is·returned.\xd |
141 | ·················Error·checking:·If·coords·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 141 | ·················Error·checking:·If·coords·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
142 | ···············8.·int·Coords_writeStats·(·Coords·*coords,·FILE·*fp·)·;\xd | 142 | ···············8.·int·Coords_writeStats·(·Coords·*coords,·FILE·*fp·)·;\xd |
143 | ·················The·header·and·statistics·are·written.·The·value·1·is·returned.\xd | 143 | ·················The·header·and·statistics·are·written.·The·value·1·is·returned.\xd |
Offset 164, 15 lines modified | Offset 164, 15 lines modified | ||
164 | ·················This·driver·program·creates·a·Coords·object·for·9-point·finite·difference·operator·on·a·n1×n2\xd | 164 | ·················This·driver·program·creates·a·Coords·object·for·9-point·finite·difference·operator·on·a·n1×n2\xd |
165 | ·················grid·and·optionally·writes·it·to·a·file.\xd | 165 | ·················grid·and·optionally·writes·it·to·a·file.\xd |
166 | ···················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd | 166 | ···················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd |
167 | ·····················that·all·objects·are·written·to·the·message·file.\xd | 167 | ·····················that·all·objects·are·written·to·the·message·file.\xd |
168 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd | 168 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd |
169 | ·····················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·message\xd | 169 | ·····················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·message\xd |
170 | ·····················data.\xd | 170 | ·····················data.\xd |
171 | ·······6············· | 171 | ·······6·············Coords·:·DRAFT·February·18,·2025\xd |
172 | ···········•·TheoutCoordsFileparameteristheoutputfilefortheCoordsobject.·IfoutCoordsFile\xd | 172 | ···········•·TheoutCoordsFileparameteristheoutputfilefortheCoordsobject.·IfoutCoordsFile\xd |
173 | ············is·nonethentheCoordsobjectisnotwrittentoafile.·Otherwise,theCoords·writeToFile()\xd | 173 | ············is·nonethentheCoordsobjectisnotwrittentoafile.·Otherwise,theCoords·writeToFile()\xd |
174 | ············method·is·called·to·write·the·object·to·a·formatted·file·(if·outCoordsFile·is·of·the·form\xd | 174 | ············method·is·called·to·write·the·object·to·a·formatted·file·(if·outCoordsFile·is·of·the·form\xd |
175 | ············*.coordsf),·or·a·binary·file·(if·outCoordsFile·is·of·the·form·*.coordsb).\xd | 175 | ············*.coordsf),·or·a·binary·file·(if·outCoordsFile·is·of·the·form·*.coordsb).\xd |
176 | ·······Index\xd | 176 | ·······Index\xd |
177 | ·······Coords·clearData(),·2\xd | 177 | ·······Coords·clearData(),·2\xd |
178 | ·······Coords·free(),·2\xd | 178 | ·······Coords·free(),·2\xd |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·DSTree.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·DSTree.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1408, 20 lines modified | Offset 1408, 21 lines modified | ||
1408 | end·readonly·def | 1408 | end·readonly·def |
1409 | /Encoding·256·array | 1409 | /Encoding·256·array |
1410 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1410 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1411 | dup·44·/comma·put | 1411 | dup·44·/comma·put |
1412 | dup·48·/zero·put | 1412 | dup·48·/zero·put |
1413 | dup·49·/one·put | 1413 | dup·49·/one·put |
1414 | dup·50·/two·put | 1414 | dup·50·/two·put |
1415 | dup·52·/four·put | ||
1416 | dup·5 | 1415 | dup·53·/five·put |
1416 | dup·56·/eight·put | ||
1417 | dup·58·/colon·put | 1417 | dup·58·/colon·put |
1418 | dup·7 | 1418 | dup·70·/F·put |
1419 | dup·97·/a·put | 1419 | dup·97·/a·put |
1420 | dup·98·/b·put | ||
1420 | dup·1 | 1421 | dup·101·/e·put |
1421 | dup·114·/r·put | 1422 | dup·114·/r·put |
1422 | dup·117·/u·put | 1423 | dup·117·/u·put |
1423 | dup·121·/y·put | 1424 | dup·121·/y·put |
1424 | readonly·def | 1425 | readonly·def |
1425 | currentdict·end | 1426 | currentdict·end |
1426 | currentfile·eexec | 1427 | currentfile·eexec |
1427 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1428 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1605, 89 lines modified | Offset 1606, 93 lines modified | ||
1605 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1606 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1606 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1607 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1607 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1608 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1608 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1609 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1609 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1610 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1610 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1611 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1611 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1612 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1612 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1613 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1613 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1614 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1615 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1616 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1617 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1618 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1619 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1620 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1621 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1622 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1623 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1624 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1625 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1626 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1627 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1628 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1629 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1630 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1631 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1632 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1633 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1634 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1635 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1636 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1637 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1638 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1639 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1640 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1641 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1642 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1643 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1644 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1645 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1646 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1647 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1648 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1649 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1650 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1651 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1652 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1653 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1654 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1655 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1656 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1657 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1658 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1659 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1660 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1661 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1662 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1663 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1664 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1665 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1666 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1667 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1668 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1669 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1670 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1671 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1672 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1673 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1674 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1675 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1676 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1677 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1678 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1679 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1680 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1681 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1682 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1683 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1684 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1685 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1686 | 1614 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1615 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1616 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1617 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1618 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1619 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1620 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 11022/22914 bytes (48.10%) of diff not shown. |
Offset 21, 15 lines modified | Offset 21, 15 lines modified | ||
21 | ···········The·DSTree·object·has·a·very·simple·data·structure.·It·contains·a·Tree·object·to·represent·the\xd | 21 | ···········The·DSTree·object·has·a·very·simple·data·structure.·It·contains·a·Tree·object·to·represent·the\xd |
22 | ···········tree·fields·of·the·domains·and·separators,·and·an·IV·object·to·hold·the·map·from·the·vertices·to\xd | 22 | ···········tree·fields·of·the·domains·and·separators,·and·an·IV·object·to·hold·the·map·from·the·vertices·to\xd |
23 | ···········the·domains·and·separators.\xd | 23 | ···········the·domains·and·separators.\xd |
24 | ·············•·Tree·*tree·:·pointer·to·the·Tree·object\xd | 24 | ·············•·Tree·*tree·:·pointer·to·the·Tree·object\xd |
25 | ·············•·IV·*mapIV·:·pointer·to·the·IV·object·that·holds·the·map·from·vertices·to·domains·and\xd | 25 | ·············•·IV·*mapIV·:·pointer·to·the·IV·object·that·holds·the·map·from·vertices·to·domains·and\xd |
26 | ···············separators.\xd | 26 | ···············separators.\xd |
27 | ·············································1\xd | 27 | ·············································1\xd |
28 | ··············2····························Tree·:·DRAFT· | 28 | ··············2····························Tree·:·DRAFT·February·18,·2025\xd |
29 | ··············1.2···Prototypes·and·descriptions·of·DSTree·methods\xd | 29 | ··············1.2···Prototypes·and·descriptions·of·DSTree·methods\xd |
30 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 30 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
31 | ··············DSTree·object.\xd | 31 | ··············DSTree·object.\xd |
32 | ··············1.2.1··Basic·methods\xd | 32 | ··············1.2.1··Basic·methods\xd |
33 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 33 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
34 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 34 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
35 | ················1.·DSTree·*·DSTree_new·(·void·)·;\xd | 35 | ················1.·DSTree·*·DSTree_new·(·void·)·;\xd |
Offset 52, 15 lines modified | Offset 52, 15 lines modified | ||
52 | ··············1.2.2··Instance·methods\xd | 52 | ··············1.2.2··Instance·methods\xd |
53 | ················1.·Tree·*·DSTree_tree·(·DSTree·*dstree·)·;\xd | 53 | ················1.·Tree·*·DSTree_tree·(·DSTree·*dstree·)·;\xd |
54 | ···················This·method·returns·a·pointer·to·its·Tree·object.\xd | 54 | ···················This·method·returns·a·pointer·to·its·Tree·object.\xd |
55 | ···················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 55 | ···················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
56 | ················2.·IV·*·DSTree_mapIV·(·DSTree·*dstree·)·;\xd | 56 | ················2.·IV·*·DSTree_mapIV·(·DSTree·*dstree·)·;\xd |
57 | ···················This·method·returns·a·pointer·to·its·IV·object·that·maps·vertices·to·domains·and·separators.\xd | 57 | ···················This·method·returns·a·pointer·to·its·IV·object·that·maps·vertices·to·domains·and·separators.\xd |
58 | ···················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 58 | ···················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
59 | ·········································Tree·:·DRAFT···· | 59 | ·········································Tree·:·DRAFT····February·18,·2025······················3\xd |
60 | ·············1.2.3···Initializer·methods\xd | 60 | ·············1.2.3···Initializer·methods\xd |
61 | ·············There·are·three·initializers·and·two·helper·functions·to·set·the·dimensions·of·the·dstree,·allocate\xd | 61 | ·············There·are·three·initializers·and·two·helper·functions·to·set·the·dimensions·of·the·dstree,·allocate\xd |
62 | ·············the·three·vectors,·and·fill·the·information.\xd | 62 | ·············the·three·vectors,·and·fill·the·information.\xd |
63 | ················1.·void·DSTree_init1·(·DSTree·*dstree,·int·ndomsep,·int·nvtx·)·;\xd | 63 | ················1.·void·DSTree_init1·(·DSTree·*dstree,·int·ndomsep,·int·nvtx·)·;\xd |
64 | ··················This·method·initializes·an·object·given·the·number·of·vertices,·(the·dimension·of·mapIV)·and\xd | 64 | ··················This·method·initializes·an·object·given·the·number·of·vertices,·(the·dimension·of·mapIV)·and\xd |
65 | ··················domains·and·separators·(the·number·of·nodes·in·tree).·It·then·clears·any·previous·data\xd | 65 | ··················domains·and·separators·(the·number·of·nodes·in·tree).·It·then·clears·any·previous·data\xd |
66 | ··················with·a·call·to·DSTree·clearData().·The·tree·field·is·created·and·initialized·via·a·call·to\xd | 66 | ··················with·a·call·to·DSTree·clearData().·The·tree·field·is·created·and·initialized·via·a·call·to\xd |
Offset 88, 15 lines modified | Offset 88, 15 lines modified | ||
88 | ··················This·method·returns·the·stages·for·a·nested·dissection·variant,·separators·on·two·adjacent\xd | 88 | ··················This·method·returns·the·stages·for·a·nested·dissection·variant,·separators·on·two·adjacent\xd |
89 | ··················levels·are·put·into·the·same·stage.·The·levels·of·the·domains·and·separators·are·obtained\xd | 89 | ··················levels·are·put·into·the·same·stage.·The·levels·of·the·domains·and·separators·are·obtained\xd |
90 | ··················via·a·call·to·Tree·setHeightImetric().·A·stagesIV·IV·object·is·created·of·size·nvtx·=\xd | 90 | ··················via·a·call·to·Tree·setHeightImetric().·A·stagesIV·IV·object·is·created·of·size·nvtx·=\xd |
91 | ··················mapIV->size,·filled·and·then·returned.·If·a·vertex·is·found·in·a·domain,·its·stage·is·zero.·If\xd | 91 | ··················mapIV->size,·filled·and·then·returned.·If·a·vertex·is·found·in·a·domain,·its·stage·is·zero.·If\xd |
92 | ··················a·vertex·is·found·in·a·separator·at·level·k,·its·stage·is·⌈k/2⌉.\xd | 92 | ··················a·vertex·is·found·in·a·separator·at·level·k,·its·stage·is·⌈k/2⌉.\xd |
93 | ··················Error·checking:·If·dstree·is·NULL,·or·if·the·object·has·not·been·initialized,·an·error·message\xd | 93 | ··················Error·checking:·If·dstree·is·NULL,·or·if·the·object·has·not·been·initialized,·an·error·message\xd |
94 | ··················is·printed·and·the·program·exits.\xd | 94 | ··················is·printed·and·the·program·exits.\xd |
95 | ·············4····························Tree·:·DRAFT· | 95 | ·············4····························Tree·:·DRAFT·February·18,·2025\xd |
96 | ················3.·IV·*·DSTree_MS2stages·(·DSTree·*dstree·)··;\xd | 96 | ················3.·IV·*·DSTree_MS2stages·(·DSTree·*dstree·)··;\xd |
97 | ··················This·method·returns·the·stages·for·the·standard·multisection·ordering.·The·levels·of·the\xd | 97 | ··················This·method·returns·the·stages·for·the·standard·multisection·ordering.·The·levels·of·the\xd |
98 | ··················domains·and·separators·are·obtained·via·a·call·to·Tree·setHeightImetric().·A·stagesIV\xd | 98 | ··················domains·and·separators·are·obtained·via·a·call·to·Tree·setHeightImetric().·A·stagesIV\xd |
99 | ··················IV·object·is·created·of·size·nvtx·=·mapIV->size,·filled·and·then·returned.·If·a·vertex·is\xd | 99 | ··················IV·object·is·created·of·size·nvtx·=·mapIV->size,·filled·and·then·returned.·If·a·vertex·is\xd |
100 | ··················found·in·a·domain,·its·stage·is·zero.·If·a·vertex·is·found·in·a·separator,·its·stage·is·one.\xd | 100 | ··················found·in·a·domain,·its·stage·is·zero.·If·a·vertex·is·found·in·a·separator,·its·stage·is·one.\xd |
101 | ··················Error·checking:·If·dstree·is·NULL,·or·if·the·object·has·not·been·initialized,·an·error·message\xd | 101 | ··················Error·checking:·If·dstree·is·NULL,·or·if·the·object·has·not·been·initialized,·an·error·message\xd |
102 | ··················is·printed·and·the·program·exits.\xd | 102 | ··················is·printed·and·the·program·exits.\xd |
Offset 125, 49 lines modified | Offset 125, 49 lines modified | ||
125 | ··················If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.·Otherwise,·the·number\xd | 125 | ··················If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.·Otherwise,·the·number\xd |
126 | ··················of·bytes·taken·by·this·object·is·returned.\xd | 126 | ··················of·bytes·taken·by·this·object·is·returned.\xd |
127 | ··················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 127 | ··················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
128 | ················2.·void·DSTree_renumberViaPostOT·(·DSTree·*dstree·)·;\xd | 128 | ················2.·void·DSTree_renumberViaPostOT·(·DSTree·*dstree·)·;\xd |
129 | ··················This·method·renumbers·the·fronts·in·the·tree·via·a·post-order·traversal.\xd | 129 | ··················This·method·renumbers·the·fronts·in·the·tree·via·a·post-order·traversal.\xd |
130 | ··················Error·checking:·If·dstree·is·NULL,·or·if·the·object·has·not·been·initialized,·an·error·message\xd | 130 | ··················Error·checking:·If·dstree·is·NULL,·or·if·the·object·has·not·been·initialized,·an·error·message\xd |
131 | ··················is·printed·and·the·program·exits.\xd | 131 | ··················is·printed·and·the·program·exits.\xd |
132 | ······································Tree·:·DRAFT·· | 132 | ······································Tree·:·DRAFT··February·18,·2025···················5\xd |
133 | ·············· | 133 | ··············3.·int·DSTree_domainWeight·(·DSTree·*dstree,·int·vwghts[]·)·;\xd |
134 | ·················This·method·returns·the·weight·of·the·vertices·in·the·domains.·If·vwghts·is·NULL,·the·vertices\xd | 134 | ·················This·method·returns·the·weight·of·the·vertices·in·the·domains.·If·vwghts·is·NULL,·the·vertices\xd |
135 | ·················have·unit·weight.\xd | 135 | ·················have·unit·weight.\xd |
136 | ·················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 136 | ·················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
137 | ·············· | 137 | ··············4.·int·DSTree_separatorWeight·(·DSTree·*dstree,·int·vwghts[]·)·;\xd |
138 | ·················This·method·returns·the·weight·of·the·vertices·in·the·separators.·If·vwghts·is·NULL,·the\xd | 138 | ·················This·method·returns·the·weight·of·the·vertices·in·the·separators.·If·vwghts·is·NULL,·the\xd |
139 | ·················vertices·have·unit·weight.\xd | 139 | ·················vertices·have·unit·weight.\xd |
140 | ·················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 140 | ·················Error·checking:·If·dstree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
141 | ············1.2.6··IO·methods\xd | 141 | ············1.2.6··IO·methods\xd |
142 | ············There·are·the·usual·eight·IO·routines.·The·file·structure·of·a·dstree·object·is·simple:·the·structure\xd | 142 | ············There·are·the·usual·eight·IO·routines.·The·file·structure·of·a·dstree·object·is·simple:·the·structure\xd |
143 | ············for·a·Tree·object·followed·by·the·structure·for·an·IV·object.\xd | 143 | ············for·a·Tree·object·followed·by·the·structure·for·an·IV·object.\xd |
144 | ·············· | 144 | ··············1.·int·DSTree_readFromFile·(·DSTree·*dstree,·char·*fn·)·;\xd |
145 | ·················This·method·reads·a·DSTree·object·from·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,\xd | 145 | ·················This·method·reads·a·DSTree·object·from·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,\xd |
146 | ·················it·then·calls·DSTree·readFromFormattedFile()·or·DSTree·readFromBinaryFile(),·closes\xd | 146 | ·················it·then·calls·DSTree·readFromFormattedFile()·or·DSTree·readFromBinaryFile(),·closes\xd |
147 | ·················the·file·and·returns·the·value·returned·from·the·called·routine.\xd | 147 | ·················the·file·and·returns·the·value·returned·from·the·called·routine.\xd |
148 | ·················Error·checking:·If·dstree·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.dstreef·(for·a\xd | 148 | ·················Error·checking:·If·dstree·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.dstreef·(for·a\xd |
149 | ·················formatted·file)·or·*.dstreeb·(for·a·binary·file),·an·error·message·is·printed·and·the·method\xd | 149 | ·················formatted·file)·or·*.dstreeb·(for·a·binary·file),·an·error·message·is·printed·and·the·method\xd |
150 | ·················returns·zero.\xd | 150 | ·················returns·zero.\xd |
151 | ·············· | 151 | ··············2.·int·DSTree_readFromFormattedFile·(·DSTree·*dstree,·FILE·*fp·)·;\xd |
152 | ·················This·method·reads·in·a·DSTree·object·from·a·formatted·file.·If·there·are·no·errors·in·reading\xd | 152 | ·················This·method·reads·in·a·DSTree·object·from·a·formatted·file.·If·there·are·no·errors·in·reading\xd |
153 | ·················the·data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd | 153 | ·················the·data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd |
154 | ·················Error·checking:·If·dstree·or·fp·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 154 | ·················Error·checking:·If·dstree·or·fp·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
155 | ·············· | 155 | ··············3.·int·DSTree_readFromBinaryFile·(·DSTree·*dstree,·FILE·*fp·)·;\xd |
156 | ·················This·method·reads·in·a·DSTree·object·from·a·binary·file.·If·there·are·no·errors·in·reading·the\xd | 156 | ·················This·method·reads·in·a·DSTree·object·from·a·binary·file.·If·there·are·no·errors·in·reading·the\xd |
157 | ·················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd | 157 | ·················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd |
158 | ·················Error·checking:·If·dstree·or·fp·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 158 | ·················Error·checking:·If·dstree·or·fp·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
159 | ·············· | 159 | ··············4.·int·DSTree_writeToFile·(·DSTree·*dstree,·char·*fn·)·;\xd |
160 | ·················This·method·writes·a·DSTree·object·to·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,\xd | 160 | ·················This·method·writes·a·DSTree·object·to·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,\xd |
161 | ·················it·then·calls·DSTree·writeFromFormattedFile()or·DSTree·writeFromBinaryFile(),closes\xd | 161 | ·················it·then·calls·DSTree·writeFromFormattedFile()or·DSTree·writeFromBinaryFile(),closes\xd |
162 | ·················the·file·and·returns·the·value·returned·from·the·called·routine.\xd | 162 | ·················the·file·and·returns·the·value·returned·from·the·called·routine.\xd |
163 | ·················Error·checking:·If·dstree·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.dstreef·(for·a\xd | 163 | ·················Error·checking:·If·dstree·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.dstreef·(for·a\xd |
164 | ·················formatted·file)·or·*.dstreeb·(for·a·binary·file),·an·error·message·is·printed·and·the·method\xd | 164 | ·················formatted·file)·or·*.dstreeb·(for·a·binary·file),·an·error·message·is·printed·and·the·method\xd |
165 | ·················returns·zero.\xd | 165 | ·················returns·zero.\xd |
166 | ··············6······························Tree·:·DRAFT· | 166 | ··············6······························Tree·:·DRAFT·February·18,·2025\xd |
167 | ·················5.·int·DSTree_writeToFormattedFile·(·DSTree·*dstree,·FILE·*fp·)·;\xd | 167 | ·················5.·int·DSTree_writeToFormattedFile·(·DSTree·*dstree,·FILE·*fp·)·;\xd |
168 | ···················This·method·writes·a·DSTree·object·to·a·formatted·file.·If·there·are·no·errors·in·writing·the\xd | 168 | ···················This·method·writes·a·DSTree·object·to·a·formatted·file.·If·there·are·no·errors·in·writing·the\xd |
169 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd | 169 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd |
170 | ···················Error·checking:·If·dstree·or·fp·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 170 | ···················Error·checking:·If·dstree·or·fp·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
171 | ·················6.·int·DSTree_writeToBinaryFile·(·DSTree·*dstree,·FILE·*fp·)·;\xd | 171 | ·················6.·int·DSTree_writeToBinaryFile·(·DSTree·*dstree,·FILE·*fp·)·;\xd |
172 | ···················This·method·writes·a·DSTree·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the\xd | 172 | ···················This·method·writes·a·DSTree·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the\xd |
173 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd | 173 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd |
Offset 195, 16 lines modified | Offset 195, 16 lines modified | ||
195 | ······················•·The·inFile·parameter·is·the·input·file·for·the·DSTree·object.··It·must·be·of·the\xd | 195 | ······················•·The·inFile·parameter·is·the·input·file·for·the·DSTree·object.··It·must·be·of·the\xd |
196 | ························form·*.dinpmtxf·or·*.dinpmtxb.·The·DSTree·object·is·read·from·the·file·via·the\xd | 196 | ························form·*.dinpmtxf·or·*.dinpmtxb.·The·DSTree·object·is·read·from·the·file·via·the\xd |
197 | ························DSTree·readFromFile()·method.\xd | 197 | ························DSTree·readFromFile()·method.\xd |
198 | ······················•·The·outFileparameter·is·the·output·file·for·the·DSTree·object.·If·outFile·is·none·then\xd | 198 | ······················•·The·outFileparameter·is·the·output·file·for·the·DSTree·object.·If·outFile·is·none·then\xd |
199 | ························the·DSTreeobject·is·not·written·to·a·file.·Otherwise,·the·DSTree·writeToFile()method\xd | 199 | ························the·DSTreeobject·is·not·written·to·a·file.·Otherwise,·the·DSTree·writeToFile()method\xd |
200 | ························is·called·to·write·the·object·to·a·formatted·file·(if·outFile·is·of·the·form·*.dinpmtxf),\xd | 200 | ························is·called·to·write·the·object·to·a·formatted·file·(if·outFile·is·of·the·form·*.dinpmtxf),\xd |
201 | ························or·a·binary·file·(if·outFile·is·of·the·form·*.dinpmtxb).\xd | 201 | ························or·a·binary·file·(if·outFile·is·of·the·form·*.dinpmtxb).\xd |
202 | ······································Tree·:·DRAFT·· | 202 | ······································Tree·:·DRAFT··February·18,·2025···················7\xd |
203 | ·············· | 203 | ··············2.·writeStagesIV·msglvl·msgFile·inFile·type·outFile\xd |
204 | ·················This·driver·program·reads·in·a·DSTree·from·a·file,·creates·a·stages·IV·object·and·writes·it·to\xd | 204 | ·················This·driver·program·reads·in·a·DSTree·from·a·file,·creates·a·stages·IV·object·and·writes·it·to\xd |
205 | ·················a·file.\xd | 205 | ·················a·file.\xd |
206 | ···················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd | 206 | ···················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd |
207 | ·····················the·DSTree·object·is·written·to·the·message·file.\xd | 207 | ·····················the·DSTree·object·is·written·to·the·message·file.\xd |
208 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd | 208 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd |
209 | ·····················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd | 209 | ·····················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd |
210 | ·····················data.\xd | 210 | ·····················data.\xd |
Offset 213, 16 lines modified | Offset 213, 16 lines modified | ||
213 | ·····················method.\xd | 213 | ·····················method.\xd |
214 | ···················•·The·type·parameter·specifies·which·type·of·stages·vector·to·create.·There·are·presently\xd | 214 | ···················•·The·type·parameter·specifies·which·type·of·stages·vector·to·create.·There·are·presently\xd |
215 | ·····················four·supported·types·:·ND,·ND2,·MS2·and·ND3.·See·the·stage·methods·in·Section·1.2.4.\xd | 215 | ·····················four·supported·types·:·ND,·ND2,·MS2·and·ND3.·See·the·stage·methods·in·Section·1.2.4.\xd |
216 | ···················•·The·outFile·parameter·is·the·output·file·for·the·stages·IV·object.·If·outFile·is·none\xd | 216 | ···················•·The·outFile·parameter·is·the·output·file·for·the·stages·IV·object.·If·outFile·is·none\xd |
217 | ·····················then·the·IV·object·is·not·written·to·a·file.·Otherwise,·the·IV·writeToFile()·method\xd | 217 | ·····················then·the·IV·object·is·not·written·to·a·file.·Otherwise,·the·IV·writeToFile()·method\xd |
218 | ·····················is·called·to·write·the·object·to·a·formatted·file·(if·outFile·is·of·the·form·*.ivf),·or·a\xd | 218 | ·····················is·called·to·write·the·object·to·a·formatted·file·(if·outFile·is·of·the·form·*.ivf),·or·a\xd |
219 | ·····················binary·file·(if·outFile·is·of·the·form·*.ivb).\xd | 219 | ·····················binary·file·(if·outFile·is·of·the·form·*.ivb).\xd |
220 | ·············· | 220 | ··············3.·testDomWeightStages·msglvl·msgFile\xd |
221 | ··································· | 221 | ···································inDSTreeFile·inGraphFile·inCutoffDVfile·outFile\xd |
222 | ·················This·driver·program·is·used·to·create·a·stages·vector·based·on·subtree·weight.·It·reads·in\xd | 222 | ·················This·driver·program·is·used·to·create·a·stages·vector·based·on·subtree·weight.·It·reads·in\xd |
223 | ·················three·objects·from·files:·a·DSTree·object,·a·Graph·object·and·a·DV·object·that·contains·the\xd | 223 | ·················three·objects·from·files:·a·DSTree·object,·a·Graph·object·and·a·DV·object·that·contains·the\xd |
224 | ·················cutoff·vector,·then·creates·a·stages·IV·object·and·writes·it·to·a·file.\xd | 224 | ·················cutoff·vector,·then·creates·a·stages·IV·object·and·writes·it·to·a·file.\xd |
Max diff block lines reached; 290/12484 bytes (2.32%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·DV.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·DV.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2352, 20 lines modified | Offset 2352, 21 lines modified | ||
2352 | end·readonly·def | 2352 | end·readonly·def |
2353 | /Encoding·256·array | 2353 | /Encoding·256·array |
2354 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2354 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2355 | dup·44·/comma·put | 2355 | dup·44·/comma·put |
2356 | dup·48·/zero·put | 2356 | dup·48·/zero·put |
2357 | dup·49·/one·put | 2357 | dup·49·/one·put |
2358 | dup·50·/two·put | 2358 | dup·50·/two·put |
2359 | dup·52·/four·put | ||
2360 | dup·5 | 2359 | dup·53·/five·put |
2360 | dup·56·/eight·put | ||
2361 | dup·58·/colon·put | 2361 | dup·58·/colon·put |
2362 | dup·7 | 2362 | dup·70·/F·put |
2363 | dup·97·/a·put | 2363 | dup·97·/a·put |
2364 | dup·98·/b·put | ||
2364 | dup·1 | 2365 | dup·101·/e·put |
2365 | dup·114·/r·put | 2366 | dup·114·/r·put |
2366 | dup·117·/u·put | 2367 | dup·117·/u·put |
2367 | dup·121·/y·put | 2368 | dup·121·/y·put |
2368 | readonly·def | 2369 | readonly·def |
2369 | currentdict·end | 2370 | currentdict·end |
2370 | currentfile·eexec | 2371 | currentfile·eexec |
2371 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2372 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2549, 89 lines modified | Offset 2550, 93 lines modified | ||
2549 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2550 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2550 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2551 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2551 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2552 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2552 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2553 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2553 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2554 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2554 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2555 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2555 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2556 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2556 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2557 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2557 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2558 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2559 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2560 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2561 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2562 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2563 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2564 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2565 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2566 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2567 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2568 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2569 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2570 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2571 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2572 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2573 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2574 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2575 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2576 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2577 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2578 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2579 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2580 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2581 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2582 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2583 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2584 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2585 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2586 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2587 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2588 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2589 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2590 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2591 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2592 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2593 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2594 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2595 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2596 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2597 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2598 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2599 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2600 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2601 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2602 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2603 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2604 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2605 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2606 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2607 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2608 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2609 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2610 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2611 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2612 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2613 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2614 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2615 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2616 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2617 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2618 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2619 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2620 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2621 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2622 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2623 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2624 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2625 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2626 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2627 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2628 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2629 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2630 | 2558 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2559 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2560 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2561 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2562 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2563 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2564 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 20403/32291 bytes (63.18%) of diff not shown. |
Offset 22, 15 lines modified | Offset 22, 15 lines modified | ||
22 | ···············simplest·operations,·and·so·when·we·need·to·manipulate·an·double·vector·inside·a·loop,·we·extract\xd | 22 | ···············simplest·operations,·and·so·when·we·need·to·manipulate·an·double·vector·inside·a·loop,·we·extract\xd |
23 | ···············out·the·size·and·pointer·to·the·base·array·from·the·DV·object.·On·the·other·hand,·the·convenience\xd | 23 | ···············out·the·size·and·pointer·to·the·base·array·from·the·DV·object.·On·the·other·hand,·the·convenience\xd |
24 | ···············makes·it·a·widely·used·object.\xd | 24 | ···············makes·it·a·widely·used·object.\xd |
25 | ···············1.1····Data·Structure\xd | 25 | ···············1.1····Data·Structure\xd |
26 | ···············The·DV·structure·has·three·fields.\xd | 26 | ···············The·DV·structure·has·three·fields.\xd |
27 | ··················•·int·size·:·present·size·of·the·vector.\xd | 27 | ··················•·int·size·:·present·size·of·the·vector.\xd |
28 | ·····························································1\xd | 28 | ·····························································1\xd |
29 | ··············2·····························DV·:·DRAFT· | 29 | ··············2·····························DV·:·DRAFT·February·18,·2025\xd |
30 | ·················•·int·maxsize·:·maximum·size·of·the·vector.\xd | 30 | ·················•·int·maxsize·:·maximum·size·of·the·vector.\xd |
31 | ·················•·int·owned·:·owner·flag·for·the·data.·When·owned·=·1,·storage·for·owned·double’s·has·been\xd | 31 | ·················•·int·owned·:·owner·flag·for·the·data.·When·owned·=·1,·storage·for·owned·double’s·has·been\xd |
32 | ···················allocated·by·this·object·and·can·be·free’d·by·the·object.·When·owned·==·0·but·size·>·0·,\xd | 32 | ···················allocated·by·this·object·and·can·be·free’d·by·the·object.·When·owned·==·0·but·size·>·0·,\xd |
33 | ···················this·object·points·to·entries·that·have·been·allocated·elsewhere,·and·these·entries·will·not·be\xd | 33 | ···················this·object·points·to·entries·that·have·been·allocated·elsewhere,·and·these·entries·will·not·be\xd |
34 | ···················free’d·by·this·object.\xd | 34 | ···················free’d·by·this·object.\xd |
35 | ·················•·double·*vec·:·pointer·to·the·base·address·of·the·double·vector\xd | 35 | ·················•·double·*vec·:·pointer·to·the·base·address·of·the·double·vector\xd |
36 | ··············The·size,·maxsize,·nowned·and·vec·fields·need·never·be·accessed·directly·—·see·the·DV·size(),\xd | 36 | ··············The·size,·maxsize,·nowned·and·vec·fields·need·never·be·accessed·directly·—·see·the·DV·size(),\xd |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | ···················the·storage·for·vec·is·free’d·by·a·call·to·DVfree().·The·structure’s·default·fields·are·then·set\xd | 53 | ···················the·storage·for·vec·is·free’d·by·a·call·to·DVfree().·The·structure’s·default·fields·are·then·set\xd |
54 | ···················with·a·call·to·DV·setDefaultFields().\xd | 54 | ···················with·a·call·to·DV·setDefaultFields().\xd |
55 | ···················Error·checking:·If·dv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd | 55 | ···················Error·checking:·If·dv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd |
56 | ················4.·void·DV_free·(·DV·*dv·)·;\xd | 56 | ················4.·void·DV_free·(·DV·*dv·)·;\xd |
57 | ···················This·method·releases·any·storage·by·a·call·to·DV·clearData()·then·free’s·the·storage·for·the\xd | 57 | ···················This·method·releases·any·storage·by·a·call·to·DV·clearData()·then·free’s·the·storage·for·the\xd |
58 | ···················structure·with·a·call·to·free().\xd | 58 | ···················structure·with·a·call·to·free().\xd |
59 | ···················Error·checking:·If·dv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd | 59 | ···················Error·checking:·If·dv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd |
60 | ·······································DV·:·DRAFT·· | 60 | ·······································DV·:·DRAFT··February·18,·2025·····················3\xd |
61 | ············1.2.2··Instance·methods\xd | 61 | ············1.2.2··Instance·methods\xd |
62 | ············These·method·allow·access·to·information·in·the·data·fields·without·explicitly·following·pointers.\xd | 62 | ············These·method·allow·access·to·information·in·the·data·fields·without·explicitly·following·pointers.\xd |
63 | ············There·is·overhead·involved·with·these·method·due·to·the·function·call·and·error·checking·inside\xd | 63 | ············There·is·overhead·involved·with·these·method·due·to·the·function·call·and·error·checking·inside\xd |
64 | ············the·methods.\xd | 64 | ············the·methods.\xd |
65 | ···············1.·int·DV_owned·(·DV·*dv·)·;\xd | 65 | ···············1.·int·DV_owned·(·DV·*dv·)·;\xd |
66 | ·················This·method·returns·the·value·of·owned.·If·owned·>·0,·then·the·object·owns·the·data·pointed\xd | 66 | ·················This·method·returns·the·value·of·owned.·If·owned·>·0,·then·the·object·owns·the·data·pointed\xd |
67 | ·················to·by·vec·and·will·free·this·data·with·a·call·to·DVfree()·when·its·data·is·cleared·by·a·call·to\xd | 67 | ·················to·by·vec·and·will·free·this·data·with·a·call·to·DVfree()·when·its·data·is·cleared·by·a·call·to\xd |
Offset 85, 15 lines modified | Offset 85, 15 lines modified | ||
85 | ·················This·method·fills·*psize·with·the·size·of·the·vector·and·**pentries·with·the·base·address\xd | 85 | ·················This·method·fills·*psize·with·the·size·of·the·vector·and·**pentries·with·the·base·address\xd |
86 | ·················of·the·vector.\xd | 86 | ·················of·the·vector.\xd |
87 | ·················Error·checking:·If·dv,·psize·or·pentriesis·NULL,·an·error·message·is·printed·and·the·program\xd | 87 | ·················Error·checking:·If·dv,·psize·or·pentriesis·NULL,·an·error·message·is·printed·and·the·program\xd |
88 | ·················exits.\xd | 88 | ·················exits.\xd |
89 | ···············7.·void·DV_setEntry·(·DV·*dv,·int·loc,·double·value·)·;\xd | 89 | ···············7.·void·DV_setEntry·(·DV·*dv,·int·loc,·double·value·)·;\xd |
90 | ·················This·method·sets·the·loc’th·entry·of·the·vector·to·value.\xd | 90 | ·················This·method·sets·the·loc’th·entry·of·the·vector·to·value.\xd |
91 | ·················Error·checking:·If·dv·is·NULL·or·loc·<·0,·an·error·message·is·printed·and·the·program·exits.\xd | 91 | ·················Error·checking:·If·dv·is·NULL·or·loc·<·0,·an·error·message·is·printed·and·the·program·exits.\xd |
92 | ··············4·····························DV·:·DRAFT· | 92 | ··············4·····························DV·:·DRAFT·February·18,·2025\xd |
93 | ··············1.2.3··Initializer·methods\xd | 93 | ··············1.2.3··Initializer·methods\xd |
94 | ··············There·are·three·initializer·methods.\xd | 94 | ··············There·are·three·initializer·methods.\xd |
95 | ················1.·void·DV_init·(·DV·*dv,·int·size,·double·*entries·)·;\xd | 95 | ················1.·void·DV_init·(·DV·*dv,·int·size,·double·*entries·)·;\xd |
96 | ···················This·method·initializes·the·object·given·a·size·for·the·vector·and·a·possible·pointer·to·the\xd | 96 | ···················This·method·initializes·the·object·given·a·size·for·the·vector·and·a·possible·pointer·to·the\xd |
97 | ···················vectors’·storage.·Any·previous·data·is·cleared·with·a·call·to·DV·clearData().·If·entries·!=\xd | 97 | ···················vectors’·storage.·Any·previous·data·is·cleared·with·a·call·to·DV·clearData().·If·entries·!=\xd |
98 | ···················NULL·then·the·vec·field·is·set·to·entries,·the·size·and·maxsize·fields·are·set·to·size,·and\xd | 98 | ···················NULL·then·the·vec·field·is·set·to·entries,·the·size·and·maxsize·fields·are·set·to·size,·and\xd |
99 | ···················owned·is·set·to·zero·because·the·object·does·not·own·the·entries.·If·entries·is·NULL·and·size\xd | 99 | ···················owned·is·set·to·zero·because·the·object·does·not·own·the·entries.·If·entries·is·NULL·and·size\xd |
Offset 123, 15 lines modified | Offset 123, 15 lines modified | ||
123 | ···················increased·with·a·call·to·DV·setMaxsize().·The·size·field·is·set·to·newsize.\xd | 123 | ···················increased·with·a·call·to·DV·setMaxsize().·The·size·field·is·set·to·newsize.\xd |
124 | ···················Error·checking:·If·dv·is·NULL,·or·newsize·<·0,·or·if·0·<·maxsize·<·newsize·and·owned·=\xd | 124 | ···················Error·checking:·If·dv·is·NULL,·or·newsize·<·0,·or·if·0·<·maxsize·<·newsize·and·owned·=\xd |
125 | ···················0,·an·error·message·is·printed·and·the·program·exits.\xd | 125 | ···················0,·an·error·message·is·printed·and·the·program·exits.\xd |
126 | ··············1.2.4··Utility·methods\xd | 126 | ··············1.2.4··Utility·methods\xd |
127 | ················1.·void·DV_shiftBase·(·DV·*dv,·int·offset·)·;\xd | 127 | ················1.·void·DV_shiftBase·(·DV·*dv,·int·offset·)·;\xd |
128 | ···················This·method·shifts·the·base·entries·of·the·vector·and·decrements·the·present·size·and·max-\xd | 128 | ···················This·method·shifts·the·base·entries·of·the·vector·and·decrements·the·present·size·and·max-\xd |
129 | ···················imum·size·of·the·vector·by·offset.·This·is·a·dangerous·method·to·use·because·the·state·of\xd | 129 | ···················imum·size·of·the·vector·by·offset.·This·is·a·dangerous·method·to·use·because·the·state·of\xd |
130 | ·······································DV·:·DRAFT·· | 130 | ·······································DV·:·DRAFT··February·18,·2025·····················5\xd |
131 | ·················the·vector·is·lost,·namely·vec,·the·base·of·the·entries,·is·corrupted.·If·the·object·owns·its\xd | 131 | ·················the·vector·is·lost,·namely·vec,·the·base·of·the·entries,·is·corrupted.·If·the·object·owns·its\xd |
132 | ·················entries·and·DV·free(),·DV·setSize()·or·DV·setMaxsize()·is·called·before·the·base·has·been\xd | 132 | ·················entries·and·DV·free(),·DV·setSize()·or·DV·setMaxsize()·is·called·before·the·base·has·been\xd |
133 | ·················shifted·back·to·its·original·position,·a·segmentation·violation·will·likely·result.·This·is·a·very\xd | 133 | ·················shifted·back·to·its·original·position,·a·segmentation·violation·will·likely·result.·This·is·a·very\xd |
134 | ·················useful·method,·but·use·with·caution.\xd | 134 | ·················useful·method,·but·use·with·caution.\xd |
135 | ·················Error·checking:·If·dv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 135 | ·················Error·checking:·If·dv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
136 | ···············2.·void·DV_push·(·DV·*dv,·double·val·)·;\xd | 136 | ···············2.·void·DV_push·(·DV·*dv,·double·val·)·;\xd |
137 | ·················This·method·pushes·an·entry·onto·the·vector.·If·the·vector·is·full,·i.e.,·if·size·==·maxsize\xd | 137 | ·················This·method·pushes·an·entry·onto·the·vector.·If·the·vector·is·full,·i.e.,·if·size·==·maxsize\xd |
Offset 159, 15 lines modified | Offset 159, 15 lines modified | ||
159 | ·················This·method·shuffles·the·entries·in·the·vector·using·seed·as·a·seed·to·a·random·number\xd | 159 | ·················This·method·shuffles·the·entries·in·the·vector·using·seed·as·a·seed·to·a·random·number\xd |
160 | ·················generator.\xd | 160 | ·················generator.\xd |
161 | ·················Error·checking:·If·dv·is·NULL,·size·<=·0·or·if·vec·==·NULL,·an·error·message·is·printed·and\xd | 161 | ·················Error·checking:·If·dv·is·NULL,·size·<=·0·or·if·vec·==·NULL,·an·error·message·is·printed·and\xd |
162 | ·················the·program·exits.\xd | 162 | ·················the·program·exits.\xd |
163 | ···············7.·int·DV_sizeOf·(·DV·*dv·)·;\xd | 163 | ···············7.·int·DV_sizeOf·(·DV·*dv·)·;\xd |
164 | ·················This·method·returns·the·number·of·bytes·taken·by·the·object.\xd | 164 | ·················This·method·returns·the·number·of·bytes·taken·by·the·object.\xd |
165 | ·················Error·checking:·If·dv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd | 165 | ·················Error·checking:·If·dv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd |
166 | ··············6·····························DV·:·DRAFT· | 166 | ··············6·····························DV·:·DRAFT·February·18,·2025\xd |
167 | ················8.·double·*·DV_first·(·DV·*dv·)·;\xd | 167 | ················8.·double·*·DV_first·(·DV·*dv·)·;\xd |
168 | ···················double·*·DV_next·(·DV·*dv,·int·*pd·)·;\xd | 168 | ···················double·*·DV_next·(·DV·*dv,·int·*pd·)·;\xd |
169 | ···················These·two·methods·are·used·as·iterators,·e.g.,\xd | 169 | ···················These·two·methods·are·used·as·iterators,·e.g.,\xd |
170 | ···················for·(·pd·=·DV_first(dv)·;·pd·!=·NULL·;·pd·=·DV_next(dv,·pd)·)·{\xd | 170 | ···················for·(·pd·=·DV_first(dv)·;·pd·!=·NULL·;·pd·=·DV_next(dv,·pd)·)·{\xd |
171 | ······················do·something·with·entry·*pd\xd | 171 | ······················do·something·with·entry·*pd\xd |
172 | ···················}\xd | 172 | ···················}\xd |
173 | ···················Each·method·checks·to·see·if·dv·or·pd·is·NULL,·if·so·an·error·message·is·printed·and·the\xd | 173 | ···················Each·method·checks·to·see·if·dv·or·pd·is·NULL,·if·so·an·error·message·is·printed·and·the\xd |
Offset 193, 15 lines modified | Offset 193, 15 lines modified | ||
193 | ···················smaller·than·tausmall,·or·larger·than·taubig·are·placed·into·pnzero,·*pnsmall·and·*pnbig,\xd | 193 | ···················smaller·than·tausmall,·or·larger·than·taubig·are·placed·into·pnzero,·*pnsmall·and·*pnbig,\xd |
194 | ···················respectively.·On·return,·the·size·of·the·xDV·and·yDV·objects·is·npts.\xd | 194 | ···················respectively.·On·return,·the·size·of·the·xDV·and·yDV·objects·is·npts.\xd |
195 | ···················Error·checking:·If·dv,·xDV,·yDV,·pnsmall·or·pnbig·are·NULL,·or·if·npts·≤·0,·or·if·taubig·<·0.0\xd | 195 | ···················Error·checking:·If·dv,·xDV,·yDV,·pnsmall·or·pnbig·are·NULL,·or·if·npts·≤·0,·or·if·taubig·<·0.0\xd |
196 | ···················or·if·tausmall·>·taubig,·an·error·message·is·printed·and·the·program·exits.\xd | 196 | ···················or·if·tausmall·>·taubig,·an·error·message·is·printed·and·the·program·exits.\xd |
197 | ··············1.2.5··IO·methods\xd | 197 | ··············1.2.5··IO·methods\xd |
198 | ··············There·are·the·usual·eight·IO·routines.·The·file·structure·of·a·DV·object·is·simple:·the·first·entry·is\xd | 198 | ··············There·are·the·usual·eight·IO·routines.·The·file·structure·of·a·DV·object·is·simple:·the·first·entry·is\xd |
199 | ··············size,·followed·by·the·size·entries·found·in·vec[].\xd | 199 | ··············size,·followed·by·the·size·entries·found·in·vec[].\xd |
200 | ·······································DV·:·DRAFT·· | 200 | ·······································DV·:·DRAFT··February·18,·2025·····················7\xd |
201 | ···············1.·int·DV_readFromFile·(·DV·*dv,·char·*fn·)·;\xd | 201 | ···············1.·int·DV_readFromFile·(·DV·*dv,·char·*fn·)·;\xd |
202 | ·················This·method·reads·a·DV·object·from·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,·it\xd | 202 | ·················This·method·reads·a·DV·object·from·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,·it\xd |
203 | ·················then·calls·DV·readFromFormattedFile()·or·DV·readFromBinaryFile(),·closes·the·file·and\xd | 203 | ·················then·calls·DV·readFromFormattedFile()·or·DV·readFromBinaryFile(),·closes·the·file·and\xd |
204 | ·················returns·the·value·returned·from·the·called·routine.\xd | 204 | ·················returns·the·value·returned·from·the·called·routine.\xd |
205 | ·················Error·checking:·If·dv·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.dvf·(for·a·formatted·file)\xd | 205 | ·················Error·checking:·If·dv·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.dvf·(for·a·formatted·file)\xd |
206 | ·················or·*.dvb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd | 206 | ·················or·*.dvb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd |
207 | ···············2.·int·DV_readFromFormattedFile·(·DV·*dv,·FILE·*fp·)·;\xd | 207 | ···············2.·int·DV_readFromFormattedFile·(·DV·*dv,·FILE·*fp·)·;\xd |
Offset 230, 15 lines modified | Offset 230, 15 lines modified | ||
230 | ·················This·method·writes·a·DV·object·to·a·file·in·a·human·readable·format.·is·called·to·write·out\xd | 230 | ·················This·method·writes·a·DV·object·to·a·file·in·a·human·readable·format.·is·called·to·write·out\xd |
231 | ·················the·header·and·statistics.·The·entries·of·the·vector·then·follow·in·eighty·column·format·using\xd | 231 | ·················the·header·and·statistics.·The·entries·of·the·vector·then·follow·in·eighty·column·format·using\xd |
232 | ·················the·DVfprintf()·method.·The·value·1·is·returned.\xd | 232 | ·················the·DVfprintf()·method.·The·value·1·is·returned.\xd |
233 | ·················Error·checking:·If·dv·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 233 | ·················Error·checking:·If·dv·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
234 | ···············8.·int·DV_writeStats·(·DV·*dv,·FILE·*fp·)·;\xd | 234 | ···············8.·int·DV_writeStats·(·DV·*dv,·FILE·*fp·)·;\xd |
235 | ·················This·method·writes·the·header·and·statistics·to·a·file.·The·value·1·is·returned.\xd | 235 | ·················This·method·writes·the·header·and·statistics·to·a·file.·The·value·1·is·returned.\xd |
236 | ·················Error·checking:·If·dv·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 236 | ·················Error·checking:·If·dv·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
237 | ···········8······················· | 237 | ···········8·······················DV·:·DRAFT·February·18,·2025\xd |
238 | ·············9.·int·DV_writeForMatlab·(·DV·*dv,·char·*name,·FILE·*fp·)·;\xd | 238 | ·············9.·int·DV_writeForMatlab·(·DV·*dv,·char·*name,·FILE·*fp·)·;\xd |
239 | ···············This·method·writes·the·entries·of·the·vector·to·a·file·suitable·to·be·read·by·Matlab.·The\xd | 239 | ···············This·method·writes·the·entries·of·the·vector·to·a·file·suitable·to·be·read·by·Matlab.·The\xd |
240 | ···············character·string·name·is·the·name·of·the·vector,·e.g,·if·name·=·"A",·then·we·have·lines·of·the\xd | 240 | ···············character·string·name·is·the·name·of·the·vector,·e.g,·if·name·=·"A",·then·we·have·lines·of·the\xd |
241 | ···············form\xd | 241 | ···············form\xd |
242 | ···············A(1)·=·1.000000000000e0·;\xd | 242 | ···············A(1)·=·1.000000000000e0·;\xd |
243 | ···············A(2)·=·2.000000000000e0·;\xd | 243 | ···············A(2)·=·2.000000000000e0·;\xd |
244 | ···············...\xd | 244 | ···············...\xd |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·DenseMtx.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·DenseMtx.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1623, 20 lines modified | Offset 1623, 21 lines modified | ||
1623 | end·readonly·def | 1623 | end·readonly·def |
1624 | /Encoding·256·array | 1624 | /Encoding·256·array |
1625 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1625 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1626 | dup·44·/comma·put | 1626 | dup·44·/comma·put |
1627 | dup·48·/zero·put | 1627 | dup·48·/zero·put |
1628 | dup·49·/one·put | 1628 | dup·49·/one·put |
1629 | dup·50·/two·put | 1629 | dup·50·/two·put |
1630 | dup·52·/four·put | ||
1631 | dup·5 | 1630 | dup·53·/five·put |
1631 | dup·56·/eight·put | ||
1632 | dup·58·/colon·put | 1632 | dup·58·/colon·put |
1633 | dup·7 | 1633 | dup·70·/F·put |
1634 | dup·97·/a·put | 1634 | dup·97·/a·put |
1635 | dup·98·/b·put | ||
1635 | dup·1 | 1636 | dup·101·/e·put |
1636 | dup·114·/r·put | 1637 | dup·114·/r·put |
1637 | dup·117·/u·put | 1638 | dup·117·/u·put |
1638 | dup·121·/y·put | 1639 | dup·121·/y·put |
1639 | readonly·def | 1640 | readonly·def |
1640 | currentdict·end | 1641 | currentdict·end |
1641 | currentfile·eexec | 1642 | currentfile·eexec |
1642 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1643 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1820, 89 lines modified | Offset 1821, 93 lines modified | ||
1820 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1821 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1821 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1822 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1822 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1823 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1823 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1824 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1824 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1825 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1825 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1826 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1826 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1827 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1827 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1828 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1828 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1829 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1830 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1831 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1832 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1833 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1834 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1835 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1836 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1837 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1838 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1839 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1840 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1841 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1842 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1843 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1844 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1845 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1846 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1847 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1848 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1849 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1850 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1851 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1852 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1853 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1854 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1855 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1856 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1857 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1858 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1859 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1860 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1861 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1862 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1863 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1864 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1865 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1866 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1867 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1868 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1869 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1870 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1871 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1872 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1873 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1874 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1875 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1876 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1877 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1878 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1879 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1880 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1881 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1882 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1883 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1884 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1885 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1886 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1887 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1888 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1889 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1890 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1891 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1892 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1893 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1894 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1895 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1896 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1897 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1898 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1899 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1900 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1901 | 1829 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1830 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1831 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1832 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1833 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1834 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1835 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 17436/29330 bytes (59.45%) of diff not shown. |
Offset 22, 15 lines modified | Offset 22, 15 lines modified | ||
22 | ·············•·double·*entries·:·pointer·to·the·base·address·of·the·double·vector·that·contains·the·entries.\xd | 22 | ·············•·double·*entries·:·pointer·to·the·base·address·of·the·double·vector·that·contains·the·entries.\xd |
23 | ·············•·DV·wrkDV·:·object·that·manages·the·owned·working·storage.\xd | 23 | ·············•·DV·wrkDV·:·object·that·manages·the·owned·working·storage.\xd |
24 | ·············•·DenseMtx·*next·:·link·to·a·next·object·in·a·singly·linked·list.\xd | 24 | ·············•·DenseMtx·*next·:·link·to·a·next·object·in·a·singly·linked·list.\xd |
25 | ·············One·can·query·the·type·of·entries·via·two·macros.\xd | 25 | ·············One·can·query·the·type·of·entries·via·two·macros.\xd |
26 | ·············•·DENSEMTX·IS·REAL(mtx)·returns·1·if·the·matrix·has·real·entries,·and·0·otherwise.\xd | 26 | ·············•·DENSEMTX·IS·REAL(mtx)·returns·1·if·the·matrix·has·real·entries,·and·0·otherwise.\xd |
27 | ·············•·DENSEMTX·IS·COMPLEX(mtx)·returns·1·if·the·matrix·has·complex·entries,·and·0·otherwise.\xd | 27 | ·············•·DENSEMTX·IS·COMPLEX(mtx)·returns·1·if·the·matrix·has·complex·entries,·and·0·otherwise.\xd |
28 | ·············································1\xd | 28 | ·············································1\xd |
29 | ··············2···························DenseMtx·:·DRAFT· | 29 | ··············2···························DenseMtx·:·DRAFT·February·18,·2025\xd |
30 | ··············1.2···Prototypes·and·descriptions·of·DenseMtx·methods\xd | 30 | ··············1.2···Prototypes·and·descriptions·of·DenseMtx·methods\xd |
31 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·DenseMtx\xd | 31 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·DenseMtx\xd |
32 | ··············object.\xd | 32 | ··············object.\xd |
33 | ··············1.2.1··Basic·methods\xd | 33 | ··············1.2.1··Basic·methods\xd |
34 | ··············Asusual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing·any·allocated\xd | 34 | ··············Asusual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing·any·allocated\xd |
35 | ··············data,·and·free’ing·the·object.\xd | 35 | ··············data,·and·free’ing·the·object.\xd |
36 | ················1.·DenseMtx·*·DenseMtx_new·(·void·)·;\xd | 36 | ················1.·DenseMtx·*·DenseMtx_new·(·void·)·;\xd |
Offset 58, 15 lines modified | Offset 58, 15 lines modified | ||
58 | ················3.·void·DenseMtx_dimensions·(·DenseMtx·*mtx,·int·*pnrow,·int·*pncol·)·;\xd | 58 | ················3.·void·DenseMtx_dimensions·(·DenseMtx·*mtx,·int·*pnrow,·int·*pncol·)·;\xd |
59 | ··················This·method·fills·*pnrow·and·*pncol·with·nrow·and·ncol.\xd | 59 | ··················This·method·fills·*pnrow·and·*pncol·with·nrow·and·ncol.\xd |
60 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 60 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
61 | ················4.·int·DenseMtx_columnIncrement·(·DenseMtx·*mtx·)·;\xd | 61 | ················4.·int·DenseMtx_columnIncrement·(·DenseMtx·*mtx·)·;\xd |
62 | ··················This·method·returns·the·row·increment·of·the·object,·the·difference·in·memory·locations·of·two·entries\xd | 62 | ··················This·method·returns·the·row·increment·of·the·object,·the·difference·in·memory·locations·of·two·entries\xd |
63 | ··················in·consecutive·columns·in·the·same·row.\xd | 63 | ··················in·consecutive·columns·in·the·same·row.\xd |
64 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 64 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
65 | ···············································DenseMtx·:·DRAFT···· | 65 | ···············································DenseMtx·:·DRAFT····February·18,·2025···························3\xd |
66 | ··················5.·int·DenseMtx_rowIncrement·(·DenseMtx·*mtx·)·;\xd | 66 | ··················5.·int·DenseMtx_rowIncrement·(·DenseMtx·*mtx·)·;\xd |
67 | ····················This·method·returns·the·row·increment·of·the·object,·the·difference·in·memory·locations·of·two·entries\xd | 67 | ····················This·method·returns·the·row·increment·of·the·object,·the·difference·in·memory·locations·of·two·entries\xd |
68 | ····················in·consecutive·rows·in·the·same·column.\xd | 68 | ····················in·consecutive·rows·in·the·same·column.\xd |
69 | ····················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 69 | ····················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
70 | ··················6.·void·DenseMtx_rowIndices·(·DenseMtx·*mtx,·int·*pnrow,·**prowind·)·;\xd | 70 | ··················6.·void·DenseMtx_rowIndices·(·DenseMtx·*mtx,·int·*pnrow,·**prowind·)·;\xd |
71 | ····················This·method·fills·*pnrow·with·nrow,·the·number·of·rows,·and·*prowind·with·rowind,·a·pointer·to·the\xd | 71 | ····················This·method·fills·*pnrow·with·nrow,·the·number·of·rows,·and·*prowind·with·rowind,·a·pointer·to·the\xd |
72 | ····················row·indices.\xd | 72 | ····················row·indices.\xd |
Offset 97, 15 lines modified | Offset 97, 15 lines modified | ||
97 | ····················message·is·printed·and·the·program·exits.\xd | 97 | ····················message·is·printed·and·the·program·exits.\xd |
98 | ·················13.·void·DenseMtx_setComplexEntry·(·DenseMtx·*mtx,·int·irow,·int·jcol,\xd | 98 | ·················13.·void·DenseMtx_setComplexEntry·(·DenseMtx·*mtx,·int·irow,·int·jcol,\xd |
99 | ·······················································double·real,·double·imag·)·;\xd | 99 | ·······················································double·real,·double·imag·)·;\xd |
100 | ····················This·method·sets·the·real·and·imaginary·parts·of·the·entry·in·row·irow·and·column·jcol·to·be\xd | 100 | ····················This·method·sets·the·real·and·imaginary·parts·of·the·entry·in·row·irow·and·column·jcol·to·be\xd |
101 | ····················(real,imag).\xd | 101 | ····················(real,imag).\xd |
102 | ····················Error·checking:·If·mtx·is·NULL,·or·if·the·matrix·is·not·complex,·or·if·irow·or·jcol·is·out·of·range,·an\xd | 102 | ····················Error·checking:·If·mtx·is·NULL,·or·if·the·matrix·is·not·complex,·or·if·irow·or·jcol·is·out·of·range,·an\xd |
103 | ····················error·message·is·printed·and·the·program·exits.\xd | 103 | ····················error·message·is·printed·and·the·program·exits.\xd |
104 | ················4································ | 104 | ················4································DenseMtx·:·DRAFT·February·18,·2025\xd |
105 | ·················14.·int·DenseMtx_row·(·DenseMtx·*mtx,·int·irow,·double·**prowent·)·;\xd | 105 | ·················14.·int·DenseMtx_row·(·DenseMtx·*mtx,·int·irow,·double·**prowent·)·;\xd |
106 | ·····················This·method·fills·*prowent·with·the·first·location·of·the·entries·in·row·irow.\xd | 106 | ·····················This·method·fills·*prowent·with·the·first·location·of·the·entries·in·row·irow.\xd |
107 | ·····················Return·codes:·1·is·a·normal·return,·-1·means·mtx·is·NULL,·-2·means·invalid·type·for·mtx,·-3·means\xd | 107 | ·····················Return·codes:·1·is·a·normal·return,·-1·means·mtx·is·NULL,·-2·means·invalid·type·for·mtx,·-3·means\xd |
108 | ·····················irow·is·out-of-range,·-4·means·prowent·is·NULL.\xd | 108 | ·····················irow·is·out-of-range,·-4·means·prowent·is·NULL.\xd |
109 | ·················15.·int·DenseMtx_column·(·DenseMtx·*mtx,·int·jcol,·double·**pcolent·)·;\xd | 109 | ·················15.·int·DenseMtx_column·(·DenseMtx·*mtx,·int·jcol,·double·**pcolent·)·;\xd |
110 | ·····················This·method·fills·*pcolent·with·the·first·location·of·the·entries·in·column·jcol.\xd | 110 | ·····················This·method·fills·*pcolent·with·the·first·location·of·the·entries·in·column·jcol.\xd |
111 | ·····················Return·codes:·1·is·a·normal·return,·-1·means·mtx·is·NULL,·-2·means·invalid·type·for·mtx,·-3·means\xd | 111 | ·····················Return·codes:·1·is·a·normal·return,·-1·means·mtx·is·NULL,·-2·means·invalid·type·for·mtx,·-3·means\xd |
Offset 139, 15 lines modified | Offset 139, 15 lines modified | ||
139 | ···················4.·void·DenseMtx_initFromBuffer·(·DenseMtx·*mtx·)·;\xd | 139 | ···················4.·void·DenseMtx_initFromBuffer·(·DenseMtx·*mtx·)·;\xd |
140 | ·····················This·method·initializes·the·object·using·information·present·in·the·workspace·buffer.·This·method·is\xd | 140 | ·····················This·method·initializes·the·object·using·information·present·in·the·workspace·buffer.·This·method·is\xd |
141 | ·····················used·to·initialize·the·DenseMtx·object·when·it·has·been·received·as·an·MPI·message.\xd | 141 | ·····················used·to·initialize·the·DenseMtx·object·when·it·has·been·received·as·an·MPI·message.\xd |
142 | ·····················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 142 | ·····················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
143 | ···················5.·void·DenseMtx_setA2·(·DenseMtx·*mtx,·A2·*a2·)·;\xd | 143 | ···················5.·void·DenseMtx_setA2·(·DenseMtx·*mtx,·A2·*a2·)·;\xd |
144 | ·····················This·method·initializes·the·a2·object·to·point·into·the·entries·of·the·matrix.\xd | 144 | ·····················This·method·initializes·the·a2·object·to·point·into·the·entries·of·the·matrix.\xd |
145 | ·····················Error·checking:·If·mtx·or·a2·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 145 | ·····················Error·checking:·If·mtx·or·a2·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
146 | ········································· | 146 | ·········································DenseMtx·:·DRAFT··February·18,·2025······················5\xd |
147 | ··············1.2.4··Utility·methods\xd | 147 | ··············1.2.4··Utility·methods\xd |
148 | ················1.·int·DenseMtx_nbytesNeeded·(·int·type,·int·nrow,·int·ncol·)·;\xd | 148 | ················1.·int·DenseMtx_nbytesNeeded·(·int·type,·int·nrow,·int·ncol·)·;\xd |
149 | ··················This·method·returns·the·number·of·bytes·required·to·store·the·object’s·information·in·its·buffer.\xd | 149 | ··················This·method·returns·the·number·of·bytes·required·to·store·the·object’s·information·in·its·buffer.\xd |
150 | ··················Error·checking:·If·type·is·neither·SPOOLES·REAL·nor·SPOOLES·COMPLEX,·or·if·nrow·or·ncol·is·less·than\xd | 150 | ··················Error·checking:·If·type·is·neither·SPOOLES·REAL·nor·SPOOLES·COMPLEX,·or·if·nrow·or·ncol·is·less·than\xd |
151 | ··················zero,·an·error·message·is·printed·and·the·program·exits.\xd | 151 | ··················zero,·an·error·message·is·printed·and·the·program·exits.\xd |
152 | ················2.·int·DenseMtx_nbytesInWorkspace·(·DenseMtx·*mtx·)·;\xd | 152 | ················2.·int·DenseMtx_nbytesInWorkspace·(·DenseMtx·*mtx·)·;\xd |
153 | ··················This·method·returns·the·number·of·bytes·in·the·workspace·owned·by·this·object.\xd | 153 | ··················This·method·returns·the·number·of·bytes·in·the·workspace·owned·by·this·object.\xd |
Offset 174, 21 lines modified | Offset 174, 21 lines modified | ||
174 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 174 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
175 | ················7.·void·DenseMtx_copyRow·(·DenseMtx·*mtxB,·int·irowB,·DenseMtx·*mtxA,·int·irowA·)·;\xd | 175 | ················7.·void·DenseMtx_copyRow·(·DenseMtx·*mtxB,·int·irowB,·DenseMtx·*mtxA,·int·irowA·)·;\xd |
176 | ··················This·method·copies·row·irowA·from·matrix·mtxA·into·row·irowB·of·matrix·mtxB.\xd | 176 | ··················This·method·copies·row·irowA·from·matrix·mtxA·into·row·irowB·of·matrix·mtxB.\xd |
177 | ··················Error·checking:·If·mtxB·is·NULL,·or·if·irowB·is·out·of·range,·or·if·mtxA·is·NULL,·or·if·irowA·is·out·of\xd | 177 | ··················Error·checking:·If·mtxB·is·NULL,·or·if·irowB·is·out·of·range,·or·if·mtxA·is·NULL,·or·if·irowA·is·out·of\xd |
178 | ··················range,·or·if·the·number·of·columns·in·mtxB·and·mtxA·are·not·the·same,·an·error·message·is·printed·and\xd | 178 | ··················range,·or·if·the·number·of·columns·in·mtxB·and·mtxA·are·not·the·same,·an·error·message·is·printed·and\xd |
179 | ··················the·program·exits.\xd | 179 | ··················the·program·exits.\xd |
180 | ················8.·void·DenseMtx_copyRowAndIndex·(·DenseMtx·*mtxB,·int·irowB,\xd | 180 | ················8.·void·DenseMtx_copyRowAndIndex·(·DenseMtx·*mtxB,·int·irowB,\xd |
181 | ················································ | 181 | ················································DenseMtx·*mtxA,·int·irowA·)·;\xd |
182 | ··················This·method·copies·row·irowA·from·matrix·mtxA·into·row·irowB·of·matrix·mtxB,·and·copies·the·index\xd | 182 | ··················This·method·copies·row·irowA·from·matrix·mtxA·into·row·irowB·of·matrix·mtxB,·and·copies·the·index\xd |
183 | ··················of·row·irowA·of·mtxA·into·location·irowB·of·the·row·indices·for·mtxB.\xd | 183 | ··················of·row·irowA·of·mtxA·into·location·irowB·of·the·row·indices·for·mtxB.\xd |
184 | ··················Error·checking:·If·mtxB·is·NULL,·or·if·irowB·is·out·of·range,·or·if·mtxA·is·NULL,·or·if·irowA·is·out·of\xd | 184 | ··················Error·checking:·If·mtxB·is·NULL,·or·if·irowB·is·out·of·range,·or·if·mtxA·is·NULL,·or·if·irowA·is·out·of\xd |
185 | ··················range,·or·if·the·number·of·columns·in·mtxB·and·mtxA·are·not·the·same,·an·error·message·is·printed·and\xd | 185 | ··················range,·or·if·the·number·of·columns·in·mtxB·and·mtxA·are·not·the·same,·an·error·message·is·printed·and\xd |
186 | ··················the·program·exits.\xd | 186 | ··················the·program·exits.\xd |
187 | ········6···············DenseMtx·:·DRAFT· | 187 | ········6···············DenseMtx·:·DRAFT·February·18,·2025\xd |
188 | ·········9.·void·DenseMtx_addRow·(·DenseMtx·*mtxB,·int·irowB,·DenseMtx·*mtxA,·int·irowA·)·;\xd | 188 | ·········9.·void·DenseMtx_addRow·(·DenseMtx·*mtxB,·int·irowB,·DenseMtx·*mtxA,·int·irowA·)·;\xd |
189 | ··········This·method·adds·row·irowA·from·matrix·mtxA·into·row·irowB·of·matrix·mtxB.\xd | 189 | ··········This·method·adds·row·irowA·from·matrix·mtxA·into·row·irowB·of·matrix·mtxB.\xd |
190 | ··········Error·checking:·If·mtxB·is·NULL,·or·if·irowB·is·out·of·range,·or·if·mtxA·is·NULL,·or·if·irowA·is·out·of\xd | 190 | ··········Error·checking:·If·mtxB·is·NULL,·or·if·irowB·is·out·of·range,·or·if·mtxA·is·NULL,·or·if·irowA·is·out·of\xd |
191 | ··········range,·or·if·the·number·of·columns·in·mtxB·and·mtxA·are·not·the·same,·an·error·message·is·printed·and\xd | 191 | ··········range,·or·if·the·number·of·columns·in·mtxB·and·mtxA·are·not·the·same,·an·error·message·is·printed·and\xd |
192 | ··········the·program·exits.\xd | 192 | ··········the·program·exits.\xd |
193 | ·········10.·void·DenseMtx_zero·(·DenseMtx·*mtx·)·;\xd | 193 | ·········10.·void·DenseMtx_zero·(·DenseMtx·*mtx·)·;\xd |
194 | ··········This·method·zeros·the·entries·in·the·matrix.\xd | 194 | ··········This·method·zeros·the·entries·in·the·matrix.\xd |
Offset 219, 15 lines modified | Offset 219, 15 lines modified | ||
219 | ··········This·method·copies·vector·vec[]·into·row·irow·of·matrix·mtx.\xd | 219 | ··········This·method·copies·vector·vec[]·into·row·irow·of·matrix·mtx.\xd |
220 | ··········Error·checking:·If·mtx·or·vec·is·NULL,·or·if·irow·<·0·or·irow·≥·nrow,·an·error·message·is·printed·and\xd | 220 | ··········Error·checking:·If·mtx·or·vec·is·NULL,·or·if·irow·<·0·or·irow·≥·nrow,·an·error·message·is·printed·and\xd |
221 | ··········the·program·exits.\xd | 221 | ··········the·program·exits.\xd |
222 | ·········18.·double·DenseMtx_addVectorIntoRow·(·DenseMtx·*mtx,·int·irow,·double·vec[]·)·;\xd | 222 | ·········18.·double·DenseMtx_addVectorIntoRow·(·DenseMtx·*mtx,·int·irow,·double·vec[]·)·;\xd |
223 | ··········This·method·adds·vector·vec[]·into·row·irow·of·matrix·mtx.\xd | 223 | ··········This·method·adds·vector·vec[]·into·row·irow·of·matrix·mtx.\xd |
224 | ··········Error·checking:·If·mtx·or·vec·is·NULL,·or·if·irow·<·0·or·irow·≥·nrow,·an·error·message·is·printed·and\xd | 224 | ··········Error·checking:·If·mtx·or·vec·is·NULL,·or·if·irow·<·0·or·irow·≥·nrow,·an·error·message·is·printed·and\xd |
225 | ··········the·program·exits.\xd | 225 | ··········the·program·exits.\xd |
226 | ········································· | 226 | ·········································DenseMtx·:·DRAFT··February·18,·2025······················7\xd |
227 | ··············1.2.5··IO·methods\xd | 227 | ··············1.2.5··IO·methods\xd |
228 | ··············Thefile·structure·of·a·DenseMtxobject·is·simple.·First·comes·seven·scalars,·type,·rowid,·colid,·nrow,·ncol,\xd | 228 | ··············Thefile·structure·of·a·DenseMtxobject·is·simple.·First·comes·seven·scalars,·type,·rowid,·colid,·nrow,·ncol,\xd |
229 | ··············inc1·and·inc2,·followed·by·the·row·indices,·followed·by·the·column·indices,·and·then·followed·by·the·matrix\xd | 229 | ··············inc1·and·inc2,·followed·by·the·row·indices,·followed·by·the·column·indices,·and·then·followed·by·the·matrix\xd |
230 | ··············entries.\xd | 230 | ··············entries.\xd |
231 | ················1.·int·DenseMtx_readFromFile·(·DenseMtx·*mtx,·char·*fn·)·;\xd | 231 | ················1.·int·DenseMtx_readFromFile·(·DenseMtx·*mtx,·char·*fn·)·;\xd |
232 | ··················This·method·reads·an·DenseMtx·object·from·a·file.·If·the·the·file·can·be·opened·successfully,·the\xd | 232 | ··················This·method·reads·an·DenseMtx·object·from·a·file.·If·the·the·file·can·be·opened·successfully,·the\xd |
233 | ··················method·calls·DenseMtx·readFromFormattedFile()·or·DenseMtx·readFromBinaryFile(),·closes·the\xd | 233 | ··················method·calls·DenseMtx·readFromFormattedFile()·or·DenseMtx·readFromBinaryFile(),·closes·the\xd |
Offset 258, 15 lines modified | Offset 258, 15 lines modified | ||
258 | ··················Error·checking:·If·mtx·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 258 | ··················Error·checking:·If·mtx·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
259 | ················7.·int·DenseMtx_writeStats·(·DenseMtx·*mtx,·FILE·*fp·)·;\xd | 259 | ················7.·int·DenseMtx_writeStats·(·DenseMtx·*mtx,·FILE·*fp·)·;\xd |
260 | ··················This·method·writes·out·a·header·and·statistics·to·a·file.·The·value·1·is·returned.\xd | 260 | ··················This·method·writes·out·a·header·and·statistics·to·a·file.·The·value·1·is·returned.\xd |
261 | ··················Error·checking:·If·mtx·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 261 | ··················Error·checking:·If·mtx·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
262 | ················8.·void·DenseMtx_writeForHumanEye·(·DenseMtx·*mtx,·FILE·*fp·)·;\xd | 262 | ················8.·void·DenseMtx_writeForHumanEye·(·DenseMtx·*mtx,·FILE·*fp·)·;\xd |
263 | ··················This·method·writes·a·DenseMtx·object·to·a·file·in·an·easily·readable·format.\xd | 263 | ··················This·method·writes·a·DenseMtx·object·to·a·file·in·an·easily·readable·format.\xd |
264 | ··················Error·checking:·If·mtx·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 264 | ··················Error·checking:·If·mtx·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
265 | ··············8····························DenseMtx·:·DRAFT· | 265 | ··············8····························DenseMtx·:·DRAFT·February·18,·2025\xd |
266 | ················9.·void·DenseMtx_writeForMatlab·(·DenseMtx·*mtx,·char·*mtxname,·FILE·*fp·)·;\xd | 266 | ················9.·void·DenseMtx_writeForMatlab·(·DenseMtx·*mtx,·char·*mtxname,·FILE·*fp·)·;\xd |
267 | ···················This·method·writes·out·a·DenseMtx·object·to·a·file·in·a·Matlab·format.·A·sample·line·is\xd | 267 | ···················This·method·writes·out·a·DenseMtx·object·to·a·file·in·a·Matlab·format.·A·sample·line·is\xd |
268 | ···················a(10,5)·=·-1.550328201511e-01·+···1.848033378871e+00*i·;\xd | 268 | ···················a(10,5)·=·-1.550328201511e-01·+···1.848033378871e+00*i·;\xd |
269 | ···················for·complex·matrices,·or\xd | 269 | ···················for·complex·matrices,·or\xd |
270 | ···················a(10,5)·=·-1.550328201511e-01·;\xd | 270 | ···················a(10,5)·=·-1.550328201511e-01·;\xd |
271 | ···················for·real·matrices,·where·mtxname·=·"a".·The·matrix·indices·come·from·the·rowind[]·and·colind[]\xd | 271 | ···················for·real·matrices,·where·mtxname·=·"a".·The·matrix·indices·come·from·the·rowind[]·and·colind[]\xd |
272 | ···················vectors,·and·are·incremented·by·one·to·follow·the·Matlab·and·FORTRAN·convention.\xd | 272 | ···················vectors,·and·are·incremented·by·one·to·follow·the·Matlab·and·FORTRAN·convention.\xd |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·Drand.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·Drand.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1721, 20 lines modified | Offset 1721, 21 lines modified | ||
1721 | end·readonly·def | 1721 | end·readonly·def |
1722 | /Encoding·256·array | 1722 | /Encoding·256·array |
1723 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1723 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1724 | dup·44·/comma·put | 1724 | dup·44·/comma·put |
1725 | dup·48·/zero·put | 1725 | dup·48·/zero·put |
1726 | dup·49·/one·put | 1726 | dup·49·/one·put |
1727 | dup·50·/two·put | 1727 | dup·50·/two·put |
1728 | dup·52·/four·put | ||
1729 | dup·5 | 1728 | dup·53·/five·put |
1729 | dup·56·/eight·put | ||
1730 | dup·58·/colon·put | 1730 | dup·58·/colon·put |
1731 | dup·7 | 1731 | dup·70·/F·put |
1732 | dup·97·/a·put | 1732 | dup·97·/a·put |
1733 | dup·98·/b·put | ||
1733 | dup·1 | 1734 | dup·101·/e·put |
1734 | dup·114·/r·put | 1735 | dup·114·/r·put |
1735 | dup·117·/u·put | 1736 | dup·117·/u·put |
1736 | dup·121·/y·put | 1737 | dup·121·/y·put |
1737 | readonly·def | 1738 | readonly·def |
1738 | currentdict·end | 1739 | currentdict·end |
1739 | currentfile·eexec | 1740 | currentfile·eexec |
1740 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1741 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1918, 89 lines modified | Offset 1919, 93 lines modified | ||
1918 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1919 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1919 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1920 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1920 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1921 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1921 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1922 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1922 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1923 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1923 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1924 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1924 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1925 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1925 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1926 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1926 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1927 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1928 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1929 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1930 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1931 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1932 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1933 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1934 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1935 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1936 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1937 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1938 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1939 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1940 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1941 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1942 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1943 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1944 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1945 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1946 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1947 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1948 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1949 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1950 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1951 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1952 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1953 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1954 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1955 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1956 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1957 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1958 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1959 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1960 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1961 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1962 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1963 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1964 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1965 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1966 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1967 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1968 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1969 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1970 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1971 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1972 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1973 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1974 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1975 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1976 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1977 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1978 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1979 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1980 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1981 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1982 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1983 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1984 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1985 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1986 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1987 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1988 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1989 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1990 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1991 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1992 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1993 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1994 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1995 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1996 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1997 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1998 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1999 | 1927 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1928 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1929 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1930 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1931 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1932 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1933 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 7220/19111 bytes (37.78%) of diff not shown. |
Offset 15, 15 lines modified | Offset 15, 15 lines modified | ||
15 | ·············•·double·mean·:·mean·for·a·normal·distribution\xd | 15 | ·············•·double·mean·:·mean·for·a·normal·distribution\xd |
16 | ·············•·double·sigma·:·variation·for·a·normal·distribution\xd | 16 | ·············•·double·sigma·:·variation·for·a·normal·distribution\xd |
17 | ·············•·int·mode:·mode·of·the·object,·uniform·is·1,·normal·is·2\xd | 17 | ·············•·int·mode:·mode·of·the·object,·uniform·is·1,·normal·is·2\xd |
18 | ···········1.2··Prototypes·and·descriptions·of·Drand·methods\xd | 18 | ···········1.2··Prototypes·and·descriptions·of·Drand·methods\xd |
19 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 19 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
20 | ···········Drand·object.\xd | 20 | ···········Drand·object.\xd |
21 | ·············································1\xd | 21 | ·············································1\xd |
22 | ··············2··························· | 22 | ··············2···························Drand·:·DRAFT·February·18,·2025\xd |
23 | ··············1.2.1··Basic·methods\xd | 23 | ··············1.2.1··Basic·methods\xd |
24 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 24 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
25 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 25 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
26 | ················1.·Drand·*·Drand_new·(·void·)·;\xd | 26 | ················1.·Drand·*·Drand_new·(·void·)·;\xd |
27 | ···················This·method·simply·allocates·storage·for·the·Drand·structure·and·then·sets·the·default·fields\xd | 27 | ···················This·method·simply·allocates·storage·for·the·Drand·structure·and·then·sets·the·default·fields\xd |
28 | ···················by·a·call·to·Drand·setDefaultFields().\xd | 28 | ···················by·a·call·to·Drand·setDefaultFields().\xd |
29 | ················2.·void·Drand_setDefaultFields·(·Drand·*drand·)·;\xd | 29 | ················2.·void·Drand_setDefaultFields·(·Drand·*drand·)·;\xd |
Offset 47, 15 lines modified | Offset 47, 15 lines modified | ||
47 | ················1.·void·Drand_init·(·Drand·*drand·)·;\xd | 47 | ················1.·void·Drand_init·(·Drand·*drand·)·;\xd |
48 | ···················This·initializer·simply·sets·the·default·fields·with·a·call·to·Drand·setDefaultFields().\xd | 48 | ···················This·initializer·simply·sets·the·default·fields·with·a·call·to·Drand·setDefaultFields().\xd |
49 | ···················Error·checking:·If·drand·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 49 | ···················Error·checking:·If·drand·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
50 | ················2.·void·Drand_setSeed·(·Drand·*drand,·int·seed1·)·;\xd | 50 | ················2.·void·Drand_setSeed·(·Drand·*drand,·int·seed1·)·;\xd |
51 | ···················This·method·sets·the·random·number·seeds·using·a·single·input·seed.\xd | 51 | ···················This·method·sets·the·random·number·seeds·using·a·single·input·seed.\xd |
52 | ···················Error·checking:·If·drand·is·NULL,·or·if·seed1·≤·0,·or·if·seed1·≥·2147483563,·an·error·message\xd | 52 | ···················Error·checking:·If·drand·is·NULL,·or·if·seed1·≤·0,·or·if·seed1·≥·2147483563,·an·error·message\xd |
53 | ···················is·printed·and·the·program·exits.\xd | 53 | ···················is·printed·and·the·program·exits.\xd |
54 | ····································· | 54 | ·····································Drand·:·DRAFT···February·18,·2025···················3\xd |
55 | ···············3.·void·Drand_setSeeds·(·Drand·*drand,·int·seed1,·int·seed2·)·;\xd | 55 | ···············3.·void·Drand_setSeeds·(·Drand·*drand,·int·seed1,·int·seed2·)·;\xd |
56 | ·················This·method·sets·the·random·number·seeds·using·two·input·seeds.\xd | 56 | ·················This·method·sets·the·random·number·seeds·using·two·input·seeds.\xd |
57 | ·················Error·checking:·If·drand·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 57 | ·················Error·checking:·If·drand·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
58 | ·················Error·checking:·If·drand·is·NULL,·or·if·seed1·≤·0,·or·if·seed1·≥·2147483563,·or·if·seed2·≤·0,\xd | 58 | ·················Error·checking:·If·drand·is·NULL,·or·if·seed1·≤·0,·or·if·seed1·≥·2147483563,·or·if·seed2·≤·0,\xd |
59 | ·················or·if·seed2·≥·2147483399,·an·error·message·is·printed·and·the·program·exits.\xd | 59 | ·················or·if·seed2·≥·2147483399,·an·error·message·is·printed·and·the·program·exits.\xd |
60 | ···············4.·void·Drand_setNormal·(·Drand·*drand,·double·mean,·double·sigma·)·;\xd | 60 | ···············4.·void·Drand_setNormal·(·Drand·*drand,·double·mean,·double·sigma·)·;\xd |
61 | ·················This·method·sets·the·mode·to·be·a·normal·distribution·with·mean·mean·and·variation·sigma.\xd | 61 | ·················This·method·sets·the·mode·to·be·a·normal·distribution·with·mean·mean·and·variation·sigma.\xd |
Offset 79, 15 lines modified | Offset 79, 15 lines modified | ||
79 | ·················program·exits.\xd | 79 | ·················program·exits.\xd |
80 | ···············4.·void·Drand_fillIvector·(·Drand·*drand,·int·n,·int·vec[]·)·;\xd | 80 | ···············4.·void·Drand_fillIvector·(·Drand·*drand,·int·n,·int·vec[]·)·;\xd |
81 | ·················This·method·fills·vec[]·with·n·int·random·numbers.\xd | 81 | ·················This·method·fills·vec[]·with·n·int·random·numbers.\xd |
82 | ·················Error·checking:·If·drand·or·vec·are·NULL·or·if·n·<·0·,·an·error·message·is·printed·and·the\xd | 82 | ·················Error·checking:·If·drand·or·vec·are·NULL·or·if·n·<·0·,·an·error·message·is·printed·and·the\xd |
83 | ·················program·exits.\xd | 83 | ·················program·exits.\xd |
84 | ············1.3···Driver·programs·for·the·Drand·object\xd | 84 | ············1.3···Driver·programs·for·the·Drand·object\xd |
85 | ············This·section·contains·brief·descriptions·of·the·driver·programs.\xd | 85 | ············This·section·contains·brief·descriptions·of·the·driver·programs.\xd |
86 | ·······4··············Drand·:·DRAFT· | 86 | ·······4··············Drand·:·DRAFT·February·18,·2025\xd |
87 | ········1.·testDrand·msglvl·msgFile·distribution·param1·param2·seed1·seed2·n\xd | 87 | ········1.·testDrand·msglvl·msgFile·distribution·param1·param2·seed1·seed2·n\xd |
88 | ··········This·driver·program·test·the·Drand·random·number·generator.\xd | 88 | ··········This·driver·program·test·the·Drand·random·number·generator.\xd |
89 | ···········•·The·msglvl·parameter·determines·the·amount·of·output.\xd | 89 | ···········•·The·msglvl·parameter·determines·the·amount·of·output.\xd |
90 | ···········•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd | 90 | ···········•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd |
91 | ············message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd | 91 | ············message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd |
92 | ············data.\xd | 92 | ············data.\xd |
93 | ···········•·The·distribution·parameter·specifies·the·mode·of·the·object.·If·1,·the·distribution·is\xd | 93 | ···········•·The·distribution·parameter·specifies·the·mode·of·the·object.·If·1,·the·distribution·is\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·EGraph.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·EGraph.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1407, 20 lines modified | Offset 1407, 21 lines modified | ||
1407 | end·readonly·def | 1407 | end·readonly·def |
1408 | /Encoding·256·array | 1408 | /Encoding·256·array |
1409 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1409 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1410 | dup·44·/comma·put | 1410 | dup·44·/comma·put |
1411 | dup·48·/zero·put | 1411 | dup·48·/zero·put |
1412 | dup·49·/one·put | 1412 | dup·49·/one·put |
1413 | dup·50·/two·put | 1413 | dup·50·/two·put |
1414 | dup·52·/four·put | ||
1415 | dup·5 | 1414 | dup·53·/five·put |
1415 | dup·56·/eight·put | ||
1416 | dup·58·/colon·put | 1416 | dup·58·/colon·put |
1417 | dup·7 | 1417 | dup·70·/F·put |
1418 | dup·97·/a·put | 1418 | dup·97·/a·put |
1419 | dup·98·/b·put | ||
1419 | dup·1 | 1420 | dup·101·/e·put |
1420 | dup·114·/r·put | 1421 | dup·114·/r·put |
1421 | dup·117·/u·put | 1422 | dup·117·/u·put |
1422 | dup·121·/y·put | 1423 | dup·121·/y·put |
1423 | readonly·def | 1424 | readonly·def |
1424 | currentdict·end | 1425 | currentdict·end |
1425 | currentfile·eexec | 1426 | currentfile·eexec |
1426 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1427 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1604, 89 lines modified | Offset 1605, 93 lines modified | ||
1604 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1605 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1605 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1606 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1606 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1607 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1607 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1608 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1608 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1609 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1609 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1610 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1610 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1611 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1611 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1612 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1612 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1613 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1614 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1615 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1616 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1617 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1618 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1619 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1620 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1621 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1622 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1623 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1624 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1625 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1626 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1627 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1628 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1629 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1630 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1631 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1632 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1633 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1634 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1635 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1636 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1637 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1638 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1639 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1640 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1641 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1642 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1643 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1644 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1645 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1646 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1647 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1648 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1649 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1650 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1651 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1652 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1653 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1654 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1655 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1656 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1657 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1658 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1659 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1660 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1661 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1662 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1663 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1664 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1665 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1666 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1667 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1668 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1669 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1670 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1671 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1672 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1673 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1674 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1675 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1676 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1677 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1678 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1679 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1680 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1681 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1682 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1683 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1684 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1685 | 1613 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1614 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1615 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1616 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1617 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1618 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1619 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 18404/30296 bytes (60.75%) of diff not shown. |
Offset 21, 15 lines modified | Offset 21, 15 lines modified | ||
21 | ·············•·int·nvtx·:·number·of·vertices·in·the·graph\xd | 21 | ·············•·int·nvtx·:·number·of·vertices·in·the·graph\xd |
22 | ·············•·IVL·*adjIVL·:·pointer·to·a·IVL·structure·that·holds·the·vertex·lists·for·the·elements.\xd | 22 | ·············•·IVL·*adjIVL·:·pointer·to·a·IVL·structure·that·holds·the·vertex·lists·for·the·elements.\xd |
23 | ·············•·int·*vwghts·:·when·type·=·1,·vwghts·points·to·an·int·vector·of·size·nvtx·that·holds·the\xd | 23 | ·············•·int·*vwghts·:·when·type·=·1,·vwghts·points·to·an·int·vector·of·size·nvtx·that·holds·the\xd |
24 | ···············node·weights.\xd | 24 | ···············node·weights.\xd |
25 | ···········A·correctly·initialized·and·nontrivial·EGraph·object·will·have·positive·nelem·and·nvtx·values,·a\xd | 25 | ···········A·correctly·initialized·and·nontrivial·EGraph·object·will·have·positive·nelem·and·nvtx·values,·a\xd |
26 | ···········valid·adjIVL·field.·If·type·=·1,·the·vwghts·will·be·non-NULL.\xd | 26 | ···········valid·adjIVL·field.·If·type·=·1,·the·vwghts·will·be·non-NULL.\xd |
27 | ·············································1\xd | 27 | ·············································1\xd |
28 | ··············2···························EGraph·:·DRAFT· | 28 | ··············2···························EGraph·:·DRAFT·February·18,·2025\xd |
29 | ··············1.2···Prototypes·and·descriptions·of·EGraph·methods\xd | 29 | ··············1.2···Prototypes·and·descriptions·of·EGraph·methods\xd |
30 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 30 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
31 | ··············EGraph·object.\xd | 31 | ··············EGraph·object.\xd |
32 | ··············1.2.1··Basic·methods\xd | 32 | ··············1.2.1··Basic·methods\xd |
33 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 33 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
34 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 34 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
35 | ················1.·EGraph·*·EGraph_new·(·void·)·;\xd | 35 | ················1.·EGraph·*·EGraph_new·(·void·)·;\xd |
Offset 55, 15 lines modified | Offset 55, 15 lines modified | ||
55 | ···················This·method·initializes·an·EGraph·object·given·the·type·of·vertices,·number·of·elements,\xd | 55 | ···················This·method·initializes·an·EGraph·object·given·the·type·of·vertices,·number·of·elements,\xd |
56 | ···················number·of·vertices,·and·storage·type·for·the·IVL·element·list·object.·It·then·clears·any\xd | 56 | ···················number·of·vertices,·and·storage·type·for·the·IVL·element·list·object.·It·then·clears·any\xd |
57 | ···················previous·data·with·a·call·to·EGraph·clearData().·The·IVL·object·is·initialized·by·a·call\xd | 57 | ···················previous·data·with·a·call·to·EGraph·clearData().·The·IVL·object·is·initialized·by·a·call\xd |
58 | ···················to·IVL·init1().·If·type·=·1,·the·vwghts·is·initialized·via·a·call·to·IVinit().·See·the·IVL\xd | 58 | ···················to·IVL·init1().·If·type·=·1,·the·vwghts·is·initialized·via·a·call·to·IVinit().·See·the·IVL\xd |
59 | ···················object·for·a·description·of·the·IVL·type·parameter.\xd | 59 | ···················object·for·a·description·of·the·IVL·type·parameter.\xd |
60 | ···················Error·checking:·If·egraph·is·NULL·or·type·is·not·zero·or·one,·or·if·either·nelem·or·nvtx·are\xd | 60 | ···················Error·checking:·If·egraph·is·NULL·or·type·is·not·zero·or·one,·or·if·either·nelem·or·nvtx·are\xd |
61 | ···················nonpositive,·an·error·message·is·printed·and·the·program·exits.\xd | 61 | ···················nonpositive,·an·error·message·is·printed·and·the·program·exits.\xd |
62 | ·····································EGraph·:·DRAFT·· | 62 | ·····································EGraph·:·DRAFT··February·18,·2025···················3\xd |
63 | ············1.2.3··Utility·methods\xd | 63 | ············1.2.3··Utility·methods\xd |
64 | ···············1.·Graph·EGraph_mkAdjGraph·(·EGraph·*egraph·)·;\xd | 64 | ···············1.·Graph·EGraph_mkAdjGraph·(·EGraph·*egraph·)·;\xd |
65 | ·················This·method·creates·and·returns·a·Graph·object·with·vertex·adjacency·lists·from·the·element\xd | 65 | ·················This·method·creates·and·returns·a·Graph·object·with·vertex·adjacency·lists·from·the·element\xd |
66 | ·················graph·object.\xd | 66 | ·················graph·object.\xd |
67 | ·················Error·checking:·If·egraph·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 67 | ·················Error·checking:·If·egraph·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
68 | ···············2.·EGraph·*·EGraph_make9P·(·int·n1,·int·n2,·int·ncomp·)·;\xd | 68 | ···············2.·EGraph·*·EGraph_make9P·(·int·n1,·int·n2,·int·ncomp·)·;\xd |
69 | ·················This·method·creates·and·returns·a·EGraph·object·for·a·n1·×·n2·grid·for·a·9-point·operator\xd | 69 | ·················This·method·creates·and·returns·a·EGraph·object·for·a·n1·×·n2·grid·for·a·9-point·operator\xd |
Offset 92, 15 lines modified | Offset 92, 15 lines modified | ||
92 | ·················This·method·reads·in·an·EGraph·object·from·a·formatted·file.·If·there·are·no·errors·in·reading\xd | 92 | ·················This·method·reads·in·an·EGraph·object·from·a·formatted·file.·If·there·are·no·errors·in·reading\xd |
93 | ·················the·data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd | 93 | ·················the·data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd |
94 | ·················Error·checking:·If·egraph·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 94 | ·················Error·checking:·If·egraph·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
95 | ···············3.·int·EGraph_readFromBinaryFile·(·EGraph·*egraph,·FILE·*fp·)·;\xd | 95 | ···············3.·int·EGraph_readFromBinaryFile·(·EGraph·*egraph,·FILE·*fp·)·;\xd |
96 | ·················This·method·reads·in·an·EGraph·object·from·a·binary·file.·If·there·are·no·errors·in·reading\xd | 96 | ·················This·method·reads·in·an·EGraph·object·from·a·binary·file.·If·there·are·no·errors·in·reading\xd |
97 | ·················the·data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd | 97 | ·················the·data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd |
98 | ·················Error·checking:·If·egraph·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 98 | ·················Error·checking:·If·egraph·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
99 | ···········4······················EGraph·:·DRAFT· | 99 | ···········4······················EGraph·:·DRAFT·February·18,·2025\xd |
100 | ·············4.·int·EGraph_writeToFile·(·EGraph·*egraph,·char·*fn·)·;\xd | 100 | ·············4.·int·EGraph_writeToFile·(·EGraph·*egraph,·char·*fn·)·;\xd |
101 | ···············This·method·writes·an·EGraph·object·to·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,\xd | 101 | ···············This·method·writes·an·EGraph·object·to·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,\xd |
102 | ···············it·then·calls·EGraph·writeFromFormattedFile()or·EGraph·writeFromBinaryFile(),closes\xd | 102 | ···············it·then·calls·EGraph·writeFromFormattedFile()or·EGraph·writeFromBinaryFile(),closes\xd |
103 | ···············the·file·and·returns·the·value·returned·from·the·called·routine.\xd | 103 | ···············the·file·and·returns·the·value·returned·from·the·called·routine.\xd |
104 | ···············Error·checking:·If·egraph·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.egraphf·(for·a\xd | 104 | ···············Error·checking:·If·egraph·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.egraphf·(for·a\xd |
105 | ···············formatted·file)·or·*.egraphb·(for·a·binary·file),·an·error·message·is·printed·and·the·method\xd | 105 | ···············formatted·file)·or·*.egraphb·(for·a·binary·file),·an·error·message·is·printed·and·the·method\xd |
106 | ···············returns·zero.\xd | 106 | ···············returns·zero.\xd |
Offset 128, 15 lines modified | Offset 128, 15 lines modified | ||
128 | ···············binary·files·and·vice·versa.·One·can·also·read·in·a·EGraph·file·and·print·out·just·the·header\xd | 128 | ···············binary·files·and·vice·versa.·One·can·also·read·in·a·EGraph·file·and·print·out·just·the·header\xd |
129 | ···············information·(see·the·EGraph·writeStats()·method).\xd | 129 | ···············information·(see·the·EGraph·writeStats()·method).\xd |
130 | ·················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd | 130 | ·················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd |
131 | ···················the·EGraph·object·is·written·to·the·message·file.\xd | 131 | ···················the·EGraph·object·is·written·to·the·message·file.\xd |
132 | ·················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd | 132 | ·················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd |
133 | ···················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd | 133 | ···················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd |
134 | ···················data.\xd | 134 | ···················data.\xd |
135 | ·····································EGraph·:·DRAFT·· | 135 | ·····································EGraph·:·DRAFT··February·18,·2025···················5\xd |
136 | ···················•·The·inFile·parameter·is·the·input·file·for·the·EGraph·object.·It·must·be·of·the·form\xd | 136 | ···················•·The·inFile·parameter·is·the·input·file·for·the·EGraph·object.·It·must·be·of·the·form\xd |
137 | ·····················*.egraphfor*.egraphb.·TheEGraphobjectisreadfromthefileviatheEGraph·readFromFile()\xd | 137 | ·····················*.egraphfor*.egraphb.·TheEGraphobjectisreadfromthefileviatheEGraph·readFromFile()\xd |
138 | ·····················method.\xd | 138 | ·····················method.\xd |
139 | ···················•·The·outFileparameter·is·the·output·file·for·the·EGraph·object.·If·outFile·is·none·then\xd | 139 | ···················•·The·outFileparameter·is·the·output·file·for·the·EGraph·object.·If·outFile·is·none·then\xd |
140 | ·····················the·EGraphobject·is·not·written·to·a·file.·Otherwise,·the·EGraph·writeToFile()method\xd | 140 | ·····················the·EGraphobject·is·not·written·to·a·file.·Otherwise,·the·EGraph·writeToFile()method\xd |
141 | ·····················is·called·to·write·the·object·to·a·formatted·file·(if·outFile·is·of·the·form·*.egraphf),\xd | 141 | ·····················is·called·to·write·the·object·to·a·formatted·file·(if·outFile·is·of·the·form·*.egraphf),\xd |
142 | ·····················or·a·binary·file·(if·outFile·is·of·the·form·*.egraphb).\xd | 142 | ·····················or·a·binary·file·(if·outFile·is·of·the·form·*.egraphb).\xd |
Offset 166, 15 lines modified | Offset 166, 15 lines modified | ||
166 | ·····················data.\xd | 166 | ·····················data.\xd |
167 | ···················•·n1·is·the·number·of·grid·points·in·the·first·direction,·must·be·greater·than·one.\xd | 167 | ···················•·n1·is·the·number·of·grid·points·in·the·first·direction,·must·be·greater·than·one.\xd |
168 | ···················•·n2·is·the·number·of·grid·points·in·the·second·direction,·must·be·greater·than·one.\xd | 168 | ···················•·n2·is·the·number·of·grid·points·in·the·second·direction,·must·be·greater·than·one.\xd |
169 | ···················•·n3·is·the·number·of·grid·points·in·the·third·direction,·must·be·greater·than·or·equal·to\xd | 169 | ···················•·n3·is·the·number·of·grid·points·in·the·third·direction,·must·be·greater·than·or·equal·to\xd |
170 | ·····················one.\xd | 170 | ·····················one.\xd |
171 | ···················•·ncomp·is·the·number·of·components·(i.e.,·the·number·of·degrees·of·freedom)·at·each·grid\xd | 171 | ···················•·ncomp·is·the·number·of·components·(i.e.,·the·number·of·degrees·of·freedom)·at·each·grid\xd |
172 | ·····················point,·must·be·greater·than·or·equal·to·one.\xd | 172 | ·····················point,·must·be·greater·than·or·equal·to·one.\xd |
173 | ·······6············· | 173 | ·······6·············EGraph·:·DRAFT·February·18,·2025\xd |
174 | ···········•·TheoutEGraphFileparameteristheoutputfilefortheEGraphobject.·IfoutEGraphFile\xd | 174 | ···········•·TheoutEGraphFileparameteristheoutputfilefortheEGraphobject.·IfoutEGraphFile\xd |
175 | ············is·nonethentheEGraphobjectisnotwrittentoafile.·Otherwise,theEGraph·writeToFile()\xd | 175 | ············is·nonethentheEGraphobjectisnotwrittentoafile.·Otherwise,theEGraph·writeToFile()\xd |
176 | ············method·is·called·to·write·the·object·to·a·formatted·file·(if·outEGraphFile·is·of·the·form\xd | 176 | ············method·is·called·to·write·the·object·to·a·formatted·file·(if·outEGraphFile·is·of·the·form\xd |
177 | ············*.egraphf),·or·a·binary·file·(if·outEGraphFile·is·of·the·form·*.egraphb).\xd | 177 | ············*.egraphf),·or·a·binary·file·(if·outEGraphFile·is·of·the·form·*.egraphb).\xd |
178 | ·······Index\xd | 178 | ·······Index\xd |
179 | ·······EGraph·clearData(),·2\xd | 179 | ·······EGraph·clearData(),·2\xd |
180 | ·······EGraph·free(),·2\xd | 180 | ·······EGraph·free(),·2\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·ETree.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·ETree.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 3607, 20 lines modified | Offset 3607, 21 lines modified | ||
3607 | end·readonly·def | 3607 | end·readonly·def |
3608 | /Encoding·256·array | 3608 | /Encoding·256·array |
3609 | 0·1·255·{1·index·exch·/.notdef·put}·for | 3609 | 0·1·255·{1·index·exch·/.notdef·put}·for |
3610 | dup·44·/comma·put | 3610 | dup·44·/comma·put |
3611 | dup·48·/zero·put | 3611 | dup·48·/zero·put |
3612 | dup·49·/one·put | 3612 | dup·49·/one·put |
3613 | dup·50·/two·put | 3613 | dup·50·/two·put |
3614 | dup·52·/four·put | ||
3615 | dup·5 | 3614 | dup·53·/five·put |
3615 | dup·56·/eight·put | ||
3616 | dup·58·/colon·put | 3616 | dup·58·/colon·put |
3617 | dup·7 | 3617 | dup·70·/F·put |
3618 | dup·97·/a·put | 3618 | dup·97·/a·put |
3619 | dup·98·/b·put | ||
3619 | dup·1 | 3620 | dup·101·/e·put |
3620 | dup·114·/r·put | 3621 | dup·114·/r·put |
3621 | dup·117·/u·put | 3622 | dup·117·/u·put |
3622 | dup·121·/y·put | 3623 | dup·121·/y·put |
3623 | readonly·def | 3624 | readonly·def |
3624 | currentdict·end | 3625 | currentdict·end |
3625 | currentfile·eexec | 3626 | currentfile·eexec |
3626 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 3627 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 3804, 89 lines modified | Offset 3805, 93 lines modified | ||
3804 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 3805 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
3805 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 3806 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
3806 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 3807 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
3807 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 3808 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
3808 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 3809 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
3809 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 3810 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
3810 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 3811 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
3811 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 3812 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
3812 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
3813 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
3814 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
3815 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
3816 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
3817 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
3818 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
3819 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
3820 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
3821 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
3822 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
3823 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
3824 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
3825 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
3826 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
3827 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
3828 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
3829 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
3830 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
3831 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
3832 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
3833 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
3834 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
3835 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
3836 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
3837 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
3838 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
3839 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
3840 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
3841 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
3842 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
3843 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
3844 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
3845 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
3846 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
3847 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
3848 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
3849 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
3850 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
3851 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
3852 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
3853 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
3854 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
3855 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
3856 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
3857 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
3858 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
3859 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
3860 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
3861 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
3862 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
3863 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
3864 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
3865 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
3866 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
3867 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
3868 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
3869 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
3870 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
3871 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
3872 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
3873 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
3874 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
3875 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
3876 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
3877 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
3878 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
3879 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
3880 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
3881 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
3882 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
3883 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
3884 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
3885 | 3813 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
3814 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
3815 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
3816 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
3817 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
3818 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
3819 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 53385/65276 bytes (81.78%) of diff not shown. |
Offset 21, 15 lines modified | Offset 21, 15 lines modified | ||
21 | ··············•·int·nfront·:·number·of·fronts·in·the·tree\xd | 21 | ··············•·int·nfront·:·number·of·fronts·in·the·tree\xd |
22 | ··············•·int·nvtx·:·number·of·vertices·in·the·tree\xd | 22 | ··············•·int·nvtx·:·number·of·vertices·in·the·tree\xd |
23 | ··············•·Tree·*tree·:·pointer·to·a·Tree·structure\xd | 23 | ··············•·Tree·*tree·:·pointer·to·a·Tree·structure\xd |
24 | ··············•·IV·*nodwghtsIV·:·pointer·to·an·IV·object·to·hold·front·weights,·size·nfront\xd | 24 | ··············•·IV·*nodwghtsIV·:·pointer·to·an·IV·object·to·hold·front·weights,·size·nfront\xd |
25 | ··············•·IV·*bndwghtsIV·:·pointer·to·an·IV·object·to·hold·the·weights·of·the·fronts’·boundaries,·size\xd | 25 | ··············•·IV·*bndwghtsIV·:·pointer·to·an·IV·object·to·hold·the·weights·of·the·fronts’·boundaries,·size\xd |
26 | ···············nfront\xd | 26 | ···············nfront\xd |
27 | ·············································1\xd | 27 | ·············································1\xd |
28 | ··············2··························· | 28 | ··············2···························ETree·:·DRAFT·February·18,·2025\xd |
29 | ·················•·IV·*vtxToFrontIV·:·pointer·to·an·IV·object·to·hold·the·map·from·vertices·to·fronts,·size\xd | 29 | ·················•·IV·*vtxToFrontIV·:·pointer·to·an·IV·object·to·hold·the·map·from·vertices·to·fronts,·size\xd |
30 | ··················nfront\xd | 30 | ··················nfront\xd |
31 | ··············A·correctly·initialized·and·nontrivial·ETree·object·will·have·positive·nfront·and·nvtx·values,·a\xd | 31 | ··············A·correctly·initialized·and·nontrivial·ETree·object·will·have·positive·nfront·and·nvtx·values,·a\xd |
32 | ··············valid·tree·field·and·non-NULL·nodwghtsIV,·bndwghtsIV·and·vtxToFrontIV·pointers.\xd | 32 | ··············valid·tree·field·and·non-NULL·nodwghtsIV,·bndwghtsIV·and·vtxToFrontIV·pointers.\xd |
33 | ··············1.2···Prototypes·and·descriptions·of·ETree·methods\xd | 33 | ··············1.2···Prototypes·and·descriptions·of·ETree·methods\xd |
34 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 34 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
35 | ··············ETree·object.\xd | 35 | ··············ETree·object.\xd |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | ··················This·method·releases·any·storage·by·a·call·to·ETree·clearData()·then·free’s·the·storage·for\xd | 53 | ··················This·method·releases·any·storage·by·a·call·to·ETree·clearData()·then·free’s·the·storage·for\xd |
54 | ··················the·structure·with·a·call·to·free().\xd | 54 | ··················the·structure·with·a·call·to·free().\xd |
55 | ··················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 55 | ··················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
56 | ··············1.2.2··Instance·methods\xd | 56 | ··············1.2.2··Instance·methods\xd |
57 | ················1.·int·ETree_nfront·(·ETree·*etree·)·;\xd | 57 | ················1.·int·ETree_nfront·(·ETree·*etree·)·;\xd |
58 | ··················This·method·returns·the·number·of·fronts.\xd | 58 | ··················This·method·returns·the·number·of·fronts.\xd |
59 | ··················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 59 | ··················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
60 | ············································ETree·:·DRAFT····· | 60 | ············································ETree·:·DRAFT·····February·18,·2025·························3\xd |
61 | ·················2.·int·ETree_nvtx·(·ETree·*etree·)·;\xd | 61 | ·················2.·int·ETree_nvtx·(·ETree·*etree·)·;\xd |
62 | ····················This·method·returns·the·number·of·vertices.\xd | 62 | ····················This·method·returns·the·number·of·vertices.\xd |
63 | ····················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 63 | ····················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
64 | ·················3.·Tree·*·ETree_tree·(·ETree·*etree·)·;\xd | 64 | ·················3.·Tree·*·ETree_tree·(·ETree·*etree·)·;\xd |
65 | ····················This·method·returns·a·pointer·to·the·Tree·object.\xd | 65 | ····················This·method·returns·a·pointer·to·the·Tree·object.\xd |
66 | ····················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 66 | ····················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
67 | ·················4.·int··ETree_root·(·ETree·*etree·)·;\xd | 67 | ·················4.·int··ETree_root·(·ETree·*etree·)·;\xd |
Offset 86, 15 lines modified | Offset 86, 15 lines modified | ||
86 | ·················9.·int·*·ETree_nodwghts·(·ETree·*etree·)·;\xd | 86 | ·················9.·int·*·ETree_nodwghts·(·ETree·*etree·)·;\xd |
87 | ····················This·method·returns·a·pointer·to·the·nodwghts·vector.\xd | 87 | ····················This·method·returns·a·pointer·to·the·nodwghts·vector.\xd |
88 | ····················Error·checking:·If·etree·or·etree->nodwghtsIV·is·NULL,·an·error·message·is·printed·and·the\xd | 88 | ····················Error·checking:·If·etree·or·etree->nodwghtsIV·is·NULL,·an·error·message·is·printed·and·the\xd |
89 | ····················program·exits.\xd | 89 | ····················program·exits.\xd |
90 | ················10.·IV·*·ETree_bndwghtsIV·(·ETree·*etree·)·;\xd | 90 | ················10.·IV·*·ETree_bndwghtsIV·(·ETree·*etree·)·;\xd |
91 | ····················This·method·returns·a·pointer·to·the·bndwghtsIV·object.\xd | 91 | ····················This·method·returns·a·pointer·to·the·bndwghtsIV·object.\xd |
92 | ····················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 92 | ····················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
93 | ··············4··························· | 93 | ··············4···························ETree·:·DRAFT·February·18,·2025\xd |
94 | ···············11.·int·*·ETree_bndwghts·(·ETree·*etree·)·;\xd | 94 | ···············11.·int·*·ETree_bndwghts·(·ETree·*etree·)·;\xd |
95 | ··················This·method·returns·a·pointer·to·the·bndwghts·vector.\xd | 95 | ··················This·method·returns·a·pointer·to·the·bndwghts·vector.\xd |
96 | ··················Error·checking:·If·etree·or·etree->bndwghtsIV·is·NULL,·an·error·message·is·printed·and·the\xd | 96 | ··················Error·checking:·If·etree·or·etree->bndwghtsIV·is·NULL,·an·error·message·is·printed·and·the\xd |
97 | ··················program·exits.\xd | 97 | ··················program·exits.\xd |
98 | ···············12.·IV·*·ETree_vtxToFrontIV·(·ETree·*etree·)·;\xd | 98 | ···············12.·IV·*·ETree_vtxToFrontIV·(·ETree·*etree·)·;\xd |
99 | ··················This·method·returns·a·pointer·to·the·vtxToFrontIV·object.\xd | 99 | ··················This·method·returns·a·pointer·to·the·vtxToFrontIV·object.\xd |
100 | ··················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 100 | ··················Error·checking:·If·etree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
Offset 121, 15 lines modified | Offset 121, 15 lines modified | ||
121 | ··················Error·checking:·If·etree·is·NULL,·or·if·symflag·is·invalid,·an·error·message·is·printed·and·the\xd | 121 | ··················Error·checking:·If·etree·is·NULL,·or·if·symflag·is·invalid,·an·error·message·is·printed·and·the\xd |
122 | ··················program·exits.\xd | 122 | ··················program·exits.\xd |
123 | ··············1.2.3··Initializer·methods\xd | 123 | ··············1.2.3··Initializer·methods\xd |
124 | ··············There·are·four·initializer·methods.\xd | 124 | ··············There·are·four·initializer·methods.\xd |
125 | ················1.·void·ETree_init1·(·ETree·*etree,·int·nfront,·int·nvtx·)·;\xd | 125 | ················1.·void·ETree_init1·(·ETree·*etree,·int·nfront,·int·nvtx·)·;\xd |
126 | ··················This·method·initializes·an·ETree·object·given·the·number·of·fronts·and·number·of·vertices.\xd | 126 | ··················This·method·initializes·an·ETree·object·given·the·number·of·fronts·and·number·of·vertices.\xd |
127 | ··················Anyprevious·data·is·cleared·with·a·call·to·ETree·clearData(),·The·Tree·object·is·initialized\xd | 127 | ··················Anyprevious·data·is·cleared·with·a·call·to·ETree·clearData(),·The·Tree·object·is·initialized\xd |
128 | ······································ETree·:·DRAFT·· | 128 | ······································ETree·:·DRAFT··February·18,·2025···················5\xd |
129 | ·················with·a·call·to·Tree·init1().·The·nodwghtsIV,·bndwghtsIV·and·vtxToFrontIV·objects·are\xd | 129 | ·················with·a·call·to·Tree·init1().·The·nodwghtsIV,·bndwghtsIV·and·vtxToFrontIV·objects·are\xd |
130 | ·················initialized·with·calls·to·IV·init().·The·entries·in·nodwghtsIV·and·bndwghtsIV·are·set·to·0,\xd | 130 | ·················initialized·with·calls·to·IV·init().·The·entries·in·nodwghtsIV·and·bndwghtsIV·are·set·to·0,\xd |
131 | ·················while·the·entries·in·vtxToFrontIV·are·set·to·-1.\xd | 131 | ·················while·the·entries·in·vtxToFrontIV·are·set·to·-1.\xd |
132 | ·················Error·checking:·If·etree·is·NULL,·or·if·nfront·is·negative,·or·if·nvtx·<·nfront,·an·error\xd | 132 | ·················Error·checking:·If·etree·is·NULL,·or·if·nfront·is·negative,·or·if·nvtx·<·nfront,·an·error\xd |
133 | ·················message·is·printed·and·the·program·exits.\xd | 133 | ·················message·is·printed·and·the·program·exits.\xd |
134 | ···············2.·void·ETree_initFromGraph·(·ETree·*etree,·Graph·*g·)·;\xd | 134 | ···············2.·void·ETree_initFromGraph·(·ETree·*etree,·Graph·*g·)·;\xd |
135 | ·················This·method·generates·an·elimination·tree·from·a·graph.·The·nodwghtsIV·vector·object·is\xd | 135 | ·················This·method·generates·an·elimination·tree·from·a·graph.·The·nodwghtsIV·vector·object·is\xd |
Offset 160, 15 lines modified | Offset 160, 15 lines modified | ||
160 | ·················permutes·to·vertex-to-front·map,·and·returns·an·IV·object·that·contains·the·old-to-new\xd | 160 | ·················permutes·to·vertex-to-front·map,·and·returns·an·IV·object·that·contains·the·old-to-new\xd |
161 | ·················permutation.\xd | 161 | ·················permutation.\xd |
162 | ·················Error·checking:·If·etree·is·NULL·or·inETreeFileName·is·“none”,·an·error·message·is·printed\xd | 162 | ·················Error·checking:·If·etree·is·NULL·or·inETreeFileName·is·“none”,·an·error·message·is·printed\xd |
163 | ·················and·the·program·exits.\xd | 163 | ·················and·the·program·exits.\xd |
164 | ···············6.·int·ETree_initFromSubtree·(·ETree·*subtree,·IV·*nodeidsIV,·ETree·*etree,·IV·*vtxIV·)·;\xd | 164 | ···············6.·int·ETree_initFromSubtree·(·ETree·*subtree,·IV·*nodeidsIV,·ETree·*etree,·IV·*vtxIV·)·;\xd |
165 | ·················This·method·initializes·subtree·from·tree·using·the·nodes·of·etree·that·are·found·in\xd | 165 | ·················This·method·initializes·subtree·from·tree·using·the·nodes·of·etree·that·are·found·in\xd |
166 | ·················nodeidsIV.·The·map·from·nodes·in·subtree·to·nodes·in·etree·is·returned·in·vtxIV.\xd | 166 | ·················nodeidsIV.·The·map·from·nodes·in·subtree·to·nodes·in·etree·is·returned·in·vtxIV.\xd |
167 | ···············6······························ | 167 | ···············6······························ETree·:·DRAFT·February·18,·2025\xd |
168 | ····················Return·code:···1·for·a·normal·return,·-1·if·subtree·is·NULL,·-2·if·nodeidsIV·is·NULL,·-3·if\xd | 168 | ····················Return·code:···1·for·a·normal·return,·-1·if·subtree·is·NULL,·-2·if·nodeidsIV·is·NULL,·-3·if\xd |
169 | ····················etree·is·NULL,·-4·if·nodeidsIV·is·invalid,·-5·if·vtxIV·is·NULL.\xd | 169 | ····················etree·is·NULL,·-4·if·nodeidsIV·is·invalid,·-5·if·vtxIV·is·NULL.\xd |
170 | ···············1.2.4···Utility·methods\xd | 170 | ···············1.2.4···Utility·methods\xd |
171 | ···············Theutility·methods·return·the·number·of·bytes·taken·by·the·object,·or·the·number·of·factor·indices,\xd | 171 | ···············Theutility·methods·return·the·number·of·bytes·taken·by·the·object,·or·the·number·of·factor·indices,\xd |
172 | ···············entries·or·operations·required·by·the·object.\xd | 172 | ···············entries·or·operations·required·by·the·object.\xd |
173 | ··················1.·int·ETree_sizeOf·(·ETree·*etree·)·;\xd | 173 | ··················1.·int·ETree_sizeOf·(·ETree·*etree·)·;\xd |
174 | ····················This·method·returns·the·number·of·bytes·taken·by·this·object·(which·includes·the·bytes·taken\xd | 174 | ····················This·method·returns·the·number·of·bytes·taken·by·this·object·(which·includes·the·bytes·taken\xd |
Offset 195, 15 lines modified | Offset 195, 15 lines modified | ||
195 | ····················Error·checking:·If·etree·or·tree·is·NULL,·or·if·nfront·<·1,·or·if·nvtx·<·1,·or·if·type·or\xd | 195 | ····················Error·checking:·If·etree·or·tree·is·NULL,·or·if·nfront·<·1,·or·if·nvtx·<·1,·or·if·type·or\xd |
196 | ····················symflag·is·invalid,·an·error·message·is·printed·and·the·program·exits.\xd | 196 | ····················symflag·is·invalid,·an·error·message·is·printed·and·the·program·exits.\xd |
197 | ··················5.·double·ETree_nFactorEntriesInFront·(·ETree·*etree,·int·symflag,·int·J·)·;\xd | 197 | ··················5.·double·ETree_nFactorEntriesInFront·(·ETree·*etree,·int·symflag,·int·J·)·;\xd |
198 | ····················ThismethodreturnsthenumberofentriesinfrontJforanLU·factorization.·Thesymflagpa-\xd | 198 | ····················ThismethodreturnsthenumberofentriesinfrontJforanLU·factorization.·Thesymflagpa-\xd |
199 | ····················rameter·can·be·one·of·SPOOLES·SYMMETRIC,·SPOOLES·HERMITIAN·or·SPOOLES·NONSYMMETRIC.\xd | 199 | ····················rameter·can·be·one·of·SPOOLES·SYMMETRIC,·SPOOLES·HERMITIAN·or·SPOOLES·NONSYMMETRIC.\xd |
200 | ····················Error·checking:·If·etree·or·tree·is·NULL,·or·if·nfront·<·1,·or·if·symflag·is·invalid,·or·if\xd | 200 | ····················Error·checking:·If·etree·or·tree·is·NULL,·or·if·nfront·<·1,·or·if·symflag·is·invalid,·or·if\xd |
201 | ····················J·<·0,·or·if·J·≥·nfront,·an·error·message·is·printed·and·the·program·exits.\xd | 201 | ····················J·<·0,·or·if·J·≥·nfront,·an·error·message·is·printed·and·the·program·exits.\xd |
202 | ······································ETree·:·DRAFT·· | 202 | ······································ETree·:·DRAFT··February·18,·2025···················7\xd |
203 | ···············6.·double·ETree_nInternalOpsInFront·(·ETree·*etree,·int·type,·int·symflag,·int·J·)·;\xd | 203 | ···············6.·double·ETree_nInternalOpsInFront·(·ETree·*etree,·int·type,·int·symflag,·int·J·)·;\xd |
204 | ·················ThismethodreturnsthenumberofinternaloperationsperformedbyfrontJonits(1,1),·(2,1),\xd | 204 | ·················ThismethodreturnsthenumberofinternaloperationsperformedbyfrontJonits(1,1),·(2,1),\xd |
205 | ·················and·(1,2)·blocks·during·a·factorization.·The·type·parameter·can·be·one·of·SPOOLES·REAL\xd | 205 | ·················and·(1,2)·blocks·during·a·factorization.·The·type·parameter·can·be·one·of·SPOOLES·REAL\xd |
206 | ·················or·SPOOLES·COMPLEX.·symflag·must·be·one·of·SPOOLES·SYMMETRIC,·SPOOLES·HERMITIAN·or\xd | 206 | ·················or·SPOOLES·COMPLEX.·symflag·must·be·one·of·SPOOLES·SYMMETRIC,·SPOOLES·HERMITIAN·or\xd |
207 | ·················SPOOLES·NONSYMMETRIC.\xd | 207 | ·················SPOOLES·NONSYMMETRIC.\xd |
208 | ·················Error·checking:·If·etree·or·tree·is·NULL,·or·if·nfront·<·1,·or·if·type·or·symflag·is·invalid,\xd | 208 | ·················Error·checking:·If·etree·or·tree·is·NULL,·or·if·nfront·<·1,·or·if·type·or·symflag·is·invalid,\xd |
209 | ·················or·if·J·<·0,·or·if·J·≥·nfront,·an·error·message·is·printed·and·the·program·exits.\xd | 209 | ·················or·if·J·<·0,·or·if·J·≥·nfront,·an·error·message·is·printed·and·the·program·exits.\xd |
Offset 233, 15 lines modified | Offset 233, 15 lines modified | ||
233 | ·················Error·checking:·If·etree·is·NULL,·or·if·type·or·symflag·is·invalid,·an·error·message·is·printed\xd | 233 | ·················Error·checking:·If·etree·is·NULL,·or·if·type·or·symflag·is·invalid,·an·error·message·is·printed\xd |
234 | ·················and·the·program·exits.\xd | 234 | ·················and·the·program·exits.\xd |
235 | ··············11.·ETree·*·ETree_expand·(·ETree·*etree,·IV·*eqmapIV·)·;\xd | 235 | ··············11.·ETree·*·ETree_expand·(·ETree·*etree,·IV·*eqmapIV·)·;\xd |
236 | ·················This·method·creates·and·returns·an·ETree·object·for·an·uncompressed·graph.·The·map·from\xd | 236 | ·················This·method·creates·and·returns·an·ETree·object·for·an·uncompressed·graph.·The·map·from\xd |
237 | ·················compressed·vertices·to·uncompressed·vertices·is·found·in·the·eqmapIV·object.\xd | 237 | ·················compressed·vertices·to·uncompressed·vertices·is·found·in·the·eqmapIV·object.\xd |
238 | ·················Error·checking:·If·etree·or·eqmapIV·is·NULL,·an·error·message·is·printed·and·the·program\xd | 238 | ·················Error·checking:·If·etree·or·eqmapIV·is·NULL,·an·error·message·is·printed·and·the·program\xd |
239 | ·················exits.\xd | 239 | ·················exits.\xd |
240 | ··············8··························· | 240 | ··············8···························ETree·:·DRAFT·February·18,·2025\xd |
241 | ···············12.·ETree·*·ETree_spliceTwoEtrees·(·ETree·*etree0,·Graph·*graph,·IV·*mapIV,·ETree·*etree1·)·;\xd | 241 | ···············12.·ETree·*·ETree_spliceTwoEtrees·(·ETree·*etree0,·Graph·*graph,·IV·*mapIV,·ETree·*etree1·)·;\xd |
242 | ··················This·method·creates·and·returns·an·ETree·object·that·is·formed·by·splicing·together·two\xd | 242 | ··················This·method·creates·and·returns·an·ETree·object·that·is·formed·by·splicing·together·two\xd |
243 | ··················front·trees,·etree0·for·the·vertices·the·eliminated·domains,·etree1·for·the·vertices·the·Schur\xd | 243 | ··················front·trees,·etree0·for·the·vertices·the·eliminated·domains,·etree1·for·the·vertices·the·Schur\xd |
244 | ··················complement.·The·mapIV·object·maps·vertices·to·domains·or·the·Schur·complement·—·if·the\xd | 244 | ··················complement.·The·mapIV·object·maps·vertices·to·domains·or·the·Schur·complement·—·if·the\xd |
245 | ··················entry·is·0,·the·vertex·is·in·the·Schur·complement,·otherwise·it·is·in·a·domain.\xd | 245 | ··················entry·is·0,·the·vertex·is·in·the·Schur·complement,·otherwise·it·is·in·a·domain.\xd |
246 | ··················Error·checking:·If·etree0,·graph,·mapIV·or·etree1·is·NULL,·an·error·message·is·printed·and\xd | 246 | ··················Error·checking:·If·etree0,·graph,·mapIV·or·etree1·is·NULL,·an·error·message·is·printed·and\xd |
247 | ··················the·program·exits.\xd | 247 | ··················the·program·exits.\xd |
Offset 266, 15 lines modified | Offset 266, 15 lines modified | ||
266 | ················3.·DV·*·ETree_nopsMetric·(·ETree·*etree,·int·type,·int·symflag·)·;\xd | 266 | ················3.·DV·*·ETree_nopsMetric·(·ETree·*etree,·int·type,·int·symflag·)·;\xd |
267 | ··················AnDVobjectofsize·nfrontis·created·and·returned.·Each·entry·of·the·vector·is·filled·with·the\xd | 267 | ··················AnDVobjectofsize·nfrontis·created·and·returned.·Each·entry·of·the·vector·is·filled·with·the\xd |
268 | ··················number·of·factor·operations·associated·with·the·corresponding·front.·The·type·parameter\xd | 268 | ··················number·of·factor·operations·associated·with·the·corresponding·front.·The·type·parameter\xd |
269 | ··················can·be·one·of·SPOOLES·REAL·or·SPOOLES·COMPLEX.·The·symflag·parameter·can·be·one·of\xd | 269 | ··················can·be·one·of·SPOOLES·REAL·or·SPOOLES·COMPLEX.·The·symflag·parameter·can·be·one·of\xd |
270 | ··················SPOOLES·SYMMETRIC,·SPOOLES·HERMITIAN·or·SPOOLES·NONSYMMETRIC.\xd | 270 | ··················SPOOLES·SYMMETRIC,·SPOOLES·HERMITIAN·or·SPOOLES·NONSYMMETRIC.\xd |
271 | ··················Error·checking:·If·etree·is·NULL,·or·if·nfront·<·1,·or·if·nvtx·<·1,·or·if·type·or·symflag·is\xd | 271 | ··················Error·checking:·If·etree·is·NULL,·or·if·nfront·<·1,·or·if·nvtx·<·1,·or·if·type·or·symflag·is\xd |
272 | ··················invalid,·an·error·message·is·printed·and·the·program·exits.\xd | 272 | ··················invalid,·an·error·message·is·printed·and·the·program·exits.\xd |
273 | ··············································· | 273 | ···············································ETree·:·DRAFT·······February·18,·2025···························9\xd |
274 | ···············1.2.6····Compression·methods\xd | 274 | ···············1.2.6····Compression·methods\xd |
275 | ···············Frequently·an·ETree·object·will·need·to·be·compressed·in·some·manner.·Elimination·trees·usually\xd | 275 | ···············Frequently·an·ETree·object·will·need·to·be·compressed·in·some·manner.·Elimination·trees·usually\xd |
276 | ···············have·long·chains·of·vertices·at·the·higher·levels,·where·each·chain·of·vertices·corresponds·to·a\xd | 276 | ···············have·long·chains·of·vertices·at·the·higher·levels,·where·each·chain·of·vertices·corresponds·to·a\xd |
277 | ···············supernode.·Liu’s·generalized·row·envelope·methods·partition·the·vertices·by·longest·chains·[?].·In\xd | 277 | ···············supernode.·Liu’s·generalized·row·envelope·methods·partition·the·vertices·by·longest·chains·[?].·In\xd |
278 | ···············both·cases,·we·can·construct·a·map·from·each·node·to·a·set·of·nodes·to·define·a·smaller,·more\xd | 278 | ···············both·cases,·we·can·construct·a·map·from·each·node·to·a·set·of·nodes·to·define·a·smaller,·more\xd |
279 | ···············compact·ETree·object.·Given·such·a·map,·we·construct·the·smaller·etree.\xd | 279 | ···············compact·ETree·object.·Given·such·a·map,·we·construct·the·smaller·etree.\xd |
280 | ···················Afundamental·chain·is·a·set·of·vertices·v·,...,v···such·that\xd | 280 | ···················Afundamental·chain·is·a·set·of·vertices·v·,...,v···such·that\xd |
Max diff block lines reached; 30245/41385 bytes (73.08%) of diff not shown. |
Offset 7, 15 lines modified | Offset 7, 15 lines modified | ||
7 | %%BoundingBox:·0·0·612·792 | 7 | %%BoundingBox:·0·0·612·792 |
8 | %%DocumentFonts:·CMR17·CMBX12·CMR12·CMR8·CMR6·CMR9·CMTT9 | 8 | %%DocumentFonts:·CMR17·CMBX12·CMR12·CMR8·CMR6·CMR9·CMTT9 |
9 | %%DocumentPaperSizes:·Letter | 9 | %%DocumentPaperSizes:·Letter |
10 | %%EndComments | 10 | %%EndComments |
11 | %DVIPSWebPage:·(www.radicaleye.com) | 11 | %DVIPSWebPage:·(www.radicaleye.com) |
12 | %DVIPSCommandLine:·dvips·main·-o·Eigen.ps | 12 | %DVIPSCommandLine:·dvips·main·-o·Eigen.ps |
13 | %DVIPSParameters:·dpi=600 | 13 | %DVIPSParameters:·dpi=600 |
14 | %DVIPSSource:··TeX·output·202 | 14 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
15 | %%BeginProcSet:·tex.pro·0·0 | 15 | %%BeginProcSet:·tex.pro·0·0 |
16 | %! | 16 | %! |
17 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 17 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
18 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 18 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
19 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 19 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
20 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 20 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
21 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 21 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2007, 23 lines modified | Offset 2007, 25 lines modified | ||
2007 | end·readonly·def | 2007 | end·readonly·def |
2008 | /Encoding·256·array | 2008 | /Encoding·256·array |
2009 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2009 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2010 | dup·44·/comma·put | 2010 | dup·44·/comma·put |
2011 | dup·48·/zero·put | 2011 | dup·48·/zero·put |
2012 | dup·49·/one·put | 2012 | dup·49·/one·put |
2013 | dup·50·/two·put | 2013 | dup·50·/two·put |
2014 | dup·52·/four·put | ||
2015 | dup·5 | 2014 | dup·53·/five·put |
2015 | dup·56·/eight·put | ||
2016 | dup·65·/A·put | 2016 | dup·65·/A·put |
2017 | dup·66·/B·put | 2017 | dup·66·/B·put |
2018 | dup·67·/C·put | 2018 | dup·67·/C·put |
2019 | dup·70·/F·put | ||
2019 | dup·74·/J·put | 2020 | dup·74·/J·put |
2020 | dup·80·/P·put | 2021 | dup·80·/P·put |
2021 | dup·87·/W·put | 2022 | dup·87·/W·put |
2022 | dup·97·/a·put | 2023 | dup·97·/a·put |
2024 | dup·98·/b·put | ||
2023 | dup·99·/c·put | 2025 | dup·99·/c·put |
2024 | dup·101·/e·put | 2026 | dup·101·/e·put |
2025 | dup·102·/f·put | 2027 | dup·102·/f·put |
2026 | dup·103·/g·put | 2028 | dup·103·/g·put |
2027 | dup·104·/h·put | 2029 | dup·104·/h·put |
2028 | dup·105·/i·put | 2030 | dup·105·/i·put |
2029 | dup·107·/k·put | 2031 | dup·107·/k·put |
Offset 2214, 185 lines modified | Offset 2216, 197 lines modified | ||
2214 | 82032FBD2FCB6E403D34B85ED4053A8CB619BDD4DE001F4C3007B1F317579651 | 2216 | 82032FBD2FCB6E403D34B85ED4053A8CB619BDD4DE001F4C3007B1F317579651 |
2215 | E6D6662189CC2D95AB85D7473F65C5D7B4AC63B0FE928F3400035D5A9D443D0D | 2217 | E6D6662189CC2D95AB85D7473F65C5D7B4AC63B0FE928F3400035D5A9D443D0D |
2216 | F3532B99F3AC26CB25EA3CD64C341159061E02EFBC7C033C05CD919BBD827A6A | 2218 | F3532B99F3AC26CB25EA3CD64C341159061E02EFBC7C033C05CD919BBD827A6A |
2217 | BFCF3BD739E32E7FE909AEE068D50FAC33605FFF98C7D0115FB860178FD03DB9 | 2219 | BFCF3BD739E32E7FE909AEE068D50FAC33605FFF98C7D0115FB860178FD03DB9 |
2218 | 7985B78E0AC21F2EA065FA841F5928FB85163B2E2D8F850DC7EE313912C45C28 | 2220 | 7985B78E0AC21F2EA065FA841F5928FB85163B2E2D8F850DC7EE313912C45C28 |
2219 | 2783F6762C67882EFEDDC7E7567F91C16B16FD8D5A1ABF35B5586307701B91AD | 2221 | 2783F6762C67882EFEDDC7E7567F91C16B16FD8D5A1ABF35B5586307701B91AD |
2220 | 54984598F2AD46FEE3D68A2731BEAA754C8E730FE0E84952EF77930E4118F8D7 | 2222 | 54984598F2AD46FEE3D68A2731BEAA754C8E730FE0E84952EF77930E4118F8D7 |
2221 | 2F3AD7547ECD7EB31108291A22BBC656F4D968DF891E4F87EF8FFE711A48FFD9 | ||
2222 | 94762E9918C42251D75772AC97BC15A4FF63D911D96AADA1CFAACE8D7001935C | ||
2223 | 9D7A0E6B35E1522780C2629D74057738FCE1BD41CD81D97BFD99D19FE03B2EFF | ||
2224 | 7B80B18DA5538D06A810DD315F31DE1331EDB82DAC760E6D8A855FCA3C8DD9E3 | ||
2225 | 61164D1386FCA2A0E7735AD69D7D9C6335F02064419B2296ADA17DC51A1E2195 | ||
2226 | 45FA3A158E075213ACD6607B07385F0D9F5F3C5C385624B43B10016D497FA569 | ||
2227 | 103C0A7CC701BF1558C587B15A8094D8E4524D74DC263BE9C5D1C96970A7324F | ||
2228 | 5514ED0576D79D5A7C8CC2859C832B0C5869166DA1DB8CAC589AC9EB48379CBB | ||
2229 | 33B840FDDADDDA5FFFC54678E901A33854A703C01C16945C99655BF1BEA74EDA | ||
2230 | 723B5FC176D9693ACA831C563CDB35C96C69575A510E33D5BB62701CDD2A759E | ||
2231 | 79C045541F511340C52E888907801E3548CEC3D2BC22BA40337B64A862929ECD | ||
2232 | 6D7C3F92B5C9AC4427AA6986DDB6A4A792F5FB6C969F50C5068CB2A5C9205191 | ||
2233 | C19B22A4D9627E0304444D963FE2F3C6FE86818FF3A6B50130BCE2DF5DAE000D | ||
2234 | 658D411135E9DFB829BCF033FF4ABF1A3F3E6579537DB4D17EA4BF7F2F6ACA4D | ||
2235 | 6FA0858A09BDD229CF49A29030D280273CEACB3E72945F424D8AAF50E53187D0 | ||
2236 | 61786DA0263FE776D86CC33DF81D8C0325343665F9E6096EA072CD7F53C9FDA8 | ||
2237 | 74C647B762ABD1B70F4315247C13EAA98B41F80E9A3E62DC60C8FA85254E5239 | ||
2238 | 6F9D3EB9C81F9A4EB912388D4F56D56ECB4179475564C8665CDE38A211E518A0 | ||
2239 | 96C3577DF26ECCE018A8C4A547CA4D04E6CFF0CD0F5377FF9D64E584E0A506AB | ||
2240 | C5E8D801F041938BF9F11DB1F8496A26D416A8CA3F96E6E43F149E720F43F1FB | ||
2241 | 041E107C8F4752AD70F2FDB90292F314F46D175AB7C9E67CB61C820B36431613 | ||
2242 | D24E877E74EEBD37AF9B2A6D5A0B970F1619FDD5FA8EEA9C6040251136A79F29 | ||
2243 | 9900E9D3E27DE70055DED223484D7E8701F0B0AACE6B7C9A56C81A8FD69BE0C7 | ||
2244 | 1321229E636B6FC5239806C6A6A19A19B0A43F7E6AEACC7FEB7F6471770A94C8 | ||
2245 | 3B600E07999F7C108072A04D12BEEFC041719E567910DD7BD3C4237460E1B956 | ||
2246 | D356557A7E149C9C13E30336771715BDE317074DDDDA96F1FA46796E75876647 | ||
2247 | DB67F05D3AF2B4E6AF1F9282F35BD874A386A441E21582858C1E64E5D1D7454C | ||
2248 | CADC57208A8BB7BCAAF1A4B91B9813CDC814D0558AF3D945EB5A3A6F151032C9 | ||
2249 | 75C802C88F09810AA73E89735A39DA656AB50A17BFD20DC2E635EB9AF2B2F231 | ||
2250 | AA18D6C51D9DD3D3A6AC403E59449B472CE4AB1B18CCFF150244E173BD0B7664 | ||
2251 | F98E14D6643108BB5903906E7F9CFB98D49B0794333C02BB4F162910DB9CCEDD | ||
2252 | 52DC26D72133AEF0BB93A6C66C9F70E8F09A20BD820980E7199BB192CFC97EBF | ||
2253 | A64E98BD6CB08BCC83C8C99399A57AE2731E681E3735CB258C6F44AD0B10E3B3 | ||
2254 | 07B7FE769FE7E634AFEF21A2896D47DBB7B5539B130B9A19EC0C0F5961FD328D | ||
2255 | A5993D8899581CFE9C2D6FD3633A361EC8AB040A8D352C233E05131B41AB26F9 | ||
2256 | 39C4ACD9B120F0AC1D5B5998266D76B99F81A346FE137BDB4BC8A2E8E4DF6613 | ||
2257 | 29FC27ADFDB99FE6A029CB5B874537A96E1DDEC91582EA4FB797CE7488380D09 | ||
2258 | 39B5D7E62FBAA11820A86747192D4D3A0C9AB026EED692B17D197D2D5E41F907 | ||
2259 | B213D84A4B85E31646D988899EA86368D86A70696E5319A2448263D0B3EB3B74 | ||
2260 | CCA1402ED89873B8C46091D4A2593617B21A7C5115762A85F7D6873F4DF2DB05 | ||
2261 | E037C7C7C3FA4247DC30F665658AC47CE310C064F95504C55BC1926B32BCDE59 | ||
2262 | 9E133FCE4269129F3CC605461B41D2D03D36A19CE4807307C34F9CC8F2803D53 | ||
2263 | 517BEA2A7C8DA7FDD55CC8595E0694193DBF48D155CF38359FCD679AC8CC8DB6 | ||
2264 | 4C66A6B1D0E477513D07F24F9A14F74B39E9C88DC6D78FA372AB170C90C5FA0A | ||
2265 | 63E7CA97F05D859055338D56F15B26EE9DE35CEF3DD1B957980BF4CD53A3C894 | ||
2266 | 59B49AC0C200FB38A6568F1A4E9C46CE912CDBB050EABF8BBBEFEBB2FBF93DB5 | ||
2267 | 2AC57C610EC43CB56136C19C6DE0A62D2CF6338AEC5BEEDA8EE93BB9D1DBCD76 | ||
2268 | 441D71B66CF71D02DAE94B60903ED011B40E87D52B0B8E80AA448E5467D0DDD0 | ||
2269 | 227AE2EB09B898D79AC45BDCFD4049D33B0A6F8AE185810E466C0A7D64771A6A | ||
2270 | 45A7C2F8E68B510BA61281D68D09445C841BD9D57FC46FB3061E4445DD5B882E | ||
2271 | 63786A49878BB6457A2812D027647A1D29B28A45E03E4AA0F43E0CB1121A1636 | ||
2272 | D202FF54108ECF647681840954A53102C0F31BD2F3E833627003B59B542E7980 | ||
2273 | A6EF53ACA4AE99748F81913077197E2C347144E4975614ADCBE9EF101D34A9E8 | ||
2274 | 2B8CF42874F2E65A55F35DBDE777C5F784DB5CD00DD7D93ABFCC43C8C209D221 | ||
2275 | C442C9978E4406C364C16A1129AAD114C58D1B228D484F59B1C16288774BB6C1 | ||
2276 | DB0D4C915CD937F829BFBC18DE9304515EE907DDF735466C8125243592C67E93 | ||
2277 | 06D4F25F2502339C317CFCDFAED0F7A27167219E6CA74AF17A18CC8CA6B15D33 | ||
2278 | BA9A92B8F9B164D275B1CA01CC77B9C668298569C32B0C69CA418BAE6814D701 | ||
2279 | 623500C87310885A89705FA7FA51746EE72E426A52629E96CC16FE05EF173FA1 | ||
2280 | 0F1DE2F5592F4ED45163D235858E2D94E5312477ECD2DE29BF26649EFB4CCE07 | ||
2281 | 6F6582F3DDD5A6AF93F1728EE2916604BEBC9E6E4F52E0C39D115D541AD20C26 | ||
2282 | 555B3FCB4DB2297F5070CAF9AF2DDF777FFF6A1A2543FFEA4265752D0FA41516 | ||
2283 | FEC695DFEA41835A46BA083D0CFDF236B57172FC2B88A31E0E448AF445A9806C | ||
2284 | F5D91AF464439B94B9C2D9895176F396B14CF785343448BE4396AF7BF304AD46 | ||
2285 | A022C25E854D3EA659A6954D97B5EFA90DD0CB9C2405E0D17DF73BEECB6E0DAB | ||
2286 | 289721573616BB56D26C3A029C8F298ED9A05E7EF45860DC7361C499A4A43CFD | ||
2287 | D4CEA09121E618074AA69CEA97D12C849CC0E996C45C890A5D7B784907C551C7 | ||
2288 | AA0AB6A39E205D0EB9C28C9912A56246986089940151EC3586DDDAE12DD06CB2 | ||
2289 | 9BAEE19D458276506DCD64856547C9CDEECB471F7926D38AD4628868D491E541 | ||
2290 | 155F041714423392846E487BC30841060067918888099DB67CA555E2EE6ED1FE | ||
2291 | 9D40B32981249F397CE250174A661C77EED325ED1F6E8EA036820C6B4BD81F7D | ||
2292 | 73ACB9B46C9C901C74081573EBF50EFF9CB3554BAEFEC46779F55286023E9250 | ||
2293 | 143935C02292EE95A978C9B695B302DE2436CC0A60FE92F41FC37F188CA57341 | ||
2294 | E4A8D6E63C73AEAA2C9F82D6B34E12438AD401E9EB724D0F0E6D4D9450589D60 | ||
2295 | 03A0750879297EC2710E3F20C119ADA2894DE9B0BF87A6B8C935ADD1680E0B32 | ||
2296 | E96CCFC03E13376217B8C41DFD0C5553C2B9A3D0FBF9091A6D67ECF554826129 | ||
2297 | 472670F51A463D5BFE6ED6601DF8D494499BD8E9DCE309DED653AB8DC9791037 | ||
Max diff block lines reached; 2776/27893 bytes (9.95%) of diff not shown. |
Offset 1, 11 lines modified | Offset 1, 11 lines modified | ||
1 | ····················Integrating·the·SPOOLES·2.2·Sparse·Linear·Algebra·Library\xd | 1 | ····················Integrating·the·SPOOLES·2.2·Sparse·Linear·Algebra·Library\xd |
2 | ·························into·the·LANCZOS·Block-shifted·Lanczos·Eigensolver\xd | 2 | ·························into·the·LANCZOS·Block-shifted·Lanczos·Eigensolver\xd |
3 | ··········································Cleve·Ashcraft·······················Jim·Patterson\xd | 3 | ··········································Cleve·Ashcraft·······················Jim·Patterson\xd |
4 | ····································Boeing·Phantom·Works1················Boeing·Phantom·Works2\xd | 4 | ····································Boeing·Phantom·Works1················Boeing·Phantom·Works2\xd |
5 | ··························································· | 5 | ···························································February·18,·2025\xd |
6 | ···················1P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124,·cleve.ashcraft@boeing.com.·This·research\xd | 6 | ···················1P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124,·cleve.ashcraft@boeing.com.·This·research\xd |
7 | ·················was·supported·in·part·by·the·DARPA·Contract·DABT63-95-C-0122·and·the·DoD·High·Performance·Computing\xd | 7 | ·················was·supported·in·part·by·the·DARPA·Contract·DABT63-95-C-0122·and·the·DoD·High·Performance·Computing\xd |
8 | ·················Modernization·Program·Common·HPC·Software·Support·Initiative.\xd | 8 | ·················Modernization·Program·Common·HPC·Software·Support·Initiative.\xd |
9 | ···················2P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124,·pattersn@redwood.rt.cs.boeing.com.·This·re-\xd | 9 | ···················2P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124,·pattersn@redwood.rt.cs.boeing.com.·This·re-\xd |
10 | ·················search·was·supportedin·part·bytheDARPAContractDABT63-95-C-0122·andtheDoDHighPerformanceComputing\xd | 10 | ·················search·was·supportedin·part·bytheDARPAContractDABT63-95-C-0122·andtheDoDHighPerformanceComputing\xd |
11 | ·················Modernization·Program·Common·HPC·Software·Support·Initiative.\xd | 11 | ·················Modernization·Program·Common·HPC·Software·Support·Initiative.\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·FrontMtx.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·FrontMtx.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1760, 20 lines modified | Offset 1760, 21 lines modified | ||
1760 | end·readonly·def | 1760 | end·readonly·def |
1761 | /Encoding·256·array | 1761 | /Encoding·256·array |
1762 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1762 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1763 | dup·44·/comma·put | 1763 | dup·44·/comma·put |
1764 | dup·48·/zero·put | 1764 | dup·48·/zero·put |
1765 | dup·49·/one·put | 1765 | dup·49·/one·put |
1766 | dup·50·/two·put | 1766 | dup·50·/two·put |
1767 | dup·52·/four·put | ||
1768 | dup·5 | 1767 | dup·53·/five·put |
1768 | dup·56·/eight·put | ||
1769 | dup·58·/colon·put | 1769 | dup·58·/colon·put |
1770 | dup·7 | 1770 | dup·70·/F·put |
1771 | dup·97·/a·put | 1771 | dup·97·/a·put |
1772 | dup·98·/b·put | ||
1772 | dup·1 | 1773 | dup·101·/e·put |
1773 | dup·114·/r·put | 1774 | dup·114·/r·put |
1774 | dup·117·/u·put | 1775 | dup·117·/u·put |
1775 | dup·121·/y·put | 1776 | dup·121·/y·put |
1776 | readonly·def | 1777 | readonly·def |
1777 | currentdict·end | 1778 | currentdict·end |
1778 | currentfile·eexec | 1779 | currentfile·eexec |
1779 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1780 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1957, 89 lines modified | Offset 1958, 93 lines modified | ||
1957 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1958 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1958 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1959 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1959 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1960 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1960 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1961 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1961 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1962 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1962 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1963 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1963 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1964 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1964 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1965 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1965 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1966 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1967 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1968 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1969 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1970 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1971 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1972 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1973 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1974 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1975 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1976 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1977 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1978 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1979 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1980 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1981 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1982 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1983 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1984 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1985 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1986 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1987 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1988 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1989 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1990 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1991 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1992 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1993 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1994 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1995 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1996 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1997 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1998 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1999 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2000 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2001 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2002 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2003 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2004 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2005 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2006 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2007 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2008 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2009 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2010 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2011 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2012 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2013 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2014 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2015 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2016 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2017 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2018 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2019 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2020 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2021 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2022 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2023 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2024 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2025 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2026 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2027 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2028 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2029 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2030 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2031 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2032 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2033 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2034 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2035 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2036 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2037 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2038 | 1966 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1967 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1968 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1969 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1970 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1971 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1972 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 51904/63798 bytes (81.36%) of diff not shown. |
Offset 23, 15 lines modified | Offset 23, 15 lines modified | ||
23 | ··········are·disjoint.·P·is·a·permutation·matrix.·If·pivoting·is·not·used,·P·is·the·identity.\xd | 23 | ··········are·disjoint.·P·is·a·permutation·matrix.·If·pivoting·is·not·used,·P·is·the·identity.\xd |
24 | ········2.·(A·+·σB)·=·P(L·+·I)D(I·+·U)QT·for·a·square·nonsymmetric·matrix·A·with·symmetric\xd | 24 | ········2.·(A·+·σB)·=·P(L·+·I)D(I·+·U)QT·for·a·square·nonsymmetric·matrix·A·with·symmetric\xd |
25 | ··········structure.·D·is·a·diagonal·matrix.·U·is·strictly·upper·triangular.·L·is·strictly·lower·triangular.\xd | 25 | ··········structure.·D·is·a·diagonal·matrix.·U·is·strictly·upper·triangular.·L·is·strictly·lower·triangular.\xd |
26 | ··········P·and·Q·are·permutation·matrices.·If·pivoting·is·not·used,·P·and·Q·are·the·identity.\xd | 26 | ··········P·and·Q·are·permutation·matrices.·If·pivoting·is·not·used,·P·and·Q·are·the·identity.\xd |
27 | ········3.·A·=·QR·for·square·or·rectangular·A.·Q·is·an·orthogonal·matrix·that·is·not·explicitly\xd | 27 | ········3.·A·=·QR·for·square·or·rectangular·A.·Q·is·an·orthogonal·matrix·that·is·not·explicitly\xd |
28 | ··········computed·or·stored.·R·is·upper·triangular.\xd | 28 | ··········computed·or·stored.·R·is·upper·triangular.\xd |
29 | ·····························1\xd | 29 | ·····························1\xd |
30 | ············2························ | 30 | ············2························FrontMtx·:·DRAFT·February·18,·2025\xd |
31 | ···············The·factorization·is·performed·using·a·one·dimensional·decomposition·of·the·global·sparse\xd | 31 | ···············The·factorization·is·performed·using·a·one·dimensional·decomposition·of·the·global·sparse\xd |
32 | ············matrix.·A·typical·front·of·the·matrix·is·found·the·shaded·portion·of·the·figure·below.\xd | 32 | ············matrix.·A·typical·front·of·the·matrix·is·found·the·shaded·portion·of·the·figure·below.\xd |
33 | ············Afront·is·indivisible,·it·is·found·on·one·processor,·and·one·processor·or·one·thread·is·responsible\xd | 33 | ············Afront·is·indivisible,·it·is·found·on·one·processor,·and·one·processor·or·one·thread·is·responsible\xd |
34 | ············for·its·internal·computations.·This·is·extremely·important·if·we·want·to·support·pivoting·for\xd | 34 | ············for·its·internal·computations.·This·is·extremely·important·if·we·want·to·support·pivoting·for\xd |
35 | ············stability,·for·deciding·how·to·choose·the·pivot·elements·in·the·front·requires·continuous·up-to-\xd | 35 | ············stability,·for·deciding·how·to·choose·the·pivot·elements·in·the·front·requires·continuous·up-to-\xd |
36 | ············date·information·about·all·the·entries·in·the·front.·If·a·front·were·partitioned·among·threads·or\xd | 36 | ············date·information·about·all·the·entries·in·the·front.·If·a·front·were·partitioned·among·threads·or\xd |
37 | ············processors,·the·cost·of·the·communication·to·select·pivot·elements·would·be·intolerable.\xd | 37 | ············processors,·the·cost·of·the·communication·to·select·pivot·elements·would·be·intolerable.\xd |
Offset 56, 15 lines modified | Offset 56, 15 lines modified | ||
56 | ···············•·The·linear·combination·A+σB·is·found·in·a·Pencil·object.\xd | 56 | ···············•·The·linear·combination·A+σB·is·found·in·a·Pencil·object.\xd |
57 | ···············•·The·ETree·object·contains·the·front·tree·that·governs·the·factorization·and·solve.·Inside\xd | 57 | ···············•·The·ETree·object·contains·the·front·tree·that·governs·the·factorization·and·solve.·Inside\xd |
58 | ·················this·object·are·the·dimensions·of·each·front·(the·number·of·internal·and·external·rows·and\xd | 58 | ·················this·object·are·the·dimensions·of·each·front·(the·number·of·internal·and·external·rows·and\xd |
59 | ·················columns),·the·tree·connectivity·of·the·fronts,·and·a·map·from·each·vertex·to·the·front·that\xd | 59 | ·················columns),·the·tree·connectivity·of·the·fronts,·and·a·map·from·each·vertex·to·the·front·that\xd |
60 | ·················contains·it·as·an·internal·row·and·column.·The·FrontMtx·object·contains·a·pointer·to·an\xd | 60 | ·················contains·it·as·an·internal·row·and·column.·The·FrontMtx·object·contains·a·pointer·to·an\xd |
61 | ·················ETree·object,·but·it·does·not·modify·the·object,·nor·does·it·own·the·storage·for·the·ETree\xd | 61 | ·················ETree·object,·but·it·does·not·modify·the·object,·nor·does·it·own·the·storage·for·the·ETree\xd |
62 | ·················object.·Thus·multiple·front·matrices·can·all·point·to·the·same·ETree·object·simultaneously.\xd | 62 | ·················object.·Thus·multiple·front·matrices·can·all·point·to·the·same·ETree·object·simultaneously.\xd |
63 | ···································· | 63 | ····································FrontMtx·:·DRAFT···February·18,·2025··················3\xd |
64 | ···············•·An·IVL·object·(Integer·Vector·List),·contains·the·symbolic·factorization.·For·each·front,·it\xd | 64 | ···············•·An·IVL·object·(Integer·Vector·List),·contains·the·symbolic·factorization.·For·each·front,·it\xd |
65 | ·················gives·the·list·of·internal·and·external·rows·and·columns,·used·to·initialize·a·front·prior·to·its\xd | 65 | ·················gives·the·list·of·internal·and·external·rows·and·columns,·used·to·initialize·a·front·prior·to·its\xd |
66 | ·················factorization.·For·a·factorization·without·pivoting,·this·object·stores·the·index·information\xd | 66 | ·················factorization.·For·a·factorization·without·pivoting,·this·object·stores·the·index·information\xd |
67 | ·················for·the·factors,·and·so·is·used·during·the·forward·and·backsolves.·For·a·factorization·with\xd | 67 | ·················for·the·factors,·and·so·is·used·during·the·forward·and·backsolves.·For·a·factorization·with\xd |
68 | ·················pivoting,·the·index·information·for·a·front·may·change,·so·this·object·is·not·used·during·the\xd | 68 | ·················pivoting,·the·index·information·for·a·front·may·change,·so·this·object·is·not·used·during·the\xd |
69 | ·················solves.·As·for·the·ETree·object,·the·symbolic·factorization·is·neither·modified·or·owned·by\xd | 69 | ·················solves.·As·for·the·ETree·object,·the·symbolic·factorization·is·neither·modified·or·owned·by\xd |
70 | ·················the·front·matrix·object.\xd | 70 | ·················the·front·matrix·object.\xd |
Offset 96, 15 lines modified | Offset 96, 15 lines modified | ||
96 | ·················postponed·data·(when·pivoting·is·enabled)·or·aggregate·data·(in·a·parallel·factorization),·and\xd | 96 | ·················postponed·data·(when·pivoting·is·enabled)·or·aggregate·data·(in·a·parallel·factorization),·and\xd |
97 | ·················the·factorization·of·the·fully·assembled·front,·take·place·within·the·context·of·this·object.\xd | 97 | ·················the·factorization·of·the·fully·assembled·front,·take·place·within·the·context·of·this·object.\xd |
98 | ···············•·The·SubMtx·object·is·used·to·store·a·submatrix·of·the·factor·matrices·D,·L·and·U.·Once·a\xd | 98 | ···············•·The·SubMtx·object·is·used·to·store·a·submatrix·of·the·factor·matrices·D,·L·and·U.·Once·a\xd |
99 | ·················front·is·factored·it·is·split·into·one·or·more·of·these·submatrix·objects.·After·the·factorization\xd | 99 | ·················front·is·factored·it·is·split·into·one·or·more·of·these·submatrix·objects.·After·the·factorization\xd |
100 | ·················is·complete,·the·data·structures·are·postprocessed·to·yield·submatrices·that·contain·the\xd | 100 | ·················is·complete,·the·data·structures·are·postprocessed·to·yield·submatrices·that·contain·the\xd |
101 | ·················coupling·between·fronts.·The·working·storage·during·the·solves·is·also·managed·by·SubMtx\xd | 101 | ·················coupling·between·fronts.·The·working·storage·during·the·solves·is·also·managed·by·SubMtx\xd |
102 | ·················objects.\xd | 102 | ·················objects.\xd |
103 | ···········4·····················FrontMtx·:·DRAFT· | 103 | ···········4·····················FrontMtx·:·DRAFT·February·18,·2025\xd |
104 | ··············•·Each·submatrix·represents·the·coupling·between·two·fronts,·I·and·J.·To·enable·rapid·random\xd | 104 | ··············•·Each·submatrix·represents·the·coupling·between·two·fronts,·I·and·J.·To·enable·rapid·random\xd |
105 | ···············access·to·these·submatrices,·we·use·a·I2Ohash·object·that·is·a·hash·table·whose·keys·are·two\xd | 105 | ···············access·to·these·submatrices,·we·use·a·I2Ohash·object·that·is·a·hash·table·whose·keys·are·two\xd |
106 | ···············integers·and·whose·data·is·a·void·*·pointer.\xd | 106 | ···············integers·and·whose·data·is·a·void·*·pointer.\xd |
107 | ··············•·The·set·of·nonzero·submatrices,·i.e.,·the·nonzero·couplings·between·two·fronts,·is·kept·in\xd | 107 | ··············•·The·set·of·nonzero·submatrices,·i.e.,·the·nonzero·couplings·between·two·fronts,·is·kept·in\xd |
108 | ···············one·or·two·IVL·objects.·This·information·is·necessary·for·the·factorization·and·forward·and\xd | 108 | ···············one·or·two·IVL·objects.·This·information·is·necessary·for·the·factorization·and·forward·and\xd |
109 | ···············backsolves.\xd | 109 | ···············backsolves.\xd |
110 | ··············•·The·factorization·and·solves·require·lists·of·fronts·and·submatrices·to·manage·assembly·of\xd | 110 | ··············•·The·factorization·and·solves·require·lists·of·fronts·and·submatrices·to·manage·assembly·of\xd |
Offset 131, 15 lines modified | Offset 131, 15 lines modified | ||
131 | ··············•·int·pivotingflag·:·flag·to·specify·pivoting·for·stability,\xd | 131 | ··············•·int·pivotingflag·:·flag·to·specify·pivoting·for·stability,\xd |
132 | ·················–·SPOOLES·NO·PIVOTING·—·pivoting·not·used\xd | 132 | ·················–·SPOOLES·NO·PIVOTING·—·pivoting·not·used\xd |
133 | ·················–·SPOOLES·PIVOTING·—·pivoting·used\xd | 133 | ·················–·SPOOLES·PIVOTING·—·pivoting·used\xd |
134 | ··············•·int·sparsityflag·:·flag·to·specify·storage·of·factors.\xd | 134 | ··············•·int·sparsityflag·:·flag·to·specify·storage·of·factors.\xd |
135 | ·················–·0·—·each·front·is·dense\xd | 135 | ·················–·0·—·each·front·is·dense\xd |
136 | ·················–·1·—·a·front·may·be·sparse·due·to·entries·dropped·because·they·are·below·a·drop\xd | 136 | ·················–·1·—·a·front·may·be·sparse·due·to·entries·dropped·because·they·are·below·a·drop\xd |
137 | ···················tolerance.\xd | 137 | ···················tolerance.\xd |
138 | ···································· | 138 | ····································FrontMtx·:·DRAFT···February·18,·2025··················5\xd |
139 | ···············•·int·dataMode·:·flag·to·specify·data·storage.\xd | 139 | ···············•·int·dataMode·:·flag·to·specify·data·storage.\xd |
140 | ···················–·1·—·one-dimensional,·used·during·the·factorization.\xd | 140 | ···················–·1·—·one-dimensional,·used·during·the·factorization.\xd |
141 | ···················–·2·—·two-dimensional,·used·during·the·solves.\xd | 141 | ···················–·2·—·two-dimensional,·used·during·the·solves.\xd |
142 | ···············•·int·nentD·:·number·of·entries·in·D\xd | 142 | ···············•·int·nentD·:·number·of·entries·in·D\xd |
143 | ···············•·int·nentL·:·number·of·entries·in·L\xd | 143 | ···············•·int·nentL·:·number·of·entries·in·L\xd |
144 | ···············•·int·nentU·:·number·of·entries·in·U\xd | 144 | ···············•·int·nentU·:·number·of·entries·in·U\xd |
145 | ···············•·Tree·*tree:·Treeobjectthatholdsthetreeoffronts.·Note,·normallythisisfrontETree->tree,\xd | 145 | ···············•·Tree·*tree:·Treeobjectthatholdsthetreeoffronts.·Note,·normallythisisfrontETree->tree,\xd |
Offset 165, 15 lines modified | Offset 165, 15 lines modified | ||
165 | ·················used·only·during·a·nonsymmetric·factorization.\xd | 165 | ·················used·only·during·a·nonsymmetric·factorization.\xd |
166 | ···············•·SubMtx·**p·mtxLNJ·:·a·vector·of·pointers·to·submatrices·in·L·that·are·off·the·block·diagonal,\xd | 166 | ···············•·SubMtx·**p·mtxLNJ·:·a·vector·of·pointers·to·submatrices·in·L·that·are·off·the·block·diagonal,\xd |
167 | ·················used·only·during·a·nonsymmetric·factorization.\xd | 167 | ·················used·only·during·a·nonsymmetric·factorization.\xd |
168 | ···············•·I2Ohash·*lowerhash·:·pointer·to·a·I2Ohash·hash·table·for·submatrices·in·L,·used·during\xd | 168 | ···············•·I2Ohash·*lowerhash·:·pointer·to·a·I2Ohash·hash·table·for·submatrices·in·L,·used·during\xd |
169 | ·················the·solves.\xd | 169 | ·················the·solves.\xd |
170 | ···············•·I2Ohash·*upperhash·:·pointer·to·a·I2Ohash·hash·table·for·submatrices·in·U,·used·during\xd | 170 | ···············•·I2Ohash·*upperhash·:·pointer·to·a·I2Ohash·hash·table·for·submatrices·in·U,·used·during\xd |
171 | ·················the·solves.\xd | 171 | ·················the·solves.\xd |
172 | ···········6·····················FrontMtx·:·DRAFT· | 172 | ···········6·····················FrontMtx·:·DRAFT·February·18,·2025\xd |
173 | ··············•·SubMtxManager·*manager·:·pointer·to·an·object·that·manages·the·instances·of·submatrices\xd | 173 | ··············•·SubMtxManager·*manager·:·pointer·to·an·object·that·manages·the·instances·of·submatrices\xd |
174 | ···············during·the·factors·and·solves.\xd | 174 | ···············during·the·factors·and·solves.\xd |
175 | ··············•·Lock·*lock·:·pointer·to·a·Lock·lock·used·in·a·multithreaded·environment·to·ensure·exlusive\xd | 175 | ··············•·Lock·*lock·:·pointer·to·a·Lock·lock·used·in·a·multithreaded·environment·to·ensure·exlusive\xd |
176 | ···············access·while·allocating·storage·in·the·IV·and·IVL·objects.·This·is·not·used·in·a·serial·or·MPI\xd | 176 | ···············access·while·allocating·storage·in·the·IV·and·IVL·objects.·This·is·not·used·in·a·serial·or·MPI\xd |
177 | ···············environment.\xd | 177 | ···············environment.\xd |
178 | ··············•·int·nlocks·:·number·of·times·the·lock·has·been·locked.\xd | 178 | ··············•·int·nlocks·:·number·of·times·the·lock·has·been·locked.\xd |
179 | ··············•·PatchAndGo·*info·:·this·is·a·pointer·to·an·object·that·is·used·by·the·Chv·object·during·the\xd | 179 | ··············•·PatchAndGo·*info·:·this·is·a·pointer·to·an·object·that·is·used·by·the·Chv·object·during·the\xd |
Offset 196, 15 lines modified | Offset 196, 15 lines modified | ||
196 | ··············•·FRONTMTX·IS·1D·MODE(frontmtx)·is·1·if·the·factor·are·still·stored·as·a·one-dimensional·data\xd | 196 | ··············•·FRONTMTX·IS·1D·MODE(frontmtx)·is·1·if·the·factor·are·still·stored·as·a·one-dimensional·data\xd |
197 | ···············decomposition·(i.e.,·the·matrix·has·not·yet·been·post-processed),·and·0·otherwise.\xd | 197 | ···············decomposition·(i.e.,·the·matrix·has·not·yet·been·post-processed),·and·0·otherwise.\xd |
198 | ··············•·FRONTMTX·IS·2D·MODE(frontmtx)·is·1·if·the·factor·are·stored·as·a·two-dimensional·data\xd | 198 | ··············•·FRONTMTX·IS·2D·MODE(frontmtx)·is·1·if·the·factor·are·stored·as·a·two-dimensional·data\xd |
199 | ···············decomposition·(i.e.,·the·matrix·has·been·post-processed),·and·0·otherwise.\xd | 199 | ···············decomposition·(i.e.,·the·matrix·has·been·post-processed),·and·0·otherwise.\xd |
200 | ···········1.2··Prototypes·and·descriptions·of·FrontMtx·methods\xd | 200 | ···········1.2··Prototypes·and·descriptions·of·FrontMtx·methods\xd |
201 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 201 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
202 | ···········FrontMtx·object.\xd | 202 | ···········FrontMtx·object.\xd |
203 | ···································· | 203 | ····································FrontMtx·:·DRAFT···February·18,·2025··················7\xd |
204 | ············1.2.1··Basic·methods\xd | 204 | ············1.2.1··Basic·methods\xd |
205 | ············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 205 | ············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
206 | ············any·allocated·data,·and·free’ing·the·object.\xd | 206 | ············any·allocated·data,·and·free’ing·the·object.\xd |
207 | ···············1.·FrontMtx·*·FrontMtx_new·(·void·)·;\xd | 207 | ···············1.·FrontMtx·*·FrontMtx_new·(·void·)·;\xd |
208 | ·················This·method·simply·allocates·storage·for·the·FrontMtx·structure·and·then·sets·the·default\xd | 208 | ·················This·method·simply·allocates·storage·for·the·FrontMtx·structure·and·then·sets·the·default\xd |
209 | ·················fields·by·a·call·to·FrontMtx·setDefaultFields().\xd | 209 | ·················fields·by·a·call·to·FrontMtx·setDefaultFields().\xd |
210 | ···············2.·void·FrontMtx_setDefaultFields·(·FrontMtx·*frontmtx·)·;\xd | 210 | ···············2.·void·FrontMtx_setDefaultFields·(·FrontMtx·*frontmtx·)·;\xd |
Offset 231, 15 lines modified | Offset 231, 15 lines modified | ||
231 | ············1.2.2··Instance·methods\xd | 231 | ············1.2.2··Instance·methods\xd |
232 | ···············1.·int·FrontMtx_nfront·(·FrontMtx·*frontmtx·)·;\xd | 232 | ···············1.·int·FrontMtx_nfront·(·FrontMtx·*frontmtx·)·;\xd |
233 | ·················This·method·returns·the·number·of·fronts·in·the·matrix.\xd | 233 | ·················This·method·returns·the·number·of·fronts·in·the·matrix.\xd |
234 | ·················Error·checking:·If·frontmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 234 | ·················Error·checking:·If·frontmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
235 | ···············2.·int·FrontMtx_neqns·(·FrontMtx·*frontmtx·)·;\xd | 235 | ···············2.·int·FrontMtx_neqns·(·FrontMtx·*frontmtx·)·;\xd |
236 | ·················This·method·returns·the·number·of·equations·in·the·matrix.\xd | 236 | ·················This·method·returns·the·number·of·equations·in·the·matrix.\xd |
237 | ·················Error·checking:·If·frontmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 237 | ·················Error·checking:·If·frontmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
238 | ···············8····························· | 238 | ···············8·····························FrontMtx·:·DRAFT·February·18,·2025\xd |
239 | ··················3.·Tree·*·FrontMtx_frontTree·(·FrontMtx·*frontmtx·)·;\xd | 239 | ··················3.·Tree·*·FrontMtx_frontTree·(·FrontMtx·*frontmtx·)·;\xd |
240 | ·····················This·method·returns·the·Tree·object·for·the·fronts.\xd | 240 | ·····················This·method·returns·the·Tree·object·for·the·fronts.\xd |
241 | ·····················Error·checking:·If·frontmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 241 | ·····················Error·checking:·If·frontmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
242 | ··················4.·void·FrontMtx_initialFrontDimensions·(·FrontMtx·*frontmtx,·int·J,\xd | 242 | ··················4.·void·FrontMtx_initialFrontDimensions·(·FrontMtx·*frontmtx,·int·J,\xd |
243 | ···················································int·*pnD,·int·*pnL,·int·*pnU,·int·*pnbytes·)·;\xd | 243 | ···················································int·*pnD,·int·*pnL,·int·*pnU,·int·*pnbytes·)·;\xd |
244 | ·····················This·method·fills·the·four·pointer·arguments·with·the·number·of·internal·rows·and·columns,\xd | 244 | ·····················This·method·fills·the·four·pointer·arguments·with·the·number·of·internal·rows·and·columns,\xd |
245 | ·····················number·of·rows·in·the·lower·block,·number·of·columns·in·the·upper·block,·and·number·of\xd | 245 | ·····················number·of·rows·in·the·lower·block,·number·of·columns·in·the·upper·block,·and·number·of\xd |
Offset 269, 15 lines modified | Offset 269, 15 lines modified | ||
269 | ·····················Error·checking:·If·frontmtx,·pnrow·or·pindices·is·NULL,·or·if·J·is·not·in·[0,nfront),·an\xd | 269 | ·····················Error·checking:·If·frontmtx,·pnrow·or·pindices·is·NULL,·or·if·J·is·not·in·[0,nfront),·an\xd |
270 | ·····················error·message·is·printed·and·the·program·exits.\xd | 270 | ·····················error·message·is·printed·and·the·program·exits.\xd |
271 | ··················9.·SubMtx·*·FrontMtx_diagMtx·(·FrontMtx·*frontmtx,·int·J·)·;\xd | 271 | ··················9.·SubMtx·*·FrontMtx_diagMtx·(·FrontMtx·*frontmtx,·int·J·)·;\xd |
272 | ·····················This·method·returns·a·pointer·to·the·object·that·contains·submatrix·D··.\xd | 272 | ·····················This·method·returns·a·pointer·to·the·object·that·contains·submatrix·D··.\xd |
273 | ··························································································J,J\xd | 273 | ··························································································J,J\xd |
274 | ·····················Error·checking:·If·frontmtx·is·NULL,·or·if·J·is·not·in·[0,nfront),·an·error·message·is·printed\xd | 274 | ·····················Error·checking:·If·frontmtx·is·NULL,·or·if·J·is·not·in·[0,nfront),·an·error·message·is·printed\xd |
275 | ·····················and·the·program·exits.\xd | 275 | ·····················and·the·program·exits.\xd |
276 | ···································· | 276 | ····································FrontMtx·:·DRAFT···February·18,·2025··················9\xd |
277 | ··············10.·SubMtx·*·FrontMtx_upperMtx·(·FrontMtx·*frontmtx,·int·J,·int·K·)·;\xd | 277 | ··············10.·SubMtx·*·FrontMtx_upperMtx·(·FrontMtx·*frontmtx,·int·J,·int·K·)·;\xd |
278 | ·················This·method·returns·a·pointer·to·the·object·that·contains·submatrix·UJ,K.·If·K·=·nfront,\xd | 278 | ·················This·method·returns·a·pointer·to·the·object·that·contains·submatrix·UJ,K.·If·K·=·nfront,\xd |
279 | ·················then·the·object·containing·UJ,∂J·is·returned.\xd | 279 | ·················then·the·object·containing·UJ,∂J·is·returned.\xd |
280 | ·················Error·checking:·If·frontmtx·is·NULL,·or·if·J·is·not·in·[0,nfront),·or·if·K·is·not·in·[0,nfront],\xd | 280 | ·················Error·checking:·If·frontmtx·is·NULL,·or·if·J·is·not·in·[0,nfront),·or·if·K·is·not·in·[0,nfront],\xd |
281 | ·················an·error·message·is·printed·and·the·program·exits.\xd | 281 | ·················an·error·message·is·printed·and·the·program·exits.\xd |
282 | ··············11.·SubMtx·*·FrontMtx_lowerMtx·(·FrontMtx·*frontmtx,·int·K,·int·J·)·;\xd | 282 | ··············11.·SubMtx·*·FrontMtx_lowerMtx·(·FrontMtx·*frontmtx,·int·K,·int·J·)·;\xd |
283 | ·················This·method·returns·a·pointer·to·the·object·that·contains·submatrix·LK,J.·If·K·=·nfront,\xd | 283 | ·················This·method·returns·a·pointer·to·the·object·that·contains·submatrix·LK,J.·If·K·=·nfront,\xd |
Max diff block lines reached; 19967/31237 bytes (63.92%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·FrontTrees.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·FrontTrees.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 3346, 21 lines modified | Offset 3346, 21 lines modified | ||
3346 | end·readonly·def | 3346 | end·readonly·def |
3347 | /Encoding·256·array | 3347 | /Encoding·256·array |
3348 | 0·1·255·{1·index·exch·/.notdef·put}·for | 3348 | 0·1·255·{1·index·exch·/.notdef·put}·for |
3349 | dup·44·/comma·put | 3349 | dup·44·/comma·put |
3350 | dup·48·/zero·put | 3350 | dup·48·/zero·put |
3351 | dup·49·/one·put | 3351 | dup·49·/one·put |
3352 | dup·50·/two·put | 3352 | dup·50·/two·put |
3353 | dup·52·/four·put | ||
3354 | dup·5 | 3353 | dup·53·/five·put |
3354 | dup·56·/eight·put | ||
3355 | dup·70·/F·put | 3355 | dup·70·/F·put |
3356 | dup·74·/J·put | ||
3357 | dup·79·/O·put | 3356 | dup·79·/O·put |
3358 | dup·84·/T·put | 3357 | dup·84·/T·put |
3359 | dup·97·/a·put | 3358 | dup·97·/a·put |
3359 | dup·98·/b·put | ||
3360 | dup·100·/d·put | 3360 | dup·100·/d·put |
3361 | dup·101·/e·put | 3361 | dup·101·/e·put |
3362 | dup·103·/g·put | 3362 | dup·103·/g·put |
3363 | dup·105·/i·put | 3363 | dup·105·/i·put |
3364 | dup·110·/n·put | 3364 | dup·110·/n·put |
3365 | dup·111·/o·put | 3365 | dup·111·/o·put |
3366 | dup·114·/r·put | 3366 | dup·114·/r·put |
Offset 3566, 123 lines modified | Offset 3566, 124 lines modified | ||
3566 | 08DEDBA3C08C02E68839D7F4BE7FAAA1E02C827318B197877AF9BCCE1672FEA3 | 3566 | 08DEDBA3C08C02E68839D7F4BE7FAAA1E02C827318B197877AF9BCCE1672FEA3 |
3567 | BE29CF70087D9173BFD000DD4A017C0A2DAECC5AF6087B2BA350D1878A5A28F3 | 3567 | BE29CF70087D9173BFD000DD4A017C0A2DAECC5AF6087B2BA350D1878A5A28F3 |
3568 | 69D32483E9313AFFAFBC58467E9060722A237ADE5AB1277AD81CA46F4C961B3F | 3568 | 69D32483E9313AFFAFBC58467E9060722A237ADE5AB1277AD81CA46F4C961B3F |
3569 | DFA1A6935CE12185CB35ECE23D3E794816EAD5145F477FBE824C0F0897FDEA08 | 3569 | DFA1A6935CE12185CB35ECE23D3E794816EAD5145F477FBE824C0F0897FDEA08 |
3570 | 11CE02EDDD4B267C2613CED061A00B69BB7DA125058E7ECBD934C7E7BBC86873 | 3570 | 11CE02EDDD4B267C2613CED061A00B69BB7DA125058E7ECBD934C7E7BBC86873 |
3571 | 4631EE83B47CE83A4D156C193C0755D5E91438F660A3DB577C863662EF0841D1 | 3571 | 4631EE83B47CE83A4D156C193C0755D5E91438F660A3DB577C863662EF0841D1 |
3572 | 939DDC747B7995C76BA103919DE1937DEA40B571C1CA4A48B9D9C7B78DDC6F2E | 3572 | 939DDC747B7995C76BA103919DE1937DEA40B571C1CA4A48B9D9C7B78DDC6F2E |
3573 | 615CF9403DF3BCE321EF1932E2F7EE17FE6F0C402F4DF304B9A1DB46B32FB | 3573 | 615CF9403DF3BCE321EF1932E2F7EE17FE6F0C402F4DF304B9A1DB46B32FB4F1 |
3574 | BDCA91097C4A6B30A7396CE684F60FF945E2BB1D7C277B8614CBA0139AB45E6F | ||
3575 | 927B61C01D161B5984340AAF2E39AE87832D7787189C08DF52A1EF478E07CC83 | ||
3576 | 1B6FD55FFCF174A35DCF946434FD83CF4C6EFBEB1FBC85D2BE19AB55CB76E017 | ||
3577 | A4F86E18E8F25F8F66F69550C4942FEB82E5664211A2D61B1C543671A33CB08A | ||
3578 | BA012E3E6DC4EC4AA22BC9A182EF27781B724B85EC1880948EBCEB4218A9B0C8 | ||
3579 | 3926E6A6D8696510518CAEF4C6CC3D4B1123B14B1F5911D6A6FB71716E55BA23 | ||
3580 | 72E3B03506201466A15E87B6E4895AD8C9A56FCA7978DD56829521C5186FE0DE | ||
3581 | 8061E6481FFB741ACC1ACA4318D5F66F1A82730B0FCB38B65B5B3A3942B34B98 | ||
3582 | 255F2ABF5EB1E69FEE187B3BEA63893913D152D8C4BBBD95285B766502246381 | ||
3583 | 365F55B8C3DEC39A1228A236E7FBBA7111CB57CC444FE0FD7B6F9BF163061D8C | ||
3584 | 2358FD3A5567C5277044EF70468B3B1A147A9F7C9D2C70DCA13AD35BBF6465EE | ||
3585 | 3A698350DA9CA3B2B48833627C4A179823E5354D1A5A26A64FE348622CCB06AD | ||
3586 | 28A5194F4F52412B1B753C2408AE00B7F100238706194276BC9DE74D201AE51A | ||
3587 | 8DEE6D2DEF44A1EA0DDC86487E3F58A0842EB48529F3432D497102223FD8D291 | ||
3588 | 1C8BF37798092AF67EEE8DB174331D107BCF64F43B9B4CD77B49ABA05F2689B8 | ||
3589 | B688F97DBE2FDE0F0D88F5DE0BA2F57E048581582DE43A6570EE4B2036B05710 | ||
3590 | 526F98DB733812E9BF0899D62A52A286728749F0B237CF0C8D12B1F9758CED13 | ||
3591 | 41BDD4D645245AC57113348E7C3F3D93AB8D7A676A5CD1DCB95498DA2330C811 | ||
3592 | D73A35D849537AC77531C61DEB4C1C85B9BE89ED4DF2A6A7CF99D0EE0F6CDAB1 | ||
3593 | 2DD9FB584504EEBA1DB1AC2E1DF3BE04D88429B7ABA76345EE2432D7FA02E9F1 | ||
3594 | EA4C613C9A1A5448D3F92749019EA3AE56C7D1D65E939DEFBADF66D70C9294DF | ||
3595 | 55E9A8803766697957E2D1ABC31E94FBF3F52F0BA622B124D975EE2797E3DAA3 | ||
3596 | 8CFB1C1DDCC8B837C68B033BB5888DD61A09F160F3773F1F1427F5826F5DFDBE | ||
3597 | 67A6CE15582506085746DF78F3FB41167163623856059DCF540D998E8908A2C7 | ||
3598 | B87A6116A576E2CB70414CC37D43B2C046EB58637BC6A6E1A471D7A9EF3785F4 | ||
3599 | 7FE0AB8735374672A350A7B2D984F12ACD5F94761EB09E52AA7A1A80CB9A099A | ||
3600 | 3975D2DD173E52C95D30B03B35A967E57A0544597831A8F78E4482CC99A033FF | ||
3601 | FBD27BFFFDFD91D0D3A8B302456C0326647720BAA914A1F7717646087C414123 | ||
3602 | BF2C532B8A9D9CD2D7163460084A185251F2360081EDB907C55C0057705CB557 | ||
3603 | C9136567F885486221444DC3A003E8B83E5BA8D66E85A456CA39F158F732F543 | ||
3604 | ECCEA5AC17145EE28E2F9602F9845398F86DDA7A5A5AFCE312865B20C7D97FD8 | ||
3605 | 208F46C5CC52249C16F69626C610D5F6E1BBDFA7966759E27D553EB212100801 | ||
3606 | 60924A1555849D347861F94F2656FF90D7FF7B00E0C3112C47F84FC24589BD39 | ||
3607 | B0B1F520B5402E35B15CD5199342AF974FC0D9106AD4A4AC801A38D3CF8CFBB7 | ||
3608 | C3DCEA96C60A7FF9C0DF43C208B86545061D970CB7D11B055840EDC9F1919E4D | ||
3609 | 952ECF01ECF09DD11569A5E57D7945C10B57D9290E083ABFEB8426CD9BAAF2E0 | ||
3610 | 8636E3F9FF19EE2D825CA93AC3298789B687C3C18C8D3AD27DA7582E03262744 | ||
3611 | 9CF6C5D29C2C2FB22529A381532DBEEFC5A5116D6F62E7706F3CD5004CF3877F | ||
3612 | B32B2AB98547D710BA5D8B7949A5EB11BB69845D93FE51B9D2D1211172D492D5 | ||
3613 | BB768F0C291FEF5CDDAC21199DDAB823EC6620A906F18A943954F8258EF90D9A | ||
3614 | 5B26D7F82CA839EB798DF37F1B765FB41FA5BF59AC743744594B0718C9D82B42 | ||
3615 | 902C08C937E171BDEF8D4FACF2BD17165FFC4262185AD095185ECFEB9075774D | ||
3616 | 63343234D2B5782CA448C095C1D579656F2BE1A90EC55DB072CD7C0EB502DF16 | ||
3617 | 4D0E344D23A1BDC50F2DC60B4A8EEC42C471E87833384E3EFE7A510F7B2E0EBA | ||
3618 | 3D4E7F87F9EB76A9F93C8B2881B9DEA329799D89D984AB62B0FC5740DC42321C | ||
3619 | 0A1987E13B21A2154945462E13E6BF584850F0AC9BC22D495ADC8F3D61FA4AB9 | ||
3620 | A1820D499591714CC94BD615C7D75C88C1B0CFDBE8706AC918CD2FC6C1FD1EA3 | ||
3621 | CB89BC93847C5B14DB30147318149F34FDF177D4D841A976A9CC1A123C173D29 | ||
3622 | 713701F7C4E1C928389F0C0FCBA778C7C7695BCABBE0A349E493575241BD4C7D | ||
3623 | 429D6CCFC7308EE05C3E620ECCD4410F0581285C68D1E336D5612B18F62A5689 | ||
3624 | AAD3CAAF347C99F745141DCB590F5A626520326A9E496A6BD82FD1539BA41F3E | ||
3625 | 756A15D5D5F81ED75675420640CA72F3C8A92688F5200BB60736951558998903 | ||
3626 | F956A655311A51C5B74F4C2C0380FF4BE7C5948C9E3CDF62DE8FA102AC09E32D | ||
3627 | 3A03DA2F2AB78C2EA93BE775397B60C202F2492267D7BCD12C0C46426FC18C57 | ||
3628 | FAF6ECA7D81C817B72102184AB0D43F6757904F37DD8838385BF028C29025FB1 | ||
3629 | 092BDE30A9299650514EBD86CE62D2C39BA2C1EEE1E352A0B7EDD115535B1CCB | ||
3630 | 7C8DA45DD0F670DA788259F5FD2F41953C3CE000F5D801A187D62A2FD3CF2F76 | ||
3631 | 8B53A2C49E909CCB65E9530DB1DDDB06B5425FD09DC152221CF9D0B27461FE4B | ||
3632 | 7F062FF45A3BDFA103E9445D67FB1D44F13F320C3E706231D579C1E649B8A42F | ||
3633 | 2E7516FBB2CC4476D999858E2D2846CF36DB3BB85445FD968D445DF77EA312C4 | ||
3634 | 023F1F3DC5EA1A0ED03DDEEABABC04C2C360A73AC3364BF50006700F3E3FE91A | ||
3635 | 0451A197D56D355AF05F1D60BB78D8D31983B6A9DB00D13E9999175287F7FC97 | ||
3636 | 49E69C703D343B62C62A3A16F139F27702E0A25E0F1F7CDC24FBAA13A52D3156 | ||
3637 | 071F21A9A062DE6B4BF05EB1592C7AE9EE0A3C992AD5251B28334CA361269038 | ||
3638 | 00B1A7EF795DF6237642AFBE148F440D0D9737E412FECEC0C58499B7626020BF | ||
3639 | 8EBFDF3DD4885E8BD4740A0457ED3E2A6DD23E045E5CE9293F0A7AF0FD535A3E | ||
3640 | 61CBAAFF12611EA6095D94FB0BAF017EA59CE500FF5D570D55B550B770D8AB34 | ||
3641 | EA831098A16E8C601101AF095D204A8D2058CF3922E93F0E69C4869819A711A2 | ||
3642 | 7F12BC45735D21471D839030265B86F81502BA05BEFFBF061FD2892C17B3692F | ||
3643 | E1C97CE67EEE821457597D41249FD6DE9779B5AD2735DEC81F9ECDB576A5BA94 | ||
3644 | F0983934A14A77AF7194E507C13E6398A757C000EA468CFE57FCBE9FD5F5DCF1 | ||
3645 | 9D996D4F3E24D28B43D83758918BABA472E6C38587063F086DD8DF9FBAF19E1D | ||
3646 | 63A5A37529A0C75176C218F93959F9EDFCBEAF14C8D2C3BD3D73B6CC8D6A0D2F | ||
3647 | 8F13F2AC14A64676FF9DAA18A3BE138A831D02D7EF071525CDB9382C17682727 | ||
3648 | 7103D7A9D6109D71880D56C346FD0AE8493D0A901588D5C58CFB516C41E7241C | ||
3649 | 630D8CBC396F95257220DABBA20A0EF6C2B19FEFB6F14162002937DAE86A57E6 | ||
3650 | CDE4688E0EE4D94D7D4EBAC54BCFAB4864A210D047ABAE0DB97C5DA0C91D9FCA | ||
3651 | 307F23E0CF6E2ECDDF21E23559ED368A3A45D3D9429B3107C6E0AAF8F4679E30 | ||
3652 | DD4C4A61D965D68085C921EA6BE7C4E3DA5EB40FC5410A9E8211E6C5B9912968 | ||
Max diff block lines reached; 57016/73071 bytes (78.03%) of diff not shown. |
Offset 1, 11 lines modified | Offset 1, 11 lines modified | ||
1 | ·························Ordering·Sparse·Matrices·and·Transforming·Front·Trees\xd | 1 | ·························Ordering·Sparse·Matrices·and·Transforming·Front·Trees\xd |
2 | ·······························································································∗\xd | 2 | ·······························································································∗\xd |
3 | ··········································Cleve·Ashcraft,·Boeing·Shared·Services·Group\xd | 3 | ··········································Cleve·Ashcraft,·Boeing·Shared·Services·Group\xd |
4 | ·························································· | 4 | ··························································February·18,·2025\xd |
5 | ················1·····Introduction\xd | 5 | ················1·····Introduction\xd |
6 | ················If·the·ultimate·goal·is·to·solve·linear·systems·of·the·form·AX·=·B,·one·must·compute·an·A·=·LDU,\xd | 6 | ················If·the·ultimate·goal·is·to·solve·linear·systems·of·the·form·AX·=·B,·one·must·compute·an·A·=·LDU,\xd |
7 | ················A=UTDU·orA=UHDU·factorization,·depending·on·whether·the·matrix·A·is·nonsymmetric,·symmetric\xd | 7 | ················A=UTDU·orA=UHDU·factorization,·depending·on·whether·the·matrix·A·is·nonsymmetric,·symmetric\xd |
8 | ················or·Hermitian.·D·is·a·diagonal·or·block·diagonal·matrix,·L·is·unit·lower·triangular,·and·U·is·unit·upper\xd | 8 | ················or·Hermitian.·D·is·a·diagonal·or·block·diagonal·matrix,·L·is·unit·lower·triangular,·and·U·is·unit·upper\xd |
9 | ················triangular.·A·is·sparse,·but·the·sparsity·structure·of·L·and·U·will·likely·be·much·larger·than·that·of·A,\xd | 9 | ················triangular.·A·is·sparse,·but·the·sparsity·structure·of·L·and·U·will·likely·be·much·larger·than·that·of·A,\xd |
10 | ················i.e.,·they·will·suffer·fill-in.·It·is·crucial·to·find·a·permutation·matrix·such·that·the·factors·of·PAPT·have·as\xd | 10 | ················i.e.,·they·will·suffer·fill-in.·It·is·crucial·to·find·a·permutation·matrix·such·that·the·factors·of·PAPT·have·as\xd |
11 | ················moderate·fill-in·as·can·be·reasonably·expected.\xd | 11 | ················moderate·fill-in·as·can·be·reasonably·expected.\xd |
Offset 35, 15 lines modified | Offset 35, 15 lines modified | ||
35 | ····················Section·2·introduces·some·background·on·sparse·matrix·orderings·and·describes·the·SPOOLES·or-\xd | 35 | ····················Section·2·introduces·some·background·on·sparse·matrix·orderings·and·describes·the·SPOOLES·or-\xd |
36 | ················dering·software.·Section·3·presents·the·front·tree·object·that·controls·the·factorization,·and·its·various\xd | 36 | ················dering·software.·Section·3·presents·the·front·tree·object·that·controls·the·factorization,·and·its·various\xd |
37 | ················transformations·to·improve·performance.\xd | 37 | ················transformations·to·improve·performance.\xd |
38 | ···················∗P.·O.·Box·24346,·Mail·Stop·7L-21,·Seattle,·Washington·98124.·This·research·was·supported·in·part·by·the·DARPA\xd | 38 | ···················∗P.·O.·Box·24346,·Mail·Stop·7L-21,·Seattle,·Washington·98124.·This·research·was·supported·in·part·by·the·DARPA\xd |
39 | ················Contract·DABT63-95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software\xd | 39 | ················Contract·DABT63-95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software\xd |
40 | ················Support·Initiative.\xd | 40 | ················Support·Initiative.\xd |
41 | ····································································1\xd | 41 | ····································································1\xd |
42 | ··············2········Orderings·and·Front·Trees········································· | 42 | ··············2········Orderings·and·Front·Trees·········································February·18,·2025\xd |
43 | ··············2····Sparse·matrix·orderings\xd | 43 | ··············2····Sparse·matrix·orderings\xd |
44 | ··············Thepast·few·years·have·seen·a·resurgence·of·interest·and·accompanying·improvement·in·algorithms·and·soft-\xd | 44 | ··············Thepast·few·years·have·seen·a·resurgence·of·interest·and·accompanying·improvement·in·algorithms·and·soft-\xd |
45 | ··············ware·to·order·sparse·matrices.·The·minimum·degree·algorithm,·specifically·the·multiple·external·minimum\xd | 45 | ··············ware·to·order·sparse·matrices.·The·minimum·degree·algorithm,·specifically·the·multiple·external·minimum\xd |
46 | ··············degree·algorithm·[19],·was·the·preferred·algorithm·of·choice·for·the·better·part·of·a·decade.·Alternative·min-\xd | 46 | ··············degree·algorithm·[19],·was·the·preferred·algorithm·of·choice·for·the·better·part·of·a·decade.·Alternative·min-\xd |
47 | ··············imum·priority·codes·have·recently·pushed·multiple·minimum·degree·aside,·including·approximate·minimum\xd | 47 | ··············imum·priority·codes·have·recently·pushed·multiple·minimum·degree·aside,·including·approximate·minimum\xd |
48 | ··············degree·[1]·and·approximate·deficiency·[21],·[25].·They·offer·improved·quality·or·improved·run·time,·and·on\xd | 48 | ··············degree·[1]·and·approximate·deficiency·[21],·[25].·They·offer·improved·quality·or·improved·run·time,·and·on\xd |
49 | ··············occasion,·both.\xd | 49 | ··············occasion,·both.\xd |
Offset 81, 15 lines modified | Offset 81, 15 lines modified | ||
81 | ·················One·can·construct·the·IVL·object·directly.·There·are·methods·to·set·the·number·of·lists,·to·set·the·size\xd | 81 | ·················One·can·construct·the·IVL·object·directly.·There·are·methods·to·set·the·number·of·lists,·to·set·the·size\xd |
82 | ··············of·a·list,·to·copy·entries·in·a·list·into·the·object.·It·resizes·itself·as·necessary.·However,·if·one·already·has\xd | 82 | ··············of·a·list,·to·copy·entries·in·a·list·into·the·object.·It·resizes·itself·as·necessary.·However,·if·one·already·has\xd |
83 | ··············the·matrix·entries·of·A·stored·in·an·InpMtx·object·(which·is·the·way·that·SPOOLES·deals·with·sparse\xd | 83 | ··············the·matrix·entries·of·A·stored·in·an·InpMtx·object·(which·is·the·way·that·SPOOLES·deals·with·sparse\xd |
84 | ··············matrices),·there·is·an·easier·way.·One·can·create·an·IVL·object·from·the·InpMtx·object,·as·follows.\xd | 84 | ··············matrices),·there·is·an·easier·way.·One·can·create·an·IVL·object·from·the·InpMtx·object,·as·follows.\xd |
85 | ··············InpMtx···*A·;\xd | 85 | ··············InpMtx···*A·;\xd |
86 | ··············IVL······*adjIVL·;\xd | 86 | ··············IVL······*adjIVL·;\xd |
87 | ··············adjIVL·=·InpMtx_fullAdjacency(A)·;\xd | 87 | ··············adjIVL·=·InpMtx_fullAdjacency(A)·;\xd |
88 | ················· | 88 | ·················February·18,·2025····················································Orderings·and·Front·Trees·········3\xd |
89 | ········································Figure·1:·A·3×4·9-point·grid·with·its·adjacency·structure\xd | 89 | ········································Figure·1:·A·3×4·9-point·grid·with·its·adjacency·structure\xd |
90 | ·················································IVL·:·integer·vector·list·object·:\xd | 90 | ·················································IVL·:·integer·vector·list·object·:\xd |
91 | ·················································type·1,·chunked·storage\xd | 91 | ·················································type·1,·chunked·storage\xd |
92 | ·················································12·lists,·12·maximum·lists,·70·tsize,·4240·total·bytes\xd | 92 | ·················································12·lists,·12·maximum·lists,·70·tsize,·4240·total·bytes\xd |
93 | ·················································1·chunks,·70·active·entries,·1024·allocated,·6.84·%·used\xd | 93 | ·················································1·chunks,·70·active·entries,·1024·allocated,·6.84·%·used\xd |
94 | ·····················································0·:·0·1·3·4\xd | 94 | ·····················································0·:·0·1·3·4\xd |
95 | ····························9····10···11·············1·:·0·1·2·3·4·5\xd | 95 | ····························9····10···11·············1·:·0·1·2·3·4·5\xd |
Offset 121, 15 lines modified | Offset 121, 15 lines modified | ||
121 | ·················This·is·an·initializer·for·the·Graph·object,·one·that·takes·as·input·a·complete·IVL·adjacency·object.·The\xd | 121 | ·················This·is·an·initializer·for·the·Graph·object,·one·that·takes·as·input·a·complete·IVL·adjacency·object.·The\xd |
122 | ·················0·and·NULL·fields·are·not·applicable·here.·(The·Graph·object·is·sophisticated·—·it·can·have·weighted·or\xd | 122 | ·················0·and·NULL·fields·are·not·applicable·here.·(The·Graph·object·is·sophisticated·—·it·can·have·weighted·or\xd |
123 | ·················unweighted·vertices,·weighted·or·unweighted·edges,·or·both,·and·it·can·have·boundary·vertices.·Neither·is\xd | 123 | ·················unweighted·vertices,·weighted·or·unweighted·edges,·or·both,·and·it·can·have·boundary·vertices.·Neither·is\xd |
124 | ·················relevant·now.)\xd | 124 | ·················relevant·now.)\xd |
125 | ·················2.2···Constructing·an·ordering\xd | 125 | ·················2.2···Constructing·an·ordering\xd |
126 | ·················Once·we·have·a·Graph·object,·we·can·construct·an·ordering.·There·are·four·choices:\xd | 126 | ·················Once·we·have·a·Graph·object,·we·can·construct·an·ordering.·There·are·four·choices:\xd |
127 | ····················•·minimum·degree,·(actually·multiple·external·minimum·degree,·from·[19]),\xd | 127 | ····················•·minimum·degree,·(actually·multiple·external·minimum·degree,·from·[19]),\xd |
128 | ··············4········Orderings·and·Front·Trees········································ | 128 | ··············4········Orderings·and·Front·Trees········································February·18,·2025\xd |
129 | ·················•·generalized·nested·dissection,\xd | 129 | ·················•·generalized·nested·dissection,\xd |
130 | ·················•·multisection,·and\xd | 130 | ·················•·multisection,·and\xd |
131 | ·················•·the·better·of·generalized·nested·dissection·and·multisection.\xd | 131 | ·················•·the·better·of·generalized·nested·dissection·and·multisection.\xd |
132 | ··············Minimum·degree·takes·the·least·amount·of·CPU·time.·Generalized·nested·dissection·and·multisection·both\xd | 132 | ··············Minimum·degree·takes·the·least·amount·of·CPU·time.·Generalized·nested·dissection·and·multisection·both\xd |
133 | ··············require·the·a·partition·of·the·graph,·which·can·be·much·more·expensive·to·compute·than·a·minimum·degree\xd | 133 | ··············require·the·a·partition·of·the·graph,·which·can·be·much·more·expensive·to·compute·than·a·minimum·degree\xd |
134 | ··············ordering.·By·and·large,·for·larger·graphs·nested·dissection·generates·better·orderings·than·minimum·degree,\xd | 134 | ··············ordering.·By·and·large,·for·larger·graphs·nested·dissection·generates·better·orderings·than·minimum·degree,\xd |
135 | ··············and·the·difference·in·quality·increases·as·the·graph·size·increases.·Multisection·is·an·ordering·which·almost\xd | 135 | ··············and·the·difference·in·quality·increases·as·the·graph·size·increases.·Multisection·is·an·ordering·which·almost\xd |
Offset 161, 15 lines modified | Offset 161, 15 lines modified | ||
161 | ··············etree·=·orderViaBestOfNDandMS(graph,·maxdomainsize,·maxzeros,\xd | 161 | ··············etree·=·orderViaBestOfNDandMS(graph,·maxdomainsize,·maxzeros,\xd |
162 | ············································maxsize,·seed,·msglvl,·msgFile)·;\xd | 162 | ············································maxsize,·seed,·msglvl,·msgFile)·;\xd |
163 | ··············Now·let·us·describe·the·different·parameters.\xd | 163 | ··············Now·let·us·describe·the·different·parameters.\xd |
164 | ·················•·The·msglvl·and·msgFile·parameters·are·used·to·control·output.·When·msglvl·=·0,·there·is·no\xd | 164 | ·················•·The·msglvl·and·msgFile·parameters·are·used·to·control·output.·When·msglvl·=·0,·there·is·no\xd |
165 | ···················output.·When·msglvl·>·0,·output·goes·to·the·msgFile·file.·The·SPOOLES·library·is·a·research\xd | 165 | ···················output.·When·msglvl·>·0,·output·goes·to·the·msgFile·file.·The·SPOOLES·library·is·a·research\xd |
166 | ···················code,·we·have·left·a·great·deal·of·monitoring·and·debug·code·in·the·software.·Large·values·of·msglvl\xd | 166 | ···················code,·we·have·left·a·great·deal·of·monitoring·and·debug·code·in·the·software.·Large·values·of·msglvl\xd |
167 | ···················mayresult·in·large·message·files.·To·see·the·statistics·generated·during·the·ordering,·use·msglvl·=·1.\xd | 167 | ···················mayresult·in·large·message·files.·To·see·the·statistics·generated·during·the·ordering,·use·msglvl·=·1.\xd |
168 | ················ | 168 | ················February·18,·2025··················································Orderings·and·Front·Trees·········5\xd |
169 | ···················•·Theseedparameterisusedasarandomnumberseed.·(Therearemanyplacesinthegraphpartitioning\xd | 169 | ···················•·Theseedparameterisusedasarandomnumberseed.·(Therearemanyplacesinthegraphpartitioning\xd |
170 | ······················and·minimum·degree·algorithms·where·randomness·plays·a·part.·Using·a·random·number·seed·ensures\xd | 170 | ······················and·minimum·degree·algorithms·where·randomness·plays·a·part.·Using·a·random·number·seed·ensures\xd |
171 | ······················repeatability.)\xd | 171 | ······················repeatability.)\xd |
172 | ···················•·maxdomainsize·is·used·for·the·nested·dissection·and·multisection·orderings.·This·parameter·is·used\xd | 172 | ···················•·maxdomainsize·is·used·for·the·nested·dissection·and·multisection·orderings.·This·parameter·is·used\xd |
173 | ······················during·the·graph·partition.·Any·subgraph·that·is·larger·than·maxdomainsize·is·split.·We·recommend\xd | 173 | ······················during·the·graph·partition.·Any·subgraph·that·is·larger·than·maxdomainsize·is·split.·We·recommend\xd |
174 | ······················using·a·value·of·neqns/16·or·neqns/32.·Note:·maxdomainsize·must·be·greater·than·zero.\xd | 174 | ······················using·a·value·of·neqns/16·or·neqns/32.·Note:·maxdomainsize·must·be·greater·than·zero.\xd |
175 | ···················•·maxzeros·and·maxsize·are·used·to·transform·the·front·tree.·In·effect,·we·have·placed·the·ordering\xd | 175 | ···················•·maxzeros·and·maxsize·are·used·to·transform·the·front·tree.·In·effect,·we·have·placed·the·ordering\xd |
Offset 203, 15 lines modified | Offset 203, 15 lines modified | ||
203 | ··································10102·····4.6·····210364···10651916·····6.2·····211089···10722231\xd | 203 | ··································10102·····4.6·····210364···10651916·····6.2·····211089···10722231\xd |
204 | ··································10103·····4.6·····215795···11760095·····6.4·····217141···11606103\xd | 204 | ··································10103·····4.6·····215795···11760095·····6.4·····217141···11606103\xd |
205 | ··································10104·····4.6·····210989···10842091·····6.1·····212828···11168728\xd | 205 | ··································10104·····4.6·····210989···10842091·····6.1·····212828···11168728\xd |
206 | ··································10105·····4.8·····209201···10335761·····6.1·····210468···10582750\xd | 206 | ··································10105·····4.8·····209201···10335761·····6.1·····210468···10582750\xd |
207 | ················For·the·nested·dissection·and·multisection·orderings,·we·used·maxdomainsize·=·100.·We·see·that·there·is\xd | 207 | ················For·the·nested·dissection·and·multisection·orderings,·we·used·maxdomainsize·=·100.·We·see·that·there·is\xd |
208 | ················really·little·difference·in·ordering·quality,·while·the·minimum·degree·ordering·takes·much·less·time·than·the\xd | 208 | ················really·little·difference·in·ordering·quality,·while·the·minimum·degree·ordering·takes·much·less·time·than·the\xd |
209 | ················other·orderings.\xd | 209 | ················other·orderings.\xd |
210 | ··············6········Orderings·and·Front·Trees·········································· | 210 | ··············6········Orderings·and·Front·Trees··········································February·18,·2025\xd |
211 | ·················Let·us·now·look·at·a·random·triangulation·of·a·unit·cube.·This·matrix·has·13824·rows·and·columns.\xd | 211 | ·················Let·us·now·look·at·a·random·triangulation·of·a·unit·cube.·This·matrix·has·13824·rows·and·columns.\xd |
212 | ··············Each·face·of·the·cube·has·a·22×22·regular·grid·of·points.·The·remainder·of·the·vertices·are·placed·in·the\xd | 212 | ··············Each·face·of·the·cube·has·a·22×22·regular·grid·of·points.·The·remainder·of·the·vertices·are·placed·in·the\xd |
213 | ··············interior·using·quasi-random·points,·and·the·Delauney·triangulation·is·computed.\xd | 213 | ··············interior·using·quasi-random·points,·and·the·Delauney·triangulation·is·computed.\xd |
214 | ··········································minimum·degree···············nested·dissection\xd | 214 | ··········································minimum·degree···············nested·dissection\xd |
215 | ······························seed··CPU·#entries·········#ops·CPU·#entries············#ops\xd | 215 | ······························seed··CPU·#entries·········#ops·CPU·#entries············#ops\xd |
216 | ·····························10101····9.2···5783892··6119141542··27.8···3410222··1921402246\xd | 216 | ·····························10101····9.2···5783892··6119141542··27.8···3410222··1921402246\xd |
217 | ·····························10102····8.8···5651678··5959584620··31.4···3470063··1998795621\xd | 217 | ·····························10102····8.8···5651678··5959584620··31.4···3470063··1998795621\xd |
Offset 245, 15 lines modified | Offset 245, 15 lines modified | ||
245 | ··············ETree····*vetree·;\xd | 245 | ··············ETree····*vetree·;\xd |
246 | ··············int······*newToOld,·*oldToNew·;\xd | 246 | ··············int······*newToOld,·*oldToNew·;\xd |
247 | ··············Graph····*graph·;\xd | 247 | ··············Graph····*graph·;\xd |
248 | ··············vetree·=·ETree_new()·;\xd | 248 | ··············vetree·=·ETree_new()·;\xd |
249 | ··············ETree_initFromGraphWithPerms(vetree,·graph,·newToOld,·oldToNew)·;\xd | 249 | ··············ETree_initFromGraphWithPerms(vetree,·graph,·newToOld,·oldToNew)·;\xd |
250 | ··············Thevetreeobjectinthecodefragmentaboveisavertex·elimination·tree·[20],·[26],·where·each·front·contains\xd | 250 | ··············Thevetreeobjectinthecodefragmentaboveisavertex·elimination·tree·[20],·[26],·where·each·front·contains\xd |
251 | ··············one·vertex.\xd | 251 | ··············one·vertex.\xd |
252 | ····························· | 252 | ·····························February·18,·2025···········································································································Orderings·and·Front·Trees·····································7\xd |
253 | ········································································Figure·2:·R2D100:·randomly·triangulated,·100·grid·points\xd | 253 | ········································································Figure·2:·R2D100:·randomly·triangulated,·100·grid·points\xd |
254 | ·······························································································································48·······49······51·······50······55·······91·······8·······11·······10·······9\xd | 254 | ·······························································································································48·······49······51·······50······55·······91·······8·······11·······10·······9\xd |
255 | ·············································································································································52\xd | 255 | ·············································································································································52\xd |
256 | ·······························································································································53··························69······54···········17···························18\xd | 256 | ·······························································································································53··························69······54···········17···························18\xd |
257 | ···································································································································································67·95\xd | 257 | ···································································································································································67·95\xd |
258 | ············································································································································70················································19\xd | 258 | ············································································································································70················································19\xd |
259 | ·······························································································································66····68·······························································5······3\xd | 259 | ·······························································································································66····68·······························································5······3\xd |
Offset 300, 15 lines modified | Offset 300, 15 lines modified | ||
300 | ·····························tree·[2]·has·these·property:·any·node·in·the·tree·is\xd | 300 | ·····························tree·[2]·has·these·property:·any·node·in·the·tree·is\xd |
301 | ···································•·either·a·leaf,\xd | 301 | ···································•·either·a·leaf,\xd |
302 | ···································•·or·has·two·or·more·children,\xd | 302 | ···································•·or·has·two·or·more·children,\xd |
303 | ···································•·or·its·nonzero·structure·is·not·contained·in·that·of·its·one·child.\xd | 303 | ···································•·or·its·nonzero·structure·is·not·contained·in·that·of·its·one·child.\xd |
304 | ·····························The·top·tree·in·Figure·4·shows·the·vertex·elimination·tree·with·the·“front”·number·of·each·vertex·superim-\xd | 304 | ·····························The·top·tree·in·Figure·4·shows·the·vertex·elimination·tree·with·the·“front”·number·of·each·vertex·superim-\xd |
305 | ·····························posed·on·the·vertex.·The·bottom·tree·is·the·fundamental·supernode·tree.·Figure·5·shows·the·block·partition\xd | 305 | ·····························posed·on·the·vertex.·The·bottom·tree·is·the·fundamental·supernode·tree.·Figure·5·shows·the·block·partition\xd |
306 | ··································1Vertex·j·is·the·parent·of·i·if·j·is·the·first·vertex·greater·than·i·such·that·Lj,i·6=·0.\xd | 306 | ··································1Vertex·j·is·the·parent·of·i·if·j·is·the·first·vertex·greater·than·i·such·that·Lj,i·6=·0.\xd |
307 | ··············8········Orderings·and·Front·Trees········································ | 307 | ··············8········Orderings·and·Front·Trees········································February·18,·2025\xd |
308 | ······························Figure·3:·Vertex·elimination·tree·for·R2D100,·100·rows·and·columns\xd | 308 | ······························Figure·3:·Vertex·elimination·tree·for·R2D100,·100·rows·and·columns\xd |
309 | ···························································99\xd | 309 | ···························································99\xd |
310 | ···························································98\xd | 310 | ···························································98\xd |
311 | ···························································97\xd | 311 | ···························································97\xd |
312 | ···························································96\xd | 312 | ···························································96\xd |
313 | ···························································95\xd | 313 | ···························································95\xd |
314 | ···························································94\xd | 314 | ···························································94\xd |
Offset 327, 15 lines modified | Offset 327, 15 lines modified | ||
327 | ·····························7········17··········31···39·····55······65·····71······78··81\xd | 327 | ·····························7········17··········31···39·····55······65·····71······78··81\xd |
328 | ·····························6·····11····16····27···30·38···53··54····64···········75·77·80\xd | 328 | ·····························6·····11····16····27···30·38···53··54····64···········75·77·80\xd |
329 | ···························2··5···8·10·13·15·22·26·29·37····52······59··63············76·79\xd | 329 | ···························2··5···8·10·13·15·22·26·29·37····52······59··63············76·79\xd |
Max diff block lines reached; 15069/28104 bytes (53.62%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·GPart.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·GPart.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1790, 20 lines modified | Offset 1790, 21 lines modified | ||
1790 | end·readonly·def | 1790 | end·readonly·def |
1791 | /Encoding·256·array | 1791 | /Encoding·256·array |
1792 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1792 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1793 | dup·44·/comma·put | 1793 | dup·44·/comma·put |
1794 | dup·48·/zero·put | 1794 | dup·48·/zero·put |
1795 | dup·49·/one·put | 1795 | dup·49·/one·put |
1796 | dup·50·/two·put | 1796 | dup·50·/two·put |
1797 | dup·52·/four·put | ||
1798 | dup·5 | 1797 | dup·53·/five·put |
1798 | dup·56·/eight·put | ||
1799 | dup·58·/colon·put | 1799 | dup·58·/colon·put |
1800 | dup·7 | 1800 | dup·70·/F·put |
1801 | dup·97·/a·put | 1801 | dup·97·/a·put |
1802 | dup·98·/b·put | ||
1802 | dup·1 | 1803 | dup·101·/e·put |
1803 | dup·114·/r·put | 1804 | dup·114·/r·put |
1804 | dup·117·/u·put | 1805 | dup·117·/u·put |
1805 | dup·121·/y·put | 1806 | dup·121·/y·put |
1806 | readonly·def | 1807 | readonly·def |
1807 | currentdict·end | 1808 | currentdict·end |
1808 | currentfile·eexec | 1809 | currentfile·eexec |
1809 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1810 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1987, 89 lines modified | Offset 1988, 93 lines modified | ||
1987 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1988 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1988 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1989 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1989 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1990 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1990 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1991 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1991 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1992 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1992 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1993 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1993 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1994 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1994 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1995 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1995 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1996 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1997 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1998 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1999 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2000 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2001 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2002 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2003 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2004 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2005 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2006 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2007 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2008 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2009 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2010 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2011 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2012 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2013 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2014 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2015 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2016 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2017 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2018 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2019 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2020 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2021 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2022 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2023 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2024 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2025 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2026 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2027 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2028 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2029 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2030 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2031 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2032 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2033 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2034 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2035 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2036 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2037 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2038 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2039 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2040 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2041 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2042 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2043 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2044 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2045 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2046 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2047 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2048 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2049 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2050 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2051 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2052 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2053 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2054 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2055 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2056 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2057 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2058 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2059 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2060 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2061 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2062 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2063 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2064 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2065 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2066 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2067 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2068 | 1996 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1997 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1998 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1999 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2000 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2001 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2002 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 34769/46660 bytes (74.52%) of diff not shown. |
Offset 30, 15 lines modified | Offset 30, 15 lines modified | ||
30 | ···············condensed·into·the·source·while·the·nodes·in·W·\Y·are·condensed·into·the·sink.·The·rest·of\xd | 30 | ···············condensed·into·the·source·while·the·nodes·in·W·\Y·are·condensed·into·the·sink.·The·rest·of\xd |
31 | ···············the·network·is·formed·using·the·structure·of·the·subgraph·induced·by·Y.·Given·a·min-cut·of\xd | 31 | ···············the·network·is·formed·using·the·structure·of·the·subgraph·induced·by·Y.·Given·a·min-cut·of\xd |
32 | ···········································b\xd | 32 | ···········································b\xd |
33 | ···············the·network·we·can·identify·a·separator·S·⊆·Y·that·has·minimal·weight.·We·examine·two\xd | 33 | ···············the·network·we·can·identify·a·separator·S·⊆·Y·that·has·minimal·weight.·We·examine·two\xd |
34 | ···············(possibly)·different·min-cuts·and·evaluate·the·partitions·induced·via·their·minimal·weight\xd | 34 | ···············(possibly)·different·min-cuts·and·evaluate·the·partitions·induced·via·their·minimal·weight\xd |
35 | ···············separators,·and·accept·a·better·partition·if·present.\xd | 35 | ···············separators,·and·accept·a·better·partition·if·present.\xd |
36 | ············································1\xd | 36 | ············································1\xd |
37 | ···········2······················GPart·:·DRAFT· | 37 | ···········2······················GPart·:·DRAFT·February·18,·2025\xd |
38 | ···········This·process·we·call·DDSEP,·which·is·short·for·Domain·Decomposition·SEParator,·explained·in·more\xd | 38 | ···········This·process·we·call·DDSEP,·which·is·short·for·Domain·Decomposition·SEParator,·explained·in·more\xd |
39 | ···········detail·in·[?]·and·[?].\xd | 39 | ···········detail·in·[?]·and·[?].\xd |
40 | ···········1.1··Data·Structures\xd | 40 | ···········1.1··Data·Structures\xd |
41 | ···········The·GPart·structure·has·a·pointer·to·a·Graph·object·and·other·fields·that·contain·information\xd | 41 | ···········The·GPart·structure·has·a·pointer·to·a·Graph·object·and·other·fields·that·contain·information\xd |
42 | ···········about·the·partition·of·the·graph.\xd | 42 | ···········about·the·partition·of·the·graph.\xd |
43 | ··············The·following·fields·are·always·active.\xd | 43 | ··············The·following·fields·are·always·active.\xd |
44 | ·············•·Graph·*graph·:·pointer·to·the·Graph·object\xd | 44 | ·············•·Graph·*graph·:·pointer·to·the·Graph·object\xd |
Offset 61, 15 lines modified | Offset 61, 15 lines modified | ||
61 | ·············•·GPart·*sib·:·pointer·to·a·sibling·GPart·object\xd | 61 | ·············•·GPart·*sib·:·pointer·to·a·sibling·GPart·object\xd |
62 | ·············•·IV·vtxMapIV·:·an·IV·object·of·size·nvtx·+·nvbnd,·contains·a·map·from·the·vertices·of·the\xd | 62 | ·············•·IV·vtxMapIV·:·an·IV·object·of·size·nvtx·+·nvbnd,·contains·a·map·from·the·vertices·of·the\xd |
63 | ···············graph·to·either·the·vertices·of·its·parent·or·to·the·vertices·of·the·root·graph\xd | 63 | ···············graph·to·either·the·vertices·of·its·parent·or·to·the·vertices·of·the·root·graph\xd |
64 | ··············The·DDsepInfo·helper-object·is·used·during·the·DDSEP·recursive·bisection·process.·It·contains\xd | 64 | ··············The·DDsepInfo·helper-object·is·used·during·the·DDSEP·recursive·bisection·process.·It·contains\xd |
65 | ···········input·parameters·for·the·different·stages·of·the·DDSEP·algorithm,·and·collects·statistics·about·the\xd | 65 | ···········input·parameters·for·the·different·stages·of·the·DDSEP·algorithm,·and·collects·statistics·about·the\xd |
66 | ···········CPUtime·spent·in·each·stage.\xd | 66 | ···········CPUtime·spent·in·each·stage.\xd |
67 | ·············•·These·parameters·are·used·to·generate·the·domain·decomposition.\xd | 67 | ·············•·These·parameters·are·used·to·generate·the·domain·decomposition.\xd |
68 | ············································GPart·:·DRAFT····· | 68 | ············································GPart·:·DRAFT·····February·18,·2025·························3\xd |
69 | ······················–·int·minweight:·minimum·target·weight·for·a·domain\xd | 69 | ······················–·int·minweight:·minimum·target·weight·for·a·domain\xd |
70 | ······················–·int·maxweight:·maximum·target·weight·for·a·domain\xd | 70 | ······················–·int·maxweight:·maximum·target·weight·for·a·domain\xd |
71 | ······················–·double·freeze:·multiplier·used·to·freeze·vertices·of·high·degree·into·the·multisector.\xd | 71 | ······················–·double·freeze:·multiplier·used·to·freeze·vertices·of·high·degree·into·the·multisector.\xd |
72 | ························If·the·degree·of·v·is·more·than·freeze·times·the·median·degree,·v·is·placed·into·the\xd | 72 | ························If·the·degree·of·v·is·more·than·freeze·times·the·median·degree,·v·is·placed·into·the\xd |
73 | ························multisector.\xd | 73 | ························multisector.\xd |
74 | ······················–·int·seed:·random·number·seed\xd | 74 | ······················–·int·seed:·random·number·seed\xd |
75 | ······················–·int·DDoption:·If·1,·a·new·domain·decomposition·is·constructed·for·each·subgraph.·If\xd | 75 | ······················–·int·DDoption:·If·1,·a·new·domain·decomposition·is·constructed·for·each·subgraph.·If\xd |
Offset 98, 15 lines modified | Offset 98, 15 lines modified | ||
98 | ······················–·int·ntreeobj:·number·of·tree·objects·in·the·tree,·used·to·set·gpart->id·and·used·to\xd | 98 | ······················–·int·ntreeobj:·number·of·tree·objects·in·the·tree,·used·to·set·gpart->id·and·used·to\xd |
99 | ························initialize·the·DSTree·object.\xd | 99 | ························initialize·the·DSTree·object.\xd |
100 | ······················–·int·msglvl·:·message·level\xd | 100 | ······················–·int·msglvl·:·message·level\xd |
101 | ······················–·FILE·*msgFile·:·message·file·pointer\xd | 101 | ······················–·FILE·*msgFile·:·message·file·pointer\xd |
102 | ··············1.2·····Prototypes·and·descriptions·of·GPart·methods\xd | 102 | ··············1.2·····Prototypes·and·descriptions·of·GPart·methods\xd |
103 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 103 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
104 | ··············GPart·object.·There·are·no·IO·methods.\xd | 104 | ··············GPart·object.·There·are·no·IO·methods.\xd |
105 | ··············4··························· | 105 | ··············4···························GPart·:·DRAFT·February·18,·2025\xd |
106 | ··············1.2.1··Basic·methods\xd | 106 | ··············1.2.1··Basic·methods\xd |
107 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 107 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
108 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 108 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
109 | ················1.·GPart·*·GPart_new·(·void·)·;\xd | 109 | ················1.·GPart·*·GPart_new·(·void·)·;\xd |
110 | ···················This·method·simply·allocates·storage·for·the·GPart·structure·and·then·sets·the·default·fields\xd | 110 | ···················This·method·simply·allocates·storage·for·the·GPart·structure·and·then·sets·the·default·fields\xd |
111 | ···················by·a·call·to·GPart·setDefaultFields().\xd | 111 | ···················by·a·call·to·GPart·setDefaultFields().\xd |
112 | ················2.·void·GPart_setDefaultFields·(·GPart·*gpart·)·;\xd | 112 | ················2.·void·GPart_setDefaultFields·(·GPart·*gpart·)·;\xd |
Offset 132, 15 lines modified | Offset 132, 15 lines modified | ||
132 | ···················compidsIV·and·cweightsIV·IV·objects·are·initialized.·The·remaining·fields·are·not·changed\xd | 132 | ···················compidsIV·and·cweightsIV·IV·objects·are·initialized.·The·remaining·fields·are·not·changed\xd |
133 | ···················from·their·default·values.\xd | 133 | ···················from·their·default·values.\xd |
134 | ···················Error·checking:·If·gpart·or·g·is·NULL,·or·if·g->nvtx·≤·0,·an·error·message·is·printed·and·the\xd | 134 | ···················Error·checking:·If·gpart·or·g·is·NULL,·or·if·g->nvtx·≤·0,·an·error·message·is·printed·and·the\xd |
135 | ···················program·exits.\xd | 135 | ···················program·exits.\xd |
136 | ················2.·void·GPart_setMessageInfo·(·GPart·*gpart,·int·msglvl,·FILE·*msgFile·)·;\xd | 136 | ················2.·void·GPart_setMessageInfo·(·GPart·*gpart,·int·msglvl,·FILE·*msgFile·)·;\xd |
137 | ···················This·method·sets·the·msglvl·and·msgFile·fields.\xd | 137 | ···················This·method·sets·the·msglvl·and·msgFile·fields.\xd |
138 | ···················Error·checking:·If·gpart·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 138 | ···················Error·checking:·If·gpart·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
139 | ····································· | 139 | ·····································GPart·:·DRAFT···February·18,·2025···················5\xd |
140 | ············1.2.3··Utility·methods\xd | 140 | ············1.2.3··Utility·methods\xd |
141 | ···············1.·void·GPart_setCweights·(·GPart·*gpart·)·;\xd | 141 | ···············1.·void·GPart_setCweights·(·GPart·*gpart·)·;\xd |
142 | ·················This·method·sets·the·component·weights·vector·cweightsIV.·We·assume·that·the·compidsIV\xd | 142 | ·················This·method·sets·the·component·weights·vector·cweightsIV.·We·assume·that·the·compidsIV\xd |
143 | ·················vector·has·been·set·prior·to·entering·this·method.·The·weight·of·a·component·is·not·simply\xd | 143 | ·················vector·has·been·set·prior·to·entering·this·method.·The·weight·of·a·component·is·not·simply\xd |
144 | ·················the·sum·of·the·weights·of·the·vertices·with·that·component’s·id.·We·accept·the·separator·or\xd | 144 | ·················the·sum·of·the·weights·of·the·vertices·with·that·component’s·id.·We·accept·the·separator·or\xd |
145 | ·················multisector·vertices·(those·v·with·compids[v]·==·0)·but·then·find·the·connected·components\xd | 145 | ·················multisector·vertices·(those·v·with·compids[v]·==·0)·but·then·find·the·connected·components\xd |
146 | ·················of·the·remaining·vertices,·renumbering·the·compidsIV·vector·where·necessary.·Thus,·ncomp\xd | 146 | ·················of·the·remaining·vertices,·renumbering·the·compidsIV·vector·where·necessary.·Thus,·ncomp\xd |
Offset 171, 15 lines modified | Offset 171, 15 lines modified | ||
171 | ·················This·method·determines·whether·the·vertex·v·is·adjacent·to·just·one·domain·or·not.·We·use\xd | 171 | ·················This·method·determines·whether·the·vertex·v·is·adjacent·to·just·one·domain·or·not.·We·use\xd |
172 | ·················this·method·to·make·a·separator·or·multisector·minimal.·If·the·vertex·is·adjacent·to·only·one\xd | 172 | ·················this·method·to·make·a·separator·or·multisector·minimal.·If·the·vertex·is·adjacent·to·only·one\xd |
173 | ·················domain,·the·return·value·is·1·and·*pdomid·is·set·to·the·domain’s·id.·If·a·vertex·is·adjacent\xd | 173 | ·················domain,·the·return·value·is·1·and·*pdomid·is·set·to·the·domain’s·id.·If·a·vertex·is·adjacent\xd |
174 | ·················to·zero·or·two·or·more·domains,·the·return·value·is·zero.·If·a·vertex·belongs·to·a·domain,·it\xd | 174 | ·················to·zero·or·two·or·more·domains,·the·return·value·is·zero.·If·a·vertex·belongs·to·a·domain,·it\xd |
175 | ·················is·considered·adjacent·to·that·domain.\xd | 175 | ·················is·considered·adjacent·to·that·domain.\xd |
176 | ·················Error·checking:·If·gpart,·g·or·domid·is·NULL,·or·if·v·is·out·of·range·(i.e.,·v·<·0·or·nvtx·≤·v),\xd | 176 | ·················Error·checking:·If·gpart,·g·or·domid·is·NULL,·or·if·v·is·out·of·range·(i.e.,·v·<·0·or·nvtx·≤·v),\xd |
177 | ·················an·error·message·is·printed·and·the·program·exits.\xd | 177 | ·················an·error·message·is·printed·and·the·program·exits.\xd |
178 | ··············6··························· | 178 | ··············6···························GPart·:·DRAFT·February·18,·2025\xd |
179 | ················6.·IV·*·GPart_bndWeightsIV·(·GPart·*gpart·)·;\xd | 179 | ················6.·IV·*·GPart_bndWeightsIV·(·GPart·*gpart·)·;\xd |
180 | ···················This·method·returns·an·IV·object·that·contains·the·weights·of·the·vertices·on·the·boundaries\xd | 180 | ···················This·method·returns·an·IV·object·that·contains·the·weights·of·the·vertices·on·the·boundaries\xd |
181 | ···················of·the·components.\xd | 181 | ···················of·the·components.\xd |
182 | ···················Error·checking:·If·gpart·or·g·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 182 | ···················Error·checking:·If·gpart·or·g·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
183 | ··············1.2.4··Domain·decomposition·methods\xd | 183 | ··············1.2.4··Domain·decomposition·methods\xd |
184 | ··············There·are·presently·two·methods·that·create·a·domain·decomposition·of·a·graph·or·a·subgraph.\xd | 184 | ··············There·are·presently·two·methods·that·create·a·domain·decomposition·of·a·graph·or·a·subgraph.\xd |
185 | ················1.·void·GPart_DDviaFishnet·(·GPart·*gpart,·double·frac,·int·minweight,\xd | 185 | ················1.·void·GPart_DDviaFishnet·(·GPart·*gpart,·double·frac,·int·minweight,\xd |
Offset 209, 15 lines modified | Offset 209, 15 lines modified | ||
209 | ················································double·cpus[]·)·;\xd | 209 | ················································double·cpus[]·)·;\xd |
210 | ···················This·method·takes·a·domain·decomposition·{Φ,Ω·,...,Ω·}·defined·by·the·compidsIV·vector\xd | 210 | ···················This·method·takes·a·domain·decomposition·{Φ,Ω·,...,Ω·}·defined·by·the·compidsIV·vector\xd |
211 | ·····························································1······m\xd | 211 | ·····························································1······m\xd |
212 | ···················and·generates·a·two·set·partition·[S,B,W].·We·first·compute·the·map·from·vertices·to\xd | 212 | ···················and·generates·a·two·set·partition·[S,B,W].·We·first·compute·the·map·from·vertices·to\xd |
213 | ···················domains·and·segments·(the·segments·partition·the·interface·nodes·Φ).·We·then·construct·the\xd | 213 | ···················domains·and·segments·(the·segments·partition·the·interface·nodes·Φ).·We·then·construct·the\xd |
214 | ···················bipartite·graph·that·represents·the·connectivity·of·the·domains·and·segments.·Each·segment\xd | 214 | ···················bipartite·graph·that·represents·the·connectivity·of·the·domains·and·segments.·Each·segment\xd |
215 | ···················is·an·“edge”·that·connects·two·“adjacent”·domains.·This·allows·us·to·use·a·variant·of·the\xd | 215 | ···················is·an·“edge”·that·connects·two·“adjacent”·domains.·This·allows·us·to·use·a·variant·of·the\xd |
216 | ····································· | 216 | ·····································GPart·:·DRAFT···February·18,·2025···················7\xd |
217 | ·················Kernighan-Lin·algorithm·to·find·an·“edge”·separator·formed·of·segments,·which·is·really·a\xd | 217 | ·················Kernighan-Lin·algorithm·to·find·an·“edge”·separator·formed·of·segments,·which·is·really·a\xd |
218 | ·················vertex·separator,·a·subset·of·Φ.·The·alpha·parameter·is·used·in·the·cost·function·evaluation\xd | 218 | ·················vertex·separator,·a·subset·of·Φ.·The·alpha·parameter·is·used·in·the·cost·function·evaluation\xd |
219 | ·················for·the·partition,·cost([S,B,W])·=·|S|\x121+αmax{|B|,|W|}\x13.·The·seed·parameter·is·used\xd | 219 | ·················for·the·partition,·cost([S,B,W])·=·|S|\x121+αmax{|B|,|W|}\x13.·The·seed·parameter·is·used\xd |
220 | ·····················································min{|B|,|W|}\xd | 220 | ·····················································min{|B|,|W|}\xd |
221 | ·················to·randomize·the·algorithm.·One·can·make·several·runswith·different·seeds·and·chose·the·best\xd | 221 | ·················to·randomize·the·algorithm.·One·can·make·several·runswith·different·seeds·and·chose·the·best\xd |
222 | ·················partition.·The·cpus[]·array·is·used·to·store·execution·times·for·segments·of·the·algorithm:\xd | 222 | ·················partition.·The·cpus[]·array·is·used·to·store·execution·times·for·segments·of·the·algorithm:\xd |
223 | ·················cpus[0]·stores·the·time·to·compute·the·domain/segment·map;·cpus[2]·stores·the·time·to\xd | 223 | ·················cpus[0]·stores·the·time·to·compute·the·domain/segment·map;·cpus[2]·stores·the·time·to\xd |
Offset 253, 15 lines modified | Offset 253, 15 lines modified | ||
253 | ·································0\xd | 253 | ·································0\xd |
254 | ································Y··=·{y∈Y·|·y∈Adj(B\Y)·and·y·∈/·Adj(W·\Y)}\xd | 254 | ································Y··=·{y∈Y·|·y∈Adj(B\Y)·and·y·∈/·Adj(W·\Y)}\xd |
255 | ·································1\xd | 255 | ·································1\xd |
256 | ································Y··=·{y∈Y·|·y∈/·Adj(B·\Y)·and·y·∈·Adj(W·\Y)}\xd | 256 | ································Y··=·{y∈Y·|·y∈/·Adj(B·\Y)·and·y·∈·Adj(W·\Y)}\xd |
257 | ·································2\xd | 257 | ·································2\xd |
258 | ································Y··=·{y∈Y·|·y∈Adj(B\Y)·and·y·∈Adj(W·\Y)}\xd | 258 | ································Y··=·{y∈Y·|·y∈Adj(B\Y)·and·y·∈Adj(W·\Y)}\xd |
259 | ·································3\xd | 259 | ·································3\xd |
260 | ··················8···································· | 260 | ··················8····································GPart·:·DRAFT·February·18,·2025\xd |
261 | ························The·YVmapIV·object·contains·the·list·of·vertices·in·the·wide·separator·Y·.·The·IV·object·that\xd | 261 | ························The·YVmapIV·object·contains·the·list·of·vertices·in·the·wide·separator·Y·.·The·IV·object·that\xd |
262 | ························is·returned,·(called·YCmapIV·in·the·calling·method)·contains·the·subscripts·of·the·Y·,·Y·,·Y\xd | 262 | ························is·returned,·(called·YCmapIV·in·the·calling·method)·contains·the·subscripts·of·the·Y·,·Y·,·Y\xd |
263 | ························································································································0···1···2\xd | 263 | ························································································································0···1···2\xd |
264 | ························or·Y·sets·that·contains·each·vertex.\xd | 264 | ························or·Y·sets·that·contains·each·vertex.\xd |
265 | ·····························3\xd | 265 | ·····························3\xd |
266 | ························Error·checking:·If·gpart,·g·or·YVmapIV·is·NULL,·or·if·nvtx·≤·0,·or·if·YVmapIV·is·empty,·an\xd | 266 | ························Error·checking:·If·gpart,·g·or·YVmapIV·is·NULL,·or·if·nvtx·≤·0,·or·if·YVmapIV·is·empty,·an\xd |
267 | ························error·message·is·printed·and·the·program·exits.\xd | 267 | ························error·message·is·printed·and·the·program·exits.\xd |
Offset 303, 15 lines modified | Offset 303, 15 lines modified | ||
303 | ························improves·it·(if·possible).·The·methods·returns·the·cost·of·a·(possibly)·new·two-set·partition\xd | 303 | ························improves·it·(if·possible).·The·methods·returns·the·cost·of·a·(possibly)·new·two-set·partition\xd |
304 | ·························b·b·c\xd | 304 | ·························b·b·c\xd |
305 | ························[S,B,W]·defined·by·the·compidsIV·vector.·The·wide·separator·Y·that·is·constructed·is\xd | 305 | ························[S,B,W]·defined·by·the·compidsIV·vector.·The·wide·separator·Y·that·is·constructed·is\xd |
306 | ························centered·around·S,·i.e.,·Y·includes·all·nodes·in·B·and·W·that·are·nlayer·distance·or·less\xd | 306 | ························centered·around·S,·i.e.,·Y·includes·all·nodes·in·B·and·W·that·are·nlayer·distance·or·less\xd |
307 | ························from·S.·This·method·calls·GPart·smoothYSep().\xd | 307 | ························from·S.·This·method·calls·GPart·smoothYSep().\xd |
308 | ························Error·checking:·If·gpart·is·NULL,·or·if·nlevel·<·0,·or·if·alpha·<·0.0,·an·error·message·is\xd | 308 | ························Error·checking:·If·gpart·is·NULL,·or·if·nlevel·<·0,·or·if·alpha·<·0.0,·an·error·message·is\xd |
309 | ························printed·and·the·program·exits.\xd | 309 | ························printed·and·the·program·exits.\xd |
310 | ····································· | 310 | ·····································GPart·:·DRAFT···February·18,·2025···················9\xd |
311 | ············1.2.7··Recursive·Bisection·method\xd | 311 | ············1.2.7··Recursive·Bisection·method\xd |
312 | ············There·is·presently·one·method·to·construct·the·domain/separator·tree.\xd | 312 | ············There·is·presently·one·method·to·construct·the·domain/separator·tree.\xd |
313 | ···············1.·DSTree·*·GPart_RBviaDDsep·(·GPart·*gpart,·DDsepInfo·*info·)·;\xd | 313 | ···············1.·DSTree·*·GPart_RBviaDDsep·(·GPart·*gpart,·DDsepInfo·*info·)·;\xd |
314 | ·················This·method·performs·a·recursive·bisection·of·the·graph·using·the·DDSEP·algorithm·and\xd | 314 | ·················This·method·performs·a·recursive·bisection·of·the·graph·using·the·DDSEP·algorithm·and\xd |
315 | ·················returns·a·DSTree·object·that·represents·the·domain/separator·tree·and·the·map·from·vertices\xd | 315 | ·················returns·a·DSTree·object·that·represents·the·domain/separator·tree·and·the·map·from·vertices\xd |
316 | ·················to·domains·and·separators.·The·DDsepInfo·structure·contains·all·the·parameters·to·the\xd | 316 | ·················to·domains·and·separators.·The·DDsepInfo·structure·contains·all·the·parameters·to·the\xd |
317 | ·················different·steps·of·the·DDSEP·algorithm·(the·fishnet·method·to·find·the·domain·decomposition,\xd | 317 | ·················different·steps·of·the·DDSEP·algorithm·(the·fishnet·method·to·find·the·domain·decomposition,\xd |
Max diff block lines reached; 6489/17526 bytes (37.02%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·Graph.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·Graph.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1204, 20 lines modified | Offset 1204, 21 lines modified | ||
1204 | end·readonly·def | 1204 | end·readonly·def |
1205 | /Encoding·256·array | 1205 | /Encoding·256·array |
1206 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1206 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1207 | dup·44·/comma·put | 1207 | dup·44·/comma·put |
1208 | dup·48·/zero·put | 1208 | dup·48·/zero·put |
1209 | dup·49·/one·put | 1209 | dup·49·/one·put |
1210 | dup·50·/two·put | 1210 | dup·50·/two·put |
1211 | dup·52·/four·put | ||
1212 | dup·5 | 1211 | dup·53·/five·put |
1212 | dup·56·/eight·put | ||
1213 | dup·58·/colon·put | 1213 | dup·58·/colon·put |
1214 | dup·7 | 1214 | dup·70·/F·put |
1215 | dup·97·/a·put | 1215 | dup·97·/a·put |
1216 | dup·98·/b·put | ||
1216 | dup·1 | 1217 | dup·101·/e·put |
1217 | dup·114·/r·put | 1218 | dup·114·/r·put |
1218 | dup·117·/u·put | 1219 | dup·117·/u·put |
1219 | dup·121·/y·put | 1220 | dup·121·/y·put |
1220 | readonly·def | 1221 | readonly·def |
1221 | currentdict·end | 1222 | currentdict·end |
1222 | currentfile·eexec | 1223 | currentfile·eexec |
1223 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1224 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1401, 89 lines modified | Offset 1402, 93 lines modified | ||
1401 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1402 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1402 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1403 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1403 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1404 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1404 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1405 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1405 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1406 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1406 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1407 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1407 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1408 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1408 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1409 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1409 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1410 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1411 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1412 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1413 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1414 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1415 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1416 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1417 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1418 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1419 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1420 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1421 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1422 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1423 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1424 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1425 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1426 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1427 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1428 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1429 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1430 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1431 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1432 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1433 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1434 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1435 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1436 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1437 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1438 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1439 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1440 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1441 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1442 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1443 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1444 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1445 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1446 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1447 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1448 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1449 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1450 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1451 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1452 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1453 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1454 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1455 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1456 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1457 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1458 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1459 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1460 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1461 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1462 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1463 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1464 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1465 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1466 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1467 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1468 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1469 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1470 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1471 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1472 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1473 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1474 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1475 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1476 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1477 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1478 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1479 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1480 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1481 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1482 | 1410 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1411 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1412 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1413 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1414 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1415 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1416 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 25022/36913 bytes (67.79%) of diff not shown. |
Offset 27, 15 lines modified | Offset 27, 15 lines modified | ||
27 | ················weight·vertices·in·the·weighted·vertex.·The·weight·of·an·edge·is·w(u,v),·the·number·of·(u,v)·edges\xd | 27 | ················weight·vertices·in·the·weighted·vertex.·The·weight·of·an·edge·is·w(u,v),·the·number·of·(u,v)·edges\xd |
28 | ················in·the·unit·weight·graph·where·u·∈·u·and·v·∈·v.\xd | 28 | ················in·the·unit·weight·graph·where·u·∈·u·and·v·∈·v.\xd |
29 | ····················Thenaturalcompressedgraph[?],[?]isveryimportantformanymatricesfromstructralanalysis\xd | 29 | ····················Thenaturalcompressedgraph[?],[?]isveryimportantformanymatricesfromstructralanalysis\xd |
30 | ················and·computational·fluid·mechanics.·This·type·of·graph·has·one·special·property:\xd | 30 | ················and·computational·fluid·mechanics.·This·type·of·graph·has·one·special·property:\xd |
31 | ························································w(u,v)·=·w(u)·w(v)\xd | 31 | ························································w(u,v)·=·w(u)·w(v)\xd |
32 | ···················1The·EGraph·object·represents·a·graph·of·the·matrix,·but·stores·a·list·of·covering·cliques·in·an·IVL·object.\xd | 32 | ···················1The·EGraph·object·represents·a·graph·of·the·matrix,·but·stores·a·list·of·covering·cliques·in·an·IVL·object.\xd |
33 | ··································································1\xd | 33 | ··································································1\xd |
34 | ················2································Graph·:·DRAFT· | 34 | ················2································Graph·:·DRAFT·February·18,·2025\xd |
35 | ················and·it·is·the·smallest·graph·with·this·property.·The·compression·is·loss-less,·for·given·G(V,E)\xd | 35 | ················and·it·is·the·smallest·graph·with·this·property.·The·compression·is·loss-less,·for·given·G(V,E)\xd |
36 | ················and·φ,·we·can·reconstruct·the·unit·weight·graph·G(V,E).·In·effect,·we·can·work·with·the·natural\xd | 36 | ················and·φ,·we·can·reconstruct·the·unit·weight·graph·G(V,E).·In·effect,·we·can·work·with·the·natural\xd |
37 | ················compressed·graph·to·find·separators·and·orderings·and·map·back·to·the·unit·weight·graph.·The\xd | 37 | ················compressed·graph·to·find·separators·and·orderings·and·map·back·to·the·unit·weight·graph.·The\xd |
38 | ················savings·in·time·and·space·can·be·considerable.\xd | 38 | ················savings·in·time·and·space·can·be·considerable.\xd |
39 | ···················The·Graph·object·has·a·method·to·find·the·φ·map·for·the·natural·compressed·graph;·it·requires\xd | 39 | ···················The·Graph·object·has·a·method·to·find·the·φ·map·for·the·natural·compressed·graph;·it·requires\xd |
40 | ················O(|V|)·space·and·O(|E|)·time.·There·is·a·method·to·compress·a·graph·(i.e.,·given·G(V,E)·and\xd | 40 | ················O(|V|)·space·and·O(|E|)·time.·There·is·a·method·to·compress·a·graph·(i.e.,·given·G(V,E)·and\xd |
41 | ················an·arbitrary·φ,·construct·G(V,E))·and·a·method·to·expand·a·graph·(i.e.,·given·G(V,E)·and·an\xd | 41 | ················an·arbitrary·φ,·construct·G(V,E))·and·a·method·to·expand·a·graph·(i.e.,·given·G(V,E)·and·an\xd |
Offset 57, 15 lines modified | Offset 57, 15 lines modified | ||
57 | ···················•·int·totewght·:·total·edge·weight\xd | 57 | ···················•·int·totewght·:·total·edge·weight\xd |
58 | ···················•·IVL·*adjIVL·:·pointer·to·IVL·object·to·hold·adjacency·lists\xd | 58 | ···················•·IVL·*adjIVL·:·pointer·to·IVL·object·to·hold·adjacency·lists\xd |
59 | ···················•·int·*vwghts·:·pointer·to·a·vertex·to·hold·vertex·weights·non-NULL·if·type·%·2·==·1\xd | 59 | ···················•·int·*vwghts·:·pointer·to·a·vertex·to·hold·vertex·weights·non-NULL·if·type·%·2·==·1\xd |
60 | ···················•·IVL·*ewghtIVL·:·pointer·to·IVL·object·to·hold·edge·weight·lists,·non-NULL·if·type·/·2·==·1\xd | 60 | ···················•·IVL·*ewghtIVL·:·pointer·to·IVL·object·to·hold·edge·weight·lists,·non-NULL·if·type·/·2·==·1\xd |
61 | ················1.2····Prototypes·and·descriptions·of·Graph·methods\xd | 61 | ················1.2····Prototypes·and·descriptions·of·Graph·methods\xd |
62 | ················This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 62 | ················This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
63 | ················Graph·object.\xd | 63 | ················Graph·object.\xd |
64 | ··············································· | 64 | ···············································Graph·:·DRAFT·······February·18,·2025···························3\xd |
65 | ···············1.2.1····Basic·methods\xd | 65 | ···············1.2.1····Basic·methods\xd |
66 | ···············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 66 | ···············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
67 | ···············any·allocated·data,·and·free’ing·the·object.\xd | 67 | ···············any·allocated·data,·and·free’ing·the·object.\xd |
68 | ··················1.·Graph·*·Graph_new·(·void·)·;\xd | 68 | ··················1.·Graph·*·Graph_new·(·void·)·;\xd |
69 | ·····················This·method·simply·allocates·storage·for·the·Graph·structure·and·then·sets·the·default·fields\xd | 69 | ·····················This·method·simply·allocates·storage·for·the·Graph·structure·and·then·sets·the·default·fields\xd |
70 | ·····················by·a·call·to·Graph·setDefaultFields().\xd | 70 | ·····················by·a·call·to·Graph·setDefaultFields().\xd |
71 | ··················2.·void·Graph_setDefaultFields·(·Graph·*graph·)·;\xd | 71 | ··················2.·void·Graph_setDefaultFields·(·Graph·*graph·)·;\xd |
Offset 91, 15 lines modified | Offset 91, 15 lines modified | ||
91 | ············································int·adjType,·int·ewghtType·)·;\xd | 91 | ············································int·adjType,·int·ewghtType·)·;\xd |
92 | ·····················Thisisthebasicinitializer·method.·Anypreviousdataisclearedwithacall·toGraph·clearData().\xd | 92 | ·····················Thisisthebasicinitializer·method.·Anypreviousdataisclearedwithacall·toGraph·clearData().\xd |
93 | ·····················Thenthescalar·fields·are·set·and·the·adjIVL·object·is·initialized.·If·type·is·1·or·3,·the·vwghts\xd | 93 | ·····················Thenthescalar·fields·are·set·and·the·adjIVL·object·is·initialized.·If·type·is·1·or·3,·the·vwghts\xd |
94 | ·····················vector·is·initialized·to·zeros.·If·type·is·2·or·3,·the·ewghtIVL·object·is·initialized.\xd | 94 | ·····················vector·is·initialized·to·zeros.·If·type·is·2·or·3,·the·ewghtIVL·object·is·initialized.\xd |
95 | ·····················Error·checking:·If·graph·is·NULL,·type·is·invalid·(type·must·be·in·[0,3]),·nvtx·is·non-\xd | 95 | ·····················Error·checking:·If·graph·is·NULL,·type·is·invalid·(type·must·be·in·[0,3]),·nvtx·is·non-\xd |
96 | ·····················positive,·nvbnd·or·nedges·is·negative,·or·adjType·of·ewghtType·is·invalid·(they·must·be\xd | 96 | ·····················positive,·nvbnd·or·nedges·is·negative,·or·adjType·of·ewghtType·is·invalid·(they·must·be\xd |
97 | ·····················IVL·CHUNKED,·IVL·SOLO·or·IVL·UNKNOWN).·an·error·message·is·printed·and·the·program·exits.\xd | 97 | ·····················IVL·CHUNKED,·IVL·SOLO·or·IVL·UNKNOWN).·an·error·message·is·printed·and·the·program·exits.\xd |
98 | ··············4··························· | 98 | ··············4···························Graph·:·DRAFT·February·18,·2025\xd |
99 | ················2.·void·Graph_init2·(·Graph·*graph,·int·type,·int·nvtx,·int·nvbnd,·int·nedges,\xd | 99 | ················2.·void·Graph_init2·(·Graph·*graph,·int·type,·int·nvtx,·int·nvbnd,·int·nedges,\xd |
100 | ························int·totvwght,·int·totewght,·IVL·*adjIVL,·int·*vwghts,·IVL·*ewghtIVL)\xd | 100 | ························int·totvwght,·int·totewght,·IVL·*adjIVL,·int·*vwghts,·IVL·*ewghtIVL)\xd |
101 | ··················This·method·is·used·by·the·IO·read·methods.·When·a·Graph·object·is·read·from·a·file,\xd | 101 | ··················This·method·is·used·by·the·IO·read·methods.·When·a·Graph·object·is·read·from·a·file,\xd |
102 | ··················the·IVL·object(s)·must·be·initialized·and·then·read·in·from·the·file.·Therefore,·we·need·an\xd | 102 | ··················the·IVL·object(s)·must·be·initialized·and·then·read·in·from·the·file.·Therefore,·we·need·an\xd |
103 | ··················initialization·method·that·allows·us·to·set·pointers·to·the·IVL·objects·and·the·vwghts·vector.\xd | 103 | ··················initialization·method·that·allows·us·to·set·pointers·to·the·IVL·objects·and·the·vwghts·vector.\xd |
104 | ··················Note,·adjIVL,·vwghts·and·ewghtIVL·are·owned·by·the·Graph·object·and·will·be·free’d·when\xd | 104 | ··················Note,·adjIVL,·vwghts·and·ewghtIVL·are·owned·by·the·Graph·object·and·will·be·free’d·when\xd |
105 | ··················the·Graph·object·is·free’d.\xd | 105 | ··················the·Graph·object·is·free’d.\xd |
Offset 130, 15 lines modified | Offset 130, 15 lines modified | ||
130 | ··············1.2.3··Compress·and·Expand·methods\xd | 130 | ··············1.2.3··Compress·and·Expand·methods\xd |
131 | ··············These·three·methods·find·an·equivalence·map·for·the·natural·compressed·graph,·compress·a·graph,\xd | 131 | ··············These·three·methods·find·an·equivalence·map·for·the·natural·compressed·graph,·compress·a·graph,\xd |
132 | ··············and·expand·a·graph.\xd | 132 | ··············and·expand·a·graph.\xd |
133 | ················1.·IV·*·Graph_equivMap·(·Graph·*graph·)·;\xd | 133 | ················1.·IV·*·Graph_equivMap·(·Graph·*graph·)·;\xd |
134 | ··················This·method·constructs·the·equivalence·map·from·the·graph·to·its·natural·compressed·graph.\xd | 134 | ··················This·method·constructs·the·equivalence·map·from·the·graph·to·its·natural·compressed·graph.\xd |
135 | ··················The·map·φ·:·V·7→·V·is·then·constructed·(see·the·Introduction·in·this·section)·and·put·into\xd | 135 | ··················The·map·φ·:·V·7→·V·is·then·constructed·(see·the·Introduction·in·this·section)·and·put·into\xd |
136 | ··················an·IV·object·that·is·then·returned.\xd | 136 | ··················an·IV·object·that·is·then·returned.\xd |
137 | ······································Graph·:·DRAFT·· | 137 | ······································Graph·:·DRAFT··February·18,·2025···················5\xd |
138 | ·················Error·checking:·If·graph·is·NULL·or·nvtx·<=·0,·an·error·message·is·printed·and·the·program\xd | 138 | ·················Error·checking:·If·graph·is·NULL·or·nvtx·<=·0,·an·error·message·is·printed·and·the·program\xd |
139 | ·················exits.\xd | 139 | ·················exits.\xd |
140 | ···············2.·Graph·*·Graph_compress·(·Graph·*graph,·int·map[],·int·coarseType·)·;\xd | 140 | ···············2.·Graph·*·Graph_compress·(·Graph·*graph,·int·map[],·int·coarseType·)·;\xd |
141 | ·················Graph·*·Graph_compress2·(·Graph·*graph,·IV·*mapIV,·int·coarseType·)·;\xd | 141 | ·················Graph·*·Graph_compress2·(·Graph·*graph,·IV·*mapIV,·int·coarseType·)·;\xd |
142 | ·················This·Graph·and·map·objects·(map[]·or·mapIV)·are·checked·and·if·any·errors·are·found,\xd | 142 | ·················This·Graph·and·map·objects·(map[]·or·mapIV)·are·checked·and·if·any·errors·are·found,\xd |
143 | ·················the·appropriate·message·is·printed·and·the·program·exits.·The·compressed·graph·object\xd | 143 | ·················the·appropriate·message·is·printed·and·the·program·exits.·The·compressed·graph·object\xd |
144 | ·················is·constructed·and·returned.·Note,·the·compressed·graph·does·not·have·a·boundary,·even\xd | 144 | ·················is·constructed·and·returned.·Note,·the·compressed·graph·does·not·have·a·boundary,·even\xd |
Offset 164, 15 lines modified | Offset 164, 15 lines modified | ||
164 | ···············1.·int·Graph_sizeOf·(·Graph·*graph·)·;\xd | 164 | ···············1.·int·Graph_sizeOf·(·Graph·*graph·)·;\xd |
165 | ·················This·method·returns·the·number·of·bytes·taken·by·this·object.\xd | 165 | ·················This·method·returns·the·number·of·bytes·taken·by·this·object.\xd |
166 | ·················Error·checking:·If·graph·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 166 | ·················Error·checking:·If·graph·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
167 | ···············2.·Graph_externalDegree·(·Graph·*graph,·int·v·)·;\xd | 167 | ···············2.·Graph_externalDegree·(·Graph·*graph,·int·v·)·;\xd |
168 | ·················This·method·returns·the·weight·of·adj(v).\xd | 168 | ·················This·method·returns·the·weight·of·adj(v).\xd |
169 | ·················Error·checking:·If·graph·is·NULL,·or·v·is·out·of·range,·an·error·message·is·printed·and·the\xd | 169 | ·················Error·checking:·If·graph·is·NULL,·or·v·is·out·of·range,·an·error·message·is·printed·and·the\xd |
170 | ·················program·exits.\xd | 170 | ·················program·exits.\xd |
171 | ·······6··············Graph·:·DRAFT· | 171 | ·······6··············Graph·:·DRAFT·February·18,·2025\xd |
172 | ········3.·int·Graph_adjAndSize·(·Graph·*graph,·int·u,·int·*pusize,·int·**puadj)·;\xd | 172 | ········3.·int·Graph_adjAndSize·(·Graph·*graph,·int·u,·int·*pusize,·int·**puadj)·;\xd |
173 | ··········This·method·fills·*pusize·with·the·size·of·the·adjacency·list·for·u·and·*puadj·points·to·the\xd | 173 | ··········This·method·fills·*pusize·with·the·size·of·the·adjacency·list·for·u·and·*puadj·points·to·the\xd |
174 | ··········start·of·the·list·vector.\xd | 174 | ··········start·of·the·list·vector.\xd |
175 | ··········Error·checking:·If·graph·is·NULL,·or·if·u·<·0·or·u·>=·nvtx·or·if·pusize·or·puadj·is·NULL,·an\xd | 175 | ··········Error·checking:·If·graph·is·NULL,·or·if·u·<·0·or·u·>=·nvtx·or·if·pusize·or·puadj·is·NULL,·an\xd |
176 | ··········error·message·is·printed·and·the·program·exits.\xd | 176 | ··········error·message·is·printed·and·the·program·exits.\xd |
177 | ········4.·int·Graph_adjAndEweights·(·Graph·*graph,·int·u,·int·*pusize,\xd | 177 | ········4.·int·Graph_adjAndEweights·(·Graph·*graph,·int·u,·int·*pusize,\xd |
178 | ························int·**puadj,·int·**puewghts)·;\xd | 178 | ························int·**puadj,·int·**puewghts)·;\xd |
Offset 205, 15 lines modified | Offset 205, 15 lines modified | ||
205 | ··········list·for·the·vertex·in·the·parent·graph.·Each·adjacency·list·for·a·boundary·vertex·of·the\xd | 205 | ··········list·for·the·vertex·in·the·parent·graph.·Each·adjacency·list·for·a·boundary·vertex·of·the\xd |
206 | ··········subgraph·is·new·storage,·and·only·these·lists·are·free’d·when·the·subgraph·is·free’d.·A·map\xd | 206 | ··········subgraph·is·new·storage,·and·only·these·lists·are·free’d·when·the·subgraph·is·free’d.·A·map\xd |
207 | ··········vector·is·created·that·maps·the·subgraphs’s·vertices·(both·internal·and·boundary)·into·the\xd | 207 | ··········vector·is·created·that·maps·the·subgraphs’s·vertices·(both·internal·and·boundary)·into·the\xd |
208 | ··········parent·graph’s·vertices;·the·address·of·the·map·vector·is·put·into·*pmap.·The·adjacency·lists\xd | 208 | ··········parent·graph’s·vertices;·the·address·of·the·map·vector·is·put·into·*pmap.·The·adjacency·lists\xd |
209 | ··········for·the·subgraph·are·overwritten·by·the·map[]·vector.·This·renders·the·graph·object·invalid.\xd | 209 | ··········for·the·subgraph·are·overwritten·by·the·map[]·vector.·This·renders·the·graph·object·invalid.\xd |
210 | ··········The·graph·partitioning·methods·map·the·vertices·back·to·their·original·values.·Presently,\xd | 210 | ··········The·graph·partitioning·methods·map·the·vertices·back·to·their·original·values.·Presently,\xd |
211 | ··········only·graphs·with·unit·edge·weights·are·allowed·as·input.\xd | 211 | ··········only·graphs·with·unit·edge·weights·are·allowed·as·input.\xd |
212 | ······································Graph·:·DRAFT·· | 212 | ······································Graph·:·DRAFT··February·18,·2025···················7\xd |
213 | ·················Error·checking:·If·graph·is·NULL·or·icomp·<·0·or·compids·or·pmap·is·NULL,·an·error·message\xd | 213 | ·················Error·checking:·If·graph·is·NULL·or·icomp·<·0·or·compids·or·pmap·is·NULL,·an·error·message\xd |
214 | ·················is·printed·and·the·program·exits.\xd | 214 | ·················is·printed·and·the·program·exits.\xd |
215 | ···············8.·int·Graph_isSymmetric·(·Graph·*graph·)·;\xd | 215 | ···············8.·int·Graph_isSymmetric·(·Graph·*graph·)·;\xd |
216 | ·················This·method·returns·1·if·the·graph·is·symmetric·(i.e.,·edge·(i,j)·is·present·if·and·only·if\xd | 216 | ·················This·method·returns·1·if·the·graph·is·symmetric·(i.e.,·edge·(i,j)·is·present·if·and·only·if\xd |
217 | ·················edge·(j,i)·is·present)·and·0·otherwise.\xd | 217 | ·················edge·(j,i)·is·present)·and·0·otherwise.\xd |
218 | ·················Error·checking:·If·graph·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 218 | ·················Error·checking:·If·graph·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
219 | ············1.2.6··IO·methods\xd | 219 | ············1.2.6··IO·methods\xd |
Offset 242, 15 lines modified | Offset 242, 15 lines modified | ||
242 | ·················file·and·returns·the·value·returned·from·the·called·routine.\xd | 242 | ·················file·and·returns·the·value·returned·from·the·called·routine.\xd |
243 | ·················Error·checking:·If·graph·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.graphf·(for·a·formatted\xd | 243 | ·················Error·checking:·If·graph·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.graphf·(for·a·formatted\xd |
244 | ·················file)·or·*.graphb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd | 244 | ·················file)·or·*.graphb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd |
245 | ···············5.·int·Graph_writeToFormattedFile·(·Graph·*graph,·FILE·*fp·)·;\xd | 245 | ···············5.·int·Graph_writeToFormattedFile·(·Graph·*graph,·FILE·*fp·)·;\xd |
246 | ·················This·method·writes·a·Graph·object·to·a·formatted·file.·If·there·are·no·errors·in·writing·the\xd | 246 | ·················This·method·writes·a·Graph·object·to·a·formatted·file.·If·there·are·no·errors·in·writing·the\xd |
247 | ·················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd | 247 | ·················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd |
248 | ·················Error·checking:·If·graph·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 248 | ·················Error·checking:·If·graph·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
249 | ···········8······················ | 249 | ···········8······················Graph·:·DRAFT·February·18,·2025\xd |
250 | ·············6.·int·Graph_writeToBinaryFile·(·Graph·*graph,·FILE·*fp·)·;\xd | 250 | ·············6.·int·Graph_writeToBinaryFile·(·Graph·*graph,·FILE·*fp·)·;\xd |
251 | ···············This·method·writes·a·Graph·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the·data,\xd | 251 | ···············This·method·writes·a·Graph·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the·data,\xd |
252 | ···············the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd | 252 | ···············the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd |
253 | ···············Error·checking:·If·graph·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 253 | ···············Error·checking:·If·graph·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
254 | ·············7.·int·Graph_writeForHumanEye·(·Graph·*graph,·FILE·*fp·)·;\xd | 254 | ·············7.·int·Graph_writeForHumanEye·(·Graph·*graph,·FILE·*fp·)·;\xd |
255 | ···············This·method·writes·a·Graph·object·to·a·file·in·a·human·readable·format.·The·method\xd | 255 | ···············This·method·writes·a·Graph·object·to·a·file·in·a·human·readable·format.·The·method\xd |
256 | ···············Graph·writeStats()is·called·to·write·out·the·header·and·statistics.·The·value·1·is·returned.\xd | 256 | ···············Graph·writeStats()is·called·to·write·out·the·header·and·statistics.·The·value·1·is·returned.\xd |
Offset 276, 15 lines modified | Offset 276, 15 lines modified | ||
276 | ···················*.graphfor*.graphb.·TheGraphobjectisreadfromthefileviatheGraph·readFromFile()\xd | 276 | ···················*.graphfor*.graphb.·TheGraphobjectisreadfromthefileviatheGraph·readFromFile()\xd |
277 | ···················method.\xd | 277 | ···················method.\xd |
278 | ·············2.·compressGraph·msglvl·msgFile·inGraphFile·coarseType·outMapFile·outGraphFile\xd | 278 | ·············2.·compressGraph·msglvl·msgFile·inGraphFile·coarseType·outMapFile·outGraphFile\xd |
279 | ···············This·driver·program·reads·in·a·Graph·object·from·a·file,·computes·the·equivalence·map·to\xd | 279 | ···············This·driver·program·reads·in·a·Graph·object·from·a·file,·computes·the·equivalence·map·to\xd |
280 | ···············its·natural·compressed·graph·(the·first·graph·need·not·be·unit·weight),·and·constructs·the\xd | 280 | ···············its·natural·compressed·graph·(the·first·graph·need·not·be·unit·weight),·and·constructs·the\xd |
281 | ···············natural·compressed·graph.·The·equivalence·map·and·compressed·graph·are·optionally·written\xd | 281 | ···············natural·compressed·graph.·The·equivalence·map·and·compressed·graph·are·optionally·written\xd |
282 | ···············out·to·files.\xd | 282 | ···············out·to·files.\xd |
283 | ···········································Graph·:·DRAFT····· | 283 | ···········································Graph·:·DRAFT·····February·18,·2025························9\xd |
284 | ······················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd | 284 | ······················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd |
285 | ························that·all·objects·are·written·to·the·message·file.\xd | 285 | ························that·all·objects·are·written·to·the·message·file.\xd |
286 | ······················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd | 286 | ······················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd |
287 | ························message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd | 287 | ························message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd |
288 | ························data.\xd | 288 | ························data.\xd |
289 | ······················•·TheinGraphFileparameteristheinputfilefortheGraphobject.·It·mustbeof·theform\xd | 289 | ······················•·TheinGraphFileparameteristheinputfilefortheGraphobject.·It·mustbeof·theform\xd |
290 | ························*.graphfor*.graphb.·TheGraphobjectisreadfromthefileviatheGraph·readFromFile()\xd | 290 | ························*.graphfor*.graphb.·TheGraphobjectisreadfromthefileviatheGraph·readFromFile()\xd |
Max diff block lines reached; 4219/15744 bytes (26.80%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·I2Ohash.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·I2Ohash.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2425, 20 lines modified | Offset 2425, 21 lines modified | ||
2425 | end·readonly·def | 2425 | end·readonly·def |
2426 | /Encoding·256·array | 2426 | /Encoding·256·array |
2427 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2427 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2428 | dup·44·/comma·put | 2428 | dup·44·/comma·put |
2429 | dup·48·/zero·put | 2429 | dup·48·/zero·put |
2430 | dup·49·/one·put | 2430 | dup·49·/one·put |
2431 | dup·50·/two·put | 2431 | dup·50·/two·put |
2432 | dup·52·/four·put | ||
2433 | dup·5 | 2432 | dup·53·/five·put |
2433 | dup·56·/eight·put | ||
2434 | dup·58·/colon·put | 2434 | dup·58·/colon·put |
2435 | dup·7 | 2435 | dup·70·/F·put |
2436 | dup·97·/a·put | 2436 | dup·97·/a·put |
2437 | dup·98·/b·put | ||
2437 | dup·1 | 2438 | dup·101·/e·put |
2438 | dup·114·/r·put | 2439 | dup·114·/r·put |
2439 | dup·117·/u·put | 2440 | dup·117·/u·put |
2440 | dup·121·/y·put | 2441 | dup·121·/y·put |
2441 | readonly·def | 2442 | readonly·def |
2442 | currentdict·end | 2443 | currentdict·end |
2443 | currentfile·eexec | 2444 | currentfile·eexec |
2444 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2445 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2622, 89 lines modified | Offset 2623, 93 lines modified | ||
2622 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2623 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2623 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2624 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2624 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2625 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2625 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2626 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2626 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2627 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2627 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2628 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2628 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2629 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2629 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2630 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2630 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2631 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2632 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2633 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2634 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2635 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2636 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2637 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2638 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2639 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2640 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2641 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2642 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2643 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2644 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2645 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2646 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2647 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2648 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2649 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2650 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2651 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2652 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2653 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2654 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2655 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2656 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2657 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2658 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2659 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2660 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2661 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2662 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2663 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2664 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2665 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2666 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2667 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2668 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2669 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2670 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2671 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2672 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2673 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2674 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2675 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2676 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2677 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2678 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2679 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2680 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2681 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2682 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2683 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2684 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2685 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2686 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2687 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2688 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2689 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2690 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2691 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2692 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2693 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2694 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2695 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2696 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2697 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2698 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2699 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2700 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2701 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2702 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2703 | 2631 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2632 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2633 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2634 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2635 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2636 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2637 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 6700/18593 bytes (36.04%) of diff not shown. |
Offset 21, 15 lines modified | Offset 21, 15 lines modified | ||
21 | ······················•·int·nlist·:·number·of·lists·in·the·hash·table\xd | 21 | ······················•·int·nlist·:·number·of·lists·in·the·hash·table\xd |
22 | ······················•·int·grow·:·when·no·I2OP·objects·are·available·to·insert·a·new·<key1,key2,value>·triple,\xd | 22 | ······················•·int·grow·:·when·no·I2OP·objects·are·available·to·insert·a·new·<key1,key2,value>·triple,\xd |
23 | ························the·object·can·allocate·grow·more·I2OP·objects·and·put·them·on·the·free·list.\xd | 23 | ························the·object·can·allocate·grow·more·I2OP·objects·and·put·them·on·the·free·list.\xd |
24 | ······················•·nitem·:·number·of·items·in·the·hash·table.\xd | 24 | ······················•·nitem·:·number·of·items·in·the·hash·table.\xd |
25 | ······················•·I2OP·*baseI2OP·:·pointer·to·an·I2OP·object·that·keeps·track·of·all·the·I2OP·objects·that\xd | 25 | ······················•·I2OP·*baseI2OP·:·pointer·to·an·I2OP·object·that·keeps·track·of·all·the·I2OP·objects·that\xd |
26 | ························have·been·allocated·by·the·hash·table.\xd | 26 | ························have·been·allocated·by·the·hash·table.\xd |
27 | ·········································································1\xd | 27 | ·········································································1\xd |
28 | ··············2·························· | 28 | ··············2··························I2Ohash·:·DRAFT·February·18,·2025\xd |
29 | ·················•·I2OP·*freeI2OP·:·pointer·to·the·first·I2OP·object·on·the·free·list.\xd | 29 | ·················•·I2OP·*freeI2OP·:·pointer·to·the·first·I2OP·object·on·the·free·list.\xd |
30 | ·················•·I2OP·**heads·:·pointer·to·a·vector·of·pointers·to·I2OP·objects,·used·to·hold·a·pointer·to·the\xd | 30 | ·················•·I2OP·**heads·:·pointer·to·a·vector·of·pointers·to·I2OP·objects,·used·to·hold·a·pointer·to·the\xd |
31 | ···················first·I2OP·object·in·each·list.\xd | 31 | ···················first·I2OP·object·in·each·list.\xd |
32 | ·················Acorrectly·initialized·and·nontrivial·I2Ohash·object·will·have·nlist·>·0.·If·grow·is·zero·and\xd | 32 | ·················Acorrectly·initialized·and·nontrivial·I2Ohash·object·will·have·nlist·>·0.·If·grow·is·zero·and\xd |
33 | ··············a·new·<key1,key2,value>·triple·is·given·to·the·hash·table·to·be·inserted,·a·fatal·error·occurs.\xd | 33 | ··············a·new·<key1,key2,value>·triple·is·given·to·the·hash·table·to·be·inserted,·a·fatal·error·occurs.\xd |
34 | ··············1.2···Prototypes·and·descriptions·of·I2Ohash·methods\xd | 34 | ··············1.2···Prototypes·and·descriptions·of·I2Ohash·methods\xd |
35 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 35 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | ···················Error·checking:·If·hashtable·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 51 | ···················Error·checking:·If·hashtable·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
52 | ················4.·void·I2Ohash_free·(·I2Ohash·*hashtable·)·;\xd | 52 | ················4.·void·I2Ohash_free·(·I2Ohash·*hashtable·)·;\xd |
53 | ···················This·method·releases·any·storage·by·a·call·to·I2Ohash·clearData()·then·free’s·the·storage\xd | 53 | ···················This·method·releases·any·storage·by·a·call·to·I2Ohash·clearData()·then·free’s·the·storage\xd |
54 | ···················for·the·structure·with·a·call·to·free().\xd | 54 | ···················for·the·structure·with·a·call·to·free().\xd |
55 | ···················Error·checking:·If·hashtable·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 55 | ···················Error·checking:·If·hashtable·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
56 | ··············1.2.2··Initializer·methods\xd | 56 | ··············1.2.2··Initializer·methods\xd |
57 | ··············There·is·one·initializer·method.\xd | 57 | ··············There·is·one·initializer·method.\xd |
58 | ················································I2Ohash·:·DRAFT······· | 58 | ················································I2Ohash·:·DRAFT·······February·18,·2025····························3\xd |
59 | ···················1.·void·I2Ohash_init·(·I2Ohash·*hashtable,·int·nlist,·int·nobj,·int·grow·)·;\xd | 59 | ···················1.·void·I2Ohash_init·(·I2Ohash·*hashtable,·int·nlist,·int·nobj,·int·grow·)·;\xd |
60 | ······················This·method·is·the·basic·initializer·method.······It·clears·any·previous·data·with·a·call·to\xd | 60 | ······················This·method·is·the·basic·initializer·method.······It·clears·any·previous·data·with·a·call·to\xd |
61 | ······················I2Ohash·clearData().·It·allocates·storage·for·nlist·lists·and·if·nobj·is·positive,·it·loads·the\xd | 61 | ······················I2Ohash·clearData().·It·allocates·storage·for·nlist·lists·and·if·nobj·is·positive,·it·loads·the\xd |
62 | ······················free·list·with·nobj·I2OP·objects.\xd | 62 | ······················free·list·with·nobj·I2OP·objects.\xd |
63 | ······················Error·checking:·If·hashtable·is·NULL,·or·if·nlist·≤·0,·or·if·nobj·and·grow·are·both·zero,·an\xd | 63 | ······················Error·checking:·If·hashtable·is·NULL,·or·if·nlist·≤·0,·or·if·nobj·and·grow·are·both·zero,·an\xd |
64 | ······················error·message·is·printed·and·the·program·exits.\xd | 64 | ······················error·message·is·printed·and·the·program·exits.\xd |
65 | ················1.2.3····Utility·methods\xd | 65 | ················1.2.3····Utility·methods\xd |
Offset 92, 15 lines modified | Offset 92, 15 lines modified | ||
92 | ······················the·triples·are·evenly·distributed·among·nlist/k·lists,·the·value·is·√k.\xd | 92 | ······················the·triples·are·evenly·distributed·among·nlist/k·lists,·the·value·is·√k.\xd |
93 | ······················Error·checking:·If·hashtable·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 93 | ······················Error·checking:·If·hashtable·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
94 | ················1.2.4····IO·methods\xd | 94 | ················1.2.4····IO·methods\xd |
95 | ···················1.·void·I2Ohash_writeForHumanEye·(·I2Ohash·*hashtable,·FILE·*fp·)·;\xd | 95 | ···················1.·void·I2Ohash_writeForHumanEye·(·I2Ohash·*hashtable,·FILE·*fp·)·;\xd |
96 | ······················This·method·prints·the·hash·table·in·a·human-readable·format.\xd | 96 | ······················This·method·prints·the·hash·table·in·a·human-readable·format.\xd |
97 | ······················Error·checking:·If·hashtable·or·fp·is·NULL,·an·error·message·is·printed·and·the·program\xd | 97 | ······················Error·checking:·If·hashtable·or·fp·is·NULL,·an·error·message·is·printed·and·the·program\xd |
98 | ······················exits.\xd | 98 | ······················exits.\xd |
99 | ···········4····················· | 99 | ···········4·····················I2Ohash·:·DRAFT·February·18,·2025\xd |
100 | ···········1.3··Driver·programs·for·the·I2Ohash·object\xd | 100 | ···········1.3··Driver·programs·for·the·I2Ohash·object\xd |
101 | ·············1.·test_hash·msglvl·msgFile·size·grow·maxkey·nent·seed\xd | 101 | ·············1.·test_hash·msglvl·msgFile·size·grow·maxkey·nent·seed\xd |
102 | ···············This·driver·program·tests·the·I2Ohash·insert·method.·It·inserts·a·number·of·triples·into·a\xd | 102 | ···············This·driver·program·tests·the·I2Ohash·insert·method.·It·inserts·a·number·of·triples·into·a\xd |
103 | ···············hash·table·and·prints·out·the·“measure”·of·how·well·distributed·the·entries·are·in·the·hash\xd | 103 | ···············hash·table·and·prints·out·the·“measure”·of·how·well·distributed·the·entries·are·in·the·hash\xd |
104 | ···············table.\xd | 104 | ···············table.\xd |
105 | ·················•·The·msglvl·parameter·determines·the·amount·of·output.·Use·msglvl·=·1·for·just\xd | 105 | ·················•·The·msglvl·parameter·determines·the·amount·of·output.·Use·msglvl·=·1·for·just\xd |
106 | ···················timing·output.\xd | 106 | ···················timing·output.\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·IIheap.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·IIheap.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1278, 20 lines modified | Offset 1278, 21 lines modified | ||
1278 | end·readonly·def | 1278 | end·readonly·def |
1279 | /Encoding·256·array | 1279 | /Encoding·256·array |
1280 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1280 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1281 | dup·44·/comma·put | 1281 | dup·44·/comma·put |
1282 | dup·48·/zero·put | 1282 | dup·48·/zero·put |
1283 | dup·49·/one·put | 1283 | dup·49·/one·put |
1284 | dup·50·/two·put | 1284 | dup·50·/two·put |
1285 | dup·52·/four·put | ||
1286 | dup·5 | 1285 | dup·53·/five·put |
1286 | dup·56·/eight·put | ||
1287 | dup·58·/colon·put | 1287 | dup·58·/colon·put |
1288 | dup·7 | 1288 | dup·70·/F·put |
1289 | dup·97·/a·put | 1289 | dup·97·/a·put |
1290 | dup·98·/b·put | ||
1290 | dup·1 | 1291 | dup·101·/e·put |
1291 | dup·114·/r·put | 1292 | dup·114·/r·put |
1292 | dup·117·/u·put | 1293 | dup·117·/u·put |
1293 | dup·121·/y·put | 1294 | dup·121·/y·put |
1294 | readonly·def | 1295 | readonly·def |
1295 | currentdict·end | 1296 | currentdict·end |
1296 | currentfile·eexec | 1297 | currentfile·eexec |
1297 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1298 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1475, 89 lines modified | Offset 1476, 93 lines modified | ||
1475 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1476 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1476 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1477 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1477 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1478 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1478 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1479 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1479 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1480 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1480 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1481 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1481 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1482 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1482 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1483 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1483 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1484 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1485 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1486 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1487 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1488 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1489 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1490 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1491 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1492 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1493 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1494 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1495 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1496 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1497 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1498 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1499 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1500 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1501 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1502 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1503 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1504 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1505 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1506 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1507 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1508 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1509 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1510 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1511 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1512 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1513 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1514 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1515 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1516 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1517 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1518 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1519 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1520 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1521 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1522 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1523 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1524 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1525 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1526 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1527 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1528 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1529 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1530 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1531 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1532 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1533 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1534 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1535 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1536 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1537 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1538 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1539 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1540 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1541 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1542 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1543 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1544 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1545 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1546 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1547 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1548 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1549 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1550 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1551 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1552 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1553 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1554 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1555 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1556 | 1484 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1485 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1486 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1487 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1488 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1489 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1490 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 5437/17329 bytes (31.38%) of diff not shown. |
Offset 17, 15 lines modified | Offset 17, 15 lines modified | ||
17 | ···············location·loc\xd | 17 | ···············location·loc\xd |
18 | ···········A·correctly·initialized·and·nontrivial·IIheap·object·will·have·maxsize·>·0·and·0·<=·size·<\xd | 18 | ···········A·correctly·initialized·and·nontrivial·IIheap·object·will·have·maxsize·>·0·and·0·<=·size·<\xd |
19 | ···········maxsize.\xd | 19 | ···········maxsize.\xd |
20 | ···········1.2··Prototypes·and·descriptions·of·IIheap·methods\xd | 20 | ···········1.2··Prototypes·and·descriptions·of·IIheap·methods\xd |
21 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 21 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
22 | ···········IIheap·object.\xd | 22 | ···········IIheap·object.\xd |
23 | ·············································1\xd | 23 | ·············································1\xd |
24 | ···············2······························IIheap·:·DRAFT· | 24 | ···············2······························IIheap·:·DRAFT·February·18,·2025\xd |
25 | ···············1.2.1···Basic·methods\xd | 25 | ···············1.2.1···Basic·methods\xd |
26 | ···············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 26 | ···············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
27 | ···············any·allocated·data,·and·free’ing·the·object.\xd | 27 | ···············any·allocated·data,·and·free’ing·the·object.\xd |
28 | ··················1.·IIheap·*·IIheap_new·(·void·)·;\xd | 28 | ··················1.·IIheap·*·IIheap_new·(·void·)·;\xd |
29 | ····················This·method·simply·allocates·storage·for·the·IIheap·structure·and·then·sets·the·default·fields\xd | 29 | ····················This·method·simply·allocates·storage·for·the·IIheap·structure·and·then·sets·the·default·fields\xd |
30 | ····················by·a·call·to·IIheap·setDefaultFields().\xd | 30 | ····················by·a·call·to·IIheap·setDefaultFields().\xd |
31 | ··················2.·void·IIheap_setDefaultFields·(·IIheap·*heap·)·;\xd | 31 | ··················2.·void·IIheap_setDefaultFields·(·IIheap·*heap·)·;\xd |
Offset 49, 15 lines modified | Offset 49, 15 lines modified | ||
49 | ····················IVinit().·The·entries·in·the·three·vectors·are·set·to·-1.\xd | 49 | ····················IVinit().·The·entries·in·the·three·vectors·are·set·to·-1.\xd |
50 | ····················Error·checking:·If·heap·is·NULL,·or·if·maxsize·≤·0,·an·error·message·is·printed·and·the\xd | 50 | ····················Error·checking:·If·heap·is·NULL,·or·if·maxsize·≤·0,·an·error·message·is·printed·and·the\xd |
51 | ····················program·exits.\xd | 51 | ····················program·exits.\xd |
52 | ···············1.2.3···Utility·methods\xd | 52 | ···············1.2.3···Utility·methods\xd |
53 | ··················1.·int·IIheap_sizeOf·(·IIheap·*heap·)·;\xd | 53 | ··················1.·int·IIheap_sizeOf·(·IIheap·*heap·)·;\xd |
54 | ····················This·method·returns·the·number·of·bytes·taken·by·this·object.\xd | 54 | ····················This·method·returns·the·number·of·bytes·taken·by·this·object.\xd |
55 | ····················Error·checking:·If·heap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 55 | ····················Error·checking:·If·heap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
56 | ·····································IIheap·:·DRAFT·· | 56 | ·····································IIheap·:·DRAFT··February·18,·2025···················3\xd |
57 | ···············2.·void·IIheap_root·(·IIheap·*heap,·int·*pkey,·int·*pvalue·)·;\xd | 57 | ···············2.·void·IIheap_root·(·IIheap·*heap,·int·*pkey,·int·*pvalue·)·;\xd |
58 | ·················This·method·fills·*pid·and·*pkey·with·the·key·and·value,·respectively,·of·the·root·element,\xd | 58 | ·················This·method·fills·*pid·and·*pkey·with·the·key·and·value,·respectively,·of·the·root·element,\xd |
59 | ·················an·element·with·minimum·value.·If·size·==·0·then·-1·is·returned.\xd | 59 | ·················an·element·with·minimum·value.·If·size·==·0·then·-1·is·returned.\xd |
60 | ·················Error·checking:·If·heap,·pkey·or·pvalue·is·NULL,·an·error·message·is·printed·and·the·program\xd | 60 | ·················Error·checking:·If·heap,·pkey·or·pvalue·is·NULL,·an·error·message·is·printed·and·the·program\xd |
61 | ·················exits.\xd | 61 | ·················exits.\xd |
62 | ···············3.·void·IIheap_insert·(·IIheap·*heap,·int·key,·int·value·)·;\xd | 62 | ···············3.·void·IIheap_insert·(·IIheap·*heap,·int·key,·int·value·)·;\xd |
63 | ·················This·method·inserts·the·pair·(key,value)·into·the·heap.\xd | 63 | ·················This·method·inserts·the·pair·(key,value)·into·the·heap.\xd |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·IV.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·IV.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1610, 20 lines modified | Offset 1610, 21 lines modified | ||
1610 | end·readonly·def | 1610 | end·readonly·def |
1611 | /Encoding·256·array | 1611 | /Encoding·256·array |
1612 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1612 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1613 | dup·44·/comma·put | 1613 | dup·44·/comma·put |
1614 | dup·48·/zero·put | 1614 | dup·48·/zero·put |
1615 | dup·49·/one·put | 1615 | dup·49·/one·put |
1616 | dup·50·/two·put | 1616 | dup·50·/two·put |
1617 | dup·52·/four·put | ||
1618 | dup·5 | 1617 | dup·53·/five·put |
1618 | dup·56·/eight·put | ||
1619 | dup·58·/colon·put | 1619 | dup·58·/colon·put |
1620 | dup·7 | 1620 | dup·70·/F·put |
1621 | dup·97·/a·put | 1621 | dup·97·/a·put |
1622 | dup·98·/b·put | ||
1622 | dup·1 | 1623 | dup·101·/e·put |
1623 | dup·114·/r·put | 1624 | dup·114·/r·put |
1624 | dup·117·/u·put | 1625 | dup·117·/u·put |
1625 | dup·121·/y·put | 1626 | dup·121·/y·put |
1626 | readonly·def | 1627 | readonly·def |
1627 | currentdict·end | 1628 | currentdict·end |
1628 | currentfile·eexec | 1629 | currentfile·eexec |
1629 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1630 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1807, 89 lines modified | Offset 1808, 93 lines modified | ||
1807 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1808 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1808 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1809 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1809 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1810 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1810 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1811 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1811 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1812 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1812 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1813 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1813 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1814 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1814 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1815 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1815 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1816 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1817 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1818 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1819 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1820 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1821 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1822 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1823 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1824 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1825 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1826 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1827 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1828 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1829 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1830 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1831 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1832 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1833 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1834 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1835 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1836 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1837 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1838 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1839 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1840 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1841 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1842 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1843 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1844 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1845 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1846 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1847 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1848 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1849 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1850 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1851 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1852 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1853 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1854 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1855 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1856 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1857 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1858 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1859 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1860 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1861 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1862 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1863 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1864 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1865 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1866 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1867 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1868 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1869 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1870 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1871 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1872 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1873 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1874 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1875 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1876 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1877 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1878 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1879 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1880 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1881 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1882 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1883 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1884 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1885 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1886 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1887 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1888 | 1816 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1817 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1818 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1819 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1820 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1821 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1822 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 16180/28068 bytes (57.65%) of diff not shown. |
Offset 24, 15 lines modified | Offset 24, 15 lines modified | ||
24 | ····················IV·setMaxsize()·methods)·than·it·is·to·duplicate·code·to·work·on·an·int·vector.\xd | 24 | ····················IV·setMaxsize()·methods)·than·it·is·to·duplicate·code·to·work·on·an·int·vector.\xd |
25 | ···············Onemustchoose·where·to·use·this·object.·There·is·a·substantial·performance·penalty·for·doing·the\xd | 25 | ···············Onemustchoose·where·to·use·this·object.·There·is·a·substantial·performance·penalty·for·doing·the\xd |
26 | ···············simplest·operations,·and·so·when·we·need·to·manipulate·an·int·vector·inside·a·loop,·we·extract\xd | 26 | ···············simplest·operations,·and·so·when·we·need·to·manipulate·an·int·vector·inside·a·loop,·we·extract\xd |
27 | ···············out·the·size·and·pointer·to·the·base·array·from·the·IV·object.·On·the·other·hand,·the·convenience\xd | 27 | ···············out·the·size·and·pointer·to·the·base·array·from·the·IV·object.·On·the·other·hand,·the·convenience\xd |
28 | ···············makes·it·a·widely·used·object.·Originally·its·use·was·restricted·to·reading·and·writing·*.iv{f,b}\xd | 28 | ···············makes·it·a·widely·used·object.·Originally·its·use·was·restricted·to·reading·and·writing·*.iv{f,b}\xd |
29 | ···············files,·but·now·IV·objects·appear·much·more·frequently·in·new·development.\xd | 29 | ···············files,·but·now·IV·objects·appear·much·more·frequently·in·new·development.\xd |
30 | ·····························································1\xd | 30 | ·····························································1\xd |
31 | ··············2·····························IV·:·DRAFT· | 31 | ··············2·····························IV·:·DRAFT·February·18,·2025\xd |
32 | ··············1.1···Data·Structure\xd | 32 | ··············1.1···Data·Structure\xd |
33 | ··············The·IV·structure·has·four·fields.\xd | 33 | ··············The·IV·structure·has·four·fields.\xd |
34 | ·················•·int·size·:·present·size·of·the·vector.\xd | 34 | ·················•·int·size·:·present·size·of·the·vector.\xd |
35 | ·················•·int·maxsize·:·maximum·size·of·the·vector.\xd | 35 | ·················•·int·maxsize·:·maximum·size·of·the·vector.\xd |
36 | ·················•·int·owned·:·owner·flag·for·the·data.·When·owned·=·1,·storage·for·maxsize·int’s·has·been\xd | 36 | ·················•·int·owned·:·owner·flag·for·the·data.·When·owned·=·1,·storage·for·maxsize·int’s·has·been\xd |
37 | ···················allocated·by·this·object·and·can·be·free’d·by·the·object.·When·nowned·=·0·but·maxsize·>\xd | 37 | ···················allocated·by·this·object·and·can·be·free’d·by·the·object.·When·nowned·=·0·but·maxsize·>\xd |
38 | ···················0,·this·object·points·to·entries·that·have·been·allocated·elsewhere,·and·these·entries·will·not\xd | 38 | ···················0,·this·object·points·to·entries·that·have·been·allocated·elsewhere,·and·these·entries·will·not\xd |
Offset 58, 15 lines modified | Offset 58, 15 lines modified | ||
58 | ···················the·storage·for·vec·is·free’d·by·a·call·to·IVfree().·The·structure’s·default·fields·are·then·set\xd | 58 | ···················the·storage·for·vec·is·free’d·by·a·call·to·IVfree().·The·structure’s·default·fields·are·then·set\xd |
59 | ···················with·a·call·to·IV·setDefaultFields().\xd | 59 | ···················with·a·call·to·IV·setDefaultFields().\xd |
60 | ···················Error·checking:·If·iv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 60 | ···················Error·checking:·If·iv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
61 | ················4.·void·IV_free·(·IV·*iv·)·;\xd | 61 | ················4.·void·IV_free·(·IV·*iv·)·;\xd |
62 | ···················This·method·releases·any·storage·by·a·call·to·IV·clearData()·then·free’s·the·storage·for·the\xd | 62 | ···················This·method·releases·any·storage·by·a·call·to·IV·clearData()·then·free’s·the·storage·for·the\xd |
63 | ···················structure·with·a·call·to·free().\xd | 63 | ···················structure·with·a·call·to·free().\xd |
64 | ···················Error·checking:·If·iv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 64 | ···················Error·checking:·If·iv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
65 | ·······································IV·:·DRAFT·· | 65 | ·······································IV·:·DRAFT··February·18,·2025·····················3\xd |
66 | ············1.2.2··Instance·methods\xd | 66 | ············1.2.2··Instance·methods\xd |
67 | ············These·method·allow·access·to·information·in·the·data·fields·without·explicitly·following·pointers.\xd | 67 | ············These·method·allow·access·to·information·in·the·data·fields·without·explicitly·following·pointers.\xd |
68 | ············There·is·overhead·involved·with·these·method·due·to·the·function·call·and·error·checking·inside\xd | 68 | ············There·is·overhead·involved·with·these·method·due·to·the·function·call·and·error·checking·inside\xd |
69 | ············the·methods.\xd | 69 | ············the·methods.\xd |
70 | ···············1.·int·IV_owned·(·IV·*iv·)·;\xd | 70 | ···············1.·int·IV_owned·(·IV·*iv·)·;\xd |
71 | ·················This·method·returns·the·value·of·owned.·If·owned·=·1,·then·the·object·owns·the·data·pointed\xd | 71 | ·················This·method·returns·the·value·of·owned.·If·owned·=·1,·then·the·object·owns·the·data·pointed\xd |
72 | ·················to·by·vec·and·will·free·this·data·with·a·call·to·IVfree()·when·its·data·is·cleared·by·a·call·to\xd | 72 | ·················to·by·vec·and·will·free·this·data·with·a·call·to·IVfree()·when·its·data·is·cleared·by·a·call·to\xd |
Offset 91, 15 lines modified | Offset 91, 15 lines modified | ||
91 | ·················the·vector.\xd | 91 | ·················the·vector.\xd |
92 | ·················Error·checking:·If·iv,·psize·or·pentries·is·NULL·an·error·message·is·printed·and·the·program\xd | 92 | ·················Error·checking:·If·iv,·psize·or·pentries·is·NULL·an·error·message·is·printed·and·the·program\xd |
93 | ·················exits.\xd | 93 | ·················exits.\xd |
94 | ···············7.·void·IV_setEntry·(·IV·*iv,·int·loc,·int·value·)·;\xd | 94 | ···············7.·void·IV_setEntry·(·IV·*iv,·int·loc,·int·value·)·;\xd |
95 | ·················This·method·sets·the·loc’th·entry·of·the·vector·to·value.\xd | 95 | ·················This·method·sets·the·loc’th·entry·of·the·vector·to·value.\xd |
96 | ·················Error·checking:·If·iv,·loc·<·0·or·loc·>=·size,·or·if·vec·is·NULL·an·error·message·is·printed\xd | 96 | ·················Error·checking:·If·iv,·loc·<·0·or·loc·>=·size,·or·if·vec·is·NULL·an·error·message·is·printed\xd |
97 | ·················and·the·program·exits.\xd | 97 | ·················and·the·program·exits.\xd |
98 | ··············4·····························IV·:·DRAFT· | 98 | ··············4·····························IV·:·DRAFT·February·18,·2025\xd |
99 | ··············1.2.3··Initializer·methods\xd | 99 | ··············1.2.3··Initializer·methods\xd |
100 | ················1.·void·IV_init·(·IV·*iv,·int·size,·int·*entries·)·;\xd | 100 | ················1.·void·IV_init·(·IV·*iv,·int·size,·int·*entries·)·;\xd |
101 | ···················This·method·initializes·the·object·given·a·size·for·the·vector·and·a·possible·pointer·to·the\xd | 101 | ···················This·method·initializes·the·object·given·a·size·for·the·vector·and·a·possible·pointer·to·the\xd |
102 | ···················vectors·storage.·Any·previous·data·with·a·call·to·IV·clearData().·If·entries·!=·NULL·then\xd | 102 | ···················vectors·storage.·Any·previous·data·with·a·call·to·IV·clearData().·If·entries·!=·NULL·then\xd |
103 | ···················the·vec·field·is·set·to·entries,·the·size·and·maxsize·fields·are·set·to·size·,·and·owned·is\xd | 103 | ···················the·vec·field·is·set·to·entries,·the·size·and·maxsize·fields·are·set·to·size·,·and·owned·is\xd |
104 | ···················set·to·zero·because·the·object·does·not·own·the·entries.·If·entries·is·NULL·and·if·size·>·0\xd | 104 | ···················set·to·zero·because·the·object·does·not·own·the·entries.·If·entries·is·NULL·and·if·size·>·0\xd |
105 | ···················then·a·vector·is·allocated·by·the·object,·and·the·object·owns·this·storage.\xd | 105 | ···················then·a·vector·is·allocated·by·the·object,·and·the·object·owns·this·storage.\xd |
Offset 128, 15 lines modified | Offset 128, 15 lines modified | ||
128 | ···················Error·checking:·If·iv·is·NULL·or·newsize·<·0,·or·if·0·<·maxsize·<·newsize·and·owned·==\xd | 128 | ···················Error·checking:·If·iv·is·NULL·or·newsize·<·0,·or·if·0·<·maxsize·<·newsize·and·owned·==\xd |
129 | ···················0,·an·error·message·is·printed·and·the·program·exits.\xd | 129 | ···················0,·an·error·message·is·printed·and·the·program·exits.\xd |
130 | ··············1.2.4··Utility·methods\xd | 130 | ··············1.2.4··Utility·methods\xd |
131 | ················1.·void·IV_shiftBase·(·IV·*iv,·int·offset·)·;\xd | 131 | ················1.·void·IV_shiftBase·(·IV·*iv,·int·offset·)·;\xd |
132 | ···················This·method·shifts·the·base·entries·of·the·vector·and·decrements·the·present·size·and·max-\xd | 132 | ···················This·method·shifts·the·base·entries·of·the·vector·and·decrements·the·present·size·and·max-\xd |
133 | ···················imum·size·of·the·vector·by·offset.·This·is·a·dangerous·method·to·use·because·the·state·of\xd | 133 | ···················imum·size·of·the·vector·by·offset.·This·is·a·dangerous·method·to·use·because·the·state·of\xd |
134 | ···················the·vector·is·lost,·namely·vec,·the·base·of·the·entries,·is·corrupted.·If·the·object·owns·its\xd | 134 | ···················the·vector·is·lost,·namely·vec,·the·base·of·the·entries,·is·corrupted.·If·the·object·owns·its\xd |
135 | ·······································IV·:·DRAFT·· | 135 | ·······································IV·:·DRAFT··February·18,·2025·····················5\xd |
136 | ·················entries·and·IV·free(),·IV·setSize()·or·IV·setMaxsize()·is·called·before·the·base·has·been\xd | 136 | ·················entries·and·IV·free(),·IV·setSize()·or·IV·setMaxsize()·is·called·before·the·base·has·been\xd |
137 | ·················shifted·back·to·its·original·position,·a·segmentation·violation·will·likely·result.·This·is·a·very\xd | 137 | ·················shifted·back·to·its·original·position,·a·segmentation·violation·will·likely·result.·This·is·a·very\xd |
138 | ·················useful·method,·but·use·with·caution.\xd | 138 | ·················useful·method,·but·use·with·caution.\xd |
139 | ·················Error·checking:·If·iv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 139 | ·················Error·checking:·If·iv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
140 | ···············2.·void·IV_push·(·IV·*iv,·int·val·)·;\xd | 140 | ···············2.·void·IV_push·(·IV·*iv,·int·val·)·;\xd |
141 | ·················This·method·pushes·an·entry·onto·the·vector.·If·the·vector·is·full,·i.e.,·if·size·=·maxsize\xd | 141 | ·················This·method·pushes·an·entry·onto·the·vector.·If·the·vector·is·full,·i.e.,·if·size·=·maxsize\xd |
142 | ·················-·1,·then·the·size·of·the·vector·is·doubled·if·possible.·If·the·storage·cannot·grow,·i.e.,·if·the\xd | 142 | ·················-·1,·then·the·size·of·the·vector·is·doubled·if·possible.·If·the·storage·cannot·grow,·i.e.,·if·the\xd |
Offset 164, 15 lines modified | Offset 164, 15 lines modified | ||
164 | ·················the·program·exits.\xd | 164 | ·················the·program·exits.\xd |
165 | ···············7.·int·IV_sizeOf·(·IV·*iv·)·;\xd | 165 | ···············7.·int·IV_sizeOf·(·IV·*iv·)·;\xd |
166 | ·················This·method·returns·the·number·of·bytes·taken·by·the·object.\xd | 166 | ·················This·method·returns·the·number·of·bytes·taken·by·the·object.\xd |
167 | ·················Error·checking:·If·iv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd | 167 | ·················Error·checking:·If·iv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd |
168 | ···············8.·void·IV_filterKeep·(·IV·*iv,·int·tags[],·int·keepTag·)·;\xd | 168 | ···············8.·void·IV_filterKeep·(·IV·*iv,·int·tags[],·int·keepTag·)·;\xd |
169 | ·················This·method·examines·the·entries·in·the·vector.·Let·k·be·entry·i·in·the·vector.·If·tags[k]·!=\xd | 169 | ·················This·method·examines·the·entries·in·the·vector.·Let·k·be·entry·i·in·the·vector.·If·tags[k]·!=\xd |
170 | ·················keepTag,·the·entry·is·moved·to·the·end·of·the·vector,·otherwise·it·is·moved·to·the·beginning\xd | 170 | ·················keepTag,·the·entry·is·moved·to·the·end·of·the·vector,·otherwise·it·is·moved·to·the·beginning\xd |
171 | ·······6···············IV·:·DRAFT· | 171 | ·······6···············IV·:·DRAFT·February·18,·2025\xd |
172 | ··········of·the·vector.·The·size·of·the·vector·is·reset·to·be·the·number·of·tagged·entries·that·are·now\xd | 172 | ··········of·the·vector.·The·size·of·the·vector·is·reset·to·be·the·number·of·tagged·entries·that·are·now\xd |
173 | ··········in·the·leading·locations.\xd | 173 | ··········in·the·leading·locations.\xd |
174 | ··········Error·checking:·If·iv·of·tags·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd | 174 | ··········Error·checking:·If·iv·of·tags·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd |
175 | ········9.·void·IV_filterPurge·(·IV·*iv,·int·tags[],·int·purgeTag·)·;\xd | 175 | ········9.·void·IV_filterPurge·(·IV·*iv,·int·tags[],·int·purgeTag·)·;\xd |
176 | ··········This·method·examines·the·entries·in·the·vector.·Let·k·be·entry·i·in·the·vector.·If·tags[k]·==\xd | 176 | ··········This·method·examines·the·entries·in·the·vector.·Let·k·be·entry·i·in·the·vector.·If·tags[k]·==\xd |
177 | ··········purgeTag,·the·entry·is·moved·to·the·end·of·the·vector,·otherwise·it·is·moved·to·the·beginning\xd | 177 | ··········purgeTag,·the·entry·is·moved·to·the·end·of·the·vector,·otherwise·it·is·moved·to·the·beginning\xd |
178 | ··········of·the·vector.·The·size·of·the·vector·is·reset·to·be·the·number·of·untagged·entries·that·are\xd | 178 | ··········of·the·vector.·The·size·of·the·vector·is·reset·to·be·the·number·of·untagged·entries·that·are\xd |
Offset 201, 15 lines modified | Offset 201, 15 lines modified | ||
201 | ··········Error·checking:·If·iv·is·NULL·or·if·loc·is·out·of·range,·an·error·message·is·printed·and·the\xd | 201 | ··········Error·checking:·If·iv·is·NULL·or·if·loc·is·out·of·range,·an·error·message·is·printed·and·the\xd |
202 | ··········program·exits.\xd | 202 | ··········program·exits.\xd |
203 | ········14.·int·IV_decrement·(·IV·*iv,·int·loc·)·;\xd | 203 | ········14.·int·IV_decrement·(·IV·*iv,·int·loc·)·;\xd |
204 | ··········This·method·decrements·the·loc’th·location·of·the·iv·object·by·one·and·returns·the·new\xd | 204 | ··········This·method·decrements·the·loc’th·location·of·the·iv·object·by·one·and·returns·the·new\xd |
205 | ··········value.\xd | 205 | ··········value.\xd |
206 | ··········Error·checking:·If·iv·is·NULL·or·if·loc·is·out·of·range,·an·error·message·is·printed·and·the\xd | 206 | ··········Error·checking:·If·iv·is·NULL·or·if·loc·is·out·of·range,·an·error·message·is·printed·and·the\xd |
207 | ··········program·exits.\xd | 207 | ··········program·exits.\xd |
208 | ·······································IV·:·DRAFT·· | 208 | ·······································IV·:·DRAFT··February·18,·2025·····················7\xd |
209 | ··············15.·int·IV_findValue·(·IV·*iv,·int·value·)·;\xd | 209 | ··············15.·int·IV_findValue·(·IV·*iv,·int·value·)·;\xd |
210 | ·················This·method·looks·for·value·in·its·entries.·If·value·is·present,·the·first·location·is·returned,\xd | 210 | ·················This·method·looks·for·value·in·its·entries.·If·value·is·present,·the·first·location·is·returned,\xd |
211 | ·················otherwise·-1·is·returned.·The·cost·is·linear·in·the·number·of·entries.\xd | 211 | ·················otherwise·-1·is·returned.·The·cost·is·linear·in·the·number·of·entries.\xd |
212 | ·················Error·checking:·If·iv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 212 | ·················Error·checking:·If·iv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
213 | ··············16.·int·IV_findValueAscending·(·IV·*iv,·int·value·)·;\xd | 213 | ··············16.·int·IV_findValueAscending·(·IV·*iv,·int·value·)·;\xd |
214 | ·················Thismethodlooksforvalueinitsentries.·Ifvalueispresent,·alocation·isreturned,·otherwise\xd | 214 | ·················Thismethodlooksforvalueinitsentries.·Ifvalueispresent,·alocation·isreturned,·otherwise\xd |
215 | ·················-1·is·returned.·This·method·assumes·that·the·entries·are·sorted·in·ascending·order.·The·cost\xd | 215 | ·················-1·is·returned.·This·method·assumes·that·the·entries·are·sorted·in·ascending·order.·The·cost\xd |
Offset 238, 15 lines modified | Offset 238, 15 lines modified | ||
238 | ············is·size,·followed·by·the·size·entries·found·in·vec[].\xd | 238 | ············is·size,·followed·by·the·size·entries·found·in·vec[].\xd |
239 | ···············1.·int·IV_readFromFile·(·IV·*iv,·char·*fn·)·;\xd | 239 | ···············1.·int·IV_readFromFile·(·IV·*iv,·char·*fn·)·;\xd |
240 | ·················This·method·reads·an·IV·object·from·a·formatted·file.·It·tries·to·open·the·file·and·if·it·is\xd | 240 | ·················This·method·reads·an·IV·object·from·a·formatted·file.·It·tries·to·open·the·file·and·if·it·is\xd |
241 | ·················successful,·it·then·calls·IV·readFromFormattedFile()·or·IV·readFromBinaryFile(),·closes\xd | 241 | ·················successful,·it·then·calls·IV·readFromFormattedFile()·or·IV·readFromBinaryFile(),·closes\xd |
242 | ·················the·file·and·returns·the·value·returned·from·the·called·routine.\xd | 242 | ·················the·file·and·returns·the·value·returned·from·the·called·routine.\xd |
243 | ·················Error·checking:·If·iv·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.ivf·(for·a·formatted·file)\xd | 243 | ·················Error·checking:·If·iv·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.ivf·(for·a·formatted·file)\xd |
244 | ·················or·*.ivb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd | 244 | ·················or·*.ivb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd |
245 | ·······8···············IV·:·DRAFT· | 245 | ·······8···············IV·:·DRAFT·February·18,·2025\xd |
246 | ········2.·int·IV_readFromFormattedFile·(·IV·*iv,·FILE·*fp·)·;\xd | 246 | ········2.·int·IV_readFromFormattedFile·(·IV·*iv,·FILE·*fp·)·;\xd |
247 | ··········This·method·reads·in·an·IV·object·from·a·formatted·file.·If·there·are·no·errors·in·reading·the\xd | 247 | ··········This·method·reads·in·an·IV·object·from·a·formatted·file.·If·there·are·no·errors·in·reading·the\xd |
248 | ··········data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd | 248 | ··········data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd |
249 | ··········Error·checking:·If·iv·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 249 | ··········Error·checking:·If·iv·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
250 | ········3.·int·IV_readFromBinaryFile·(·IV·*iv,·FILE·*fp·)·;\xd | 250 | ········3.·int·IV_readFromBinaryFile·(·IV·*iv,·FILE·*fp·)·;\xd |
251 | ··········This·method·reads·in·an·IV·object·from·a·binary·file.·If·there·are·no·errors·in·reading·the\xd | 251 | ··········This·method·reads·in·an·IV·object·from·a·binary·file.·If·there·are·no·errors·in·reading·the\xd |
252 | ··········data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd | 252 | ··········data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd |
Offset 274, 15 lines modified | Offset 274, 15 lines modified | ||
274 | ··········This·method·writes·the·header·and·statistics·to·a·file.·The·value·1·is·returned.\xd | 274 | ··········This·method·writes·the·header·and·statistics·to·a·file.·The·value·1·is·returned.\xd |
275 | ··········Error·checking:·If·iv·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 275 | ··········Error·checking:·If·iv·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
276 | ········9.·int·IV_fp80·(·IV·*iv,·FILE·*fp,·int·column,·int·*pierr·)·;\xd | 276 | ········9.·int·IV_fp80·(·IV·*iv,·FILE·*fp,·int·column,·int·*pierr·)·;\xd |
277 | ··········This·method·is·just·a·wrapper·around·the·IVfp80()·method·for·an·int·method.·The·entries\xd | 277 | ··········This·method·is·just·a·wrapper·around·the·IVfp80()·method·for·an·int·method.·The·entries\xd |
278 | ··········in·the·vector·are·found·on·lines·with·eighty·columns·and·are·separated·by·a·whitespace.·The\xd | 278 | ··········in·the·vector·are·found·on·lines·with·eighty·columns·and·are·separated·by·a·whitespace.·The\xd |
279 | ··········value·1·is·returned.\xd | 279 | ··········value·1·is·returned.\xd |
280 | ··········Error·checking:·If·iv·or·fp·or·pierr·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 280 | ··········Error·checking:·If·iv·or·fp·or·pierr·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
281 | ·······································IV·:·DRAFT·· | 281 | ·······································IV·:·DRAFT··February·18,·2025·····················9\xd |
282 | ··············10.·int·IV_writeForMatlab·(·IV·*iv,·char·*name,·FILE·*fp·)·;\xd | 282 | ··············10.·int·IV_writeForMatlab·(·IV·*iv,·char·*name,·FILE·*fp·)·;\xd |
283 | ·················This·method·writes·the·entries·of·the·vector·to·a·file·suitable·to·be·read·by·Matlab.·The\xd | 283 | ·················This·method·writes·the·entries·of·the·vector·to·a·file·suitable·to·be·read·by·Matlab.·The\xd |
284 | ·················character·string·name·is·the·name·of·the·vector,·e.g,·if·name·=·"A",·then·we·have·lines·of·the\xd | 284 | ·················character·string·name·is·the·name·of·the·vector,·e.g,·if·name·=·"A",·then·we·have·lines·of·the\xd |
285 | ·················form\xd | 285 | ·················form\xd |
286 | ·················A(1)·=·32·;\xd | 286 | ·················A(1)·=·32·;\xd |
287 | ·················A(2)·=·-433·;\xd | 287 | ·················A(2)·=·-433·;\xd |
288 | ·················...\xd | 288 | ·················...\xd |
Max diff block lines reached; -1/10861 bytes (-0.01%) of diff not shown. |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·IVL.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·IVL.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1857, 20 lines modified | Offset 1857, 21 lines modified | ||
1857 | end·readonly·def | 1857 | end·readonly·def |
1858 | /Encoding·256·array | 1858 | /Encoding·256·array |
1859 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1859 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1860 | dup·44·/comma·put | 1860 | dup·44·/comma·put |
1861 | dup·48·/zero·put | 1861 | dup·48·/zero·put |
1862 | dup·49·/one·put | 1862 | dup·49·/one·put |
1863 | dup·50·/two·put | 1863 | dup·50·/two·put |
1864 | dup·52·/four·put | ||
1865 | dup·5 | 1864 | dup·53·/five·put |
1865 | dup·56·/eight·put | ||
1866 | dup·58·/colon·put | 1866 | dup·58·/colon·put |
1867 | dup·7 | 1867 | dup·70·/F·put |
1868 | dup·97·/a·put | 1868 | dup·97·/a·put |
1869 | dup·98·/b·put | ||
1869 | dup·1 | 1870 | dup·101·/e·put |
1870 | dup·114·/r·put | 1871 | dup·114·/r·put |
1871 | dup·117·/u·put | 1872 | dup·117·/u·put |
1872 | dup·121·/y·put | 1873 | dup·121·/y·put |
1873 | readonly·def | 1874 | readonly·def |
1874 | currentdict·end | 1875 | currentdict·end |
1875 | currentfile·eexec | 1876 | currentfile·eexec |
1876 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1877 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2054, 89 lines modified | Offset 2055, 93 lines modified | ||
2054 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2055 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2055 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2056 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2056 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2057 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2057 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2058 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2058 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2059 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2059 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2060 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2060 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2061 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2061 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2062 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2062 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2063 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2064 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2065 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2066 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2067 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2068 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2069 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2070 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2071 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2072 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2073 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2074 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2075 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2076 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2077 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2078 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2079 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2080 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2081 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2082 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2083 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2084 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2085 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2086 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2087 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2088 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2089 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2090 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2091 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2092 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2093 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2094 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2095 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2096 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2097 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2098 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2099 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2100 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2101 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2102 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2103 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2104 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2105 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2106 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2107 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2108 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2109 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2110 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2111 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2112 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2113 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2114 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2115 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2116 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2117 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2118 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2119 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2120 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2121 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2122 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2123 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2124 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2125 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2126 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2127 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2128 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2129 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2130 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2131 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2132 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2133 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2134 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2135 | 2063 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2064 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2065 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2066 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2067 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2068 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2069 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 18910/30799 bytes (61.40%) of diff not shown. |
Offset 22, 15 lines modified | Offset 22, 15 lines modified | ||
22 | ···················Each·list·is·allocated·separately·using·the·IVinit()·function.·When·the·IVL·object·is\xd | 22 | ···················Each·list·is·allocated·separately·using·the·IVinit()·function.·When·the·IVL·object·is\xd |
23 | ···················free’d,·each·list·is·free’d·separately·using·the·IVfree()·function.\xd | 23 | ···················free’d,·each·list·is·free’d·separately·using·the·IVfree()·function.\xd |
24 | ·················–·IVL·UNKNOWN\xd | 24 | ·················–·IVL·UNKNOWN\xd |
25 | ···················This·storage·mode·is·available·for·the·cases·where·storage·for·a·list·is·aliased·to·another\xd | 25 | ···················This·storage·mode·is·available·for·the·cases·where·storage·for·a·list·is·aliased·to·another\xd |
26 | ···················location.·Absolutely·no·free’ing·of·data·is·done·when·the·IVL·object·is·free’d.\xd | 26 | ···················location.·Absolutely·no·free’ing·of·data·is·done·when·the·IVL·object·is·free’d.\xd |
27 | ···············The·storage·management·is·handled·by·IVL·setList()·and·IVL·setPointerToList().\xd | 27 | ···············The·storage·management·is·handled·by·IVL·setList()·and·IVL·setPointerToList().\xd |
28 | ·············································1\xd | 28 | ·············································1\xd |
29 | ··············2···························· | 29 | ··············2····························IVL·:·DRAFT·February·18,·2025\xd |
30 | ·················•·int·maxnlist·:·maximum·number·of·lists.\xd | 30 | ·················•·int·maxnlist·:·maximum·number·of·lists.\xd |
31 | ···················int·nlist·:·number·of·lists.\xd | 31 | ···················int·nlist·:·number·of·lists.\xd |
32 | ···················We·may·not·know·how·many·lists·we·will·need·for·the·object·—·maxnlist·is·the·dimension\xd | 32 | ···················We·may·not·know·how·many·lists·we·will·need·for·the·object·—·maxnlist·is·the·dimension\xd |
33 | ···················of·the·sizes[]·and·p·vec[]·arrays·and·nlist·is·the·present·number·of·active·lists.·When\xd | 33 | ···················of·the·sizes[]·and·p·vec[]·arrays·and·nlist·is·the·present·number·of·active·lists.·When\xd |
34 | ···················we·initialize·the·object·using·one·of·the·IVL·init{1,2,3}()·methods,·we·set·nlist·equal·to\xd | 34 | ···················we·initialize·the·object·using·one·of·the·IVL·init{1,2,3}()·methods,·we·set·nlist·equal·to\xd |
35 | ···················maxnlist.·We·resize·the·object·using·IVL·setMaxnlist().\xd | 35 | ···················maxnlist.·We·resize·the·object·using·IVL·setMaxnlist().\xd |
36 | ·················•·int·tsize·:·total·number·of·list·entries.\xd | 36 | ·················•·int·tsize·:·total·number·of·list·entries.\xd |
Offset 57, 15 lines modified | Offset 57, 15 lines modified | ||
57 | ················1.·IVL·*·IVL_new·(·void·)·;\xd | 57 | ················1.·IVL·*·IVL_new·(·void·)·;\xd |
58 | ···················This·method·simply·allocates·storage·for·the·IVL·structure·and·then·sets·the·default·fields·by\xd | 58 | ···················This·method·simply·allocates·storage·for·the·IVL·structure·and·then·sets·the·default·fields·by\xd |
59 | ···················a·call·to·IVL·setDefaultFields().\xd | 59 | ···················a·call·to·IVL·setDefaultFields().\xd |
60 | ················2.·void·IVL_setDefaultFields·(·IVL·*ivl·)·;\xd | 60 | ················2.·void·IVL_setDefaultFields·(·IVL·*ivl·)·;\xd |
61 | ···················This·method·sets·the·default·fields·of·the·object·—·type·=·IVL·NOTYPE,·maxnlist,·nlist\xd | 61 | ···················This·method·sets·the·default·fields·of·the·object·—·type·=·IVL·NOTYPE,·maxnlist,·nlist\xd |
62 | ···················and·tsize·are·zero,·incr·is·1024,·and·sizes,·p·vec·and·chunk·are·NULL.\xd | 62 | ···················and·tsize·are·zero,·incr·is·1024,·and·sizes,·p·vec·and·chunk·are·NULL.\xd |
63 | ···················Error·checking:·If·ivl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 63 | ···················Error·checking:·If·ivl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
64 | ·······································IVL·:·DRAFT·· | 64 | ·······································IVL·:·DRAFT··February·18,·2025····················3\xd |
65 | ···············3.·void·IVL_clearData·(·IVL·*ivl·)·;\xd | 65 | ···············3.·void·IVL_clearData·(·IVL·*ivl·)·;\xd |
66 | ·················This·method·clears·any·data·allocated·by·this·object·and·then·sets·the·default·fields·with·a\xd | 66 | ·················This·method·clears·any·data·allocated·by·this·object·and·then·sets·the·default·fields·with·a\xd |
67 | ·················call·to·IVL·setDefaultFields().·Any·storage·held·by·the·Ichunk·structures·is·free’d,·and\xd | 67 | ·················call·to·IVL·setDefaultFields().·Any·storage·held·by·the·Ichunk·structures·is·free’d,·and\xd |
68 | ·················if·sizes·or·p·vec·are·not·NULL,·they·are·free’d.\xd | 68 | ·················if·sizes·or·p·vec·are·not·NULL,·they·are·free’d.\xd |
69 | ·················Error·checking:·If·ivl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 69 | ·················Error·checking:·If·ivl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
70 | ···············4.·void·IVL_free·(·IVL·*ivl·)·;\xd | 70 | ···············4.·void·IVL_free·(·IVL·*ivl·)·;\xd |
71 | ·················This·method·releases·any·storage·by·a·call·to·IVL·clearData()·then·free’s·the·storage·for\xd | 71 | ·················This·method·releases·any·storage·by·a·call·to·IVL·clearData()·then·free’s·the·storage·for\xd |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | ···············5.·int·IVL_incr·(·IVL·*ivl·)·;\xd | 87 | ···············5.·int·IVL_incr·(·IVL·*ivl·)·;\xd |
88 | ·················This·method·returns·incr,·the·storage·increment.\xd | 88 | ·················This·method·returns·incr,·the·storage·increment.\xd |
89 | ·················Error·checking:·If·ivl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 89 | ·················Error·checking:·If·ivl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
90 | ···············6.·int·IVL_setincr·(·IVL·*ivl,·int·incr·)·;\xd | 90 | ···············6.·int·IVL_setincr·(·IVL·*ivl,·int·incr·)·;\xd |
91 | ·················This·method·sets·the·storage·increment·to·incr.\xd | 91 | ·················This·method·sets·the·storage·increment·to·incr.\xd |
92 | ·················Error·checking:·If·ivl·is·NULL·or·incr·is·negative,·an·error·message·is·printed·and·the·program\xd | 92 | ·················Error·checking:·If·ivl·is·NULL·or·incr·is·negative,·an·error·message·is·printed·and·the·program\xd |
93 | ·················exits.\xd | 93 | ·················exits.\xd |
94 | ··············4···························· | 94 | ··············4····························IVL·:·DRAFT·February·18,·2025\xd |
95 | ··············1.2.3··Initialization·and·resizing·methods\xd | 95 | ··············1.2.3··Initialization·and·resizing·methods\xd |
96 | ················1.·void·IVL_init1·(·IVL·*ivl,·int·type,·int·maxnlist·)·;\xd | 96 | ················1.·void·IVL_init1·(·IVL·*ivl,·int·type,·int·maxnlist·)·;\xd |
97 | ···················This·method·is·used·when·only·the·number·of·lists·is·known.·Any·previous·data·is·cleared\xd | 97 | ···················This·method·is·used·when·only·the·number·of·lists·is·known.·Any·previous·data·is·cleared\xd |
98 | ···················with·a·call·to·IVL·clearData().·The·type·field·is·set.·If·maxnlist·>·0,·storage·is·allocated\xd | 98 | ···················with·a·call·to·IVL·clearData().·The·type·field·is·set.·If·maxnlist·>·0,·storage·is·allocated\xd |
99 | ···················for·the·sizes[]·and·p·vec[]·arrays·and·nlist·is·set·to·maxnlist.\xd | 99 | ···················for·the·sizes[]·and·p·vec[]·arrays·and·nlist·is·set·to·maxnlist.\xd |
100 | ···················Error·checking:·If·ivl·is·NULL·or·type·is·invalid·or·maxnlist·is·negative,·an·error·message·is\xd | 100 | ···················Error·checking:·If·ivl·is·NULL·or·type·is·invalid·or·maxnlist·is·negative,·an·error·message·is\xd |
101 | ···················printed·and·the·program·exits.\xd | 101 | ···················printed·and·the·program·exits.\xd |
Offset 124, 15 lines modified | Offset 124, 15 lines modified | ||
124 | ···················newmaxnlist·==·maxnlist,nothingisdone.·Otherwise,newstorageforsizes[]andp·vec[]\xd | 124 | ···················newmaxnlist·==·maxnlist,nothingisdone.·Otherwise,newstorageforsizes[]andp·vec[]\xd |
125 | ···················is·allocated,·the·information·for·the·first·nlist·lists·is·copied·over,·and·the·old·storage\xd | 125 | ···················is·allocated,·the·information·for·the·first·nlist·lists·is·copied·over,·and·the·old·storage\xd |
126 | ···················free’d.·Note,·maxnlist·is·set·to·newmaxnlist·and·nlist·is·set·to·the·minimum·of·nlist·and\xd | 126 | ···················free’d.·Note,·maxnlist·is·set·to·newmaxnlist·and·nlist·is·set·to·the·minimum·of·nlist·and\xd |
127 | ···················newmaxnlist.\xd | 127 | ···················newmaxnlist.\xd |
128 | ···················Error·checking:·If·ivl·is·NULL·or·if·newmaxnlist·is·negative,·an·error·message·is·printed·and\xd | 128 | ···················Error·checking:·If·ivl·is·NULL·or·if·newmaxnlist·is·negative,·an·error·message·is·printed·and\xd |
129 | ···················the·program·exits.\xd | 129 | ···················the·program·exits.\xd |
130 | ················6.·void·IVL_setNlist·(·IVL·*ivl,·int·newnlist·)·;\xd | 130 | ················6.·void·IVL_setNlist·(·IVL·*ivl,·int·newnlist·)·;\xd |
131 | ·······································IVL·:·DRAFT·· | 131 | ·······································IVL·:·DRAFT··February·18,·2025····················5\xd |
132 | ·················This·method·is·used·to·change·the·number·of·lists.·If·newnlist·>·maxnlist,·storage·for\xd | 132 | ·················This·method·is·used·to·change·the·number·of·lists.·If·newnlist·>·maxnlist,·storage·for\xd |
133 | ·················the·lists·is·increased·via·a·call·to·the·IVL·setMaxnlist()·method.·Then·nlist·is·set·to\xd | 133 | ·················the·lists·is·increased·via·a·call·to·the·IVL·setMaxnlist()·method.·Then·nlist·is·set·to\xd |
134 | ·················newnlist.\xd | 134 | ·················newnlist.\xd |
135 | ·················Error·checking:·If·ivl·is·NULL,·or·if·newnlist·is·negative,·an·error·message·is·printed·and\xd | 135 | ·················Error·checking:·If·ivl·is·NULL,·or·if·newnlist·is·negative,·an·error·message·is·printed·and\xd |
136 | ·················the·program·exits.\xd | 136 | ·················the·program·exits.\xd |
137 | ············1.2.4··List·manipulation·methods\xd | 137 | ············1.2.4··List·manipulation·methods\xd |
138 | ···············1.·void·IVL_listAndSize·(·IVL·*ivl,·int·ilist,·int·*psize,·int·**pivec)·;\xd | 138 | ···············1.·void·IVL_listAndSize·(·IVL·*ivl,·int·ilist,·int·*psize,·int·**pivec)·;\xd |
Offset 151, 15 lines modified | Offset 151, 15 lines modified | ||
151 | ·················if·so·an·error·message·is·printed·and·the·program·exits.·In·method·IVL·firstInList(),·if\xd | 151 | ·················if·so·an·error·message·is·printed·and·the·program·exits.·In·method·IVL·firstInList(),·if\xd |
152 | ·················sizes[ilist]·>·0·and·p·vec[ilist]·=·NULL,·an·error·message·is·printed·and·the·program\xd | 152 | ·················sizes[ilist]·>·0·and·p·vec[ilist]·=·NULL,·an·error·message·is·printed·and·the·program\xd |
153 | ·················exits.·In·method·IVL·nextInList(),·if·pi·is·not·in·the·valid·range·for·list·ilist,·an·error\xd | 153 | ·················exits.·In·method·IVL·nextInList(),·if·pi·is·not·in·the·valid·range·for·list·ilist,·an·error\xd |
154 | ·················message·is·printed·and·the·program·exits.\xd | 154 | ·················message·is·printed·and·the·program·exits.\xd |
155 | ···············3.·void·IVL_setList·(·IVL·*ivl,·int·ilist,·int·isize,·int·ivec[]·)·;\xd | 155 | ···············3.·void·IVL_setList·(·IVL·*ivl,·int·ilist,·int·isize,·int·ivec[]·)·;\xd |
156 | ·················This·method·sets·the·size·and·(possibly)·pointer·to·a·list·of·entries.·The·behavior·of·the\xd | 156 | ·················This·method·sets·the·size·and·(possibly)·pointer·to·a·list·of·entries.·The·behavior·of·the\xd |
157 | ·················method·depends·on·the·type·of·the·ivl·object.·Here·is·the·flow·chart:\xd | 157 | ·················method·depends·on·the·type·of·the·ivl·object.·Here·is·the·flow·chart:\xd |
158 | ··············6···························· | 158 | ··············6····························IVL·:·DRAFT·February·18,·2025\xd |
159 | ····························if·ilist·>=·maxnlist·then\xd | 159 | ····························if·ilist·>=·maxnlist·then\xd |
160 | ·································the·number·of·lists·is·increased·via·a·call·to·IVL·setMaxnlist()\xd | 160 | ·································the·number·of·lists·is·increased·via·a·call·to·IVL·setMaxnlist()\xd |
161 | ····························endif\xd | 161 | ····························endif\xd |
162 | ····························if·ilist·>=·nlist·then\xd | 162 | ····························if·ilist·>=·nlist·then\xd |
163 | ·································nlist·is·increased\xd | 163 | ·································nlist·is·increased\xd |
164 | ····························endif\xd | 164 | ····························endif\xd |
165 | ····························if·isize·=·0·then\xd | 165 | ····························if·isize·=·0·then\xd |
Offset 189, 15 lines modified | Offset 189, 15 lines modified | ||
189 | ···················Error·checking:·If·ivl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 189 | ···················Error·checking:·If·ivl·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
190 | ················2.·int·IVL_min·(·IVL·*ivl·)·;\xd | 190 | ················2.·int·IVL_min·(·IVL·*ivl·)·;\xd |
191 | ···················int·IVL_max·(·IVL·*ivl·)·;\xd | 191 | ···················int·IVL_max·(·IVL·*ivl·)·;\xd |
192 | ···················int·IVL_maxListSize·(·IVL·*ivl·)·;\xd | 192 | ···················int·IVL_maxListSize·(·IVL·*ivl·)·;\xd |
193 | ···················int·IVL_sum·(·IVL·*ivl·)·;\xd | 193 | ···················int·IVL_sum·(·IVL·*ivl·)·;\xd |
194 | ···················These·methods·return·some·simple·information·about·the·object.\xd | 194 | ···················These·methods·return·some·simple·information·about·the·object.\xd |
195 | ···················Error·checking:·If·ivl·is·NULL·then·an·error·message·is·printed·and·the·program·exits.\xd | 195 | ···················Error·checking:·If·ivl·is·NULL·then·an·error·message·is·printed·and·the·program·exits.\xd |
196 | ·······································IVL·:·DRAFT·· | 196 | ·······································IVL·:·DRAFT··February·18,·2025····················7\xd |
197 | ···············3.·int·IVL_sortUp·(·IVL·*ivl·)·;\xd | 197 | ···············3.·int·IVL_sortUp·(·IVL·*ivl·)·;\xd |
198 | ·················This·method·sorts·each·list·into·ascending·order.\xd | 198 | ·················This·method·sorts·each·list·into·ascending·order.\xd |
199 | ·················Error·checking:·If·ivl·is·NULL·or·nlist·<·0·then·an·error·message·is·printed·and·the·program\xd | 199 | ·················Error·checking:·If·ivl·is·NULL·or·nlist·<·0·then·an·error·message·is·printed·and·the·program\xd |
200 | ·················exits.\xd | 200 | ·················exits.\xd |
201 | ···············4.·int·*·IVL_equivMap1·(·IVL·*ivl·)·;\xd | 201 | ···············4.·int·*·IVL_equivMap1·(·IVL·*ivl·)·;\xd |
202 | ·················IV·*·IVL_equivMap2·(·IVL·*ivl·)·;\xd | 202 | ·················IV·*·IVL_equivMap2·(·IVL·*ivl·)·;\xd |
203 | ·················Two·lists·are·equivalent·if·their·contents·are·identical.·These·methods·are·used·to·find·the\xd | 203 | ·················Two·lists·are·equivalent·if·their·contents·are·identical.·These·methods·are·used·to·find·the\xd |
Offset 226, 15 lines modified | Offset 226, 15 lines modified | ||
226 | ·················and·the·program·exits.\xd | 226 | ·················and·the·program·exits.\xd |
227 | ···············8.·IVL·*·IVL_expand·(·IVL·*ivl,·IV·*eqmapIV·)·;\xd | 227 | ···············8.·IVL·*·IVL_expand·(·IVL·*ivl,·IV·*eqmapIV·)·;\xd |
228 | ·················This·method·was·created·in·support·of·a·symbolic·factorization.·An·IVL·object·is·constructed\xd | 228 | ·················This·method·was·created·in·support·of·a·symbolic·factorization.·An·IVL·object·is·constructed\xd |
229 | ·················using·a·compressed·graph.·it·must·be·expanded·to·reflect·the·compressed·graph.·The·number\xd | 229 | ·················using·a·compressed·graph.·it·must·be·expanded·to·reflect·the·compressed·graph.·The·number\xd |
230 | ·················of·lists·does·not·change·(there·is·one·list·per·front)·but·the·size·of·each·list·may·change.·so\xd | 230 | ·················of·lists·does·not·change·(there·is·one·list·per·front)·but·the·size·of·each·list·may·change.·so\xd |
231 | ·················we·create·and·return·a·new·IVL·object·that·contains·entries·for·the·uncompressed·graph.\xd | 231 | ·················we·create·and·return·a·new·IVL·object·that·contains·entries·for·the·uncompressed·graph.\xd |
232 | ·················Error·checking:·If·ivl·or·eqmapIV·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 232 | ·················Error·checking:·If·ivl·or·eqmapIV·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
233 | ··············8···························· | 233 | ··············8····························IVL·:·DRAFT·February·18,·2025\xd |
234 | ··············1.2.6··Miscellaneous·methods\xd | 234 | ··············1.2.6··Miscellaneous·methods\xd |
235 | ················1.·IVL·*·IVL_make9P·(·int·n1,·int·n2,·int·ncomp·)·;\xd | 235 | ················1.·IVL·*·IVL_make9P·(·int·n1,·int·n2,·int·ncomp·)·;\xd |
236 | ···················This·method·returns·an·IVL·object·that·contains·the·full·adjacency·structure·for·a·9-point\xd | 236 | ···················This·method·returns·an·IVL·object·that·contains·the·full·adjacency·structure·for·a·9-point\xd |
237 | ···················operator·on·a·n1×n2·grid·with·ncomp·components·at·each·grid·point.\xd | 237 | ···················operator·on·a·n1×n2·grid·with·ncomp·components·at·each·grid·point.\xd |
238 | ···················Error·checking:·If·n1,·n2·or·ncomp·is·less·than·or·equal·to·zero,·an·error·message·is·printed\xd | 238 | ···················Error·checking:·If·n1,·n2·or·ncomp·is·less·than·or·equal·to·zero,·an·error·message·is·printed\xd |
239 | ···················and·the·program·exits.\xd | 239 | ···················and·the·program·exits.\xd |
240 | ················2.·IVL·*·IVL_make13P·(·int·n1,·int·n2·)·;\xd | 240 | ················2.·IVL·*·IVL_make13P·(·int·n1,·int·n2·)·;\xd |
Offset 261, 15 lines modified | Offset 261, 15 lines modified | ||
261 | ···················and·returns·the·value·returned·from·the·called·routine.\xd | 261 | ···················and·returns·the·value·returned·from·the·called·routine.\xd |
262 | ···················Error·checking:·If·ivl·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.ivlf·(for·a·formatted·file)\xd | 262 | ···················Error·checking:·If·ivl·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.ivlf·(for·a·formatted·file)\xd |
263 | ···················or·*.ivlb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd | 263 | ···················or·*.ivlb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd |
264 | ················2.·int·IVL_readFromFormattedFile·(·IVL·*ivl,·FILE·*fp·)·;\xd | 264 | ················2.·int·IVL_readFromFormattedFile·(·IVL·*ivl,·FILE·*fp·)·;\xd |
265 | ···················This·method·reads·an·IVL·object·from·a·formatted·file.·If·there·are·no·errors·in·reading·the\xd | 265 | ···················This·method·reads·an·IVL·object·from·a·formatted·file.·If·there·are·no·errors·in·reading·the\xd |
266 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd | 266 | ···················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fscanf,·zero·is·returned.\xd |
267 | ···················Error·checking:·If·ivl·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 267 | ···················Error·checking:·If·ivl·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
268 | ·············································IVL·:·DRAFT····· | 268 | ·············································IVL·:·DRAFT·····February·18,·2025··························9\xd |
269 | ·················3.·int·IVL_readFromBinaryFile·(·IVL·*ivl,·FILE·*fp·)·;\xd | 269 | ·················3.·int·IVL_readFromBinaryFile·(·IVL·*ivl,·FILE·*fp·)·;\xd |
270 | ····················This·method·reads·an·IVL·object·from·a·binary·file.·If·there·are·no·errors·in·reading·the·data,\xd | 270 | ····················This·method·reads·an·IVL·object·from·a·binary·file.·If·there·are·no·errors·in·reading·the·data,\xd |
271 | ····················the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd | 271 | ····················the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fread,·zero·is·returned.\xd |
272 | ····················Error·checking:·If·ivl·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 272 | ····················Error·checking:·If·ivl·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
273 | ·················4.·int·IVL_writeToFile·(·IVL·*ivl,·char·*fn·)·;\xd | 273 | ·················4.·int·IVL_writeToFile·(·IVL·*ivl,·char·*fn·)·;\xd |
274 | ····················This·method·writes·an·IVL·object·to·a·file.·If·the·the·file·can·be·opened·successfully,·the\xd | 274 | ····················This·method·writes·an·IVL·object·to·a·file.·If·the·the·file·can·be·opened·successfully,·the\xd |
275 | ····················method·calls·IVL·writeFromFormattedFile()·or·IVL·writeFromBinaryFile(),·closes·the\xd | 275 | ····················method·calls·IVL·writeFromFormattedFile()·or·IVL·writeFromBinaryFile(),·closes·the\xd |
Max diff block lines reached; 1322/12071 bytes (10.95%) of diff not shown. |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·Ideq.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·Ideq.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1257, 20 lines modified | Offset 1257, 21 lines modified | ||
1257 | end·readonly·def | 1257 | end·readonly·def |
1258 | /Encoding·256·array | 1258 | /Encoding·256·array |
1259 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1259 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1260 | dup·44·/comma·put | 1260 | dup·44·/comma·put |
1261 | dup·48·/zero·put | 1261 | dup·48·/zero·put |
1262 | dup·49·/one·put | 1262 | dup·49·/one·put |
1263 | dup·50·/two·put | 1263 | dup·50·/two·put |
1264 | dup·52·/four·put | ||
1265 | dup·5 | 1264 | dup·53·/five·put |
1265 | dup·56·/eight·put | ||
1266 | dup·58·/colon·put | 1266 | dup·58·/colon·put |
1267 | dup·7 | 1267 | dup·70·/F·put |
1268 | dup·97·/a·put | 1268 | dup·97·/a·put |
1269 | dup·98·/b·put | ||
1269 | dup·1 | 1270 | dup·101·/e·put |
1270 | dup·114·/r·put | 1271 | dup·114·/r·put |
1271 | dup·117·/u·put | 1272 | dup·117·/u·put |
1272 | dup·121·/y·put | 1273 | dup·121·/y·put |
1273 | readonly·def | 1274 | readonly·def |
1274 | currentdict·end | 1275 | currentdict·end |
1275 | currentfile·eexec | 1276 | currentfile·eexec |
1276 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1277 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1454, 89 lines modified | Offset 1455, 93 lines modified | ||
1454 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1455 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1455 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1456 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1456 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1457 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1457 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1458 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1458 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1459 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1459 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1460 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1460 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1461 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1461 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1462 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1462 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1463 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1464 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1465 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1466 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1467 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1468 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1469 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1470 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1471 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1472 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1473 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1474 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1475 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1476 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1477 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1478 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1479 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1480 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1481 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1482 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1483 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1484 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1485 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1486 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1487 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1488 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1489 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1490 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1491 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1492 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1493 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1494 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1495 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1496 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1497 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1498 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1499 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1500 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1501 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1502 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1503 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1504 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1505 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1506 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1507 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1508 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1509 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1510 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1511 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1512 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1513 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1514 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1515 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1516 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1517 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1518 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1519 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1520 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1521 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1522 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1523 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1524 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1525 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1526 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1527 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1528 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1529 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1530 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1531 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1532 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1533 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1534 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1535 | 1463 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1464 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1465 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1466 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1467 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1468 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1469 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 7650/19540 bytes (39.15%) of diff not shown. |
Offset 16, 15 lines modified | Offset 16, 15 lines modified | ||
16 | ·············•·IV·iv·:·an·IV·object·to·hold·the·list·vector.\xd | 16 | ·············•·IV·iv·:·an·IV·object·to·hold·the·list·vector.\xd |
17 | ···········A·correctly·initialized·and·nontrivial·Ideq·object·will·have·maxsize·>·0.·When·the·dequeue·is\xd | 17 | ···········A·correctly·initialized·and·nontrivial·Ideq·object·will·have·maxsize·>·0.·When·the·dequeue·is\xd |
18 | ···········empty,·head·=·tail·=·-1.\xd | 18 | ···········empty,·head·=·tail·=·-1.\xd |
19 | ···········1.2··Prototypes·and·descriptions·of·Ideq·methods\xd | 19 | ···········1.2··Prototypes·and·descriptions·of·Ideq·methods\xd |
20 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·Ideq\xd | 20 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·Ideq\xd |
21 | ···········object.\xd | 21 | ···········object.\xd |
22 | ·············································1\xd | 22 | ·············································1\xd |
23 | ··············2····························Ideq·:·DRAFT· | 23 | ··············2····························Ideq·:·DRAFT·February·18,·2025\xd |
24 | ··············1.2.1··Basic·methods\xd | 24 | ··············1.2.1··Basic·methods\xd |
25 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 25 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
26 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 26 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
27 | ················1.·Ideq·*·Ideq_new·(·void·)·;\xd | 27 | ················1.·Ideq·*·Ideq_new·(·void·)·;\xd |
28 | ···················This·method·simply·allocates·storage·for·the·Ideq·structure·and·then·sets·the·default·fields\xd | 28 | ···················This·method·simply·allocates·storage·for·the·Ideq·structure·and·then·sets·the·default·fields\xd |
29 | ···················by·a·call·to·Ideq·setDefaultFields().\xd | 29 | ···················by·a·call·to·Ideq·setDefaultFields().\xd |
30 | ················2.·void·Ideq_setDefaultFields·(·Ideq·*deq·)·;\xd | 30 | ················2.·void·Ideq_setDefaultFields·(·Ideq·*deq·)·;\xd |
Offset 47, 50 lines modified | Offset 47, 50 lines modified | ||
47 | ···················initializer.\xd | 47 | ···················initializer.\xd |
48 | ···················If·the·present·size·of·the·list·(the·number·of·entries·between·head·and·tail·inclusive)·is·larger\xd | 48 | ···················If·the·present·size·of·the·list·(the·number·of·entries·between·head·and·tail·inclusive)·is·larger\xd |
49 | ···················than·newsize,·the·method·returns·-1.·Otherwise,·a·new·int·vector·is·allocated·and·filled\xd | 49 | ···················than·newsize,·the·method·returns·-1.·Otherwise,·a·new·int·vector·is·allocated·and·filled\xd |
50 | ···················with·the·entries·in·the·list.·The·old·int·vector·is·free’d,·the·new·vector·is·spliced·into·the·IV\xd | 50 | ···················with·the·entries·in·the·list.·The·old·int·vector·is·free’d,·the·new·vector·is·spliced·into·the·IV\xd |
51 | ···················object,·and·the·head,·tail·and·maxsize·fields·are·set.·The·method·then·returns·1.\xd | 51 | ···················object,·and·the·head,·tail·and·maxsize·fields·are·set.·The·method·then·returns·1.\xd |
52 | ···················Error·checking:·If·deq·is·NULL,·or·if·newsize·<·0,·an·error·message·is·printed·and·the·program\xd | 52 | ···················Error·checking:·If·deq·is·NULL,·or·if·newsize·<·0,·an·error·message·is·printed·and·the·program\xd |
53 | ···················exits.\xd | 53 | ···················exits.\xd |
54 | ······································Ideq·:·DRAFT·· | 54 | ······································Ideq·:·DRAFT··February·18,·2025···················3\xd |
55 | ············1.2.3··Utility·methods\xd | 55 | ············1.2.3··Utility·methods\xd |
56 | ·············· | 56 | ··············1.·void·Ideq_clear·(·Ideq·*deq·)·;\xd |
57 | ·················This·method·clears·the·dequeue.·The·head·and·tail·fields·are·set·to·-1.\xd | 57 | ·················This·method·clears·the·dequeue.·The·head·and·tail·fields·are·set·to·-1.\xd |
58 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 58 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
59 | ·············· | 59 | ··············2.·int·Ideq_head·(·Ideq·*deq·)·;\xd |
60 | ·················This·method·returns·the·value·at·the·head·of·the·list·without·removing·that·value.·If·head\xd | 60 | ·················This·method·returns·the·value·at·the·head·of·the·list·without·removing·that·value.·If·head\xd |
61 | ·················==·-1·then·-1·is·returned.·Note,·the·list·may·be·nonempty·and·the·first·value·may·be·-1,·so\xd | 61 | ·················==·-1·then·-1·is·returned.·Note,·the·list·may·be·nonempty·and·the·first·value·may·be·-1,·so\xd |
62 | ·················-1·may·signal·an·empty·list·or·a·terminating·element.\xd | 62 | ·················-1·may·signal·an·empty·list·or·a·terminating·element.\xd |
63 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 63 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
64 | ·············· | 64 | ··············3.·int·Ideq_removeFromHead·(·Ideq·*deq·)·;\xd |
65 | ·················This·method·returns·the·value·at·the·head·of·the·list·and·removes·that·value.·If·head·==·-1\xd | 65 | ·················This·method·returns·the·value·at·the·head·of·the·list·and·removes·that·value.·If·head·==·-1\xd |
66 | ·················then·-1·is·returned.·Note,·the·list·may·be·nonempty·and·the·first·value·may·be·-1,·so·-1\xd | 66 | ·················then·-1·is·returned.·Note,·the·list·may·be·nonempty·and·the·first·value·may·be·-1,·so·-1\xd |
67 | ·················may·signal·an·empty·list·or·a·terminating·element.\xd | 67 | ·················may·signal·an·empty·list·or·a·terminating·element.\xd |
68 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 68 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
69 | ·············· | 69 | ··············4.·int·Ideq_insertAtHead·(·Ideq·*deq,·int·val·)·;\xd |
70 | ·················This·method·inserts·a·value·val·into·the·list·at·the·head·of·the·list.·If·there·is·no·room·in\xd | 70 | ·················This·method·inserts·a·value·val·into·the·list·at·the·head·of·the·list.·If·there·is·no·room·in\xd |
71 | ·················the·list,·-1·is·returned·and·the·dequeue·must·be·resized·using·the·Ideq·resize()·method.\xd | 71 | ·················the·list,·-1·is·returned·and·the·dequeue·must·be·resized·using·the·Ideq·resize()·method.\xd |
72 | ·················Otherwise,·the·item·is·placed·into·the·list·and·1·is·returned.\xd | 72 | ·················Otherwise,·the·item·is·placed·into·the·list·and·1·is·returned.\xd |
73 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 73 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
74 | ·············· | 74 | ··············5.·int·Ideq_tail·(·Ideq·*deq·)·;\xd |
75 | ·················This·method·returns·the·value·at·the·tail·of·the·list·without·removing·that·value.·If·tail·==\xd | 75 | ·················This·method·returns·the·value·at·the·tail·of·the·list·without·removing·that·value.·If·tail·==\xd |
76 | ·················-1·then·-1·is·returned.·Note,·the·list·may·be·nonempty·and·the·first·value·may·be·-1,·so·-1\xd | 76 | ·················-1·then·-1·is·returned.·Note,·the·list·may·be·nonempty·and·the·first·value·may·be·-1,·so·-1\xd |
77 | ·················may·signal·an·empty·list·or·a·terminating·element.\xd | 77 | ·················may·signal·an·empty·list·or·a·terminating·element.\xd |
78 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 78 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
79 | ·············· | 79 | ··············6.·int·Ideq_removeFromTail·(·Ideq·*deq·)·;\xd |
80 | ·················This·method·returns·the·value·at·the·tail·of·the·list·and·removes·that·value.·If·tail·==·-1\xd | 80 | ·················This·method·returns·the·value·at·the·tail·of·the·list·and·removes·that·value.·If·tail·==·-1\xd |
81 | ·················then·-1·is·returned.·Note,·the·list·may·be·nonempty·and·the·first·value·may·be·-1,·so·-1\xd | 81 | ·················then·-1·is·returned.·Note,·the·list·may·be·nonempty·and·the·first·value·may·be·-1,·so·-1\xd |
82 | ·················may·signal·an·empty·list·or·a·terminating·element.\xd | 82 | ·················may·signal·an·empty·list·or·a·terminating·element.\xd |
83 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 83 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
84 | ·············· | 84 | ··············7.·int·Ideq_insertAtTail·(·Ideq·*deq,·int·val·)·;\xd |
85 | ·················This·method·inserts·a·value·val·into·the·list·at·the·tail·of·the·list.·If·there·is·no·room·in\xd | 85 | ·················This·method·inserts·a·value·val·into·the·list·at·the·tail·of·the·list.·If·there·is·no·room·in\xd |
86 | ·················the·list,·-1·is·returned·and·the·dequeue·must·be·resized·using·the·Ideq·resize()·method.\xd | 86 | ·················the·list,·-1·is·returned·and·the·dequeue·must·be·resized·using·the·Ideq·resize()·method.\xd |
87 | ·················Otherwise,·the·item·is·placed·into·the·list·and·1·is·returned.\xd | 87 | ·················Otherwise,·the·item·is·placed·into·the·list·and·1·is·returned.\xd |
88 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 88 | ·················Error·checking:·If·deq·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
89 | ··············4····························Ideq·:·DRAFT· | 89 | ··············4····························Ideq·:·DRAFT·February·18,·2025\xd |
90 | ··············1.2.4··IO·methods\xd | 90 | ··············1.2.4··IO·methods\xd |
91 | ················1.·void·Ideq_writeForHumanEye·(·Ideq·*deq·)·;\xd | 91 | ················1.·void·Ideq_writeForHumanEye·(·Ideq·*deq·)·;\xd |
92 | ···················This·method·write·the·state·of·the·object,·(the·size,·head·and·tail)·and·the·list·of·entries·to\xd | 92 | ···················This·method·write·the·state·of·the·object,·(the·size,·head·and·tail)·and·the·list·of·entries·to\xd |
93 | ···················a·file.\xd | 93 | ···················a·file.\xd |
94 | ···················Error·checking:·If·deq·or·fp·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 94 | ···················Error·checking:·If·deq·or·fp·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
95 | ·······Index\xd | 95 | ·······Index\xd |
96 | ·······Ideq·clear(),·3\xd | 96 | ·······Ideq·clear(),·3\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·InpMtx.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·InpMtx.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2764, 20 lines modified | Offset 2764, 21 lines modified | ||
2764 | end·readonly·def | 2764 | end·readonly·def |
2765 | /Encoding·256·array | 2765 | /Encoding·256·array |
2766 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2766 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2767 | dup·44·/comma·put | 2767 | dup·44·/comma·put |
2768 | dup·48·/zero·put | 2768 | dup·48·/zero·put |
2769 | dup·49·/one·put | 2769 | dup·49·/one·put |
2770 | dup·50·/two·put | 2770 | dup·50·/two·put |
2771 | dup·52·/four·put | ||
2772 | dup·5 | 2771 | dup·53·/five·put |
2772 | dup·56·/eight·put | ||
2773 | dup·58·/colon·put | 2773 | dup·58·/colon·put |
2774 | dup·7 | 2774 | dup·70·/F·put |
2775 | dup·97·/a·put | 2775 | dup·97·/a·put |
2776 | dup·98·/b·put | ||
2776 | dup·1 | 2777 | dup·101·/e·put |
2777 | dup·114·/r·put | 2778 | dup·114·/r·put |
2778 | dup·117·/u·put | 2779 | dup·117·/u·put |
2779 | dup·121·/y·put | 2780 | dup·121·/y·put |
2780 | readonly·def | 2781 | readonly·def |
2781 | currentdict·end | 2782 | currentdict·end |
2782 | currentfile·eexec | 2783 | currentfile·eexec |
2783 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2784 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2961, 89 lines modified | Offset 2962, 93 lines modified | ||
2961 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2962 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2962 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2963 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2963 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2964 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2964 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2965 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2965 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2966 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2966 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2967 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2967 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2968 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2968 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2969 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2969 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2970 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2971 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2972 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2973 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2974 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2975 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2976 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2977 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2978 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2979 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2980 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2981 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2982 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2983 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2984 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2985 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2986 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2987 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2988 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2989 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2990 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2991 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2992 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2993 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2994 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2995 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2996 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2997 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2998 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2999 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
3000 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
3001 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
3002 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
3003 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
3004 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
3005 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
3006 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
3007 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
3008 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
3009 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
3010 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
3011 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
3012 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
3013 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
3014 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
3015 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
3016 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
3017 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
3018 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
3019 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
3020 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
3021 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
3022 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
3023 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
3024 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
3025 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
3026 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
3027 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
3028 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
3029 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
3030 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
3031 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
3032 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
3033 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
3034 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
3035 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
3036 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
3037 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
3038 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
3039 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
3040 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
3041 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
3042 | 2970 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2971 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2972 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2973 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2974 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2975 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2976 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 45842/57734 bytes (79.40%) of diff not shown. |
Offset 28, 15 lines modified | Offset 28, 15 lines modified | ||
28 | ·······················be·efficient·to·have·sufficient·elbow·room·to·minimize·the·number·of·sorts·and·compressions.·In·this\xd | 28 | ·······················be·efficient·to·have·sufficient·elbow·room·to·minimize·the·number·of·sorts·and·compressions.·In·this\xd |
29 | ·······················case,·a·tight·upper·bound·on·the·necessary·storage·is·the·sum·of·the·sizes·of·the·elemental·matrices.\xd | 29 | ·······················case,·a·tight·upper·bound·on·the·necessary·storage·is·the·sum·of·the·sizes·of·the·elemental·matrices.\xd |
30 | ·······················The·entries·are·assembled·by·a·call·to·InpMtx·changeStorageMode().\xd | 30 | ·······················The·entries·are·assembled·by·a·call·to·InpMtx·changeStorageMode().\xd |
31 | ··················································································T\xd | 31 | ··················································································T\xd |
32 | ····················5.·CreateanIVLobjectthatcontainsthefull·adjacencyofA+A·bycallingtheInpMtx·fullAdjacency()\xd | 32 | ····················5.·CreateanIVLobjectthatcontainsthefull·adjacencyofA+A·bycallingtheInpMtx·fullAdjacency()\xd |
33 | ·······················method.\xd | 33 | ·······················method.\xd |
34 | ·····································································1\xd | 34 | ·····································································1\xd |
35 | ················2·································· | 35 | ················2··································InpMtx·:·DRAFT·February·18,·2025\xd |
36 | ···················6.·Create·a·Graph·object·using·the·Graph·init2()·method·and·the·IVL·object·as·an·input·argument.\xd | 36 | ···················6.·Create·a·Graph·object·using·the·Graph·init2()·method·and·the·IVL·object·as·an·input·argument.\xd |
37 | ················A·similar·functionality·exists·for·creating·a·Graph·object·from·a·linear·combination·of·two·InpMtx·objects\xd | 37 | ················A·similar·functionality·exists·for·creating·a·Graph·object·from·a·linear·combination·of·two·InpMtx·objects\xd |
38 | ················that·contains·the·matrices·A·and·B.·The·InpMtx·fullAdjacency2()·method·returns·an·IVL·object·with\xd | 38 | ················that·contains·the·matrices·A·and·B.·The·InpMtx·fullAdjacency2()·method·returns·an·IVL·object·with\xd |
39 | ················the·full·adjacency·of·(A+B)+(A+B)T.·These·two·methods·are·called·by·the·DPencil·fullAdjacency()\xd | 39 | ················the·full·adjacency·of·(A+B)+(A+B)T.·These·two·methods·are·called·by·the·DPencil·fullAdjacency()\xd |
40 | ················methods·to·return·the·full·adjacency·of·a·matrix·pencil.\xd | 40 | ················methods·to·return·the·full·adjacency·of·a·matrix·pencil.\xd |
41 | ···················Here·is·a·common·sequence·of·events·to·use·this·object·when·we·want·to·assemble·the·entries·of·a·sparse\xd | 41 | ···················Here·is·a·common·sequence·of·events·to·use·this·object·when·we·want·to·assemble·the·entries·of·a·sparse\xd |
42 | ················matrix.\xd | 42 | ················matrix.\xd |
Offset 68, 15 lines modified | Offset 68, 15 lines modified | ||
68 | ····································j,j··j,k·········k,j\xd | 68 | ····································j,j··j,k·········k,j\xd |
69 | ························–·INPMTX·CUSTOM·—·custom·coordinates.\xd | 69 | ························–·INPMTX·CUSTOM·—·custom·coordinates.\xd |
70 | ···················•·int·storageMode·:·mode·of·storage\xd | 70 | ···················•·int·storageMode·:·mode·of·storage\xd |
71 | ························–·INPMTX·RAW·DATA·—·data·is·raw·pairs·or·triples,·two·coordinates·and·(optionally)·one·or·two\xd | 71 | ························–·INPMTX·RAW·DATA·—·data·is·raw·pairs·or·triples,·two·coordinates·and·(optionally)·one·or·two\xd |
72 | ··························double·precision·values.\xd | 72 | ··························double·precision·values.\xd |
73 | ························–·INPMTX·SORTED·—·data·is·sorted·and·distinct·triples,·the·primary·key·is·the·first·coordinate,·the\xd | 73 | ························–·INPMTX·SORTED·—·data·is·sorted·and·distinct·triples,·the·primary·key·is·the·first·coordinate,·the\xd |
74 | ··························secondary·key·is·the·second·coordinate.\xd | 74 | ··························secondary·key·is·the·second·coordinate.\xd |
75 | ··········································InpMtx·:·DRAFT·· | 75 | ··········································InpMtx·:·DRAFT··February·18,·2025·······················3\xd |
76 | ····················–·INPMTX·BY·VECTORS·—·data·is·sorted·and·distinct·vectors.·All·entries·in·a·vector·share·some-\xd | 76 | ····················–·INPMTX·BY·VECTORS·—·data·is·sorted·and·distinct·vectors.·All·entries·in·a·vector·share·some-\xd |
77 | ······················thing·in·common.·For·example,·when·coordType·is·INPMTX·BY·ROWS,·INPMTX·BY·COLUMNS·or\xd | 77 | ······················thing·in·common.·For·example,·when·coordType·is·INPMTX·BY·ROWS,·INPMTX·BY·COLUMNS·or\xd |
78 | ······················INPMTX·BY·CHEVRONS,·row·vectors,·column·vectors,·or·chevron·vectors·are·stored,·respectively.\xd | 78 | ······················INPMTX·BY·CHEVRONS,·row·vectors,·column·vectors,·or·chevron·vectors·are·stored,·respectively.\xd |
79 | ······················WhencoordTypeis·INPMTX·CUSTOM,·a·custom·type,·entries·in·the·same·vector·have·something·in\xd | 79 | ······················WhencoordTypeis·INPMTX·CUSTOM,·a·custom·type,·entries·in·the·same·vector·have·something·in\xd |
80 | ······················common·but·it·need·not·be·a·common·row,·column·or·chevron·coordinate.\xd | 80 | ······················common·but·it·need·not·be·a·common·row,·column·or·chevron·coordinate.\xd |
81 | ················•·int·inputMode·:·mode·of·data·input\xd | 81 | ················•·int·inputMode·:·mode·of·data·input\xd |
82 | ····················–·INPMTX·INDICES·ONLY·—·only·indices·are·stored,·not·entries.\xd | 82 | ····················–·INPMTX·INDICES·ONLY·—·only·indices·are·stored,·not·entries.\xd |
Offset 106, 15 lines modified | Offset 106, 15 lines modified | ||
106 | ················•·INPMTX·IS·BY·COLUMNS(mtx)·returns·1·if·the·entries·are·stored·by·columns,·and·0·otherwise.\xd | 106 | ················•·INPMTX·IS·BY·COLUMNS(mtx)·returns·1·if·the·entries·are·stored·by·columns,·and·0·otherwise.\xd |
107 | ················•·INPMTX·IS·BY·CHEVRONS(mtx)·returns·1·if·the·entries·are·stored·by·chevrons,·and·0·otherwise.\xd | 107 | ················•·INPMTX·IS·BY·CHEVRONS(mtx)·returns·1·if·the·entries·are·stored·by·chevrons,·and·0·otherwise.\xd |
108 | ················•·INPMTX·IS·BY·CUSTOM(mtx)·returns·1·if·the·entries·are·stored·by·some·custom·coordinate,·and·0\xd | 108 | ················•·INPMTX·IS·BY·CUSTOM(mtx)·returns·1·if·the·entries·are·stored·by·some·custom·coordinate,·and·0\xd |
109 | ··················otherwise.\xd | 109 | ··················otherwise.\xd |
110 | ················•·INPMTX·IS·RAW·DATA(mtx)·returns·1·if·the·entries·are·stored·as·unsorted·pairs·or·triples,·and·0·other-\xd | 110 | ················•·INPMTX·IS·RAW·DATA(mtx)·returns·1·if·the·entries·are·stored·as·unsorted·pairs·or·triples,·and·0·other-\xd |
111 | ··················wise.\xd | 111 | ··················wise.\xd |
112 | ················•·INPMTX·IS·SORTED(mtx)·returns·1·if·the·entries·are·stored·as·sorted·pairs·or·triples,·and·0·otherwise.\xd | 112 | ················•·INPMTX·IS·SORTED(mtx)·returns·1·if·the·entries·are·stored·as·sorted·pairs·or·triples,·and·0·otherwise.\xd |
113 | ··············4····························InpMtx·:·DRAFT· | 113 | ··············4····························InpMtx·:·DRAFT·February·18,·2025\xd |
114 | ················•·INPMTX·IS·BY·VECTORS(mtx)·returns·1·if·the·entries·are·stored·as·vectors,·and·0·otherwise.\xd | 114 | ················•·INPMTX·IS·BY·VECTORS(mtx)·returns·1·if·the·entries·are·stored·as·vectors,·and·0·otherwise.\xd |
115 | ················•·INPMTX·IS·INDICES·ONLY(mtx)·returns·1·if·the·entries·are·not·stored,·and·0·otherwise.\xd | 115 | ················•·INPMTX·IS·INDICES·ONLY(mtx)·returns·1·if·the·entries·are·not·stored,·and·0·otherwise.\xd |
116 | ················•·INPMTX·IS·REAL·ENTRIES(mtx)·returns·1·if·the·entries·are·real,·and·0·otherwise.\xd | 116 | ················•·INPMTX·IS·REAL·ENTRIES(mtx)·returns·1·if·the·entries·are·real,·and·0·otherwise.\xd |
117 | ················•·INPMTX·IS·COMPLEX·ENTRIES(mtx)·returns·1·if·the·entries·are·complex,·and·0·otherwise.\xd | 117 | ················•·INPMTX·IS·COMPLEX·ENTRIES(mtx)·returns·1·if·the·entries·are·complex,·and·0·otherwise.\xd |
118 | ··············1.2···Prototypes·and·descriptions·of·InpMtx·methods\xd | 118 | ··············1.2···Prototypes·and·descriptions·of·InpMtx·methods\xd |
119 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·InpMtx·object.\xd | 119 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·InpMtx·object.\xd |
120 | ··············1.2.1··Basic·methods\xd | 120 | ··············1.2.1··Basic·methods\xd |
Offset 140, 15 lines modified | Offset 140, 15 lines modified | ||
140 | ················1.·int·InpMtx_coordType·(·InpMtx·*inpmtx·)·;\xd | 140 | ················1.·int·InpMtx_coordType·(·InpMtx·*inpmtx·)·;\xd |
141 | ··················This·method·returns·the·coordinate·type.\xd | 141 | ··················This·method·returns·the·coordinate·type.\xd |
142 | ····················•·INPMTX·NO·TYPE·–·none·specified\xd | 142 | ····················•·INPMTX·NO·TYPE·–·none·specified\xd |
143 | ····················•·INPMTX·BY·ROWS·–·storage·by·row·triples\xd | 143 | ····················•·INPMTX·BY·ROWS·–·storage·by·row·triples\xd |
144 | ····················•·INPMTX·BY·COLUMNS·–·storage·by·column·triples\xd | 144 | ····················•·INPMTX·BY·COLUMNS·–·storage·by·column·triples\xd |
145 | ····················•·INPMTX·BY·CHEVRONS·–·storage·by·chevron·triples\xd | 145 | ····················•·INPMTX·BY·CHEVRONS·–·storage·by·chevron·triples\xd |
146 | ····················•·INPMTX·CUSTOM·–·custom·type\xd | 146 | ····················•·INPMTX·CUSTOM·–·custom·type\xd |
147 | ··········································InpMtx·:·DRAFT·· | 147 | ··········································InpMtx·:·DRAFT··February·18,·2025·······················5\xd |
148 | ··················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 148 | ··················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
149 | ················2.·int·InpMtx_storageMode·(·InpMtx·*inpmtx·)·;\xd | 149 | ················2.·int·InpMtx_storageMode·(·InpMtx·*inpmtx·)·;\xd |
150 | ··················This·method·returns·the·storage·mode.\xd | 150 | ··················This·method·returns·the·storage·mode.\xd |
151 | ····················•·INPMTX·NO·MODE·–·none·specified\xd | 151 | ····················•·INPMTX·NO·MODE·–·none·specified\xd |
152 | ····················•·INPMTX·RAW·DATA·–·raw·triples\xd | 152 | ····················•·INPMTX·RAW·DATA·–·raw·triples\xd |
153 | ····················•·INPMTX·SORTED·–·sorted·and·distinct·triples\xd | 153 | ····················•·INPMTX·SORTED·–·sorted·and·distinct·triples\xd |
154 | ····················•·INPMTX·BY·VECTORS·–·vectors·by·the·first·coordinate\xd | 154 | ····················•·INPMTX·BY·VECTORS·–·vectors·by·the·first·coordinate\xd |
Offset 176, 15 lines modified | Offset 176, 15 lines modified | ||
176 | ··················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 176 | ··················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
177 | ················9.·int·*·InpMtx_ivec1·(·InpMtx·*inpmtx·)·;\xd | 177 | ················9.·int·*·InpMtx_ivec1·(·InpMtx·*inpmtx·)·;\xd |
178 | ··················This·method·returns·the·base·address·of·the·ivec1[]·vector.\xd | 178 | ··················This·method·returns·the·base·address·of·the·ivec1[]·vector.\xd |
179 | ··················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 179 | ··················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
180 | ···············10.·int·*·InpMtx_ivec2·(·InpMtx·*inpmtx·)·;\xd | 180 | ···············10.·int·*·InpMtx_ivec2·(·InpMtx·*inpmtx·)·;\xd |
181 | ··················This·method·returns·the·base·address·of·the·ivec2[]·vector.\xd | 181 | ··················This·method·returns·the·base·address·of·the·ivec2[]·vector.\xd |
182 | ··················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 182 | ··················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
183 | ·················6····································InpMtx·:·DRAFT· | 183 | ·················6····································InpMtx·:·DRAFT·February·18,·2025\xd |
184 | ···················11.·double·*·InpMtx_dvec·(·InpMtx·*inpmtx·)·;\xd | 184 | ···················11.·double·*·InpMtx_dvec·(·InpMtx·*inpmtx·)·;\xd |
185 | ·······················This·method·returns·the·base·address·of·the·dvec[]·vector.\xd | 185 | ·······················This·method·returns·the·base·address·of·the·dvec[]·vector.\xd |
186 | ·······················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 186 | ·······················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
187 | ···················12.·int·*·InpMtx_vecids·(·InpMtx·*inpmtx·)·;\xd | 187 | ···················12.·int·*·InpMtx_vecids·(·InpMtx·*inpmtx·)·;\xd |
188 | ·······················This·method·returns·the·base·address·of·the·vecids[]·vector.\xd | 188 | ·······················This·method·returns·the·base·address·of·the·vecids[]·vector.\xd |
189 | ·······················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 189 | ·······················Error·checking:·If·inpmtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
190 | ···················13.·int·*·InpMtx_sizes·(·InpMtx·*inpmtx·)·;\xd | 190 | ···················13.·int·*·InpMtx_sizes·(·InpMtx·*inpmtx·)·;\xd |
Offset 217, 15 lines modified | Offset 217, 15 lines modified | ||
217 | ·······················This·method·sets·the·maxinum·number·of·entries·in·the·indices·and·entries·vectors.\xd | 217 | ·······················This·method·sets·the·maxinum·number·of·entries·in·the·indices·and·entries·vectors.\xd |
218 | ·······················Error·checking:·If·inpmtx·is·NULL,·or·if·newmaxnent·<·0,·an·error·message·is·printed·and·the·program\xd | 218 | ·······················Error·checking:·If·inpmtx·is·NULL,·or·if·newmaxnent·<·0,·an·error·message·is·printed·and·the·program\xd |
219 | ·······················exits.\xd | 219 | ·······················exits.\xd |
220 | ···················18.·void·InpMtx_setNent·(·InpMtx·*inpmtx,·int·newnent·)·;\xd | 220 | ···················18.·void·InpMtx_setNent·(·InpMtx·*inpmtx,·int·newnent·)·;\xd |
221 | ·······················This·method·sets·the·present·number·of·entries·in·the·indices·and·entries·vectors.\xd | 221 | ·······················This·method·sets·the·present·number·of·entries·in·the·indices·and·entries·vectors.\xd |
222 | ·······················Error·checking:·If·inpmtx·is·NULL,·or·if·newnent·<·0,·an·error·message·is·printed·and·the·program\xd | 222 | ·······················Error·checking:·If·inpmtx·is·NULL,·or·if·newnent·<·0,·an·error·message·is·printed·and·the·program\xd |
223 | ·······················exits.\xd | 223 | ·······················exits.\xd |
224 | ··········································InpMtx·:·DRAFT·· | 224 | ··········································InpMtx·:·DRAFT··February·18,·2025·······················7\xd |
225 | ···············19.·void·InpMtx_setMaxnvector·(·InpMtx·*inpmtx,·int·newmaxnvector·)·;\xd | 225 | ···············19.·void·InpMtx_setMaxnvector·(·InpMtx·*inpmtx,·int·newmaxnvector·)·;\xd |
226 | ··················This·method·sets·the·maxinum·number·of·vectors.\xd | 226 | ··················This·method·sets·the·maxinum·number·of·vectors.\xd |
227 | ··················Error·checking:·If·inpmtx·is·NULL,·or·if·newmaxnvector·<·0,·an·error·message·is·printed·and·the\xd | 227 | ··················Error·checking:·If·inpmtx·is·NULL,·or·if·newmaxnvector·<·0,·an·error·message·is·printed·and·the\xd |
228 | ··················program·exits.\xd | 228 | ··················program·exits.\xd |
229 | ···············20.·void·InpMtx_setNvector·(·InpMtx·*inpmtx,·int·newnvector·)·;\xd | 229 | ···············20.·void·InpMtx_setNvector·(·InpMtx·*inpmtx,·int·newnvector·)·;\xd |
230 | ··················This·method·sets·the·present·number·of·vectors.\xd | 230 | ··················This·method·sets·the·present·number·of·vectors.\xd |
231 | ··················Error·checking:·If·inpmtx·is·NULL,·or·if·newnvector·<·0,·an·error·message·is·printed·and·the·program\xd | 231 | ··················Error·checking:·If·inpmtx·is·NULL,·or·if·newnvector·<·0,·an·error·message·is·printed·and·the·program\xd |
Offset 261, 15 lines modified | Offset 261, 15 lines modified | ||
261 | ··················exits.\xd | 261 | ··················exits.\xd |
262 | ················3.·void·InpMtx_changeStorageMode·(·InpMtx·*inpmtx,·int·newMode·)·;\xd | 262 | ················3.·void·InpMtx_changeStorageMode·(·InpMtx·*inpmtx,·int·newMode·)·;\xd |
263 | ··················If·storageMode·=·newMode,·the·method·returns.·Otherwise,·a·translation·between·the·three·valid\xd | 263 | ··················If·storageMode·=·newMode,·the·method·returns.·Otherwise,·a·translation·between·the·three·valid\xd |
264 | ··················modes·is·made·by·calling·InpMtx·sortAndCompress()and·InpMtx·convertToVectors(),as·appropri-\xd | 264 | ··················modes·is·made·by·calling·InpMtx·sortAndCompress()and·InpMtx·convertToVectors(),as·appropri-\xd |
265 | ··················ate.\xd | 265 | ··················ate.\xd |
266 | ··················Error·checking:·If·inpmtx·is·NULL·or·newMode·is·invalid,·an·error·message·is·printed·and·the·program\xd | 266 | ··················Error·checking:·If·inpmtx·is·NULL·or·newMode·is·invalid,·an·error·message·is·printed·and·the·program\xd |
267 | ··················exits.\xd | 267 | ··················exits.\xd |
268 | ··············8····························InpMtx·:·DRAFT· | 268 | ··············8····························InpMtx·:·DRAFT·February·18,·2025\xd |
269 | ··············1.2.4··Input·methods\xd | 269 | ··············1.2.4··Input·methods\xd |
270 | ················1.·void·InpMtx_inputEntry·(·InpMtx·*inpmtx,·int·row,·int·col·)·;\xd | 270 | ················1.·void·InpMtx_inputEntry·(·InpMtx·*inpmtx,·int·row,·int·col·)·;\xd |
271 | ··················void·InpMtx_inputRealEntry·(·InpMtx·*inpmtx,·int·row,·int·col,·double·value·)·;\xd | 271 | ··················void·InpMtx_inputRealEntry·(·InpMtx·*inpmtx,·int·row,·int·col,·double·value·)·;\xd |
272 | ··················void·InpMtx_inputComplexEntry·(·InpMtx·*inpmtx,·int·row,·int·col,\xd | 272 | ··················void·InpMtx_inputComplexEntry·(·InpMtx·*inpmtx,·int·row,·int·col,\xd |
273 | ················································double·real,·double·imag·)·;\xd | 273 | ················································double·real,·double·imag·)·;\xd |
274 | ··················This·method·places·a·single·entry·into·the·matrix·object.·The·coordinate·type·of·the·object·must·be\xd | 274 | ··················This·method·places·a·single·entry·into·the·matrix·object.·The·coordinate·type·of·the·object·must·be\xd |
275 | ··················INPMTX·BY·ROWS,·INPMTX·BY·COLUMNS·or·INPMTX·BY·CHEVRONS.·The·triple·is·formed·and·inserted·into\xd | 275 | ··················INPMTX·BY·ROWS,·INPMTX·BY·COLUMNS·or·INPMTX·BY·CHEVRONS.·The·triple·is·formed·and·inserted·into\xd |
Offset 307, 15 lines modified | Offset 307, 15 lines modified | ||
307 | ··················Error·checking:·If·inpmtx·is·NULL,·or·chv·or·chvsize·are·negative,·or·chvind·or·chvent·are·NULL,·an\xd | 307 | ··················Error·checking:·If·inpmtx·is·NULL,·or·chv·or·chvsize·are·negative,·or·chvind·or·chvent·are·NULL,·an\xd |
308 | ··················error·message·is·printed·and·the·program·exits.\xd | 308 | ··················error·message·is·printed·and·the·program·exits.\xd |
309 | ················5.·void·InpMtx_inputMatrix·(·InpMtx·*inpmtx,·int·nrow,·int·col,\xd | 309 | ················5.·void·InpMtx_inputMatrix·(·InpMtx·*inpmtx,·int·nrow,·int·col,\xd |
310 | ·····················int·rowstride,·int·colstride,·int·rowind[],·int·colind[]·)·;\xd | 310 | ·····················int·rowstride,·int·colstride,·int·rowind[],·int·colind[]·)·;\xd |
311 | ··················void·InpMtx_inputRealMatrix·(·InpMtx·*inpmtx,·int·nrow,·int·col,\xd | 311 | ··················void·InpMtx_inputRealMatrix·(·InpMtx·*inpmtx,·int·nrow,·int·col,\xd |
312 | ·····················int·rowstride,·int·colstride,·int·rowind[],·int·colind[],·double·mtxent[]·)·;\xd | 312 | ·····················int·rowstride,·int·colstride,·int·rowind[],·int·colind[],·double·mtxent[]·)·;\xd |
313 | ··················void·InpMtx_inputComplexMatrix·(·InpMtx·*inpmtx,·int·nrow,·int·col,\xd | 313 | ··················void·InpMtx_inputComplexMatrix·(·InpMtx·*inpmtx,·int·nrow,·int·col,\xd |
314 | ············································ | 314 | ············································InpMtx·:·DRAFT····February·18,·2025························9\xd |
315 | ······················int·rowstride,·int·colstride,·int·rowind[],·int·colind[],·double·mtxent[]·)·;\xd | 315 | ······················int·rowstride,·int·colstride,·int·rowind[],·int·colind[],·double·mtxent[]·)·;\xd |
316 | ···················This·method·places·a·dense·submatrix·into·the·matrix·object.·The·coordinate·type·of·the·object·must\xd | 316 | ···················This·method·places·a·dense·submatrix·into·the·matrix·object.·The·coordinate·type·of·the·object·must\xd |
317 | ···················be·INPMTX·BY·ROWS,·INPMTX·BY·COLUMNS·or·INPMTX·BY·CHEVRONS.·The·individual·entries·of·the·matrix\xd | 317 | ···················be·INPMTX·BY·ROWS,·INPMTX·BY·COLUMNS·or·INPMTX·BY·CHEVRONS.·The·individual·entries·of·the·matrix\xd |
318 | ···················are·placed·into·the·vector·storage·as·triples,·and·the·vectors·are·resized·if·necessary.\xd | 318 | ···················are·placed·into·the·vector·storage·as·triples,·and·the·vectors·are·resized·if·necessary.\xd |
319 | ···················Error·checking:·If·inpmtx·is·NULL,·or·col·or·row·are·negative,·or·rowstride·or·colstride·are·less\xd | 319 | ···················Error·checking:·If·inpmtx·is·NULL,·or·col·or·row·are·negative,·or·rowstride·or·colstride·are·less\xd |
320 | ···················than·1,·or·rowind,·colind·or·mtxent·are·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 320 | ···················than·1,·or·rowind,·colind·or·mtxent·are·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
321 | ·················6.·void·InpMtx_inputTriples·(·InpMtx·*inpmtx,·int·ntriples,\xd | 321 | ·················6.·void·InpMtx_inputTriples·(·InpMtx·*inpmtx,·int·ntriples,\xd |
Max diff block lines reached; 22743/34120 bytes (66.66%) of diff not shown. |
Offset 7, 15 lines modified | Offset 7, 15 lines modified | ||
7 | %%BoundingBox:·0·0·612·792 | 7 | %%BoundingBox:·0·0·612·792 |
8 | %%DocumentFonts:·CMR17·CMBX12·CMR12·CMR8·CMR6·CMR9·CMBX10·CMR10·CMTT10 | 8 | %%DocumentFonts:·CMR17·CMBX12·CMR12·CMR8·CMR6·CMR9·CMBX10·CMR10·CMTT10 |
9 | %%DocumentPaperSizes:·Letter | 9 | %%DocumentPaperSizes:·Letter |
10 | %%EndComments | 10 | %%EndComments |
11 | %DVIPSWebPage:·(www.radicaleye.com) | 11 | %DVIPSWebPage:·(www.radicaleye.com) |
12 | %DVIPSCommandLine:·dvips·main·-o·LinSol.ps | 12 | %DVIPSCommandLine:·dvips·main·-o·LinSol.ps |
13 | %DVIPSParameters:·dpi=600 | 13 | %DVIPSParameters:·dpi=600 |
14 | %DVIPSSource:··TeX·output·202 | 14 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
15 | %%BeginProcSet:·tex.pro·0·0 | 15 | %%BeginProcSet:·tex.pro·0·0 |
16 | %! | 16 | %! |
17 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 17 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
18 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 18 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
19 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 19 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
20 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 20 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
21 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 21 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 3431, 25 lines modified | Offset 3431, 26 lines modified | ||
3431 | end·readonly·def | 3431 | end·readonly·def |
3432 | /Encoding·256·array | 3432 | /Encoding·256·array |
3433 | 0·1·255·{1·index·exch·/.notdef·put}·for | 3433 | 0·1·255·{1·index·exch·/.notdef·put}·for |
3434 | dup·44·/comma·put | 3434 | dup·44·/comma·put |
3435 | dup·48·/zero·put | 3435 | dup·48·/zero·put |
3436 | dup·49·/one·put | 3436 | dup·49·/one·put |
3437 | dup·50·/two·put | 3437 | dup·50·/two·put |
3438 | dup·52·/four·put | ||
3439 | dup·5 | 3438 | dup·53·/five·put |
3439 | dup·56·/eight·put | ||
3440 | dup·65·/A·put | 3440 | dup·65·/A·put |
3441 | dup·66·/B·put | 3441 | dup·66·/B·put |
3442 | dup·67·/C·put | 3442 | dup·67·/C·put |
3443 | dup·70·/F·put | ||
3443 | dup·71·/G·put | 3444 | dup·71·/G·put |
3444 | dup·74·/J·put | ||
3445 | dup·80·/P·put | 3445 | dup·80·/P·put |
3446 | dup·82·/R·put | 3446 | dup·82·/R·put |
3447 | dup·83·/S·put | 3447 | dup·83·/S·put |
3448 | dup·97·/a·put | 3448 | dup·97·/a·put |
3449 | dup·98·/b·put | ||
3449 | dup·99·/c·put | 3450 | dup·99·/c·put |
3450 | dup·100·/d·put | 3451 | dup·100·/d·put |
3451 | dup·101·/e·put | 3452 | dup·101·/e·put |
3452 | dup·102·/f·put | 3453 | dup·102·/f·put |
3453 | dup·103·/g·put | 3454 | dup·103·/g·put |
3454 | dup·104·/h·put | 3455 | dup·104·/h·put |
3455 | dup·105·/i·put | 3456 | dup·105·/i·put |
Offset 3641, 193 lines modified | Offset 3642, 200 lines modified | ||
3641 | 82032FBD2FCB6E403D34B85ED4053A8CB619BDD4DE001F4C3007B1F317579651 | 3642 | 82032FBD2FCB6E403D34B85ED4053A8CB619BDD4DE001F4C3007B1F317579651 |
3642 | E6D6662189CC2D95AB85D7473F65C5D7B4AC63B0FE928F3400035D5A9D443D0D | 3643 | E6D6662189CC2D95AB85D7473F65C5D7B4AC63B0FE928F3400035D5A9D443D0D |
3643 | F3532B99F3AC26CB25EA3CD64C341159061E02EFBC7C033C05CD919BBD827A6A | 3644 | F3532B99F3AC26CB25EA3CD64C341159061E02EFBC7C033C05CD919BBD827A6A |
3644 | BFCF3BD739E32E7FE909AEE068D50FAC33605FFF98C7D0115FB860178FD03DB9 | 3645 | BFCF3BD739E32E7FE909AEE068D50FAC33605FFF98C7D0115FB860178FD03DB9 |
3645 | 7985B78E0AC21F2EA065FA841F5928FB85163B2E2D8F850DC7EE313912C45C28 | 3646 | 7985B78E0AC21F2EA065FA841F5928FB85163B2E2D8F850DC7EE313912C45C28 |
3646 | 2783F6762C67882EFEDDC7E7567F91C16B16FD8D5A1ABF35B5586307701B91AD | 3647 | 2783F6762C67882EFEDDC7E7567F91C16B16FD8D5A1ABF35B5586307701B91AD |
3647 | 54984598F2AD46FEE3D68A2731BEAA754C8E730FE0E84952EF77930E4118F8D7 | 3648 | 54984598F2AD46FEE3D68A2731BEAA754C8E730FE0E84952EF77930E4118F8D7 |
3648 | 2F3AD7547BA1B44C698428BA878986BAD1DA8368E8F5B3774FCBE3C72540A92C | ||
3649 | 7BA6298D386975A4FE6B5612A807D5C03EE4582DBD9DD9BF6A01C6C70A9A765A | ||
3650 | 38D20AB1B02DA94DEF94BF1A2CD76923DACC5566750775CD474EAA165C02262F | ||
3651 | 2A896898A8F67CBCBCE53648ABE9CC1CAC420AAD2B48D9054F2A27FDA27BF115 | ||
3652 | 23732B2C0353E3035E724B186BBDB27C03905EF40F67F69E3F63A93FBEBCA436 | ||
3653 | 7803AEC143D8163B0686A713DDA163148F362FA5348389E0F834ABD204D14CB7 | ||
3654 | AB6DFBFF780676E89ED96284B58545408904AD53098EE76659405336A5207814 | ||
3655 | 3FC60F431CFAB56AE03ED36E18D5B577B68431D905734282B590DB1CC6353A26 | ||
3656 | 58BE5C97A55E92ADDCD8D653EB41C38D55CE9E13F294A872DDEC30183118927E | ||
3657 | 5A666B87BFF4B6C1FC47420CF7F5F09CD664C837EB47F8ABB08D781F54ABB8BC | ||
3658 | 3DB89F3DD85939EC795AE70B3FD0841E79C6A9291688C40D6EDAF8C3562541DA | ||
3659 | 77D93BB4A7F4A8A9AC2937BB52FB92ED00568E59303B7A7977B4072E84E7EDA0 | ||
3660 | AE8C199A9F9B243C57388C0D51A21B1B7B1F9B0994749F1C5A5F330F4B1D4E16 | ||
3661 | BD58DD423CFE6CABAC756A9C0525F72745F77C4E981B4B46A769C5C497C79E39 | ||
3662 | 347AFC48FE4F89D25EAD7F8BAB714D2CD4676B51C3F6162DECB3470DF8F57831 | ||
3663 | 000EBC4CDF111B0E1AD72837BD7652E657C0204E119D3AC89284EFB3704BCD33 | ||
3664 | 00E7B2ECD9F2795B1D9F0C1DBE655F2C133B211C5664D78EA5B79DEE550D2449 | ||
3665 | 3448F8DCA52684207FFA56E5948AB984769A02C4286A117443A109D58D99AE71 | ||
3666 | 31593442B7301CE5AD314018CAF5D33B950491C9E8AAA1CD2CB91AE617F2CA0C | ||
3667 | 7D35F28E4A6B71B79ABCB34FF91308E9692036CB34BE6D6C311145DBEA6BD5E3 | ||
3668 | 147A533199CF8C5325CB981F32B0F5EA95A2E8C701F69231B0120913C948FF7B | ||
3669 | CE668E135DCFBBA0C5D0E7C4269AEDD11858F5F1D39C35C3EEA6D266AA69AFDF | ||
3670 | DC0761D3CEEB0326EC37DBA90D46A9D54600278A0BB453C0BF43BCBBEEF52EAC | ||
3671 | 305EAA30354A4AC54626C9F7E85456CC78B71523917BCCB330A619758120C048 | ||
3672 | 9E0EEB4CF10741A493EB750C9518E797CEC7C60D8A410AA17ED6805EF7FB6D06 | ||
3673 | F2A171FB6C9AE07521789B471F21361C5E1CBFB05058FFDA9ECFFC357BE2524D | ||
3674 | C67DFA4A68FECA5AE1002D8C5E3B20E80B049874AC4DDE0796C3B9FC1F3AB170 | ||
3675 | B3879DAF68CA02A4554CCAE48719B173AE1B5C8E75E0436E2DA4440BD00DE48F | ||
3676 | 5B9E97D43BB0BD680EDA46E4755B9149291C1CFC03A1289FE2A94B52505FF321 | ||
3677 | 7EC749F520C8AEA73D1EE778FDB1F8BA95C7C1CFC48DD894D4225CC61BD70E4D | ||
3678 | 05CB005B714D29210DC57C2FCDEBD5F086292CAE6111350E1EFD21F565431887 | ||
3679 | 6C7299D3F089201B4B57C96980E1B779B87781A5F4ABED1859C9392AFA2A9DF2 | ||
3680 | F81815A4F451F3ADF3C370EB9D5B71003334039E4AA5486EAF0156F2C6436CAE | ||
3681 | EEA6CBB95446EC499904AD3557660AEC2D603C3AAE34E5347A09C558782F7008 | ||
3682 | C73B4D1EDB474E878E8C8AEFEB463507A229200C3FEA7CCE2D3E4200D70FE2B3 | ||
3683 | D6CC3962385DF711C7C2F73169A62DAD1F4632CC4CD08A4B4F06BBD8BE793886 | ||
3684 | 6A90C322CD6524374A3990FEC664D4DB8D2B0484259F0A2C05A1763952F55AFC | ||
3685 | 4DEEDB12349B20C62E77A063E9DE2DAA38576E3CE0C0B88440B5791FB550F9AC | ||
3686 | 016EF39AE0144D419FB2E203A9E206CF91FC824ED246BA439CA241153E5D4D97 | ||
3687 | AC60BE609B402250F1D2AE63994902EB0A7F161632B776F1956F8A67E7CF2B7B | ||
3688 | 7A4A4D0C7B952618AFE31023F9573651414BE945E826B26DE694DC40CDAAEF53 | ||
3689 | 0D284B108E4D0920EA8A05F1CF87B5529E99C562F5535C53C2966091A451252D | ||
3690 | 2814C9449C60432DFB05FF21742B34410E911427A4658B0E3371373F04A3E081 | ||
3691 | C67AF2D7C2A119BEF4D5C75C12EACE71E0570C0112AEF06D4D1609252E2A36E5 | ||
3692 | 9C0521810EA1F7495921359400C866B823D59E56760F9987D166B19093E78B63 | ||
3693 | 1FB3C118C2BC7B3A45EEB420DE0297F60D0A6546BFA7809F9B7D0803C6FB5601 | ||
3694 | 1ADACD10B0B5AA20611F9F05EB79D4C4A681840A30150C9F571E70C9142401F7 | ||
3695 | F69B8EB756BEAD233C9BD07EBA4F1F29FC2601394A8E5682126825819DB7DF6A | ||
3696 | 7898DB3A77576FBBF056211A77B6AAFB2BF573048E049E579BBFF3029B2F27BD | ||
3697 | 9A6E7BFC54F7730B8C3D3F9D34DBAAA8C501764E8F27BDE103A11391E4D1504E | ||
3698 | D61BAF317C430DB5E8695829ADC419C83A2F66C8AE0402CE41D2A77F8BB6DDC8 | ||
3699 | E28187D6EC6F9B4ECB974DB8BFAC1DC141198CBC7333BC22989E29BEB0A1221D | ||
3700 | BD05AE30DE0BAE09A9B09DF0C7468873D6EB85C454E63179AEEA0DEADF174B15 | ||
3701 | 516DA35C6A5587675DE9C2EAECDFCE8E40B4964709DC66FA66D90DE4F27DD2B9 | ||
3702 | 8F96872C76607A49E628BB39574B50C1285DA93FF0223481AD7D4EA72AD8BE5D | ||
3703 | 1CA4D7BF3A3085C8A8FDB909EEA121B7B187761C726C1ED846865B3A3F6542CB | ||
3704 | 4243445C7748506B3930C864E0860EBB61481E86322056D9EE8315A210E2C312 | ||
3705 | 23BEE3DC26BAB1DFDDE30463B771C0FEE3042A5DDF5088EF2F71FD7379769AB3 | ||
3706 | 9B4F21534F8B139B18EE958A765CC003AE807EB6B99E93FAEB2085BBEB576962 | ||
3707 | 71A705254A27660EA98903F2EFF194F671958D862B7CD58267C73833FAF34C37 | ||
3708 | 2FF834069063D8F0924100F57D8AD3037B93CE85DCF48CFD09B524FE126AE7BF | ||
3709 | 9E21C574AD128152E3925A3D3460137CEE6E0247F9CB59DC4B0FEE8C93C4F37A | ||
3710 | E967D7F1413DEA5329CD9E0123417D241C448613C2700640BA32C6DFDE497F16 | ||
3711 | B897EC5503D2777ABD0B3E48CC6FF298F6DF1DEE4A64AA1173B14E70B0BBB54D | ||
3712 | 4C2746418F7A6C8C768150086DF60809C8D1E2692A9FD955FE5B72B9FF240A1B | ||
3713 | A2045B7F65FBC30B2AE0843EADF87A641B5A47D10776BF3FEADF2422F07B86D7 | ||
3714 | 7ED3705CA024089E33095C4AB6241EDD5651BFF7B244D815653CC63A797400B7 | ||
3715 | 69F81CF07A0B9F9C208943663C4D8159FB9776094BFFE89B55C294CA7DCADD24 | ||
3716 | 4181F9F15AEB41BEAB383E5551F17EE6EE3C57E4DBA54B8498F299AB669EF718 | ||
3717 | D50836AFD13D34E9887181C026567F692AE65E8F7A5814B93512A78B6B3A2ABF | ||
3718 | 2DA9F93D86C1A0DA6BA54BE8225C56043885F324064CB89AF704D0BFE768E081 | ||
3719 | 14749633B2FCA325DA3EE560FE3AEA71E9DBE38027836C9A1746DB7E2B4EF200 | ||
3720 | 1D0449E5F6D34E0980D6310FD4F32F3E030DDEFBD2DAAE5D3455C02AE02A4690 | ||
3721 | 8F05C9CF13C3648EC78B0AFFF19EF248FB7846F561FBF2D321DB5FC41F65EAE9 | ||
3722 | 236A7B73464C1590C440D88E50C0C577B5A74CB2D30958305B1CE7C3B24A46EC | ||
Max diff block lines reached; 2686/28578 bytes (9.40%) of diff not shown. |
Offset 1, 13 lines modified | Offset 1, 13 lines modified | ||
1 | ············································Wrapper·Objects·for·Solving\xd | 1 | ············································Wrapper·Objects·for·Solving\xd |
2 | ···········································a·Linear·System·of·Equations\xd | 2 | ···········································a·Linear·System·of·Equations\xd |
3 | ·················································using·SPOOLES·2.2\xd | 3 | ·················································using·SPOOLES·2.2\xd |
4 | ··········································Cleve·Ashcraft······················Peter·Schartz\xd | 4 | ··········································Cleve·Ashcraft······················Peter·Schartz\xd |
5 | ·································Boeing·Shared·Services·Group1·············CSARCorporation2\xd | 5 | ·································Boeing·Shared·Services·Group1·············CSARCorporation2\xd |
6 | ······················································· | 6 | ·······················································February·18,·2025\xd |
7 | ··················1P.·O.·Box·24346,·Mail·Stop·7L-21,·Seattle,·Washington·98124.·This·research·was·supported·in·part·by·the\xd | 7 | ··················1P.·O.·Box·24346,·Mail·Stop·7L-21,·Seattle,·Washington·98124.·This·research·was·supported·in·part·by·the\xd |
8 | ················DARPAContract·DABT63-95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common\xd | 8 | ················DARPAContract·DABT63-95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common\xd |
9 | ················HPCSoftware·Support·Initiative.\xd | 9 | ················HPCSoftware·Support·Initiative.\xd |
10 | ··················228035·Dorothy·Drive,·Agoura·Hills,·CA·91301.·This·research·was·supported·in·part·by·the·DARPA·Contract\xd | 10 | ··················228035·Dorothy·Drive,·Agoura·Hills,·CA·91301.·This·research·was·supported·in·part·by·the·DARPA·Contract\xd |
11 | ················DABT63-95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software\xd | 11 | ················DABT63-95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software\xd |
12 | ················Support·Initiative.\xd | 12 | ················Support·Initiative.\xd |
13 | ·····························Abstract\xd | 13 | ·····························Abstract\xd |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·Lock.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·Lock.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1515, 20 lines modified | Offset 1515, 21 lines modified | ||
1515 | end·readonly·def | 1515 | end·readonly·def |
1516 | /Encoding·256·array | 1516 | /Encoding·256·array |
1517 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1517 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1518 | dup·44·/comma·put | 1518 | dup·44·/comma·put |
1519 | dup·48·/zero·put | 1519 | dup·48·/zero·put |
1520 | dup·49·/one·put | 1520 | dup·49·/one·put |
1521 | dup·50·/two·put | 1521 | dup·50·/two·put |
1522 | dup·52·/four·put | ||
1523 | dup·5 | 1522 | dup·53·/five·put |
1523 | dup·56·/eight·put | ||
1524 | dup·58·/colon·put | 1524 | dup·58·/colon·put |
1525 | dup·7 | 1525 | dup·70·/F·put |
1526 | dup·97·/a·put | 1526 | dup·97·/a·put |
1527 | dup·98·/b·put | ||
1527 | dup·1 | 1528 | dup·101·/e·put |
1528 | dup·114·/r·put | 1529 | dup·114·/r·put |
1529 | dup·117·/u·put | 1530 | dup·117·/u·put |
1530 | dup·121·/y·put | 1531 | dup·121·/y·put |
1531 | readonly·def | 1532 | readonly·def |
1532 | currentdict·end | 1533 | currentdict·end |
1533 | currentfile·eexec | 1534 | currentfile·eexec |
1534 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1535 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1712, 89 lines modified | Offset 1713, 93 lines modified | ||
1712 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1713 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1713 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1714 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1714 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1715 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1715 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1716 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1716 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1717 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1717 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1718 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1718 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1719 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1719 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1720 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1720 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1721 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1722 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1723 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1724 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1725 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1726 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1727 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1728 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1729 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1730 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1731 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1732 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1733 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1734 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1735 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1736 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1737 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1738 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1739 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1740 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1741 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1742 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1743 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1744 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1745 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1746 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1747 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1748 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1749 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1750 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1751 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1752 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1753 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1754 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1755 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1756 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1757 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1758 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1759 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1760 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1761 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1762 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1763 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1764 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1765 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1766 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1767 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1768 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1769 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1770 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1771 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1772 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1773 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1774 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1775 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1776 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1777 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1778 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1779 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1780 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1781 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1782 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1783 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1784 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1785 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1786 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1787 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1788 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1789 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1790 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1791 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1792 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1793 | 1721 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1722 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1723 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1724 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1725 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1726 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1727 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 3767/15657 bytes (24.06%) of diff not shown. |
Offset 19, 15 lines modified | Offset 19, 15 lines modified | ||
19 | ··············•·int·nlocks·:·number·of·locks·made.\xd | 19 | ··············•·int·nlocks·:·number·of·locks·made.\xd |
20 | ··············•·int·nunlocks·:·number·of·unlocks·made.\xd | 20 | ··············•·int·nunlocks·:·number·of·unlocks·made.\xd |
21 | ··············•·the·mutual·exclusion·lock\xd | 21 | ··············•·the·mutual·exclusion·lock\xd |
22 | ···············For·Solaris·threads·we·have·mutex·t·*mutex.\xd | 22 | ···············For·Solaris·threads·we·have·mutex·t·*mutex.\xd |
23 | ···············For·POSIX·threads·we·have·pthread·mutex·t·*mutex.\xd | 23 | ···············For·POSIX·threads·we·have·pthread·mutex·t·*mutex.\xd |
24 | ···············For·no·threads·we·have·void·*mutex.\xd | 24 | ···············For·no·threads·we·have·void·*mutex.\xd |
25 | ·············································1\xd | 25 | ·············································1\xd |
26 | ··············2····························Lock·:·DRAFT· | 26 | ··············2····························Lock·:·DRAFT·February·18,·2025\xd |
27 | ··············1.2···Prototypes·and·descriptions·of·Lock·methods\xd | 27 | ··············1.2···Prototypes·and·descriptions·of·Lock·methods\xd |
28 | ··············1.2.1··Basic·methods\xd | 28 | ··············1.2.1··Basic·methods\xd |
29 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 29 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
30 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 30 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
31 | ················1.·Lock·*·Lock_new·(·void·)·;\xd | 31 | ················1.·Lock·*·Lock_new·(·void·)·;\xd |
32 | ··················This·method·simply·allocates·storage·for·the·Lock·structure·and·then·sets·the·default·fields\xd | 32 | ··················This·method·simply·allocates·storage·for·the·Lock·structure·and·then·sets·the·default·fields\xd |
33 | ··················by·a·call·to·Lock·setDefaultFields().\xd | 33 | ··················by·a·call·to·Lock·setDefaultFields().\xd |
Offset 53, 15 lines modified | Offset 53, 15 lines modified | ||
53 | ··················thread·package,·lockflag·!=·0·means·the·lock·will·be·initialized·to·synchronize·only·threads\xd | 53 | ··················thread·package,·lockflag·!=·0·means·the·lock·will·be·initialized·to·synchronize·only·threads\xd |
54 | ··················in·this·process.\xd | 54 | ··················in·this·process.\xd |
55 | ··················Error·checking:·If·lock·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 55 | ··················Error·checking:·If·lock·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
56 | ··············1.2.3··Utility·methods\xd | 56 | ··············1.2.3··Utility·methods\xd |
57 | ················1.·void·Lock_lock·(·Lock·*lock·)·;\xd | 57 | ················1.·void·Lock_lock·(·Lock·*lock·)·;\xd |
58 | ··················This·method·locks·the·lock.\xd | 58 | ··················This·method·locks·the·lock.\xd |
59 | ··················Error·checking:·If·lock·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 59 | ··················Error·checking:·If·lock·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
60 | ······································Lock·:·DRAFT·· | 60 | ······································Lock·:·DRAFT··February·18,·2025···················3\xd |
61 | ··············2.·void·Lock_unlock·(·Lock·*lock·)·;\xd | 61 | ··············2.·void·Lock_unlock·(·Lock·*lock·)·;\xd |
62 | ·················This·method·unlocks·the·lock.\xd | 62 | ·················This·method·unlocks·the·lock.\xd |
63 | ·················Error·checking:·If·lock·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 63 | ·················Error·checking:·If·lock·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
64 | ·······Index\xd | 64 | ·······Index\xd |
65 | ·······Lock·clearData(),·2\xd | 65 | ·······Lock·clearData(),·2\xd |
66 | ·······Lock·free(),·2\xd | 66 | ·······Lock·free(),·2\xd |
67 | ·······Lock·init(),·2\xd | 67 | ·······Lock·init(),·2\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·MPI.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·MPI.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1206, 20 lines modified | Offset 1206, 21 lines modified | ||
1206 | end·readonly·def | 1206 | end·readonly·def |
1207 | /Encoding·256·array | 1207 | /Encoding·256·array |
1208 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1208 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1209 | dup·44·/comma·put | 1209 | dup·44·/comma·put |
1210 | dup·48·/zero·put | 1210 | dup·48·/zero·put |
1211 | dup·49·/one·put | 1211 | dup·49·/one·put |
1212 | dup·50·/two·put | 1212 | dup·50·/two·put |
1213 | dup·52·/four·put | ||
1214 | dup·5 | 1213 | dup·53·/five·put |
1214 | dup·56·/eight·put | ||
1215 | dup·58·/colon·put | 1215 | dup·58·/colon·put |
1216 | dup·7 | 1216 | dup·70·/F·put |
1217 | dup·97·/a·put | 1217 | dup·97·/a·put |
1218 | dup·98·/b·put | ||
1218 | dup·1 | 1219 | dup·101·/e·put |
1219 | dup·114·/r·put | 1220 | dup·114·/r·put |
1220 | dup·117·/u·put | 1221 | dup·117·/u·put |
1221 | dup·121·/y·put | 1222 | dup·121·/y·put |
1222 | readonly·def | 1223 | readonly·def |
1223 | currentdict·end | 1224 | currentdict·end |
1224 | currentfile·eexec | 1225 | currentfile·eexec |
1225 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1226 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1403, 89 lines modified | Offset 1404, 93 lines modified | ||
1403 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1404 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1404 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1405 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1405 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1406 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1406 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1407 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1407 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1408 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1408 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1409 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1409 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1410 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1410 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1411 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1411 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1412 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1413 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1414 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1415 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1416 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1417 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1418 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1419 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1420 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1421 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1422 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1423 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1424 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1425 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1426 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1427 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1428 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1429 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1430 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1431 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1432 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1433 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1434 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1435 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1436 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1437 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1438 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1439 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1440 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1441 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1442 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1443 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1444 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1445 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1446 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1447 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1448 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1449 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1450 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1451 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1452 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1453 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1454 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1455 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1456 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1457 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1458 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1459 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1460 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1461 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1462 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1463 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1464 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1465 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1466 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1467 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1468 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1469 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1470 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1471 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1472 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1473 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1474 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1475 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1476 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1477 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1478 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1479 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1480 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1481 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1482 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1483 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1484 | 1412 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1413 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1414 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1415 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1416 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1417 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1418 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 43592/55481 bytes (78.57%) of diff not shown. |
Offset 31, 15 lines modified | Offset 31, 15 lines modified | ||
31 | ·················scatter/added·into·Y.\xd | 31 | ·················scatter/added·into·Y.\xd |
32 | ····················TheMatMulInfoobjectstoresallthenecessaryinformationtomakethishappen.·ThereisoneMatMulInfo\xd | 32 | ····················TheMatMulInfoobjectstoresallthenecessaryinformationtomakethishappen.·ThereisoneMatMulInfo\xd |
33 | ·················object·per·processor.·It·has·the·following·fields.\xd | 33 | ·················object·per·processor.·It·has·the·following·fields.\xd |
34 | ····················•·symflag·—·symmetry·flag·for·A\xd | 34 | ····················•·symflag·—·symmetry·flag·for·A\xd |
35 | ·························–·0·(SPOOLES·SYMMETRIC)·–·symmetric·matrix\xd | 35 | ·························–·0·(SPOOLES·SYMMETRIC)·–·symmetric·matrix\xd |
36 | ·························–·1·(SPOOLES·HERMITIAN)·–·hermitian·matrix\xd | 36 | ·························–·1·(SPOOLES·HERMITIAN)·–·hermitian·matrix\xd |
37 | ·····································································1\xd | 37 | ·····································································1\xd |
38 | ·················2······································MPI·:·DRAFT· | 38 | ·················2······································MPI·:·DRAFT·February·18,·2025\xd |
39 | ·························–·2·(SPOOLES·NONSYMMETRIC)·–·nonsymmetric·matrix\xd | 39 | ·························–·2·(SPOOLES·NONSYMMETRIC)·–·nonsymmetric·matrix\xd |
40 | ····················•·opflag·—·operation·flag·for·the·multiply\xd | 40 | ····················•·opflag·—·operation·flag·for·the·multiply\xd |
41 | ·························–·0·(MMM·WITH·A)·—·perform·Y·:=·Y·+αAX\xd | 41 | ·························–·0·(MMM·WITH·A)·—·perform·Y·:=·Y·+αAX\xd |
42 | ·························–·1·(MMM·WITH·AT)·—·perform·Y·:=·Y·+αATX\xd | 42 | ·························–·1·(MMM·WITH·AT)·—·perform·Y·:=·Y·+αATX\xd |
43 | ·························–·2·(MMM·WITH·AH)·—·perform·Y·:=·Y·+αAHX\xd | 43 | ·························–·2·(MMM·WITH·AH)·—·perform·Y·:=·Y·+αAHX\xd |
44 | ····················•·IV·*XownedIV·—·list·of·rows·of·X·that·are·owned·by·this·processor,·these·form·the·rows·of·Xq.\xd | 44 | ····················•·IV·*XownedIV·—·list·of·rows·of·X·that·are·owned·by·this·processor,·these·form·the·rows·of·Xq.\xd |
45 | ····················•·IV·*XsupIV·—·list·of·rows·of·X·that·are·accessed·by·this·processor,·these·form·the·rows·of·Xq\xd | 45 | ····················•·IV·*XsupIV·—·list·of·rows·of·X·that·are·accessed·by·this·processor,·these·form·the·rows·of·Xq\xd |
Offset 73, 15 lines modified | Offset 73, 15 lines modified | ||
73 | ·················In·a·distributed·environment,·data·must·be·distributed,·and·sometimes·during·a·computation,·data·must·be\xd | 73 | ·················In·a·distributed·environment,·data·must·be·distributed,·and·sometimes·during·a·computation,·data·must·be\xd |
74 | ·················re-distributed.·These·methods·split·and·redistribute·four·data·objects.\xd | 74 | ·················re-distributed.·These·methods·split·and·redistribute·four·data·objects.\xd |
75 | ····················1.·void·DenseMtx_MPI_splitByRows·(·DenseMtx·*mtx,·IV·*mapIV,·int·stats[],·int·msglvl,\xd | 75 | ····················1.·void·DenseMtx_MPI_splitByRows·(·DenseMtx·*mtx,·IV·*mapIV,·int·stats[],·int·msglvl,\xd |
76 | ·····························································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd | 76 | ·····························································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd |
77 | ·······················This·method·splits·and·redistributes·the·DenseMtx·object·based·on·the·mapIV·object·that·maps·rows·to\xd | 77 | ·······················This·method·splits·and·redistributes·the·DenseMtx·object·based·on·the·mapIV·object·that·maps·rows·to\xd |
78 | ·······················processes.·The·messages·that·will·be·sent·require·nproc·consecutive·tags·—·the·first·is·the·parameter\xd | 78 | ·······················processes.·The·messages·that·will·be·sent·require·nproc·consecutive·tags·—·the·first·is·the·parameter\xd |
79 | ·······················firsttag.·On·return,·the·stats[]·vector·contains·the·following·information.\xd | 79 | ·······················firsttag.·On·return,·the·stats[]·vector·contains·the·following·information.\xd |
80 | ············································MPI·:·DRAFT·· | 80 | ············································MPI·:·DRAFT··February·18,·2025························3\xd |
81 | ··························stats[0]·—·#ofmessagessent··········stats[1]··—·#ofbytessent\xd | 81 | ··························stats[0]·—·#ofmessagessent··········stats[1]··—·#ofbytessent\xd |
82 | ··························stats[2]·—·#ofmessagesreceived······stats[3]··—·#ofbytesreceived\xd | 82 | ··························stats[2]·—·#ofmessagesreceived······stats[3]··—·#ofbytesreceived\xd |
83 | ··················Note,·the·values·in·stats[]·are·incremented,·i.e.,·the·stats[]·vector·is·not·zeroed·at·the·start·of·the\xd | 83 | ··················Note,·the·values·in·stats[]·are·incremented,·i.e.,·the·stats[]·vector·is·not·zeroed·at·the·start·of·the\xd |
84 | ··················method,·and·so·can·be·used·to·accumulated·information·with·multiple·calls.\xd | 84 | ··················method,·and·so·can·be·used·to·accumulated·information·with·multiple·calls.\xd |
85 | ··················Error·checking:·If·mtx·or·rowmapIV·is·NULL,·or·if·msglvl·>·0·and·msgFile·is·NULL,·or·if·firsttag·<\xd | 85 | ··················Error·checking:·If·mtx·or·rowmapIV·is·NULL,·or·if·msglvl·>·0·and·msgFile·is·NULL,·or·if·firsttag·<\xd |
86 | ··················0·or·firsttag·+·nproc·is·larger·than·the·largest·available·tag,·an·error·message·is·printed·and·the\xd | 86 | ··················0·or·firsttag·+·nproc·is·larger·than·the·largest·available·tag,·an·error·message·is·printed·and·the\xd |
87 | ··················program·exits.\xd | 87 | ··················program·exits.\xd |
Offset 117, 15 lines modified | Offset 117, 15 lines modified | ||
117 | ··················use·the·chevron·coordinate·type·to·store·the·matrix·entries.·This·method·will·redistribute·a·matrix\xd | 117 | ··················use·the·chevron·coordinate·type·to·store·the·matrix·entries.·This·method·will·redistribute·a·matrix\xd |
118 | ··················by·rows·if·the·coordinate·type·is·1·(for·rows)·and·mapIV·is·a·row·map.·Similarly,·this·method·will\xd | 118 | ··················by·rows·if·the·coordinate·type·is·1·(for·rows)·and·mapIV·is·a·row·map.·Similarly,·this·method·will\xd |
119 | ··················redistribute·a·matrix·by·columns·if·the·coordinate·type·is·2·(for·columns)·and·mapIV·is·a·column·map.\xd | 119 | ··················redistribute·a·matrix·by·columns·if·the·coordinate·type·is·2·(for·columns)·and·mapIV·is·a·column·map.\xd |
120 | ··················See·the·InpMtx·object·for·details.·The·messages·that·will·be·sent·require·nproc·consecutive·tags·—·the\xd | 120 | ··················See·the·InpMtx·object·for·details.·The·messages·that·will·be·sent·require·nproc·consecutive·tags·—·the\xd |
121 | ··················first·is·the·parameter·firsttag.·On·return,·the·stats[]·vector·contains·the·following·information.\xd | 121 | ··················first·is·the·parameter·firsttag.·On·return,·the·stats[]·vector·contains·the·following·information.\xd |
122 | ··························stats[0]·—·#ofmessagessent··········stats[1]··—·#ofbytessent\xd | 122 | ··························stats[0]·—·#ofmessagessent··········stats[1]··—·#ofbytessent\xd |
123 | ··························stats[2]·—·#ofmessagesreceived······stats[3]··—·#ofbytesreceived\xd | 123 | ··························stats[2]·—·#ofmessagesreceived······stats[3]··—·#ofbytesreceived\xd |
124 | ··············4······························· | 124 | ··············4·······························MPI·:·DRAFT·February·18,·2025\xd |
125 | ···················Note,·the·values·in·stats[]·are·incremented,·i.e.,·the·stats[]·vector·is·not·zeroed·at·the·start·of·the\xd | 125 | ···················Note,·the·values·in·stats[]·are·incremented,·i.e.,·the·stats[]·vector·is·not·zeroed·at·the·start·of·the\xd |
126 | ···················method,·and·so·can·be·used·to·accumulated·information·with·multiple·calls.\xd | 126 | ···················method,·and·so·can·be·used·to·accumulated·information·with·multiple·calls.\xd |
127 | ···················Error·checking:·If·firsttag·<·0·or·firsttag·+·nproc·is·larger·than·the·largest·available·tag,·an\xd | 127 | ···················Error·checking:·If·firsttag·<·0·or·firsttag·+·nproc·is·larger·than·the·largest·available·tag,·an\xd |
128 | ···················error·message·is·printed·and·the·program·exits.\xd | 128 | ···················error·message·is·printed·and·the·program·exits.\xd |
129 | ················5.·InpMtx·*·InpMtx_MPI_splitFromGlobal·(·InpMtx·*Aglobal,·InpMtx·*Alocal,\xd | 129 | ················5.·InpMtx·*·InpMtx_MPI_splitFromGlobal·(·InpMtx·*Aglobal,·InpMtx·*Alocal,\xd |
130 | ·························································IV·*mapIV,·int·root,·int·stats[],·int·msglvl,\xd | 130 | ·························································IV·*mapIV,·int·root,·int·stats[],·int·msglvl,\xd |
131 | ·························································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd | 131 | ·························································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd |
Offset 158, 15 lines modified | Offset 158, 15 lines modified | ||
158 | ···················knownpriortoenteringthis·method.·Onreturn,·the·stats[]vectorcontainsthe·followinginformation.\xd | 158 | ···················knownpriortoenteringthis·method.·Onreturn,·the·stats[]vectorcontainsthe·followinginformation.\xd |
159 | ···························stats[0]··—·#ofmessagessent···········stats[1]··—·#ofbytessent\xd | 159 | ···························stats[0]··—·#ofmessagessent···········stats[1]··—·#ofbytessent\xd |
160 | ···························stats[2]··—·#ofmessagesreceived·······stats[3]··—·#ofbytesreceived\xd | 160 | ···························stats[2]··—·#ofmessagesreceived·······stats[3]··—·#ofbytesreceived\xd |
161 | ···················Note,·the·values·in·stats[]·are·incremented,·i.e.,·the·stats[]·vector·is·not·zeroed·at·the·start·of·the\xd | 161 | ···················Note,·the·values·in·stats[]·are·incremented,·i.e.,·the·stats[]·vector·is·not·zeroed·at·the·start·of·the\xd |
162 | ···················method,·and·so·can·be·used·to·accumulated·information·with·multiple·calls.\xd | 162 | ···················method,·and·so·can·be·used·to·accumulated·information·with·multiple·calls.\xd |
163 | ···················Error·checking:·If·mtx·or·rowmapIV·is·NULL,·or·if·msglvl·>·0·and·msgFile·is·NULL,·or·if·firsttag·<\xd | 163 | ···················Error·checking:·If·mtx·or·rowmapIV·is·NULL,·or·if·msglvl·>·0·and·msgFile·is·NULL,·or·if·firsttag·<\xd |
164 | ···················0·is·larger·than·the·largest·available·tag,·an·error·message·is·printed·and·the·program·exits.\xd | 164 | ···················0·is·larger·than·the·largest·available·tag,·an·error·message·is·printed·and·the·program·exits.\xd |
165 | ······················································· | 165 | ·······················································MPI·:·DRAFT······February·18,·2025···································5\xd |
166 | ·················1.2.2·····Gather·and·scatter·methods\xd | 166 | ·················1.2.2·····Gather·and·scatter·methods\xd |
167 | ·················These·method·gather·and·scatter/add·rows·of·DenseMtx·objects.·These·operations·are·performed·during·the\xd | 167 | ·················These·method·gather·and·scatter/add·rows·of·DenseMtx·objects.·These·operations·are·performed·during·the\xd |
168 | ·················distributed·matrix-matrixmultiply.·ThegatheroperationXq·········←XisperformedbyDenseMtx·MPI·gatherRows(),\xd | 168 | ·················distributed·matrix-matrixmultiply.·ThegatheroperationXq·········←XisperformedbyDenseMtx·MPI·gatherRows(),\xd |
169 | ······························································P·············supp\xd | 169 | ······························································P·············supp\xd |
170 | ·················while·the·scatter/add·operation·Y·q·:=·Y·q·+·····Yr····is·performed·by·DenseMtx·MPI·scatterAddRows().\xd | 170 | ·················while·the·scatter/add·operation·Y·q·:=·Y·q·+·····Yr····is·performed·by·DenseMtx·MPI·scatterAddRows().\xd |
171 | ································································r··supp\xd | 171 | ································································r··supp\xd |
172 | ····················1.·void·DenseMtx_MPI_gatherRows·(·DenseMtx·*Y,·DenseMtx·*X,·IVL·*sendIVL,\xd | 172 | ····················1.·void·DenseMtx_MPI_gatherRows·(·DenseMtx·*Y,·DenseMtx·*X,·IVL·*sendIVL,\xd |
Offset 202, 15 lines modified | Offset 202, 15 lines modified | ||
202 | ·················1.2.3·····Symbolic·Factorization·methods\xd | 202 | ·················1.2.3·····Symbolic·Factorization·methods\xd |
203 | ····················1.·IVL·*·SymbFac_MPI_initFromInpMtx·(·ETree·*etree,·IV·*frontOwnersIV,\xd | 203 | ····················1.·IVL·*·SymbFac_MPI_initFromInpMtx·(·ETree·*etree,·IV·*frontOwnersIV,\xd |
204 | ·································································InpMtx·*inpmtx,·int·stats[],·int·msglvl,\xd | 204 | ·································································InpMtx·*inpmtx,·int·stats[],·int·msglvl,\xd |
205 | ·································································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd | 205 | ·································································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd |
206 | ·······················IVL·*·SymbFac_MPI_initFromPencil·(·ETree·*etree,·IV·*frontOwnersIV,\xd | 206 | ·······················IVL·*·SymbFac_MPI_initFromPencil·(·ETree·*etree,·IV·*frontOwnersIV,\xd |
207 | ·································································Pencil·*pencil,·int·stats[],·int·msglvl,\xd | 207 | ·································································Pencil·*pencil,·int·stats[],·int·msglvl,\xd |
208 | ·································································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd | 208 | ·································································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd |
209 | ················6···································· | 209 | ················6····································MPI·:·DRAFT·February·18,·2025\xd |
210 | ······················ThesemethodsareusedinplaceoftheSymbfac·initFrom{InpMtx,Pencil}()methodstocomputethe\xd | 210 | ······················ThesemethodsareusedinplaceoftheSymbfac·initFrom{InpMtx,Pencil}()methodstocomputethe\xd |
211 | ······················symbolic·factorization.·The·ETree·object·is·assumed·to·be·replicated·over·the·processes.·The·InpMtx\xd | 211 | ······················symbolic·factorization.·The·ETree·object·is·assumed·to·be·replicated·over·the·processes.·The·InpMtx\xd |
212 | ······················and·Pencil·objects·are·partitioned·among·the·processes.·Therefore,·to·compute·the·IVL·object·that\xd | 212 | ······················and·Pencil·objects·are·partitioned·among·the·processes.·Therefore,·to·compute·the·IVL·object·that\xd |
213 | ······················contains·the·symbolic·factorization·is·a·distributed,·cooperative·process.·At·the·end·of·the·symbolic\xd | 213 | ······················contains·the·symbolic·factorization·is·a·distributed,·cooperative·process.·At·the·end·of·the·symbolic\xd |
214 | ······················factorization,·each·process·will·own·a·portion·of·the·IVL·object.·The·IVL·object·is·neither·replicated\xd | 214 | ······················factorization,·each·process·will·own·a·portion·of·the·IVL·object.·The·IVL·object·is·neither·replicated\xd |
215 | ······················nor·partitioned·(except·in·trivial·cases),·but·the·IVL·object·on·each·process·contains·just·a·portion,\xd | 215 | ······················nor·partitioned·(except·in·trivial·cases),·but·the·IVL·object·on·each·process·contains·just·a·portion,\xd |
216 | ······················usually·not·much·more·than·what·it·needs·to·know·for·its·part·of·the·factorization·and·solves.\xd | 216 | ······················usually·not·much·more·than·what·it·needs·to·know·for·its·part·of·the·factorization·and·solves.\xd |
Offset 247, 15 lines modified | Offset 247, 15 lines modified | ||
247 | ·····························cpus[0]···–···initialize·fronts···········cpus[7]····–···extract·postponed·data\xd | 247 | ·····························cpus[0]···–···initialize·fronts···········cpus[7]····–···extract·postponed·data\xd |
248 | ·····························cpus[1]···–···load·original·entries·······cpus[8]····–···store·factor·entries\xd | 248 | ·····························cpus[1]···–···load·original·entries·······cpus[8]····–···store·factor·entries\xd |
249 | ·····························cpus[2]···–···update·fronts···············cpus[9]····–···post·initial·receives\xd | 249 | ·····························cpus[2]···–···update·fronts···············cpus[9]····–···post·initial·receives\xd |
250 | ·····························cpus[3]···–···insert·aggregate·data······cpus[10]····–···check·for·received·messages\xd | 250 | ·····························cpus[3]···–···insert·aggregate·data······cpus[10]····–···check·for·received·messages\xd |
251 | ·····························cpus[4]···–···assemble·aggregate·data····cpus[11]····–···post·initial·sends\xd | 251 | ·····························cpus[4]···–···assemble·aggregate·data····cpus[11]····–···post·initial·sends\xd |
252 | ·····························cpus[5]···–···assemble·postponed·data····cpus[12]····–···check·for·sent·messages\xd | 252 | ·····························cpus[5]···–···assemble·postponed·data····cpus[12]····–···check·for·sent·messages\xd |
253 | ·····························cpus[6]···–···factor·fronts\xd | 253 | ·····························cpus[6]···–···factor·fronts\xd |
254 | ············································MPI·:·DRAFT·· | 254 | ············································MPI·:·DRAFT··February·18,·2025························7\xd |
255 | ··················Onreturn,·the·stats[]·vector·has·the·following·information.\xd | 255 | ··················Onreturn,·the·stats[]·vector·has·the·following·information.\xd |
256 | ···································stats[0]··—·#ofpivots\xd | 256 | ···································stats[0]··—·#ofpivots\xd |
257 | ···································stats[1]··—·#ofpivot·tests\xd | 257 | ···································stats[1]··—·#ofpivot·tests\xd |
258 | ···································stats[2]··—·#ofdelayed·rows·and·columns\xd | 258 | ···································stats[2]··—·#ofdelayed·rows·and·columns\xd |
259 | ···································stats[3]··—·#ofentries·in·D\xd | 259 | ···································stats[3]··—·#ofentries·in·D\xd |
260 | ···································stats[4]··—·#ofentries·in·L\xd | 260 | ···································stats[4]··—·#ofentries·in·L\xd |
261 | ···································stats[5]··—·#ofentries·in·U\xd | 261 | ···································stats[5]··—·#ofentries·in·U\xd |
Offset 293, 15 lines modified | Offset 293, 15 lines modified | ||
293 | ··················Error·checking:·If·frontmtx,·frontOwnersIV·or·stats·is·NULL,·or·if·firsttag·<·0·or·firsttag·+\xd | 293 | ··················Error·checking:·If·frontmtx,·frontOwnersIV·or·stats·is·NULL,·or·if·firsttag·<·0·or·firsttag·+\xd |
294 | ··················nproc,·is·larger·than·the·largest·available·tag,·or·if·msglvl·>·0·and·msgFile·is·NULL,·an·error·message\xd | 294 | ··················nproc,·is·larger·than·the·largest·available·tag,·or·if·msglvl·>·0·and·msgFile·is·NULL,·an·error·message\xd |
295 | ··················is·printed·and·the·program·exits.\xd | 295 | ··················is·printed·and·the·program·exits.\xd |
296 | ················3.·void·IV_MPI_allgather·(·IV·*iv,·IV·*ownersIV,·int·stats[],·int·msglvl,\xd | 296 | ················3.·void·IV_MPI_allgather·(·IV·*iv,·IV·*ownersIV,·int·stats[],·int·msglvl,\xd |
297 | ·········································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd | 297 | ·········································FILE·*msgFile,·int·firsttag,·MPI_Comm·comm·)·;\xd |
298 | ··················After·a·factorization·with·pivoting,·the·frontsizesIVobject·needs·to·be·made·globalon·eachprocessor.\xd | 298 | ··················After·a·factorization·with·pivoting,·the·frontsizesIVobject·needs·to·be·made·globalon·eachprocessor.\xd |
299 | ··················This·methods·takes·the·individual·entries·of·an·IV·object·whose·owners·are·specified·by·the·ownersIV\xd | 299 | ··················This·methods·takes·the·individual·entries·of·an·IV·object·whose·owners·are·specified·by·the·ownersIV\xd |
300 | ···············8··································MPI·:·DRAFT· | 300 | ···············8··································MPI·:·DRAFT·February·18,·2025\xd |
301 | ····················object,·and·communicates·the·entries·around·the·processors·until·the·global·IV·object·is·present·on\xd | 301 | ····················object,·and·communicates·the·entries·around·the·processors·until·the·global·IV·object·is·present·on\xd |
302 | ····················each.·The·messagesthat·will·be·sent·require·at·most·nprocconsecutive·tags·—·the·first·is·the·parameter\xd | 302 | ····················each.·The·messagesthat·will·be·sent·require·at·most·nprocconsecutive·tags·—·the·first·is·the·parameter\xd |
303 | ····················firsttag.\xd | 303 | ····················firsttag.\xd |
304 | ····················Error·checking:·If·iv,·ownersIV·or·stats·is·NULL,·or·if·firsttag·<·0·or·firsttag·+·nproc,·is·larger\xd | 304 | ····················Error·checking:·If·iv,·ownersIV·or·stats·is·NULL,·or·if·firsttag·<·0·or·firsttag·+·nproc,·is·larger\xd |
305 | ····················than·the·largest·available·tag,·or·if·msglvl·>·0·and·msgFile·is·NULL,·an·error·message·is·printed·and\xd | 305 | ····················than·the·largest·available·tag,·or·if·msglvl·>·0·and·msgFile·is·NULL,·an·error·message·is·printed·and\xd |
306 | ····················the·program·exits.\xd | 306 | ····················the·program·exits.\xd |
307 | ··················4.·void·IVL_MPI_allgather·(·IVL·*ivl,·IV·*ownersIV,·int·stats[],·int·msglvl,\xd | 307 | ··················4.·void·IVL_MPI_allgather·(·IVL·*ivl,·IV·*ownersIV,·int·stats[],·int·msglvl,\xd |
Offset 334, 15 lines modified | Offset 334, 15 lines modified | ||
334 | ···········································stats[4]···—·#ofsolution·messages·received\xd | 334 | ···········································stats[4]···—·#ofsolution·messages·received\xd |
335 | ···········································stats[5]···—·#ofaggregatemessages·received\xd | 335 | ···········································stats[5]···—·#ofaggregatemessages·received\xd |
336 | ···········································stats[6]···—·#ofsolution·bytes·received\xd | 336 | ···········································stats[6]···—·#ofsolution·bytes·received\xd |
337 | ···········································stats[7]···—·#ofaggregatebytes·received\xd | 337 | ···········································stats[7]···—·#ofaggregatebytes·received\xd |
338 | ····················Error·checking:·If·frontmtx,·mtxX,mtxB,·mtxmanager,solvemap,cpusorstatsisNULL,oriffirsttag\xd | 338 | ····················Error·checking:·If·frontmtx,·mtxX,mtxB,·mtxmanager,solvemap,cpusorstatsisNULL,oriffirsttag\xd |
339 | ····················<·0·or·firsttag·+·2*nfront·is·larger·than·the·largest·available·tag,·or·if·msglvl·>·0·and·msgFile\xd | 339 | ····················<·0·or·firsttag·+·2*nfront·is·larger·than·the·largest·available·tag,·or·if·msglvl·>·0·and·msgFile\xd |
340 | ····················is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 340 | ····················is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
341 | ············································MPI·:·DRAFT·· | 341 | ············································MPI·:·DRAFT··February·18,·2025························9\xd |
342 | ··············1.2.7··Matrix-matrix·multiply·methods\xd | 342 | ··············1.2.7··Matrix-matrix·multiply·methods\xd |
343 | ··············The·usual·sequence·of·events·is·as·follows.\xd | 343 | ··············The·usual·sequence·of·events·is·as·follows.\xd |
344 | ················•·Set·up·the·data·structure·via·a·call·to·MatMul·MPI·setup().\xd | 344 | ················•·Set·up·the·data·structure·via·a·call·to·MatMul·MPI·setup().\xd |
345 | ················•·Convert·the·local·Aq·matrix·to·local·indices·via·a·call·to·MatMul·setLocalIndices().\xd | 345 | ················•·Convert·the·local·Aq·matrix·to·local·indices·via·a·call·to·MatMul·setLocalIndices().\xd |
346 | ················•·Compute·the·matrix-matrix·multiply·with·a·call·to·MatMul·MPI·mmm().·Inside·this·method,·the·MPI\xd | 346 | ················•·Compute·the·matrix-matrix·multiply·with·a·call·to·MatMul·MPI·mmm().·Inside·this·method,·the·MPI\xd |
347 | ··················methods·DenseMtx·MPI·gatherRows()and·DenseMtx·MPI·scatterAddRows()are·called,·along·with·a\xd | 347 | ··················methods·DenseMtx·MPI·gatherRows()and·DenseMtx·MPI·scatterAddRows()are·called,·along·with·a\xd |
348 | ··················serial·InpMtx·matrix-matrix·multiply·method.\xd | 348 | ··················serial·InpMtx·matrix-matrix·multiply·method.\xd |
Max diff block lines reached; 16647/29204 bytes (57.00%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·MSMD.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·MSMD.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1229, 20 lines modified | Offset 1229, 21 lines modified | ||
1229 | end·readonly·def | 1229 | end·readonly·def |
1230 | /Encoding·256·array | 1230 | /Encoding·256·array |
1231 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1231 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1232 | dup·44·/comma·put | 1232 | dup·44·/comma·put |
1233 | dup·48·/zero·put | 1233 | dup·48·/zero·put |
1234 | dup·49·/one·put | 1234 | dup·49·/one·put |
1235 | dup·50·/two·put | 1235 | dup·50·/two·put |
1236 | dup·52·/four·put | ||
1237 | dup·5 | 1236 | dup·53·/five·put |
1237 | dup·56·/eight·put | ||
1238 | dup·58·/colon·put | 1238 | dup·58·/colon·put |
1239 | dup·7 | 1239 | dup·70·/F·put |
1240 | dup·97·/a·put | 1240 | dup·97·/a·put |
1241 | dup·98·/b·put | ||
1241 | dup·1 | 1242 | dup·101·/e·put |
1242 | dup·114·/r·put | 1243 | dup·114·/r·put |
1243 | dup·117·/u·put | 1244 | dup·117·/u·put |
1244 | dup·121·/y·put | 1245 | dup·121·/y·put |
1245 | readonly·def | 1246 | readonly·def |
1246 | currentdict·end | 1247 | currentdict·end |
1247 | currentfile·eexec | 1248 | currentfile·eexec |
1248 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1249 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1426, 89 lines modified | Offset 1427, 93 lines modified | ||
1426 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1427 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1427 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1428 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1428 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1429 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1429 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1430 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1430 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1431 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1431 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1432 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1432 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1433 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1433 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1434 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1434 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1435 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1436 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1437 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1438 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1439 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1440 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1441 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1442 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1443 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1444 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1445 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1446 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1447 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1448 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1449 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1450 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1451 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1452 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1453 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1454 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1455 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1456 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1457 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1458 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1459 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1460 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1461 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1462 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1463 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1464 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1465 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1466 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1467 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1468 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1469 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1470 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1471 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1472 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1473 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1474 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1475 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1476 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1477 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1478 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1479 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1480 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1481 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1482 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1483 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1484 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1485 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1486 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1487 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1488 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1489 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1490 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1491 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1492 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1493 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1494 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1495 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1496 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1497 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1498 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1499 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1500 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1501 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1502 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1503 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1504 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1505 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1506 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1507 | 1435 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1436 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1437 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1438 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1439 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1440 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1441 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 27184/39074 bytes (69.57%) of diff not shown. |
Offset 21, 15 lines modified | Offset 21, 15 lines modified | ||
21 | ····················•·approximate·external·degree,·(d·from·[?])·and·[?],·or\xd | 21 | ····················•·approximate·external·degree,·(d·from·[?])·and·[?],·or\xd |
22 | ······························································˜\xd | 22 | ······························································˜\xd |
23 | ····················•·half·external·and·half·approximate,·(d·from·[?]),·or\xd | 23 | ····················•·half·external·and·half·approximate,·(d·from·[?]),·or\xd |
24 | ····················•·a·constant·priority·(to·induce·maximal·independent·set·elimination).\xd | 24 | ····················•·a·constant·priority·(to·induce·maximal·independent·set·elimination).\xd |
25 | ···················1The·ETree·object·has·the·Tree·object·that·defines·the·connectivity·of·the·fronts,·knows·the·internal·and·external\xd | 25 | ···················1The·ETree·object·has·the·Tree·object·that·defines·the·connectivity·of·the·fronts,·knows·the·internal·and·external\xd |
26 | ················size·of·each·front,·and·has·a·map·from·the·vertices·to·the·fronts.\xd | 26 | ················size·of·each·front,·and·has·a·map·from·the·vertices·to·the·fronts.\xd |
27 | ···································································1\xd | 27 | ···································································1\xd |
28 | ···········2·······················MSMD·:·DRAFT· | 28 | ···········2·······················MSMD·:·DRAFT·February·18,·2025\xd |
29 | ···········We·intend·to·add·more·priorities,·e.g.,·approximate·deficiency·from·[?],·[?]·and·[?].\xd | 29 | ···········We·intend·to·add·more·priorities,·e.g.,·approximate·deficiency·from·[?],·[?]·and·[?].\xd |
30 | ··············Choose·a·priority,·then·specify·the·definition·of·a·step,·how·to·choose·an·independent·set·of\xd | 30 | ··············Choose·a·priority,·then·specify·the·definition·of·a·step,·how·to·choose·an·independent·set·of\xd |
31 | ···········vertices·to·eliminate·at·a·time.·Then·provide·a·map·from·each·vertex·to·the·stage·at·which·it·will\xd | 31 | ···········vertices·to·eliminate·at·a·time.·Then·provide·a·map·from·each·vertex·to·the·stage·at·which·it·will\xd |
32 | ···········be·eliminated.\xd | 32 | ···········be·eliminated.\xd |
33 | ··············Presently·there·is·one·ordering·method,·MSMD·order().·It·orders·the·vertices·by·stages,·i.e.\xd | 33 | ··············Presently·there·is·one·ordering·method,·MSMD·order().·It·orders·the·vertices·by·stages,·i.e.\xd |
34 | ···········vertices·in·stage·k·will·be·ordered·before·vertices·in·stage·k·+·1.·Inside·each·stage·the·vertices·are\xd | 34 | ···········vertices·in·stage·k·will·be·ordered·before·vertices·in·stage·k·+·1.·Inside·each·stage·the·vertices·are\xd |
35 | ···········ordered·by·steps.·At·each·step·an·independent·set·of·vertices·is·eliminated,·and·the·choice·is·based\xd | 35 | ···········ordered·by·steps.·At·each·step·an·independent·set·of·vertices·is·eliminated,·and·the·choice·is·based\xd |
Offset 57, 15 lines modified | Offset 57, 15 lines modified | ||
57 | ···········The·tools·are·largely·written·so·any·of·these·three·algorithms·can·be·prototyped·in·a·small·amount\xd | 57 | ···········The·tools·are·largely·written·so·any·of·these·three·algorithms·can·be·prototyped·in·a·small·amount\xd |
58 | ···········of·time·and·effort.\xd | 58 | ···········of·time·and·effort.\xd |
59 | ···········1.1··Data·Structure\xd | 59 | ···········1.1··Data·Structure\xd |
60 | ···········There·are·four·typed·objects.\xd | 60 | ···········There·are·four·typed·objects.\xd |
61 | ·············•·MSMD·:·the·main·object.\xd | 61 | ·············•·MSMD·:·the·main·object.\xd |
62 | ·············•·MSMDinfo·:·an·object·that·communicate·parameter·choices·from·the·caller·to·the·MSMD·object\xd | 62 | ·············•·MSMDinfo·:·an·object·that·communicate·parameter·choices·from·the·caller·to·the·MSMD·object\xd |
63 | ···············and·information·and·statistics·from·the·MSMD·object·to·the·caller.\xd | 63 | ···············and·information·and·statistics·from·the·MSMD·object·to·the·caller.\xd |
64 | ······································ | 64 | ······································MSMD·:·DRAFT···February·18,·2025···················3\xd |
65 | ···············•·MSMDstageInfo·:·an·object·that·contains·statistics·for·a·stage·of·elimination,·e.g.,·number·of\xd | 65 | ···············•·MSMDstageInfo·:·an·object·that·contains·statistics·for·a·stage·of·elimination,·e.g.,·number·of\xd |
66 | ·················steps,·number·of·vertices·eliminated,·weight·of·vertices·eliminated,·etc.\xd | 66 | ·················steps,·number·of·vertices·eliminated,·weight·of·vertices·eliminated,·etc.\xd |
67 | ···············•·MSMDvtx·:·an·object·that·models·a·vertex.\xd | 67 | ···············•·MSMDvtx·:·an·object·that·models·a·vertex.\xd |
68 | ············Auser·needs·to·understand·the·MSMDinfo·object,·so·this·is·where·we·will·start·our·description.\xd | 68 | ············Auser·needs·to·understand·the·MSMDinfo·object,·so·this·is·where·we·will·start·our·description.\xd |
69 | ············1.1.1··MSMDinfo·:·define·your·algorithm\xd | 69 | ············1.1.1··MSMDinfo·:·define·your·algorithm\xd |
70 | ···············•·int·compressFlag·–·define·initial·and·subsequent·compressions·of·the·graph.\xd | 70 | ···············•·int·compressFlag·–·define·initial·and·subsequent·compressions·of·the·graph.\xd |
71 | ·················Wecompress·a·graph·using·a·checksum·technique.·At·some·point·in·the·elimination,·vertices\xd | 71 | ·················Wecompress·a·graph·using·a·checksum·technique.·At·some·point·in·the·elimination,·vertices\xd |
Offset 93, 15 lines modified | Offset 93, 15 lines modified | ||
93 | ···············•·double·stepType·—·define·the·elimination·steps.\xd | 93 | ···············•·double·stepType·—·define·the·elimination·steps.\xd |
94 | ···················–·stepType·==·0·—·only·one·vertex·of·minimum·priority·is·eliminated·at·each·step,·e.g.,\xd | 94 | ···················–·stepType·==·0·—·only·one·vertex·of·minimum·priority·is·eliminated·at·each·step,·e.g.,\xd |
95 | ·····················as·used·in·SPARSPAK’s·GENQMD,·YSMP’s·ordering,·and·AMD·[?].\xd | 95 | ·····················as·used·in·SPARSPAK’s·GENQMD,·YSMP’s·ordering,·and·AMD·[?].\xd |
96 | ···················–·stepType·==·1·—·an·independent·set·of·vertices·of·minimum·priority·is·eliminated·at\xd | 96 | ···················–·stepType·==·1·—·an·independent·set·of·vertices·of·minimum·priority·is·eliminated·at\xd |
97 | ·····················each·step,·e.g.,·as·used·in·GENMMD,·multiple·minimum·degree.\xd | 97 | ·····················each·step,·e.g.,·as·used·in·GENMMD,·multiple·minimum·degree.\xd |
98 | ···················–·stepType·>·1—anindependentsetofvertices·iseliminated·whoseprioritieslie·between\xd | 98 | ···················–·stepType·>·1—anindependentsetofvertices·iseliminated·whoseprioritieslie·between\xd |
99 | ·····················the·minimum·priority·and·the·minimum·priority·multiplied·by·stepType.\xd | 99 | ·····················the·minimum·priority·and·the·minimum·priority·multiplied·by·stepType.\xd |
100 | ··············4····························MSMD·:·DRAFT· | 100 | ··············4····························MSMD·:·DRAFT·February·18,·2025\xd |
101 | ···················The·default·value·is·1,·multiple·elimination·of·vertices·with·minimum·priority.\xd | 101 | ···················The·default·value·is·1,·multiple·elimination·of·vertices·with·minimum·priority.\xd |
102 | ·················•·int·seed·—·a·seed·used·for·a·random·number·generator,·this·introduces·a·necessary·random\xd | 102 | ·················•·int·seed·—·a·seed·used·for·a·random·number·generator,·this·introduces·a·necessary·random\xd |
103 | ···················element·to·the·ordering.\xd | 103 | ···················element·to·the·ordering.\xd |
104 | ·················•·int·msglvl·–·message·level·for·statistics,·diagnostics·and·monitoring.·The·default·value·is\xd | 104 | ·················•·int·msglvl·–·message·level·for·statistics,·diagnostics·and·monitoring.·The·default·value·is\xd |
105 | ···················zero,·no·statistics.·Set·msglvl·to·one·and·get·elimination·monitoring.·Increase·msglvl·slowly\xd | 105 | ···················zero,·no·statistics.·Set·msglvl·to·one·and·get·elimination·monitoring.·Increase·msglvl·slowly\xd |
106 | ···················to·get·more·mostly·debug·information.\xd | 106 | ···················to·get·more·mostly·debug·information.\xd |
107 | ·················•·FILE·*msgFile·–·message·file,·default·is·stdout.\xd | 107 | ·················•·FILE·*msgFile·–·message·file,·default·is·stdout.\xd |
Offset 119, 15 lines modified | Offset 119, 15 lines modified | ||
119 | ·················•·IIheap·*heap·–·pointer·to·a·IIheap·object·that·maintains·the·priority·queue.\xd | 119 | ·················•·IIheap·*heap·–·pointer·to·a·IIheap·object·that·maintains·the·priority·queue.\xd |
120 | ·················•·IP·*baseIP·–·pointer·to·the·base·IP·objects,·used·to·hold·subtree·lists\xd | 120 | ·················•·IP·*baseIP·–·pointer·to·the·base·IP·objects,·used·to·hold·subtree·lists\xd |
121 | ·················•·IP·*freeIP·–·pointer·to·the·list·of·free·IP·objects\xd | 121 | ·················•·IP·*freeIP·–·pointer·to·the·list·of·free·IP·objects\xd |
122 | ·················•·int·incrIP·–·integer·that·holds·the·increment·factor·for·the·IP·objects.\xd | 122 | ·················•·int·incrIP·–·integer·that·holds·the·increment·factor·for·the·IP·objects.\xd |
123 | ·················•·MSMDvtx·*vertices·–·pointer·to·vector·of·MSMDvtx·objects·that·represent·the·vertices.\xd | 123 | ·················•·MSMDvtx·*vertices·–·pointer·to·vector·of·MSMDvtx·objects·that·represent·the·vertices.\xd |
124 | ·················•·IV·ivtmpIV·–·IV·object·that·holds·an·integer·temporary·vector.\xd | 124 | ·················•·IV·ivtmpIV·–·IV·object·that·holds·an·integer·temporary·vector.\xd |
125 | ·················•·IV·reachIV·–·IV·object·that·holds·the·reach·vector.\xd | 125 | ·················•·IV·reachIV·–·IV·object·that·holds·the·reach·vector.\xd |
126 | ······································ | 126 | ······································MSMD·:·DRAFT···February·18,·2025···················5\xd |
127 | ············1.1.3··MSMDstageInfo·:·statistics·object·for·a·stage·of·the·elimination\xd | 127 | ············1.1.3··MSMDstageInfo·:·statistics·object·for·a·stage·of·the·elimination\xd |
128 | ············This·object·stores·information·about·the·elimination·process·at·a·stage·of·the·elimination.\xd | 128 | ············This·object·stores·information·about·the·elimination·process·at·a·stage·of·the·elimination.\xd |
129 | ···············•·int·nstep·—·number·of·elimination·steps·in·this·stage\xd | 129 | ···············•·int·nstep·—·number·of·elimination·steps·in·this·stage\xd |
130 | ···············•·int·nfront·—·number·of·fronts·created·at·this·stage\xd | 130 | ···············•·int·nfront·—·number·of·fronts·created·at·this·stage\xd |
131 | ···············•·int·welim·—·weight·of·the·vertices·eliminated·at·this·stage\xd | 131 | ···············•·int·welim·—·weight·of·the·vertices·eliminated·at·this·stage\xd |
132 | ···············•·int·nfind·—·number·of·front·indices\xd | 132 | ···············•·int·nfind·—·number·of·front·indices\xd |
133 | ···············•·int·nzf·—·number·of·factor·entries·(for·a·Cholesky·factorization)\xd | 133 | ···············•·int·nzf·—·number·of·factor·entries·(for·a·Cholesky·factorization)\xd |
Offset 148, 15 lines modified | Offset 148, 15 lines modified | ||
148 | ···················–·’L’·–·eliminated·leaf·vertex\xd | 148 | ···················–·’L’·–·eliminated·leaf·vertex\xd |
149 | ···················–·’E’·–·eliminated·interior·vertex\xd | 149 | ···················–·’E’·–·eliminated·interior·vertex\xd |
150 | ···················–·’O’·–·outmatched·vertex\xd | 150 | ···················–·’O’·–·outmatched·vertex\xd |
151 | ···················–·’D’·–·vertex·on·degree·(priority)·heap\xd | 151 | ···················–·’D’·–·vertex·on·degree·(priority)·heap\xd |
152 | ···················–·’R’·–·vertex·on·reach·set\xd | 152 | ···················–·’R’·–·vertex·on·reach·set\xd |
153 | ···················–·’I’·–·vertex·found·to·be·indistinguishable·to·another\xd | 153 | ···················–·’I’·–·vertex·found·to·be·indistinguishable·to·another\xd |
154 | ···················–·’B’·–·boundary·vertex,·to·be·eliminated·in·another·stage\xd | 154 | ···················–·’B’·–·boundary·vertex,·to·be·eliminated·in·another·stage\xd |
155 | ··············6····························MSMD·:·DRAFT· | 155 | ··············6····························MSMD·:·DRAFT·February·18,·2025\xd |
156 | ·················•·int·stage·—·stage·of·the·vertex.·Stage·0·nodes·are·eliminated·before·stage·1·nodes,·etc.\xd | 156 | ·················•·int·stage·—·stage·of·the·vertex.·Stage·0·nodes·are·eliminated·before·stage·1·nodes,·etc.\xd |
157 | ·················•·int·wght·—·weight·of·the·vertex\xd | 157 | ·················•·int·wght·—·weight·of·the·vertex\xd |
158 | ·················•·int·nadj·—·size·of·the·adj·vector\xd | 158 | ·················•·int·nadj·—·size·of·the·adj·vector\xd |
159 | ·················•·int·*adj·—·for·an·uneliminated·vertex,·adj·points·to·a·list·of·uncovered·adjacent·edges;·for\xd | 159 | ·················•·int·*adj·—·for·an·uneliminated·vertex,·adj·points·to·a·list·of·uncovered·adjacent·edges;·for\xd |
160 | ···················an·eliminated·vertex,·adj·points·points·to·a·list·of·its·boundary·vertices·(only·valid·when·the\xd | 160 | ···················an·eliminated·vertex,·adj·points·points·to·a·list·of·its·boundary·vertices·(only·valid·when·the\xd |
161 | ···················vertex·is·a·leaf·of·the·elimination·tree·or·a·root·of·a·subtree·of·uneliminated·vertices).\xd | 161 | ···················vertex·is·a·leaf·of·the·elimination·tree·or·a·root·of·a·subtree·of·uneliminated·vertices).\xd |
162 | ·················•·int·bndwght·—·for·an·eliminated·vertex,·the·weight·of·the·vertices·on·its·boundary.\xd | 162 | ·················•·int·bndwght·—·for·an·eliminated·vertex,·the·weight·of·the·vertices·on·its·boundary.\xd |
Offset 181, 15 lines modified | Offset 181, 15 lines modified | ||
181 | ···················This·method·clears·any·data·owned·by·the·object·and·then·sets·the·structure’s·default·fields\xd | 181 | ···················This·method·clears·any·data·owned·by·the·object·and·then·sets·the·structure’s·default·fields\xd |
182 | ···················with·a·call·to·MSMDinfo·setDefaultFields().\xd | 182 | ···················with·a·call·to·MSMDinfo·setDefaultFields().\xd |
183 | ···················Error·checking:·If·info·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 183 | ···················Error·checking:·If·info·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
184 | ················4.·void·MSMDinfo_free·(·MSMDinfo·*info·)·;\xd | 184 | ················4.·void·MSMDinfo_free·(·MSMDinfo·*info·)·;\xd |
185 | ···················This·method·releases·any·storage·by·a·call·to·MSMDinfo·clearData()·then·free’s·the·storage\xd | 185 | ···················This·method·releases·any·storage·by·a·call·to·MSMDinfo·clearData()·then·free’s·the·storage\xd |
186 | ···················for·the·structure·with·a·call·to·free().\xd | 186 | ···················for·the·structure·with·a·call·to·free().\xd |
187 | ···················Error·checking:·If·info·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 187 | ···················Error·checking:·If·info·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
188 | ······································ | 188 | ······································MSMD·:·DRAFT···February·18,·2025···················7\xd |
189 | ············1.2.2··Utility·methods\xd | 189 | ············1.2.2··Utility·methods\xd |
190 | ············There·are·two·utility·methods,·one·to·print·the·object,·one·to·check·to·see·if·it·is·valid.\xd | 190 | ············There·are·two·utility·methods,·one·to·print·the·object,·one·to·check·to·see·if·it·is·valid.\xd |
191 | ···············1.·void·MSMDinfo_print·(·MSMDinfo·*info,·FILE·*fp·)·;\xd | 191 | ···············1.·void·MSMDinfo_print·(·MSMDinfo·*info,·FILE·*fp·)·;\xd |
192 | ·················This·method·prints·out·the·information·to·a·file.\xd | 192 | ·················This·method·prints·out·the·information·to·a·file.\xd |
193 | ·················Error·checking:·If·info·or·fp·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 193 | ·················Error·checking:·If·info·or·fp·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
194 | ···············2.·int·MSMDinfo_isValid·(·MSMDinfo·*info·)·;\xd | 194 | ···············2.·int·MSMDinfo_isValid·(·MSMDinfo·*info·)·;\xd |
195 | ·················This·method·checks·that·the·object·is·valid.·The·return·value·is·1·for·a·valid·object,·0·for·an\xd | 195 | ·················This·method·checks·that·the·object·is·valid.·The·return·value·is·1·for·a·valid·object,·0·for·an\xd |
Offset 213, 15 lines modified | Offset 213, 15 lines modified | ||
213 | ·················This·method·clears·any·data·owned·by·the·object,·then·sets·the·structure’s·default·fields·with\xd | 213 | ·················This·method·clears·any·data·owned·by·the·object,·then·sets·the·structure’s·default·fields·with\xd |
214 | ·················a·call·to·MSMD·setDefaultFields().\xd | 214 | ·················a·call·to·MSMD·setDefaultFields().\xd |
215 | ·················Error·checking:·If·msmd·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 215 | ·················Error·checking:·If·msmd·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
216 | ···············4.·void·MSMD_free·(·MSMD·*msmd·)·;\xd | 216 | ···············4.·void·MSMD_free·(·MSMD·*msmd·)·;\xd |
217 | ·················This·method·releases·any·storage·by·a·call·to·MSMD·clearData()·then·free’s·the·storage·for\xd | 217 | ·················This·method·releases·any·storage·by·a·call·to·MSMD·clearData()·then·free’s·the·storage·for\xd |
218 | ·················the·structure·with·a·call·to·free().\xd | 218 | ·················the·structure·with·a·call·to·free().\xd |
219 | ·················Error·checking:·If·msmd·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 219 | ·················Error·checking:·If·msmd·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
220 | ···············8································MSMD·:·DRAFT· | 220 | ···············8································MSMD·:·DRAFT·February·18,·2025\xd |
221 | ···············1.3.2···Initialization·methods·—·public\xd | 221 | ···············1.3.2···Initialization·methods·—·public\xd |
222 | ···············There·is·one·initialization·method.\xd | 222 | ···············There·is·one·initialization·method.\xd |
223 | ··················1.·void·MSMD_init·(·MSMD·*msmd,·Graph·*graph,·int·stages[],·MSMD·*info·)·;\xd | 223 | ··················1.·void·MSMD_init·(·MSMD·*msmd,·Graph·*graph,·int·stages[],·MSMD·*info·)·;\xd |
224 | ·····················This·method·initializes·the·MSMD·object·prior·to·an·ordering.·It·is·called·by·MSMD·order()\xd | 224 | ·····················This·method·initializes·the·MSMD·object·prior·to·an·ordering.·It·is·called·by·MSMD·order()\xd |
225 | ·····················method,·and·so·it·is·currently·a·private·method·for·the·object.·However,·when·designing·more\xd | 225 | ·····················method,·and·so·it·is·currently·a·private·method·for·the·object.·However,·when·designing·more\xd |
226 | ·····················complicated·ordering·methods,·this·object·is·necessary·to·set·up·the·data·structures.·There\xd | 226 | ·····················complicated·ordering·methods,·this·object·is·necessary·to·set·up·the·data·structures.·There\xd |
227 | ·····················are·two·input·arguments:·graph·is·a·pointer·to·a·Graph·object·that·holds·the·adjacency·lists\xd | 227 | ·····················are·two·input·arguments:·graph·is·a·pointer·to·a·Graph·object·that·holds·the·adjacency·lists\xd |
Offset 249, 15 lines modified | Offset 249, 15 lines modified | ||
249 | ···············1.3.4···Extraction·methods·—·public\xd | 249 | ···············1.3.4···Extraction·methods·—·public\xd |
250 | ···············There·are·two·methods·to·extract·the·ordering.·The·first·fills·one·or·two·IV·objects·with·the\xd | 250 | ···············There·are·two·methods·to·extract·the·ordering.·The·first·fills·one·or·two·IV·objects·with·the\xd |
251 | ···············permutation·vector(s).··The·second·returns·an·ETree·object·that·holds·the·front·tree·for·the\xd | 251 | ···············permutation·vector(s).··The·second·returns·an·ETree·object·that·holds·the·front·tree·for·the\xd |
252 | ···············ordering.\xd | 252 | ···············ordering.\xd |
253 | ··················1.·void·MSMD_fillPerms·(·MSMD·*msmd,·IV·*newToOldIV,·IV·*oldToNewIV·)·;\xd | 253 | ··················1.·void·MSMD_fillPerms·(·MSMD·*msmd,·IV·*newToOldIV,·IV·*oldToNewIV·)·;\xd |
254 | ·····················If·newToOldIV·is·not·NULL,·this·method·fills·the·IV·object·with·the·new-to-old·permutation\xd | 254 | ·····················If·newToOldIV·is·not·NULL,·this·method·fills·the·IV·object·with·the·new-to-old·permutation\xd |
255 | ·····················of·the·vertices,·resizing·the·IV·object·if·necessary.·If·oldToNewIV·is·not·NULL,·this·method\xd | 255 | ·····················of·the·vertices,·resizing·the·IV·object·if·necessary.·If·oldToNewIV·is·not·NULL,·this·method\xd |
256 | ······································ | 256 | ······································MSMD·:·DRAFT···February·18,·2025···················9\xd |
257 | ·················fills·the·IV·object·with·the·old-to-new·permutation·of·the·vertices,·resizing·the·IV·object·if\xd | 257 | ·················fills·the·IV·object·with·the·old-to-new·permutation·of·the·vertices,·resizing·the·IV·object·if\xd |
258 | ·················necessary.\xd | 258 | ·················necessary.\xd |
259 | ·················Error·checking:·If·msmd·is·NULL,·or·if·newToOldIV·and·oldToNewIV·is·NULL,·an·error·message\xd | 259 | ·················Error·checking:·If·msmd·is·NULL,·or·if·newToOldIV·and·oldToNewIV·is·NULL,·an·error·message\xd |
260 | ·················is·printed·and·the·program·exits.\xd | 260 | ·················is·printed·and·the·program·exits.\xd |
261 | ···············2.·ETree·*·MSMD_frontETree·(·MSMD·*msmd·)·;\xd | 261 | ···············2.·ETree·*·MSMD_frontETree·(·MSMD·*msmd·)·;\xd |
262 | ·················This·method·constructs·and·returns·a·ETree·object·that·contains·the·front·tree·for·the\xd | 262 | ·················This·method·constructs·and·returns·a·ETree·object·that·contains·the·front·tree·for·the\xd |
263 | ·················ordering.\xd | 263 | ·················ordering.\xd |
Max diff block lines reached; 4057/15062 bytes (26.94%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·MT.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·MT.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1601, 20 lines modified | Offset 1601, 21 lines modified | ||
1601 | end·readonly·def | 1601 | end·readonly·def |
1602 | /Encoding·256·array | 1602 | /Encoding·256·array |
1603 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1603 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1604 | dup·44·/comma·put | 1604 | dup·44·/comma·put |
1605 | dup·48·/zero·put | 1605 | dup·48·/zero·put |
1606 | dup·49·/one·put | 1606 | dup·49·/one·put |
1607 | dup·50·/two·put | 1607 | dup·50·/two·put |
1608 | dup·52·/four·put | ||
1609 | dup·5 | 1608 | dup·53·/five·put |
1609 | dup·56·/eight·put | ||
1610 | dup·58·/colon·put | 1610 | dup·58·/colon·put |
1611 | dup·7 | 1611 | dup·70·/F·put |
1612 | dup·97·/a·put | 1612 | dup·97·/a·put |
1613 | dup·98·/b·put | ||
1613 | dup·1 | 1614 | dup·101·/e·put |
1614 | dup·114·/r·put | 1615 | dup·114·/r·put |
1615 | dup·117·/u·put | 1616 | dup·117·/u·put |
1616 | dup·121·/y·put | 1617 | dup·121·/y·put |
1617 | readonly·def | 1618 | readonly·def |
1618 | currentdict·end | 1619 | currentdict·end |
1619 | currentfile·eexec | 1620 | currentfile·eexec |
1620 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1621 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1798, 89 lines modified | Offset 1799, 93 lines modified | ||
1798 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1799 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1799 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1800 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1800 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1801 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1801 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1802 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1802 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1803 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1803 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1804 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1804 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1805 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1805 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1806 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1806 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1807 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1808 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1809 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1810 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1811 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1812 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1813 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1814 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1815 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1816 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1817 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1818 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1819 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1820 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1821 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1822 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1823 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1824 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1825 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1826 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1827 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1828 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1829 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1830 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1831 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1832 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1833 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1834 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1835 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1836 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1837 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1838 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1839 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1840 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1841 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1842 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1843 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1844 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1845 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1846 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1847 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1848 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1849 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1850 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1851 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1852 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1853 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1854 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1855 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1856 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1857 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1858 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1859 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1860 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1861 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1862 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1863 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1864 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1865 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1866 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1867 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1868 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1869 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1870 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1871 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1872 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1873 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1874 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1875 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1876 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1877 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1878 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1879 | 1807 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1808 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1809 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1810 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1811 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1812 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1813 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 23022/34910 bytes (65.95%) of diff not shown. |
Offset 35, 15 lines modified | Offset 35, 15 lines modified | ||
35 | ················by·independent·topological·traversals·of·the·front·tree.·It·is·the·list·and·working·storage·data·structures·(the\xd | 35 | ················by·independent·topological·traversals·of·the·front·tree.·It·is·the·list·and·working·storage·data·structures·(the\xd |
36 | ················ChvList,·ChvManager·and·SubMtxManager·objects)·that·have·locks.·What·is·done·is·common·code·between\xd | 36 | ················ChvList,·ChvManager·and·SubMtxManager·objects)·that·have·locks.·What·is·done·is·common·code·between\xd |
37 | ················the·serial·and·multithreaded·environments,·it·is·the·choreography,·i.e.,·who·does·what,·that·differs.\xd | 37 | ················the·serial·and·multithreaded·environments,·it·is·the·choreography,·i.e.,·who·does·what,·that·differs.\xd |
38 | ···················Most·of·these·same·comments·apply·to·the·multithreaded·solve·methods.·The·calling·sequences·between\xd | 38 | ···················Most·of·these·same·comments·apply·to·the·multithreaded·solve·methods.·The·calling·sequences·between\xd |
39 | ················the·serial·and·multithreaded·solves·differs·by·one·parameter,·a·SolveMap·object·that·maps·the·submatrices\xd | 39 | ················the·serial·and·multithreaded·solves·differs·by·one·parameter,·a·SolveMap·object·that·maps·the·submatrices\xd |
40 | ················of·the·factor·matrix·to·the·threads·that·will·compute·with·them.\xd | 40 | ················of·the·factor·matrix·to·the·threads·that·will·compute·with·them.\xd |
41 | ·································································1\xd | 41 | ·································································1\xd |
42 | ··············2···························Multithreaded·:·DRAFT· | 42 | ··············2···························Multithreaded·:·DRAFT·February·18,·2025\xd |
43 | ··············1.1····Data·Structure\xd | 43 | ··············1.1····Data·Structure\xd |
44 | ··············There·are·no·multithreaded·specific·data·structures.·See·the·Lock·object·which·is·used·to·hide·the·particular\xd | 44 | ··············There·are·no·multithreaded·specific·data·structures.·See·the·Lock·object·which·is·used·to·hide·the·particular\xd |
45 | ··············mutual·exclusion·device·used·by·a·thread·library.\xd | 45 | ··············mutual·exclusion·device·used·by·a·thread·library.\xd |
46 | ··············1.2····Prototypes·and·descriptions·of·MT·methods\xd | 46 | ··············1.2····Prototypes·and·descriptions·of·MT·methods\xd |
47 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·found·in·the·MT·source·directory.\xd | 47 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·found·in·the·MT·source·directory.\xd |
48 | ··············1.2.1···Matrix-matrix·multiply·methods\xd | 48 | ··············1.2.1···Matrix-matrix·multiply·methods\xd |
49 | ··············Therearefivemethodstomultiplyavectortimesadensematrix.·Thefirstthreemethods,calledInpMtx·MT·nonsym·mmm*(),\xd | 49 | ··············Therearefivemethodstomultiplyavectortimesadensematrix.·Thefirstthreemethods,calledInpMtx·MT·nonsym·mmm*(),\xd |
Offset 79, 15 lines modified | Offset 79, 15 lines modified | ||
79 | ···················This·method·computes·the·matrix-vector·product·y·:=·y+αA·x,·where·y·is·found·in·the·Y·DenseMtx\xd | 79 | ···················This·method·computes·the·matrix-vector·product·y·:=·y+αA·x,·where·y·is·found·in·the·Y·DenseMtx\xd |
80 | ···················object,·α·is·real·or·complex·in·alpha[],·A·is·found·in·the·A·Inpmtx·object,·and·x·is·found·in·the·X\xd | 80 | ···················object,·α·is·real·or·complex·in·alpha[],·A·is·found·in·the·A·Inpmtx·object,·and·x·is·found·in·the·X\xd |
81 | ···················DenseMtx·object.·If·any·of·the·input·objects·are·NULL,·an·error·message·is·printed·and·the·program\xd | 81 | ···················DenseMtx·object.·If·any·of·the·input·objects·are·NULL,·an·error·message·is·printed·and·the·program\xd |
82 | ···················exits.·A,·X·and·Y·must·all·be·real·or·all·be·complex.·When·A·is·real,·then·α·=·alpha[0].·When·A\xd | 82 | ···················exits.·A,·X·and·Y·must·all·be·real·or·all·be·complex.·When·A·is·real,·then·α·=·alpha[0].·When·A\xd |
83 | ···················is·complex,·then·α·=·alpha[0]·+·i*·alpha[1].·This·means·that·one·cannot·call·the·methods·with\xd | 83 | ···················is·complex,·then·α·=·alpha[0]·+·i*·alpha[1].·This·means·that·one·cannot·call·the·methods·with\xd |
84 | ···················a·constant·as·the·third·parameter,·e.g.,·InpMtx·MT·nonsym·mmm(A,·Y,·3.22,·X,·nthread,·msglvl,\xd | 84 | ···················a·constant·as·the·third·parameter,·e.g.,·InpMtx·MT·nonsym·mmm(A,·Y,·3.22,·X,·nthread,·msglvl,\xd |
85 | ···················msgFile),·for·this·may·result·in·a·segmentation·violation.·The·values·of·α·must·be·loaded·into·an\xd | 85 | ···················msgFile),·for·this·may·result·in·a·segmentation·violation.·The·values·of·α·must·be·loaded·into·an\xd |
86 | ······································· | 86 | ·······································Multithreaded·:·DRAFT···February·18,·2025···················3\xd |
87 | ··················array·of·length·1·or·2.·The·number·of·threads·is·specified·by·the·nthread·parameter;·if,·nthread·is·1,\xd | 87 | ··················array·of·length·1·or·2.·The·number·of·threads·is·specified·by·the·nthread·parameter;·if,·nthread·is·1,\xd |
88 | ··················the·serial·method·is·called.·The·msglvl·and·msgFile·parameters·are·used·for·diagnostics·during·the\xd | 88 | ··················the·serial·method·is·called.·The·msglvl·and·msgFile·parameters·are·used·for·diagnostics·during·the\xd |
89 | ··················creation·of·the·threads’·individual·data·structures.\xd | 89 | ··················creation·of·the·threads’·individual·data·structures.\xd |
90 | ··················Error·checking:·If·A,·Y·or·X·are·NULL,·or·if·coordType·is·not·INPMTX·BY·ROWS,·INPMTX·BY·COLUMNS·or\xd | 90 | ··················Error·checking:·If·A,·Y·or·X·are·NULL,·or·if·coordType·is·not·INPMTX·BY·ROWS,·INPMTX·BY·COLUMNS·or\xd |
91 | ··················INPMTX·BY·CHEVRONS,orifstorageModeisnotoneofINPMTX·RAW·DATA,INPMTX·SORTEDorINPMTX·BY·VECTORS,\xd | 91 | ··················INPMTX·BY·CHEVRONS,orifstorageModeisnotoneofINPMTX·RAW·DATA,INPMTX·SORTEDorINPMTX·BY·VECTORS,\xd |
92 | ··················or·if·inputModeis·not·SPOOLES·REAL·or·SPOOLES·COMPLEX,an·error·message·is·printed·and·the·program\xd | 92 | ··················or·if·inputModeis·not·SPOOLES·REAL·or·SPOOLES·COMPLEX,an·error·message·is·printed·and·the·program\xd |
93 | ··················exits.\xd | 93 | ··················exits.\xd |
Offset 124, 15 lines modified | Offset 124, 15 lines modified | ||
124 | ·····················•·cpus[1]·—·time·spent·initializing·the·fronts·and·loading·the·original·entries.\xd | 124 | ·····················•·cpus[1]·—·time·spent·initializing·the·fronts·and·loading·the·original·entries.\xd |
125 | ·····················•·cpus[2]·—·time·spent·accumulating·updates·from·descendents.\xd | 125 | ·····················•·cpus[2]·—·time·spent·accumulating·updates·from·descendents.\xd |
126 | ·····················•·cpus[3]·—·time·spent·inserting·aggregate·fronts.\xd | 126 | ·····················•·cpus[3]·—·time·spent·inserting·aggregate·fronts.\xd |
127 | ·····················•·cpus[4]·—·time·spent·removing·and·assembling·aggregate·fronts.\xd | 127 | ·····················•·cpus[4]·—·time·spent·removing·and·assembling·aggregate·fronts.\xd |
128 | ·····················•·cpus[5]·—·time·spent·assembling·postponed·data.\xd | 128 | ·····················•·cpus[5]·—·time·spent·assembling·postponed·data.\xd |
129 | ·····················•·cpus[6]·—·time·spent·to·factor·the·fronts.\xd | 129 | ·····················•·cpus[6]·—·time·spent·to·factor·the·fronts.\xd |
130 | ·····················•·cpus[7]·—·time·spent·to·extract·postponed·data.\xd | 130 | ·····················•·cpus[7]·—·time·spent·to·extract·postponed·data.\xd |
131 | ················4·····························Multithreaded·:·DRAFT· | 131 | ················4·····························Multithreaded·:·DRAFT·February·18,·2025\xd |
132 | ·······················•·cpus[8]·—·time·spent·to·store·the·factor·entries.\xd | 132 | ·······················•·cpus[8]·—·time·spent·to·store·the·factor·entries.\xd |
133 | ·······················•·cpus[9]·—·miscellaneous·time.\xd | 133 | ·······················•·cpus[9]·—·miscellaneous·time.\xd |
134 | ·····················Onreturn,·the·stats[]·vector·is·filled·with·the·following·information.\xd | 134 | ·····················Onreturn,·the·stats[]·vector·is·filled·with·the·following·information.\xd |
135 | ·······················•·stats[0]·—·number·of·pivots.\xd | 135 | ·······················•·stats[0]·—·number·of·pivots.\xd |
136 | ·······················•·stats[1]·—·number·of·pivot·tests.\xd | 136 | ·······················•·stats[1]·—·number·of·pivot·tests.\xd |
137 | ·······················•·stats[2]·—·number·of·delayed·rows·and·columns.\xd | 137 | ·······················•·stats[2]·—·number·of·delayed·rows·and·columns.\xd |
138 | ·······················•·stats[3]·—·number·of·entries·in·D.\xd | 138 | ·······················•·stats[3]·—·number·of·entries·in·D.\xd |
Offset 164, 15 lines modified | Offset 164, 15 lines modified | ||
164 | ·····················an·error·message·is·printed·and·the·program·exits.\xd | 164 | ·····················an·error·message·is·printed·and·the·program·exits.\xd |
165 | ················1.2.4···Multithreaded·Solve·method\xd | 165 | ················1.2.4···Multithreaded·Solve·method\xd |
166 | ··················1.·void·FrontMtx_MT_solve·(·FrontMtx·*frontmtx,·DenseMtx·*mtxX,·DenseMtx·*mtxB,\xd | 166 | ··················1.·void·FrontMtx_MT_solve·(·FrontMtx·*frontmtx,·DenseMtx·*mtxX,·DenseMtx·*mtxB,\xd |
167 | ················································SubMtxManager·*mtxmanager,·SolveMap·*solvemap,\xd | 167 | ················································SubMtxManager·*mtxmanager,·SolveMap·*solvemap,\xd |
168 | ················································double·cpus[],·int·msglvl,·FILE·*msgFile·)·;\xd | 168 | ················································double·cpus[],·int·msglvl,·FILE·*msgFile·)·;\xd |
169 | ·····················This·method·is·used·to·solve·one·of·three·linear·systems·of·equations·using·a·multithreaded·solve·—\xd | 169 | ·····················This·method·is·used·to·solve·one·of·three·linear·systems·of·equations·using·a·multithreaded·solve·—\xd |
170 | ·····················(UT·+I)D(I·+U)X·=B,·(UH·+I)D(I·+U)X·=B·or·(L+I)D(I+U)X·=B.·Entries·of·B·are·read\xd | 170 | ·····················(UT·+I)D(I·+U)X·=B,·(UH·+I)D(I·+U)X·=B·or·(L+I)D(I+U)X·=B.·Entries·of·B·are·read\xd |
171 | ·········································Multithreaded·:·DRAFT··· | 171 | ·········································Multithreaded·:·DRAFT···February·18,·2025·····················5\xd |
172 | ···················from·mtxB·and·entries·of·X·are·written·to·mtxX.·Therefore,·mtxX·and·mtxB·can·be·the·same·object.\xd | 172 | ···················from·mtxB·and·entries·of·X·are·written·to·mtxX.·Therefore,·mtxX·and·mtxB·can·be·the·same·object.\xd |
173 | ···················(Note,·this·does·not·hold·true·for·an·MPI·factorization·with·pivoting.)·The·submatrix·manager·object\xd | 173 | ···················(Note,·this·does·not·hold·true·for·an·MPI·factorization·with·pivoting.)·The·submatrix·manager·object\xd |
174 | ···················manages·the·working·storage.·The·solvemap·object·contains·the·map·from·submatrices·to·threads.\xd | 174 | ···················manages·the·working·storage.·The·solvemap·object·contains·the·map·from·submatrices·to·threads.\xd |
175 | ···················The·map·from·fronts·to·processes·that·own·them·is·given·in·the·ownersIV·object.·On·return·the\xd | 175 | ···················The·map·from·fronts·to·processes·that·own·them·is·given·in·the·ownersIV·object.·On·return·the\xd |
176 | ···················cpus[]·vector·is·filled·with·the·following.·The·stats[]·vector·is·not·currently·used.\xd | 176 | ···················cpus[]·vector·is·filled·with·the·following.·The·stats[]·vector·is·not·currently·used.\xd |
177 | ·····················•·cpus[0]·—·set·up·the·solves\xd | 177 | ·····················•·cpus[0]·—·set·up·the·solves\xd |
178 | ·····················•·cpus[1]·—·fetch·right·hand·side·and·store·solution\xd | 178 | ·····················•·cpus[1]·—·fetch·right·hand·side·and·store·solution\xd |
Offset 206, 15 lines modified | Offset 206, 15 lines modified | ||
206 | ···················¿·0·and·msgFile·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 206 | ···················¿·0·and·msgFile·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
207 | ··············1.3····Driver·programs·for·the·multithreaded·functions\xd | 207 | ··············1.3····Driver·programs·for·the·multithreaded·functions\xd |
208 | ·················1.·allInOneMT·msglvl·msgFile·type·symmetryflag·pivotingflag\xd | 208 | ·················1.·allInOneMT·msglvl·msgFile·type·symmetryflag·pivotingflag\xd |
209 | ······························matrixFileName·rhsFileName·seed·nthread\xd | 209 | ······························matrixFileName·rhsFileName·seed·nthread\xd |
210 | ···················This·driver·program·reads·in·a·matrix·A·and·right·hand·side·B,·generates·the·graph·for·A·and·orders\xd | 210 | ···················This·driver·program·reads·in·a·matrix·A·and·right·hand·side·B,·generates·the·graph·for·A·and·orders\xd |
211 | ···················the·matrix,·factors·A·and·solves·the·linear·system·AX·=·B·for·X·using·multithreaded·factors·and\xd | 211 | ···················the·matrix,·factors·A·and·solves·the·linear·system·AX·=·B·for·X·using·multithreaded·factors·and\xd |
212 | ···················solves.·Use·the·script·file·do·gridMT·for·testing.\xd | 212 | ···················solves.·Use·the·script·file·do·gridMT·for·testing.\xd |
213 | ·············6·······················Multithreaded·:·DRAFT· | 213 | ·············6·······················Multithreaded·:·DRAFT·February·18,·2025\xd |
214 | ···················•·The·msglvlparameterdetermines·the·amount·of·output.·Use·msglvl·=·1·for·just·timing·output.\xd | 214 | ···················•·The·msglvlparameterdetermines·the·amount·of·output.·Use·msglvl·=·1·for·just·timing·output.\xd |
215 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd | 215 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd |
216 | ····················file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output·data.\xd | 216 | ····················file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output·data.\xd |
217 | ···················•·The·type·parameter·specifies·a·real·or·complex·linear·system.\xd | 217 | ···················•·The·type·parameter·specifies·a·real·or·complex·linear·system.\xd |
218 | ······················–·type·=·1·(SPOOLES·REAL)·for·real,\xd | 218 | ······················–·type·=·1·(SPOOLES·REAL)·for·real,\xd |
219 | ······················–·type·=·2·(SPOOLES·COMPLEX)·for·complex.\xd | 219 | ······················–·type·=·2·(SPOOLES·COMPLEX)·for·complex.\xd |
220 | ···················•·The·symmetryflag·parameter·specifies·the·symmetry·of·the·matrix.\xd | 220 | ···················•·The·symmetryflag·parameter·specifies·the·symmetry·of·the·matrix.\xd |
Offset 249, 15 lines modified | Offset 249, 15 lines modified | ||
249 | ·················Thisdriverprogramisusedtotestthe“patch-and-go”functionalityforafactorizationwithoutpivoting.\xd | 249 | ·················Thisdriverprogramisusedtotestthe“patch-and-go”functionalityforafactorizationwithoutpivoting.\xd |
250 | ·················Whensmalldiagonalpivotelements·are·found,·one·of·three·actions·are·taken.·See·the·PatchAndGoInfo\xd | 250 | ·················Whensmalldiagonalpivotelements·are·found,·one·of·three·actions·are·taken.·See·the·PatchAndGoInfo\xd |
251 | ·················object·for·more·information.\xd | 251 | ·················object·for·more·information.\xd |
252 | ·················The·program·reads·in·a·matrix·A·and·right·hand·side·B,·generates·the·graph·for·A·and·orders·the\xd | 252 | ·················The·program·reads·in·a·matrix·A·and·right·hand·side·B,·generates·the·graph·for·A·and·orders·the\xd |
253 | ·················matrix,·factors·A·and·solves·the·linear·system·AX·=·B·for·X·using·multithreaded·factors·and·solves.\xd | 253 | ·················matrix,·factors·A·and·solves·the·linear·system·AX·=·B·for·X·using·multithreaded·factors·and·solves.\xd |
254 | ·················Use·the·script·file·do·patchAndGo·for·testing.\xd | 254 | ·················Use·the·script·file·do·patchAndGo·for·testing.\xd |
255 | ···················•·The·msglvlparameterdetermines·the·amount·of·output.·Use·msglvl·=·1·for·just·timing·output.\xd | 255 | ···················•·The·msglvlparameterdetermines·the·amount·of·output.·Use·msglvl·=·1·for·just·timing·output.\xd |
256 | ·········································Multithreaded·:·DRAFT··· | 256 | ·········································Multithreaded·:·DRAFT···February·18,·2025·····················7\xd |
257 | ·····················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd | 257 | ·····················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd |
258 | ·······················file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output·data.\xd | 258 | ·······················file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output·data.\xd |
259 | ·····················•·The·type·parameter·specifies·a·real·or·complex·linear·system.\xd | 259 | ·····················•·The·type·parameter·specifies·a·real·or·complex·linear·system.\xd |
260 | ·························–·type·=·1·(SPOOLES·REAL)·for·real,\xd | 260 | ·························–·type·=·1·(SPOOLES·REAL)·for·real,\xd |
261 | ·························–·type·=·2·(SPOOLES·COMPLEX)·for·complex.\xd | 261 | ·························–·type·=·2·(SPOOLES·COMPLEX)·for·complex.\xd |
262 | ·····················•·The·symmetryflag·parameter·specifies·the·symmetry·of·the·matrix.\xd | 262 | ·····················•·The·symmetryflag·parameter·specifies·the·symmetry·of·the·matrix.\xd |
263 | ·························–·type·=·0·(SPOOLES·SYMMETRIC)·for·A·real·or·complex·symmetric,\xd | 263 | ·························–·type·=·0·(SPOOLES·SYMMETRIC)·for·A·real·or·complex·symmetric,\xd |
Offset 294, 15 lines modified | Offset 294, 15 lines modified | ||
294 | ·····················•·The·nthread·parameter·is·the·number·of·threads.\xd | 294 | ·····················•·The·nthread·parameter·is·the·number·of·threads.\xd |
295 | ·················3.·testMMM·msglvl·msgFile·dataType·symflag·storageMode·transpose\xd | 295 | ·················3.·testMMM·msglvl·msgFile·dataType·symflag·storageMode·transpose\xd |
296 | ···························nrow·ncol·nitem·nrhs·seed·alphaReal·alphaImag·nthread\xd | 296 | ···························nrow·ncol·nitem·nrhs·seed·alphaReal·alphaImag·nthread\xd |
297 | ···················ThisdriverprogramgeneratesA,·anrow×ncolmatrixusingniteminputentries,X·andY,nrow×nrhs\xd | 297 | ···················ThisdriverprogramgeneratesA,·anrow×ncolmatrixusingniteminputentries,X·andY,nrow×nrhs\xd |
298 | ·····················································································T·············H\xd | 298 | ·····················································································T·············H\xd |
299 | ···················matrices,·is·filled·with·random·numbers.·It·then·computes·Y·+α∗A∗X,Y·+α∗A·∗X·orY·+α∗A·∗X.\xd | 299 | ···················matrices,·is·filled·with·random·numbers.·It·then·computes·Y·+α∗A∗X,Y·+α∗A·∗X·orY·+α∗A·∗X.\xd |
300 | ···················The·program’s·output·is·a·file·which·when·sent·into·Matlab,·outputs·the·error·in·the·computation.\xd | 300 | ···················The·program’s·output·is·a·file·which·when·sent·into·Matlab,·outputs·the·error·in·the·computation.\xd |
301 | ··············8···························Multithreaded·:·DRAFT· | 301 | ··············8···························Multithreaded·:·DRAFT·February·18,·2025\xd |
302 | ·····················•·Themsglvlparameterdeterminestheamountofoutput—takingmsglvl·>=·3meanstheInpMtx\xd | 302 | ·····················•·Themsglvlparameterdeterminestheamountofoutput—takingmsglvl·>=·3meanstheInpMtx\xd |
303 | ·······················object·is·written·to·the·message·file.\xd | 303 | ·······················object·is·written·to·the·message·file.\xd |
304 | ·····················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd | 304 | ·····················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd |
305 | ·······················file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output·data.\xd | 305 | ·······················file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output·data.\xd |
306 | ·····················•·dataType·is·the·type·of·entries,·0·for·real,·1·for·complex.\xd | 306 | ·····················•·dataType·is·the·type·of·entries,·0·for·real,·1·for·complex.\xd |
307 | ·····················•·symflag·is·the·symmetry·flag,·0·for·symmetric,·1·for·Hermitian,·2·for·nonsymmetric.\xd | 307 | ·····················•·symflag·is·the·symmetry·flag,·0·for·symmetric,·1·for·Hermitian,·2·for·nonsymmetric.\xd |
308 | ·····················•·storageModeisthestoragemodefortheentries,1forbyrows,2forbycolumns,·3forbychevrons.\xd | 308 | ·····················•·storageModeisthestoragemodefortheentries,1forbyrows,2forbycolumns,·3forbychevrons.\xd |
Offset 336, 15 lines modified | Offset 336, 15 lines modified | ||
336 | ·························–·type·=·2·(SPOOLES·COMPLEX)·for·complex.\xd | 336 | ·························–·type·=·2·(SPOOLES·COMPLEX)·for·complex.\xd |
337 | ·····················•·The·symmetryflag·parameter·specifies·the·symmetry·of·the·matrix.\xd | 337 | ·····················•·The·symmetryflag·parameter·specifies·the·symmetry·of·the·matrix.\xd |
338 | ·························–·type·=·0·(SPOOLES·SYMMETRIC)·for·A·real·or·complex·symmetric,\xd | 338 | ·························–·type·=·0·(SPOOLES·SYMMETRIC)·for·A·real·or·complex·symmetric,\xd |
339 | ·························–·type·=·1·(SPOOLES·HERMITIAN)·for·A·complex·Hermitian,\xd | 339 | ·························–·type·=·1·(SPOOLES·HERMITIAN)·for·A·complex·Hermitian,\xd |
340 | ·························–·type·=·2·(SPOOLES·NONSYMMETRIC)\xd | 340 | ·························–·type·=·2·(SPOOLES·NONSYMMETRIC)\xd |
341 | ·······················for·A·real·or·complex·nonsymmetric.\xd | 341 | ·······················for·A·real·or·complex·nonsymmetric.\xd |
342 | ·····················•·The·sparsityflag·parameter·signals·a·direct·or·approximate·factorization.\xd | 342 | ·····················•·The·sparsityflag·parameter·signals·a·direct·or·approximate·factorization.\xd |
343 | ··············································· | 343 | ···············································Multithreaded·:·DRAFT·······February·18,·2025···························9\xd |
344 | ·····························–·sparsityflag·=·0·(FRONTMTX·DENSE·FRONTS)·implies·a·direct·factorization,·the·fronts·will\xd | 344 | ·····························–·sparsityflag·=·0·(FRONTMTX·DENSE·FRONTS)·implies·a·direct·factorization,·the·fronts·will\xd |
345 | ·······························be·stored·as·dense·submatrices.\xd | 345 | ·······························be·stored·as·dense·submatrices.\xd |
346 | ·····························–·sparsityflag·=·1·(FRONTMTX·SPARSE·FRONTS)·implies·an·approximate·factorization.·The\xd | 346 | ·····························–·sparsityflag·=·1·(FRONTMTX·SPARSE·FRONTS)·implies·an·approximate·factorization.·The\xd |
347 | ·······························fronts·will·be·stored·as·sparse·submatrices,·where·the·entries·in·the·triangular·factors·will·be\xd | 347 | ·······························fronts·will·be·stored·as·sparse·submatrices,·where·the·entries·in·the·triangular·factors·will·be\xd |
348 | ·······························subjected·to·a·drop·tolerance·test·—·if·the·magnitude·of·an·entry·is·droptol·or·larger,·it·will\xd | 348 | ·······························subjected·to·a·drop·tolerance·test·—·if·the·magnitude·of·an·entry·is·droptol·or·larger,·it·will\xd |
349 | ·······························be·stored,·otherwise·it·will·be·dropped.\xd | 349 | ·······························be·stored,·otherwise·it·will·be·dropped.\xd |
350 | ·························•·The·pivotingflag·parameter·signals·whether·pivoting·for·stability·will·be·enabled·or·not.\xd | 350 | ·························•·The·pivotingflag·parameter·signals·whether·pivoting·for·stability·will·be·enabled·or·not.\xd |
Max diff block lines reached; 1310/13581 bytes (9.65%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·Network.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·Network.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1543, 20 lines modified | Offset 1543, 21 lines modified | ||
1543 | end·readonly·def | 1543 | end·readonly·def |
1544 | /Encoding·256·array | 1544 | /Encoding·256·array |
1545 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1545 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1546 | dup·44·/comma·put | 1546 | dup·44·/comma·put |
1547 | dup·48·/zero·put | 1547 | dup·48·/zero·put |
1548 | dup·49·/one·put | 1548 | dup·49·/one·put |
1549 | dup·50·/two·put | 1549 | dup·50·/two·put |
1550 | dup·52·/four·put | ||
1551 | dup·5 | 1550 | dup·53·/five·put |
1551 | dup·56·/eight·put | ||
1552 | dup·58·/colon·put | 1552 | dup·58·/colon·put |
1553 | dup·7 | 1553 | dup·70·/F·put |
1554 | dup·97·/a·put | 1554 | dup·97·/a·put |
1555 | dup·98·/b·put | ||
1555 | dup·1 | 1556 | dup·101·/e·put |
1556 | dup·114·/r·put | 1557 | dup·114·/r·put |
1557 | dup·117·/u·put | 1558 | dup·117·/u·put |
1558 | dup·121·/y·put | 1559 | dup·121·/y·put |
1559 | readonly·def | 1560 | readonly·def |
1560 | currentdict·end | 1561 | currentdict·end |
1561 | currentfile·eexec | 1562 | currentfile·eexec |
1562 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1563 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1740, 89 lines modified | Offset 1741, 93 lines modified | ||
1740 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1741 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1741 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1742 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1742 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1743 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1743 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1744 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1744 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1745 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1745 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1746 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1746 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1747 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1747 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1748 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1748 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1749 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1750 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1751 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1752 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1753 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1754 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1755 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1756 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1757 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1758 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1759 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1760 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1761 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1762 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1763 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1764 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1765 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1766 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1767 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1768 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1769 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1770 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1771 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1772 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1773 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1774 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1775 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1776 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1777 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1778 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1779 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1780 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1781 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1782 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1783 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1784 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1785 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1786 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1787 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1788 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1789 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1790 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1791 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1792 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1793 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1794 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1795 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1796 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1797 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1798 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1799 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1800 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1801 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1802 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1803 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1804 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1805 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1806 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1807 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1808 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1809 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1810 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1811 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1812 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1813 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1814 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1815 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1816 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1817 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1818 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1819 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1820 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1821 | 1749 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1750 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1751 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1752 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1753 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1754 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1755 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 16939/28832 bytes (58.75%) of diff not shown. |
Offset 31, 15 lines modified | Offset 31, 15 lines modified | ||
31 | ················································B···········B\xd | 31 | ················································B···········B\xd |
32 | ·····················Similarly,·an·edge·(x,y)·where·x·∈·Y··and·y·∈·Y····is·not·found·in·the·network.\xd | 32 | ·····················Similarly,·an·edge·(x,y)·where·x·∈·Y··and·y·∈·Y····is·not·found·in·the·network.\xd |
33 | ·························································W···········W\xd | 33 | ·························································W···········W\xd |
34 | ···················•·An·edge·(x,y)·where·x·∈·Y····and·y·∈·Y·becomes·two·edges,·(x,y−)·and·(y+,x),·both·with\xd | 34 | ···················•·An·edge·(x,y)·where·x·∈·Y····and·y·∈·Y·becomes·two·edges,·(x,y−)·and·(y+,x),·both·with\xd |
35 | ················································B···········I\xd | 35 | ················································B···········I\xd |
36 | ·····················infinite·capacity.\xd | 36 | ·····················infinite·capacity.\xd |
37 | ·······························································1\xd | 37 | ·······························································1\xd |
38 | ··············2····························Network·:·DRAFT· | 38 | ··············2····························Network·:·DRAFT·February·18,·2025\xd |
39 | ·················•·An·edge·(y,z)·where·y·∈·Y·and·z·∈·Y···becomes·two·edges,·(y+,z)·and·(z,y−),·both·with\xd | 39 | ·················•·An·edge·(y,z)·where·y·∈·Y·and·z·∈·Y···becomes·two·edges,·(y+,z)·and·(z,y−),·both·with\xd |
40 | ············································I·········W\xd | 40 | ············································I·········W\xd |
41 | ···················infinite·capacity.\xd | 41 | ···················infinite·capacity.\xd |
42 | ···········································································+·−·········+·−\xd | 42 | ···········································································+·−·········+·−\xd |
43 | ·················•·An·edge·(x,y)·where·x·∈·Y·and·y·∈·Y·becomes·two·edges,·(x·,y·)·and·(y·,x·),·both·with\xd | 43 | ·················•·An·edge·(x,y)·where·x·∈·Y·and·y·∈·Y·becomes·two·edges,·(x·,y·)·and·(y·,x·),·both·with\xd |
44 | ···········································I·········I\xd | 44 | ···········································I·········I\xd |
45 | ···················infinite·capacity.\xd | 45 | ···················infinite·capacity.\xd |
Offset 71, 15 lines modified | Offset 71, 15 lines modified | ||
71 | ·················•·ArcChunk·–·a·structure·that·holds·the·storage·for·a·number·of·arcs.·Since·we·do·not·require\xd | 71 | ·················•·ArcChunk·–·a·structure·that·holds·the·storage·for·a·number·of·arcs.·Since·we·do·not·require\xd |
72 | ···················the·number·of·arcs·to·be·known·in·advance·when·initializing·the·Network·object,·we·allo-\xd | 72 | ···················the·number·of·arcs·to·be·known·in·advance·when·initializing·the·Network·object,·we·allo-\xd |
73 | ···················cate·chunks·of·space·to·hold·the·arcs·as·necessary.·Each·chunks·holds·space·for·nnode·arc\xd | 73 | ···················cate·chunks·of·space·to·hold·the·arcs·as·necessary.·Each·chunks·holds·space·for·nnode·arc\xd |
74 | ···················structures.\xd | 74 | ···················structures.\xd |
75 | ·················The·Network·object·has·six·fields.\xd | 75 | ·················The·Network·object·has·six·fields.\xd |
76 | ·················•·int·nnode·—·the·number·of·nodes·in·the·network,·including·the·source·(node·0)·and·the·sink\xd | 76 | ·················•·int·nnode·—·the·number·of·nodes·in·the·network,·including·the·source·(node·0)·and·the·sink\xd |
77 | ···················(node·nnode-1).\xd | 77 | ···················(node·nnode-1).\xd |
78 | ·····································Network·:·DRAFT·· | 78 | ·····································Network·:·DRAFT··February·18,·2025··················3\xd |
79 | ···············•·int·narc·—·the·number·of·arcs·in·the·network\xd | 79 | ···············•·int·narc·—·the·number·of·arcs·in·the·network\xd |
80 | ···············•·int·ntrav·—·the·number·of·arc·traversals·that·we·made·to·find·a·max·flow.\xd | 80 | ···············•·int·ntrav·—·the·number·of·arc·traversals·that·we·made·to·find·a·max·flow.\xd |
81 | ···············•·Arc·**inheads·—·pointer·to·a·vector·of·pointers·to·Arc,·inheads[v]·points·to·the·first·arc\xd | 81 | ···············•·Arc·**inheads·—·pointer·to·a·vector·of·pointers·to·Arc,·inheads[v]·points·to·the·first·arc\xd |
82 | ·················in·the·in-list·for·node·v.\xd | 82 | ·················in·the·in-list·for·node·v.\xd |
83 | ···············•·Arc·**outheads·—·pointer·to·a·vector·of·pointers·to·Arc,·outheads[v]·points·to·the·first\xd | 83 | ···············•·Arc·**outheads·—·pointer·to·a·vector·of·pointers·to·Arc,·outheads[v]·points·to·the·first\xd |
84 | ·················arc·in·the·out-list·for·node·v.\xd | 84 | ·················arc·in·the·out-list·for·node·v.\xd |
85 | ···············•·ArcChunk·*chunk·—·pointer·to·the·first·ArcChunk·structure.\xd | 85 | ···············•·ArcChunk·*chunk·—·pointer·to·the·first·ArcChunk·structure.\xd |
Offset 99, 15 lines modified | Offset 99, 15 lines modified | ||
99 | ···············•·int·size·—·the·total·number·of·Arc·structures·in·this·chunk.\xd | 99 | ···············•·int·size·—·the·total·number·of·Arc·structures·in·this·chunk.\xd |
100 | ···············•·int·inuse·—·the·number·of·active·Arc·structures·in·this·chunk.\xd | 100 | ···············•·int·inuse·—·the·number·of·active·Arc·structures·in·this·chunk.\xd |
101 | ···············•·Arc·*base·—·pointer·to·the·first·Arc·structure·in·this·chunk.\xd | 101 | ···············•·Arc·*base·—·pointer·to·the·first·Arc·structure·in·this·chunk.\xd |
102 | ···············•·ArcChunk·*next·—·pointer·to·the·next·ArcChunk·structure·in·the·list·of·chunks.\xd | 102 | ···············•·ArcChunk·*next·—·pointer·to·the·next·ArcChunk·structure·in·the·list·of·chunks.\xd |
103 | ············1.2····Prototypes·and·descriptions·of·Network·methods\xd | 103 | ············1.2····Prototypes·and·descriptions·of·Network·methods\xd |
104 | ············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 104 | ············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
105 | ············Network·object.\xd | 105 | ············Network·object.\xd |
106 | ··············4·························· | 106 | ··············4··························Network·:·DRAFT·February·18,·2025\xd |
107 | ··············1.2.1··Basic·methods\xd | 107 | ··············1.2.1··Basic·methods\xd |
108 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 108 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
109 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 109 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
110 | ················1.·Network·*·Network_new·(·void·)·;\xd | 110 | ················1.·Network·*·Network_new·(·void·)·;\xd |
111 | ···················This·method·simply·allocates·storage·for·the·Network·structure·and·then·sets·the·default\xd | 111 | ···················This·method·simply·allocates·storage·for·the·Network·structure·and·then·sets·the·default\xd |
112 | ···················fields·by·a·call·to·Network·setDefaultFields().\xd | 112 | ···················fields·by·a·call·to·Network·setDefaultFields().\xd |
113 | ················2.·void·Network_setDefaultFields·(·Network·*network·)·;\xd | 113 | ················2.·void·Network_setDefaultFields·(·Network·*network·)·;\xd |
Offset 135, 15 lines modified | Offset 135, 15 lines modified | ||
135 | ················3.·void·Network_addArc·(·Network·*network,·int·firstNode,·secondNode,\xd | 135 | ················3.·void·Network_addArc·(·Network·*network,·int·firstNode,·secondNode,\xd |
136 | ·········································int·capacity,·int·flow·)·;\xd | 136 | ·········································int·capacity,·int·flow·)·;\xd |
137 | ···················This·method·adds·an·arc·from·firstNode·to·secondNode·with·flow·flow·and·capacity\xd | 137 | ···················This·method·adds·an·arc·from·firstNode·to·secondNode·with·flow·flow·and·capacity\xd |
138 | ···················capacity.·The·arc·is·inserted·in·the·out-list·for·firstNode·and·the·in-list·for·secondNode.\xd | 138 | ···················capacity.·The·arc·is·inserted·in·the·out-list·for·firstNode·and·the·in-list·for·secondNode.\xd |
139 | ···················Error·checking:·If·network·is·NULL,·or·if·nnode·≤·0,·or·if·firstNode·≤·0,·or·if·nnode·≤\xd | 139 | ···················Error·checking:·If·network·is·NULL,·or·if·nnode·≤·0,·or·if·firstNode·≤·0,·or·if·nnode·≤\xd |
140 | ···················firstNode,·or·if·secondNode·≤·0,·or·if·nnode·≤·secondNode,·or·if·capacity·≤·0,·an·error\xd | 140 | ···················firstNode,·or·if·secondNode·≤·0,·or·if·nnode·≤·secondNode,·or·if·capacity·≤·0,·an·error\xd |
141 | ···················message·is·printed·and·the·program·exits.\xd | 141 | ···················message·is·printed·and·the·program·exits.\xd |
142 | ·····································Network·:·DRAFT·· | 142 | ·····································Network·:·DRAFT··February·18,·2025··················5\xd |
143 | ············1.2.3··Utility·methods\xd | 143 | ············1.2.3··Utility·methods\xd |
144 | ···············1.·void·Network_findMaxFlow·(·Network·*network·)·;\xd | 144 | ···············1.·void·Network_findMaxFlow·(·Network·*network·)·;\xd |
145 | ·················This·method·finds·a·maximum·flow·over·the·network·by·repeatedly·calling·the·method·to\xd | 145 | ·················This·method·finds·a·maximum·flow·over·the·network·by·repeatedly·calling·the·method·to\xd |
146 | ·················find·an·augmenting·path·and·then·the·method·to·augment·the·path.·It·uses·an·Ideq·object\xd | 146 | ·················find·an·augmenting·path·and·then·the·method·to·augment·the·path.·It·uses·an·Ideq·object\xd |
147 | ·················to·maintain·a·priority·dequeue.\xd | 147 | ·················to·maintain·a·priority·dequeue.\xd |
148 | ·················Error·checking:·If·network·is·NULL,·or·if·nnode·≤·0,·an·error·message·is·printed·and·the\xd | 148 | ·················Error·checking:·If·network·is·NULL,·or·if·nnode·≤·0,·an·error·message·is·printed·and·the\xd |
149 | ·················program·exits.\xd | 149 | ·················program·exits.\xd |
Offset 172, 15 lines modified | Offset 172, 15 lines modified | ||
172 | ·················and·the·program·exits.\xd | 172 | ·················and·the·program·exits.\xd |
173 | ···············5.·void·Network_findMincutFromSink·(·Network·*network,·Ideq·deq,·int·mark[])·;\xd | 173 | ···············5.·void·Network_findMincutFromSink·(·Network·*network,·Ideq·deq,·int·mark[])·;\xd |
174 | ·················This·method·finds·the·min-cut·closest·to·the·sink·by·traversing·a·tree·of·flow-alternating\xd | 174 | ·················This·method·finds·the·min-cut·closest·to·the·sink·by·traversing·a·tree·of·flow-alternating\xd |
175 | ·················paths·into·the·sink.·On·return,·mark[v]·=·1·if·the·node·v·is·in·the·component·that·contains\xd | 175 | ·················paths·into·the·sink.·On·return,·mark[v]·=·1·if·the·node·v·is·in·the·component·that·contains\xd |
176 | ·················the·source.·If·the·node·v·is·in·the·component·that·contains·the·sink,·then·mark[v]·=·2.\xd | 176 | ·················the·source.·If·the·node·v·is·in·the·component·that·contains·the·sink,·then·mark[v]·=·2.\xd |
177 | ·················Error·checking:·If·network,·deq·or·mark·is·NULL,·or·if·nnode·≤·0,·an·error·message·is·printed\xd | 177 | ·················Error·checking:·If·network,·deq·or·mark·is·NULL,·or·if·nnode·≤·0,·an·error·message·is·printed\xd |
178 | ·················and·the·program·exits.\xd | 178 | ·················and·the·program·exits.\xd |
179 | ··············6·························· | 179 | ··············6··························Network·:·DRAFT·February·18,·2025\xd |
180 | ··············1.2.4··IO·methods\xd | 180 | ··············1.2.4··IO·methods\xd |
181 | ··············There·are·two·IO·routines·for·debugging·purposes.\xd | 181 | ··············There·are·two·IO·routines·for·debugging·purposes.\xd |
182 | ················1.·void·Network_writeForHumanEye·(·Network·*network,·FILE·*fp·)·;\xd | 182 | ················1.·void·Network_writeForHumanEye·(·Network·*network,·FILE·*fp·)·;\xd |
183 | ···················Thismethodwritesthenetworktoafileinahumanreadableformat.·ThemethodNetwork·writeStats()\xd | 183 | ···················Thismethodwritesthenetworktoafileinahumanreadableformat.·ThemethodNetwork·writeStats()\xd |
184 | ···················is·called·to·write·out·the·header·and·statistics.·Then·the·in-list·and·out-lists·for·the·nodes·in\xd | 184 | ···················is·called·to·write·out·the·header·and·statistics.·Then·the·in-list·and·out-lists·for·the·nodes·in\xd |
185 | ···················the·network·are·printed.\xd | 185 | ···················the·network·are·printed.\xd |
186 | ···················Error·checking:·If·network·or·fp·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 186 | ···················Error·checking:·If·network·or·fp·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·PatchAndGoInfo.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·PatchAndGoInfo.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2041, 20 lines modified | Offset 2041, 21 lines modified | ||
2041 | end·readonly·def | 2041 | end·readonly·def |
2042 | /Encoding·256·array | 2042 | /Encoding·256·array |
2043 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2043 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2044 | dup·44·/comma·put | 2044 | dup·44·/comma·put |
2045 | dup·48·/zero·put | 2045 | dup·48·/zero·put |
2046 | dup·49·/one·put | 2046 | dup·49·/one·put |
2047 | dup·50·/two·put | 2047 | dup·50·/two·put |
2048 | dup·52·/four·put | ||
2049 | dup·5 | 2048 | dup·53·/five·put |
2049 | dup·56·/eight·put | ||
2050 | dup·58·/colon·put | 2050 | dup·58·/colon·put |
2051 | dup·7 | 2051 | dup·70·/F·put |
2052 | dup·97·/a·put | 2052 | dup·97·/a·put |
2053 | dup·98·/b·put | ||
2053 | dup·1 | 2054 | dup·101·/e·put |
2054 | dup·114·/r·put | 2055 | dup·114·/r·put |
2055 | dup·117·/u·put | 2056 | dup·117·/u·put |
2056 | dup·121·/y·put | 2057 | dup·121·/y·put |
2057 | readonly·def | 2058 | readonly·def |
2058 | currentdict·end | 2059 | currentdict·end |
2059 | currentfile·eexec | 2060 | currentfile·eexec |
2060 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2061 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2238, 89 lines modified | Offset 2239, 93 lines modified | ||
2238 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2239 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2239 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2240 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2240 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2241 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2241 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2242 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2242 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2243 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2243 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2244 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2244 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2245 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2245 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2246 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2246 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2247 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2248 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2249 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2250 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2251 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2252 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2253 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2254 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2255 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2256 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2257 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2258 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2259 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2260 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2261 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2262 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2263 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2264 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2265 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2266 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2267 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2268 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2269 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2270 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2271 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2272 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2273 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2274 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2275 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2276 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2277 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2278 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2279 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2280 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2281 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2282 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2283 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2284 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2285 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2286 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2287 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2288 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2289 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2290 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2291 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2292 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2293 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2294 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2295 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2296 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2297 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2298 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2299 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2300 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2301 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2302 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2303 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2304 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2305 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2306 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2307 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2308 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2309 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2310 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2311 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2312 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2313 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2314 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2315 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2316 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2317 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2318 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2319 | 2247 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2248 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2249 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2250 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2251 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2252 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2253 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 4640/16540 bytes (28.05%) of diff not shown. |
Offset 26, 15 lines modified | Offset 26, 15 lines modified | ||
26 | ····························If·A······is·singular,·the·solution·X·=·0·and·X·=·A−1B·is·perfectly·acceptable.·In·other\xd | 26 | ····························If·A······is·singular,·the·solution·X·=·0·and·X·=·A−1B·is·perfectly·acceptable.·In·other\xd |
27 | ··································1,1·····································1················2·······2,2···2\xd | 27 | ··································1,1·····································1················2·······2,2···2\xd |
28 | ····························cases,·the·location·of·the·singularity·can·be·communicated·back·to·the·user·to·supply·useful\xd | 28 | ····························cases,·the·location·of·the·singularity·can·be·communicated·back·to·the·user·to·supply·useful\xd |
29 | ····························information·about·the·finite·element·model.·One·common·practice·is·to·not·use·pivoting,·but\xd | 29 | ····························information·about·the·finite·element·model.·One·common·practice·is·to·not·use·pivoting,·but\xd |
30 | ····························to·check·the·magnitude·of·the·diagonal·entry·as·a·row·and·column·is·to·be·eliminated.·If\xd | 30 | ····························to·check·the·magnitude·of·the·diagonal·entry·as·a·row·and·column·is·to·be·eliminated.·If\xd |
31 | ····························the·magnitude·is·smaller·than·a·user-supplied·parameter,·the·diagonal·entry·is·set·to·some\xd | 31 | ····························the·magnitude·is·smaller·than·a·user-supplied·parameter,·the·diagonal·entry·is·set·to·some\xd |
32 | ·····················································································1\xd | 32 | ·····················································································1\xd |
33 | ···············2··························PatchAndGoInfo·:·DRAFT· | 33 | ···············2··························PatchAndGoInfo·:·DRAFT·February·18,·2025\xd |
34 | ·····················multiple·of·the·largest·offdiagonal·entry·in·that·row·and·column·of·the·front,·the·location·and\xd | 34 | ·····················multiple·of·the·largest·offdiagonal·entry·in·that·row·and·column·of·the·front,·the·location·and\xd |
35 | ·····················perturbation·is·noted,·and·the·factorization·proceeds.\xd | 35 | ·····················perturbation·is·noted,·and·the·factorization·proceeds.\xd |
36 | ··················Other·strategies·can·be·added·to·the·PatchAndGoInfo·object.·For·example,·if·a·matrix·is·being\xd | 36 | ··················Other·strategies·can·be·added·to·the·PatchAndGoInfo·object.·For·example,·if·a·matrix·is·being\xd |
37 | ···············factored·that·is·believed·to·be·positive·definite,·and·a·negative·value·is·found·in·a·pivot·element,\xd | 37 | ···············factored·that·is·believed·to·be·positive·definite,·and·a·negative·value·is·found·in·a·pivot·element,\xd |
38 | ···············one·could·abort·the·factorization,·or·perturb·the·element·so·that·it·is·positive.\xd | 38 | ···············one·could·abort·the·factorization,·or·perturb·the·element·so·that·it·is·positive.\xd |
39 | ···············1.1····Data·Structure\xd | 39 | ···············1.1····Data·Structure\xd |
40 | ···············The·PatchAndGoInfo·structure·has·five·fields.\xd | 40 | ···············The·PatchAndGoInfo·structure·has·five·fields.\xd |
Offset 58, 15 lines modified | Offset 58, 15 lines modified | ||
58 | ··················1.·PatchAndGoInfo·*·PatchAndGoInfo_new·(·void·)·;\xd | 58 | ··················1.·PatchAndGoInfo·*·PatchAndGoInfo_new·(·void·)·;\xd |
59 | ·····················This·method·simply·allocates·storage·for·the·PatchAndGoInfo·structure·and·then·sets·the\xd | 59 | ·····················This·method·simply·allocates·storage·for·the·PatchAndGoInfo·structure·and·then·sets·the\xd |
60 | ·····················default·fields·by·a·call·to·PatchAndGoInfo·setDefaultFields().\xd | 60 | ·····················default·fields·by·a·call·to·PatchAndGoInfo·setDefaultFields().\xd |
61 | ··················2.·void·PatchAndGoInfo_setDefaultFields·(·PatchAndGoInfo·*info·)·;\xd | 61 | ··················2.·void·PatchAndGoInfo_setDefaultFields·(·PatchAndGoInfo·*info·)·;\xd |
62 | ·····················This·method·sets·the·structure’s·fields·to·default·values:·strategy·=·-1,·toosmall·=·fudge\xd | 62 | ·····················This·method·sets·the·structure’s·fields·to·default·values:·strategy·=·-1,·toosmall·=·fudge\xd |
63 | ·····················=0.0,·and·fudgeIV·=·fudgeDV·=·NULL·.\xd | 63 | ·····················=0.0,·and·fudgeIV·=·fudgeDV·=·NULL·.\xd |
64 | ·····················Error·checking:·If·info·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 64 | ·····················Error·checking:·If·info·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
65 | ··································PatchAndGoInfo·:·DRAFT·· | 65 | ··································PatchAndGoInfo·:·DRAFT··February·18,·2025···············3\xd |
66 | ···············3.·void·PatchAndGoInfo_clearData·(·PatchAndGoInfo·*info·)·;\xd | 66 | ···············3.·void·PatchAndGoInfo_clearData·(·PatchAndGoInfo·*info·)·;\xd |
67 | ·················This·method·clears·any·data·owned·by·the·object.·If·fudgeIV·is·not·NULL·it·is·free’d·by·a\xd | 67 | ·················This·method·clears·any·data·owned·by·the·object.·If·fudgeIV·is·not·NULL·it·is·free’d·by·a\xd |
68 | ·················call·to·IV·free().·If·fudgeDV·is·not·NULL·it·is·free’d·by·a·call·to·DV·free().·The·structure’s\xd | 68 | ·················call·to·IV·free().·If·fudgeDV·is·not·NULL·it·is·free’d·by·a·call·to·DV·free().·The·structure’s\xd |
69 | ·················default·fields·are·then·set·with·a·call·to·PatchAndGoInfo·setDefaultFields().\xd | 69 | ·················default·fields·are·then·set·with·a·call·to·PatchAndGoInfo·setDefaultFields().\xd |
70 | ·················Error·checking:·If·info·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 70 | ·················Error·checking:·If·info·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
71 | ···············4.·void·PatchAndGoInfo_free·(·PatchAndGoInfo·*info·)·;\xd | 71 | ···············4.·void·PatchAndGoInfo_free·(·PatchAndGoInfo·*info·)·;\xd |
72 | ·················This·method·releases·any·storage·by·a·call·to·PatchAndGoInfo·clearData()·then·free’s·the\xd | 72 | ·················This·method·releases·any·storage·by·a·call·to·PatchAndGoInfo·clearData()·then·free’s·the\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·Pencil.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·Pencil.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1882, 20 lines modified | Offset 1882, 21 lines modified | ||
1882 | end·readonly·def | 1882 | end·readonly·def |
1883 | /Encoding·256·array | 1883 | /Encoding·256·array |
1884 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1884 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1885 | dup·44·/comma·put | 1885 | dup·44·/comma·put |
1886 | dup·48·/zero·put | 1886 | dup·48·/zero·put |
1887 | dup·49·/one·put | 1887 | dup·49·/one·put |
1888 | dup·50·/two·put | 1888 | dup·50·/two·put |
1889 | dup·52·/four·put | ||
1890 | dup·5 | 1889 | dup·53·/five·put |
1890 | dup·56·/eight·put | ||
1891 | dup·58·/colon·put | 1891 | dup·58·/colon·put |
1892 | dup·7 | 1892 | dup·70·/F·put |
1893 | dup·97·/a·put | 1893 | dup·97·/a·put |
1894 | dup·98·/b·put | ||
1894 | dup·1 | 1895 | dup·101·/e·put |
1895 | dup·114·/r·put | 1896 | dup·114·/r·put |
1896 | dup·117·/u·put | 1897 | dup·117·/u·put |
1897 | dup·121·/y·put | 1898 | dup·121·/y·put |
1898 | readonly·def | 1899 | readonly·def |
1899 | currentdict·end | 1900 | currentdict·end |
1900 | currentfile·eexec | 1901 | currentfile·eexec |
1901 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1902 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2079, 89 lines modified | Offset 2080, 93 lines modified | ||
2079 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2080 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2080 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2081 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2081 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2082 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2082 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2083 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2083 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2084 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2084 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2085 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2085 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2086 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2086 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2087 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2087 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2088 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2089 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2090 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2091 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2092 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2093 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2094 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2095 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2096 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2097 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2098 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2099 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2100 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2101 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2102 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2103 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2104 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2105 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2106 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2107 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2108 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2109 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2110 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2111 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2112 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2113 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2114 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2115 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2116 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2117 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2118 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2119 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2120 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2121 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2122 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2123 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2124 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2125 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2126 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2127 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2128 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2129 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2130 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2131 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2132 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2133 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2134 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2135 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2136 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2137 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2138 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2139 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2140 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2141 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2142 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2143 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2144 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2145 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2146 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2147 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2148 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2149 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2150 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2151 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2152 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2153 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2154 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2155 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2156 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2157 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2158 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2159 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2160 | 2088 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2089 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2090 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2091 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2092 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2093 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2094 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 6158/18050 bytes (34.12%) of diff not shown. |
Offset 16, 15 lines modified | Offset 16, 15 lines modified | ||
16 | ··············•·InpMtx·*inpmtxB·:·pointer·to·the·matrix·object·for·B.·If·inpmtxB·is·NULL,·then·B·is·the\xd | 16 | ··············•·InpMtx·*inpmtxB·:·pointer·to·the·matrix·object·for·B.·If·inpmtxB·is·NULL,·then·B·is·the\xd |
17 | ···············identity·matrix.\xd | 17 | ···············identity·matrix.\xd |
18 | ··············•·double·sigma[2]·:·real·or·complex·scalar·shift·value.\xd | 18 | ··············•·double·sigma[2]·:·real·or·complex·scalar·shift·value.\xd |
19 | ···········1.2··Prototypes·and·descriptions·of·Pencil·methods\xd | 19 | ···········1.2··Prototypes·and·descriptions·of·Pencil·methods\xd |
20 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 20 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
21 | ···········Pencil·object.\xd | 21 | ···········Pencil·object.\xd |
22 | ·············································1\xd | 22 | ·············································1\xd |
23 | ··············2···························· | 23 | ··············2····························Chv·:·DRAFT·February·18,·2025\xd |
24 | ··············1.2.1··Basic·methods\xd | 24 | ··············1.2.1··Basic·methods\xd |
25 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 25 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
26 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 26 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
27 | ················1.·Pencil·*·Pencil_new·(·void·)·;\xd | 27 | ················1.·Pencil·*·Pencil_new·(·void·)·;\xd |
28 | ··················This·method·simply·allocates·storage·for·the·Pencil·structure·and·then·sets·the·default·fields\xd | 28 | ··················This·method·simply·allocates·storage·for·the·Pencil·structure·and·then·sets·the·default·fields\xd |
29 | ··················by·a·call·to·Pencil·setDefaultFields().\xd | 29 | ··················by·a·call·to·Pencil·setDefaultFields().\xd |
30 | ················2.·void·Pencil_setDefaultFields·(·Pencil·*pencil·)·;\xd | 30 | ················2.·void·Pencil_setDefaultFields·(·Pencil·*pencil·)·;\xd |
Offset 48, 15 lines modified | Offset 48, 15 lines modified | ||
48 | ················1.·void·Pencil_changeCoordType·(·Pencil·*pencil,·int·newType·)·;\xd | 48 | ················1.·void·Pencil_changeCoordType·(·Pencil·*pencil,·int·newType·)·;\xd |
49 | ··················ThismethodsimplycallstheInpMtx·changeCoordType()methodforeachofitstwomatrices.\xd | 49 | ··················ThismethodsimplycallstheInpMtx·changeCoordType()methodforeachofitstwomatrices.\xd |
50 | ··················Error·checking:·If·pencil·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 50 | ··················Error·checking:·If·pencil·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
51 | ················2.·void·Pencil_changeStorageMode·(·Pencil·*pencil,·int·newMode·)·;\xd | 51 | ················2.·void·Pencil_changeStorageMode·(·Pencil·*pencil,·int·newMode·)·;\xd |
52 | ··················This·method·simply·calls·the·InpMtx·changeStorageMode()·method·for·each·of·its·two·ma-\xd | 52 | ··················This·method·simply·calls·the·InpMtx·changeStorageMode()·method·for·each·of·its·two·ma-\xd |
53 | ··················trices.\xd | 53 | ··················trices.\xd |
54 | ··················Error·checking:·If·pencil·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 54 | ··················Error·checking:·If·pencil·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
55 | ············································ | 55 | ············································Chv·:·DRAFT·····February·18,·2025··························3\xd |
56 | ·················3.·void·Pencil_sortAndCompress·(·Pencil·*pencil·)·;\xd | 56 | ·················3.·void·Pencil_sortAndCompress·(·Pencil·*pencil·)·;\xd |
57 | ···················ThismethodsimplycallstheInpMtx·sortAndCompress()methodforeachofitstwomatrices.\xd | 57 | ···················ThismethodsimplycallstheInpMtx·sortAndCompress()methodforeachofitstwomatrices.\xd |
58 | ···················Error·checking:·If·pencil·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 58 | ···················Error·checking:·If·pencil·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
59 | ·················4.·void·Pencil_convertToVectors·(·Pencil·*pencil·)·;\xd | 59 | ·················4.·void·Pencil_convertToVectors·(·Pencil·*pencil·)·;\xd |
60 | ···················ThismethodsimplycallstheInpMtx·sortAndCompress()methodforeachofitstwomatrices.\xd | 60 | ···················ThismethodsimplycallstheInpMtx·sortAndCompress()methodforeachofitstwomatrices.\xd |
61 | ···················Error·checking:·If·pencil·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 61 | ···················Error·checking:·If·pencil·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
62 | ·················5.·void·Pencil_mapToLowerTriangle·(·Pencil·*pencil·)·;\xd | 62 | ·················5.·void·Pencil_mapToLowerTriangle·(·Pencil·*pencil·)·;\xd |
Offset 83, 15 lines modified | Offset 83, 15 lines modified | ||
83 | ·················1.·Pencil·*·Pencil_setup·(·int·myid,·int·symflag,·char·*inpmtxAfile,\xd | 83 | ·················1.·Pencil·*·Pencil_setup·(·int·myid,·int·symflag,·char·*inpmtxAfile,\xd |
84 | ·······················double·sigma[],·char·*inpmtxBfile,·int·randomflag,·Drand·*drand,\xd | 84 | ·······················double·sigma[],·char·*inpmtxBfile,·int·randomflag,·Drand·*drand,\xd |
85 | ·······················int·msglvl,·FILE·*msgFile·)·;\xd | 85 | ·······················int·msglvl,·FILE·*msgFile·)·;\xd |
86 | ···················This·method·is·used·to·read·in·the·matrices·from·two·files·and·initialize·the·objects.·If\xd | 86 | ···················This·method·is·used·to·read·in·the·matrices·from·two·files·and·initialize·the·objects.·If\xd |
87 | ···················the·file·name·is·“none”,·then·no·matrix·is·read.···If·symflag·is·SPOOLES·SYMMETRIC·or\xd | 87 | ···················the·file·name·is·“none”,·then·no·matrix·is·read.···If·symflag·is·SPOOLES·SYMMETRIC·or\xd |
88 | ···················SPOOLES·HERMITIAN,·entries·in·the·lower·triangle·are·dropped.·If·randomflag·is·one,·the\xd | 88 | ···················SPOOLES·HERMITIAN,·entries·in·the·lower·triangle·are·dropped.·If·randomflag·is·one,·the\xd |
89 | ···················entries·are·filled·with·random·numbers·using·the·Drand·random·number·generator·drand.\xd | 89 | ···················entries·are·filled·with·random·numbers·using·the·Drand·random·number·generator·drand.\xd |
90 | ·······4·············· | 90 | ·······4··············Chv·:·DRAFT·February·18,·2025\xd |
91 | ··········Note:·this·method·was·created·for·an·MPI·application.·If·myid·is·zero,·then·the·files·are\xd | 91 | ··········Note:·this·method·was·created·for·an·MPI·application.·If·myid·is·zero,·then·the·files·are\xd |
92 | ··········read·in,·otherwise·just·stubs·are·created·for·the·internal·matrix·objects.·In·our·MPI·drivers,\xd | 92 | ··········read·in,·otherwise·just·stubs·are·created·for·the·internal·matrix·objects.·In·our·MPI·drivers,\xd |
93 | ··········process·zero·reads·in·the·matrices·and·then·starts·the·process·to·distribute·them·to·the·other\xd | 93 | ··········process·zero·reads·in·the·matrices·and·then·starts·the·process·to·distribute·them·to·the·other\xd |
94 | ··········processes.\xd | 94 | ··········processes.\xd |
95 | ··········Error·checking:·If·pencil·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 95 | ··········Error·checking:·If·pencil·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
96 | ········2.·int·Pencil_readFromFiles·(·Pencil·*pencil,·char·*fnA,·char·*fnB·)·;\xd | 96 | ········2.·int·Pencil_readFromFiles·(·Pencil·*pencil,·char·*fnA,·char·*fnB·)·;\xd |
97 | ··········This·method·reads·the·two·InpMtx·objects·from·two·files.·If·fnA·is·“none”,·then·A·is·not\xd | 97 | ··········This·method·reads·the·two·InpMtx·objects·from·two·files.·If·fnA·is·“none”,·then·A·is·not\xd |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·Perm.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·Perm.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1016, 20 lines modified | Offset 1016, 21 lines modified | ||
1016 | end·readonly·def | 1016 | end·readonly·def |
1017 | /Encoding·256·array | 1017 | /Encoding·256·array |
1018 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1018 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1019 | dup·44·/comma·put | 1019 | dup·44·/comma·put |
1020 | dup·48·/zero·put | 1020 | dup·48·/zero·put |
1021 | dup·49·/one·put | 1021 | dup·49·/one·put |
1022 | dup·50·/two·put | 1022 | dup·50·/two·put |
1023 | dup·52·/four·put | ||
1024 | dup·5 | 1023 | dup·53·/five·put |
1024 | dup·56·/eight·put | ||
1025 | dup·58·/colon·put | 1025 | dup·58·/colon·put |
1026 | dup·7 | 1026 | dup·70·/F·put |
1027 | dup·97·/a·put | 1027 | dup·97·/a·put |
1028 | dup·98·/b·put | ||
1028 | dup·1 | 1029 | dup·101·/e·put |
1029 | dup·114·/r·put | 1030 | dup·114·/r·put |
1030 | dup·117·/u·put | 1031 | dup·117·/u·put |
1031 | dup·121·/y·put | 1032 | dup·121·/y·put |
1032 | readonly·def | 1033 | readonly·def |
1033 | currentdict·end | 1034 | currentdict·end |
1034 | currentfile·eexec | 1035 | currentfile·eexec |
1035 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1036 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1213, 89 lines modified | Offset 1214, 93 lines modified | ||
1213 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1214 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1214 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1215 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1215 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1216 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1216 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1217 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1217 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1218 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1218 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1219 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1219 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1220 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1220 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1221 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1221 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1222 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1223 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1224 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1225 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1226 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1227 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1228 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1229 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1230 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1231 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1232 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1233 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1234 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1235 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1236 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1237 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1238 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1239 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1240 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1241 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1242 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1243 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1244 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1245 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1246 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1247 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1248 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1249 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1250 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1251 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1252 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1253 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1254 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1255 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1256 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1257 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1258 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1259 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1260 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1261 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1262 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1263 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1264 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1265 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1266 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1267 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1268 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1269 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1270 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1271 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1272 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1273 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1274 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1275 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1276 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1277 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1278 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1279 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1280 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1281 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1282 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1283 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1284 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1285 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1286 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1287 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1288 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1289 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1290 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1291 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1292 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1293 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1294 | 1222 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1223 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1224 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1225 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1226 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1227 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1228 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 12657/24547 bytes (51.56%) of diff not shown. |
Offset 14, 15 lines modified | Offset 14, 15 lines modified | ||
14 | ·············•·int·size·:·dimension·of·the·vectors\xd | 14 | ·············•·int·size·:·dimension·of·the·vectors\xd |
15 | ·············•·int·*newToOld·:·pointer·to·the·new-to-old·vector\xd | 15 | ·············•·int·*newToOld·:·pointer·to·the·new-to-old·vector\xd |
16 | ·············•·int·*oldToNew·:·pointer·to·the·old-to-new·vector\xd | 16 | ·············•·int·*oldToNew·:·pointer·to·the·old-to-new·vector\xd |
17 | ···········1.2··Prototypes·and·descriptions·of·Perm·methods\xd | 17 | ···········1.2··Prototypes·and·descriptions·of·Perm·methods\xd |
18 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·Perm\xd | 18 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·Perm\xd |
19 | ···········object.\xd | 19 | ···········object.\xd |
20 | ·············································1\xd | 20 | ·············································1\xd |
21 | ··············2····························PERM·:·DRAFT· | 21 | ··············2····························PERM·:·DRAFT·February·18,·2025\xd |
22 | ··············1.2.1··Basic·methods\xd | 22 | ··············1.2.1··Basic·methods\xd |
23 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 23 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
24 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 24 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
25 | ················1.·Perm·*·Perm_new·(·void·)·;\xd | 25 | ················1.·Perm·*·Perm_new·(·void·)·;\xd |
26 | ···················This·method·simply·allocates·storage·for·the·Perm·structure·and·then·sets·the·default·fields\xd | 26 | ···················This·method·simply·allocates·storage·for·the·Perm·structure·and·then·sets·the·default·fields\xd |
27 | ···················by·a·call·to·Perm·setDefaultFields().\xd | 27 | ···················by·a·call·to·Perm·setDefaultFields().\xd |
28 | ················2.·void·Perm_setDefaultFields·(·Perm·*perm·)·;\xd | 28 | ················2.·void·Perm_setDefaultFields·(·Perm·*perm·)·;\xd |
Offset 46, 15 lines modified | Offset 46, 15 lines modified | ||
46 | ···················isPresent·==·3·then·newToOld·and·newToOld·are·set·with·calls·to·IVinit().\xd | 46 | ···················isPresent·==·3·then·newToOld·and·newToOld·are·set·with·calls·to·IVinit().\xd |
47 | ···················Error·checking:·If·perm·is·NULL,·or·if·isPresent·is·invalid,·or·if·size·<=·0,·an·error·message\xd | 47 | ···················Error·checking:·If·perm·is·NULL,·or·if·isPresent·is·invalid,·or·if·size·<=·0,·an·error·message\xd |
48 | ···················is·printed·and·the·program·exits.\xd | 48 | ···················is·printed·and·the·program·exits.\xd |
49 | ··············1.2.3··Utility·methods\xd | 49 | ··············1.2.3··Utility·methods\xd |
50 | ················1.·int·Perm_sizeOf·(·Perm·*perm·)·;\xd | 50 | ················1.·int·Perm_sizeOf·(·Perm·*perm·)·;\xd |
51 | ···················This·method·returns·the·number·of·bytes·taken·by·this·object.\xd | 51 | ···················This·method·returns·the·number·of·bytes·taken·by·this·object.\xd |
52 | ···················Error·checking:·If·perm·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 52 | ···················Error·checking:·If·perm·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
53 | ······································ | 53 | ······································PERM·:·DRAFT···February·18,·2025···················3\xd |
54 | ···············2.·int·Perm_checkPerm·(·Perm·*perm·)·;\xd | 54 | ···············2.·int·Perm_checkPerm·(·Perm·*perm·)·;\xd |
55 | ·················This·method·checks·the·validity·of·the·Perm·object.·If·oldToNew·is·present,·it·is·checked\xd | 55 | ·················This·method·checks·the·validity·of·the·Perm·object.·If·oldToNew·is·present,·it·is·checked\xd |
56 | ·················to·see·that·it·is·a·true·permutation·vector,·i.e.,·a·one-one·and·onto·map·from·[0,size)·to\xd | 56 | ·················to·see·that·it·is·a·true·permutation·vector,·i.e.,·a·one-one·and·onto·map·from·[0,size)·to\xd |
57 | ·················[0,size),·and·similarly·for·newToOld·if·it·is·present.·If·the·permutation·vector(s)·are·valid,\xd | 57 | ·················[0,size),·and·similarly·for·newToOld·if·it·is·present.·If·the·permutation·vector(s)·are·valid,\xd |
58 | ·················1·is·returned,·otherwise·0·is·returned.\xd | 58 | ·················1·is·returned,·otherwise·0·is·returned.\xd |
59 | ·················Error·checking:·If·perm·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 59 | ·················Error·checking:·If·perm·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
60 | ···············3.·void·Perm_fillOldToNew·(·Perm·*perm·)·;\xd | 60 | ···············3.·void·Perm_fillOldToNew·(·Perm·*perm·)·;\xd |
Offset 80, 15 lines modified | Offset 80, 15 lines modified | ||
80 | ·················compressed·graph.\xd | 80 | ·················compressed·graph.\xd |
81 | ·················Error·checking:·If·perm·or·eqmapIV·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 81 | ·················Error·checking:·If·perm·or·eqmapIV·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
82 | ············1.2.4··IO·methods\xd | 82 | ············1.2.4··IO·methods\xd |
83 | ············There·are·the·usual·eight·IO·routines.·The·file·structure·of·a·Perm·object·is·simple:\xd | 83 | ············There·are·the·usual·eight·IO·routines.·The·file·structure·of·a·Perm·object·is·simple:\xd |
84 | ············isPresent·size\xd | 84 | ············isPresent·size\xd |
85 | ············oldToNew[size]·(if·present)\xd | 85 | ············oldToNew[size]·(if·present)\xd |
86 | ············newToOld[size]·(if·present)\xd | 86 | ············newToOld[size]·(if·present)\xd |
87 | ·······4··············PERM·:·DRAFT· | 87 | ·······4··············PERM·:·DRAFT·February·18,·2025\xd |
88 | ········1.·int·Perm_readFromFile·(·Perm·*perm,·char·*fn·)·;\xd | 88 | ········1.·int·Perm_readFromFile·(·Perm·*perm,·char·*fn·)·;\xd |
89 | ··········This·method·reads·a·Perm·object·from·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,·it\xd | 89 | ··········This·method·reads·a·Perm·object·from·a·file.·It·tries·to·open·the·file·and·if·it·is·successful,·it\xd |
90 | ··········then·calls·Perm·readFromFormattedFile()·or·Perm·readFromBinaryFile(),·closes·the·file\xd | 90 | ··········then·calls·Perm·readFromFormattedFile()·or·Perm·readFromBinaryFile(),·closes·the·file\xd |
91 | ··········and·returns·the·value·returned·from·the·called·routine.\xd | 91 | ··········and·returns·the·value·returned·from·the·called·routine.\xd |
92 | ··········Error·checking:·If·perm·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.permf·(for·a·formatted\xd | 92 | ··········Error·checking:·If·perm·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.permf·(for·a·formatted\xd |
93 | ··········file)·or·*.permb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd | 93 | ··········file)·or·*.permb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd |
94 | ········2.·int·Perm_readFromFormattedFile·(·Perm·*perm,·FILE·*fp·)·;\xd | 94 | ········2.·int·Perm_readFromFormattedFile·(·Perm·*perm,·FILE·*fp·)·;\xd |
Offset 117, 15 lines modified | Offset 117, 15 lines modified | ||
117 | ··········This·method·writes·out·a·Perm·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the\xd | 117 | ··········This·method·writes·out·a·Perm·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the\xd |
118 | ··········data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd | 118 | ··········data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd |
119 | ··········Error·checking:·If·perm·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 119 | ··········Error·checking:·If·perm·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
120 | ········7.·int·Perm_writeForHumanEye·(·Perm·*perm,·FILE·*fp·)·;\xd | 120 | ········7.·int·Perm_writeForHumanEye·(·Perm·*perm,·FILE·*fp·)·;\xd |
121 | ··········This·method·writes·out·a·Perm·object·to·a·file·in·a·human·readable·format.·The·method\xd | 121 | ··········This·method·writes·out·a·Perm·object·to·a·file·in·a·human·readable·format.·The·method\xd |
122 | ··········Perm·writeStats()·is·called·to·write·out·the·header·and·statistics.·The·value·1·is·returned.\xd | 122 | ··········Perm·writeStats()·is·called·to·write·out·the·header·and·statistics.·The·value·1·is·returned.\xd |
123 | ··········Error·checking:·If·perm·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 123 | ··········Error·checking:·If·perm·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
124 | ······································ | 124 | ······································PERM·:·DRAFT···February·18,·2025···················5\xd |
125 | ···············8.·int·Perm_writeStats·(·Perm·*perm,·FILE·*fp·)·;\xd | 125 | ···············8.·int·Perm_writeStats·(·Perm·*perm,·FILE·*fp·)·;\xd |
126 | ·················This·method·writes·out·a·header·and·statistics·to·a·file.·The·value·1·is·returned.\xd | 126 | ·················This·method·writes·out·a·header·and·statistics·to·a·file.·The·value·1·is·returned.\xd |
127 | ·················Error·checking:·If·perm·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 127 | ·················Error·checking:·If·perm·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
128 | ·······Index\xd | 128 | ·······Index\xd |
129 | ·······Perm·checkPerm(),·4\xd | 129 | ·······Perm·checkPerm(),·4\xd |
130 | ·······Perm·clearData(),·3\xd | 130 | ·······Perm·clearData(),·3\xd |
131 | ·······Perm·compress(),·4\xd | 131 | ·······Perm·compress(),·4\xd |
Offset 8, 15 lines modified | Offset 8, 15 lines modified | ||
8 | %%DocumentFonts:·CMR17·CMBX12·CMR12·CMR8·CMR6·CMR9·CMTT9·CMBX10·CMR10 | 8 | %%DocumentFonts:·CMR17·CMBX12·CMR12·CMR8·CMR6·CMR9·CMTT9·CMBX10·CMR10 |
9 | %%+·CMR7·CMBX8 | 9 | %%+·CMR7·CMBX8 |
10 | %%DocumentPaperSizes:·Letter | 10 | %%DocumentPaperSizes:·Letter |
11 | %%EndComments | 11 | %%EndComments |
12 | %DVIPSWebPage:·(www.radicaleye.com) | 12 | %DVIPSWebPage:·(www.radicaleye.com) |
13 | %DVIPSCommandLine:·dvips·main·-o·ReferenceManual.ps | 13 | %DVIPSCommandLine:·dvips·main·-o·ReferenceManual.ps |
14 | %DVIPSParameters:·dpi=600 | 14 | %DVIPSParameters:·dpi=600 |
15 | %DVIPSSource:··TeX·output·202 | 15 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
16 | %%BeginProcSet:·tex.pro·0·0 | 16 | %%BeginProcSet:·tex.pro·0·0 |
17 | %! | 17 | %! |
18 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 18 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
19 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 19 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
20 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 20 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
21 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 21 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
22 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 22 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 3850, 24 lines modified | Offset 3850, 26 lines modified | ||
3850 | /Encoding·256·array | 3850 | /Encoding·256·array |
3851 | 0·1·255·{1·index·exch·/.notdef·put}·for | 3851 | 0·1·255·{1·index·exch·/.notdef·put}·for |
3852 | dup·44·/comma·put | 3852 | dup·44·/comma·put |
3853 | dup·46·/period·put | 3853 | dup·46·/period·put |
3854 | dup·48·/zero·put | 3854 | dup·48·/zero·put |
3855 | dup·49·/one·put | 3855 | dup·49·/one·put |
3856 | dup·50·/two·put | 3856 | dup·50·/two·put |
3857 | dup·52·/four·put | ||
3858 | dup·5 | 3857 | dup·53·/five·put |
3858 | dup·56·/eight·put | ||
3859 | dup·65·/A·put | 3859 | dup·65·/A·put |
3860 | dup·67·/C·put | 3860 | dup·67·/C·put |
3861 | dup·68·/D·put | 3861 | dup·68·/D·put |
3862 | dup·70·/F·put | ||
3862 | dup·74·/J·put | 3863 | dup·74·/J·put |
3863 | dup·75·/K·put | 3864 | dup·75·/K·put |
3864 | dup·80·/P·put | 3865 | dup·80·/P·put |
3865 | dup·87·/W·put | 3866 | dup·87·/W·put |
3866 | dup·97·/a·put | 3867 | dup·97·/a·put |
3868 | dup·98·/b·put | ||
3867 | dup·99·/c·put | 3869 | dup·99·/c·put |
3868 | dup·100·/d·put | 3870 | dup·100·/d·put |
3869 | dup·101·/e·put | 3871 | dup·101·/e·put |
3870 | dup·102·/f·put | 3872 | dup·102·/f·put |
3871 | dup·104·/h·put | 3873 | dup·104·/h·put |
3872 | dup·105·/i·put | 3874 | dup·105·/i·put |
3873 | dup·108·/l·put | 3875 | dup·108·/l·put |
Offset 4061, 175 lines modified | Offset 4063, 187 lines modified | ||
4061 | 34DE10D995ABCAF45FBB3B6B73E80D05F4C51F8C29D4B0F67C8A86432A6C5E86 | 4063 | 34DE10D995ABCAF45FBB3B6B73E80D05F4C51F8C29D4B0F67C8A86432A6C5E86 |
4062 | F0126AB25A5CA2875B48C61CB8112A4CF9AA08F8B0157396CF63CBECDB8867CC | 4064 | F0126AB25A5CA2875B48C61CB8112A4CF9AA08F8B0157396CF63CBECDB8867CC |
4063 | AC10F060630C9BFBAD84B1FF01C814878F0C177F552BDC9BB181B14581C6E968 | 4065 | AC10F060630C9BFBAD84B1FF01C814878F0C177F552BDC9BB181B14581C6E968 |
4064 | DAAAB2896FCFB745795C4D2C87CC15BAA041EF80C5BDC12EC1F5786BB41A5A21 | 4066 | DAAAB2896FCFB745795C4D2C87CC15BAA041EF80C5BDC12EC1F5786BB41A5A21 |
4065 | 073EE0BC436B346E014DB4099EDC67BC432E470A4B779FD556341061CA3F2BE8 | 4067 | 073EE0BC436B346E014DB4099EDC67BC432E470A4B779FD556341061CA3F2BE8 |
4066 | EFA332637AEC878C2BB189CA3267B2BE5B8178E6B7889A33771F86276E6F0B8E | 4068 | EFA332637AEC878C2BB189CA3267B2BE5B8178E6B7889A33771F86276E6F0B8E |
4067 | 8E93B816AC7005575762EF4DE45E2794B7322F9B6D8E634FB8FF250D638EB502 | 4069 | 8E93B816AC7005575762EF4DE45E2794B7322F9B6D8E634FB8FF250D638EB502 |
4068 | 818321B3C46DB51B8EC6C2EF1D05C716519A3BD6B12A67239898F8A010C | 4070 | 818321B3C46DB51B8EC6C2EF1D05C716519A3BD6B12A67239898F8A010CAF3C4 |
4069 | 19A494E9F860632F8CF5B097D6F0DA0CF175BBC872BFF3D3B1CDD560A14E9301 | ||
4070 | F027CB0E089F935C70F9E792F112032582E7F3BFE28ADE72E1F70D6D09021AED | ||
4071 | 2A703E0A93C7BC4DEE245C1D5BB30481C4C69D5A4E7B27983B969B9AD6A7BD39 | ||
4072 | 6A4BC688D85E1D93DA559088886D36F26570743E54EC6E94FF66F61EE8299209 | ||
4073 | 075CB9127C1D59FE85EE7378CE553BD80F7A03B15FB710E091902C8368DFCF73 | ||
4074 | 7C682089968062C005EA19B482F1982A2AD23FA4A86963A7085E40F9942C261D | ||
4075 | 738A72D952319A2E36DF32527E5332FE0E385152E93FDD702972A27BFBB0FDA2 | ||
4076 | 331A1FEA6E3DFE3E22ABD325801EF12305C84EAD056C982C9CCC7070DFE65215 | ||
4077 | ECC2F84735580E99B3583D4FC68EC52E79B7F8DBA2DD43705D2E274D06BE990E | ||
4078 | C58F63543A9ECF987D0C770084FF2472215A2C3D14154BCFCCB17C80CFA71B09 | ||
4079 | 74A07FB9EFBEE5D4F89BFA97A5B98CB409EE48D23D69463718D06FFA1B3D11B5 | ||
4080 | 11B84A04B118AF107761FD995481A29F8E40044BC68A8A5864F382B9E334DF11 | ||
4081 | 2BABC1E496611192EDF9197CCC741F9091185D71B05DFB0D0B19D6E0D3CF3DE0 | ||
4082 | 6C43C239248F38ABA81BB9F77E4F58727DFAD86E223E8C384ED8386E49D5A391 | ||
4083 | 8A5BCF8D13A05B943C9BEE89598616A65D419732C0E1357C26660FCD6B9ACDEE | ||
4084 | 52BC7BE7CF749C83BEDAB386C9B188BAD5480A3D86DE7ABF644AF1CBA19ECE8F | ||
4085 | 06B6E761556C0B3F9E9C8CD496887364B12AD1EEC7A3725174D468C4A8B0D9F9 | ||
4086 | 8D7159898CC89B54260226CBD4C851A9A094AD277E607060115D3BB164338C9C | ||
4087 | 9FB453BB8115DC1D682835367C71ECFFA116B3A4ED388CB925ED66FE2FBA7F4C | ||
4088 | 8285A5D5F18E0A9FA9D1B238320D5788242B0FB4840CF482911615793A51CC50 | ||
4089 | 822E4CC5243E091E13E756DC69FB095C792A6094C9DE9E133AB8EB11551D48DC | ||
4090 | 9CD669B461254436CC92D2600E413AF5B19BC9034E3BACEA8C0B2122BDEB2BB5 | ||
4091 | 9C01367F830A8BE3A0F879AF88D2DAF5366D04D7696E01F138CEF65356981CCC | ||
4092 | 3333D99670F77020FB9F4CF884C086211E8D73D0DB900C5552221D0F359842B6 | ||
4093 | 41346775DF351AD5498ED51CB516219BC2A323100219B1CF3A1FB691BB407767 | ||
4094 | FF9B66F02455850BE131601993C75871441DDE51135F830A1EB7BE53374699B9 | ||
4095 | CFC7EC24C98E7BBCF50C9775313C8BC56F0416E58A5A2070CB788A103472EA72 | ||
4096 | 5AAD7A8CE0D42245D856153098BFB808E5AA661C15BC24E48487BD17D6133DAA | ||
4097 | E5D770777971ED3D999B76BE990A198BE058FD44C87014CDCB71314FEA5E7E84 | ||
4098 | 81BA8080E6B76EF59B3A22220924115B8F7007B7E5835BFD1AF87515BE26BBAE | ||
4099 | DE1CCB9F8DEBD2BF14D699E7F96CAE951024AFC97752D918DBB00E2CC7C5E324 | ||
4100 | 9678EAC4456B2BD46C6E19A00F73C6BB8EE5466494B8589E96F653761226D39A | ||
4101 | 41C389F13A817EC31BEEB3B0C249EE11CF346E2C145E2FEDB0038E048285CE4C | ||
4102 | B547490268381EA47DB433325DACC26C962AEDF4E87476634A1DEF4CF2CD2713 | ||
4103 | 868122BE4AD5F721493233B6666E512C7B990A9483D8846DADC9A0B63BBC096C | ||
4104 | D44910EF73B75E5C2BDE8597451A60E4077C81640735326ADA0533585130D7C0 | ||
4105 | A8CF725D3D355A353C9A1A12E2B2CB8FD67EE802E06B1EF09C186EAC65E305DB | ||
4106 | CA56FAFD7B1EA2E1599B00CD24F1E50099777505C666195A3FD9C0407B170FCF | ||
4107 | F2442D72ABF854B84D588687F5FB1C1A47834299DD2A13176F151BED8C6CB404 | ||
4108 | 36047B3686E5335B5947CDFD75AEECA4B0D76E8C0DBACA9688BF4412EE3190EA | ||
4109 | 0FEBBA56AB1FB1BBCEE814C8F32F33A61886669AFB2A1F9027DF44C2CD70F8B5 | ||
4110 | 51DD783034A455047292010E4C93C08FCDA03BBF818187F3EDDF16016BFD5925 | ||
4111 | AC611061C280FC4C95DC4FEC85E4A1567FAC390BED3FA2E897AD2A4E1FBA6E05 | ||
4112 | 6D685F8135AD11EAFEE363F695155053ED7A3F97061F3A729B78A0A63F32C7DB | ||
4113 | 36E4CE9CB898E491C90151AE1E7B5ACEE3C668796D49E344A569614AD9D1CFD9 | ||
4114 | 964DE0A63EE9E9970B09D1466D7B1A3933176B6D2F9F955BF3B089A4D0110D65 | ||
4115 | 4B85ED9BA2D889779EEC6EC45D45108EC1CBDA6C8234C068578B9BF74DE26E4C | ||
4116 | 679E4BB882FA73E2E1F15B59BC14DE7AEC82656C169B093AEDBA4B5D340CC7B0 | ||
4117 | 7E392FAD7DEF85FB6D2BCBA37D987B33100913AC80F8D86999F7BBAC0382C75C | ||
4118 | 3A49732BC78F6C45C8D01A982F6628CE107AFADAE4D5E15515876ABDDB40F1FC | ||
4119 | 6D56F8B26E4DD3C751E3FD6A17465CF9A4B07534DBB0EAE4823EFC7709BA6039 | ||
4120 | D51D59B72A7FD170F0B8D749FACE18ACE8C6E7100958E8511F312F8E4041D6A9 | ||
4121 | D1AF0DBA434AA3F9CC7ADA369135459F27B1C73BD0C7ADA778F6A81DF4D4AB2E | ||
4122 | 707D70ED740104BB2478638003A1A39FC6C68A79C286C7E94BE1D44BE7BB27E4 | ||
4123 | A7595347F5553875098B7C72058BE8963BC62F3244B6A9E2D84318DA590203B7 | ||
4124 | D00D67DEE6F86B9E495976CE143D7E2A1A29B4FAE3ACEE417A75ADDFF49C0E8A | ||
4125 | CB7F8B1878538C473C01E9C8B8E9B3D682CF11D7BF62F15492266C719E18D68A | ||
4126 | AD169362423B2015DC218BC0F0F68F98B06480F242E23BDFC318E7CD4CD00A92 | ||
4127 | 5A2C1DA014708D217A92BB2D45AE026C83051D8EEB99ADB19929688D44EA76D9 | ||
4128 | E0A447B8DA1594E4C38007000AE6A2EE1DF2ABA1D2C46BAE0439DC5F2ACAFF5B | ||
4129 | BFF63A33EF5A50C0397FD013623BE92180E431C10BB4D94A385A5A9366BA95A9 | ||
4130 | C3F812CE39DF7099B7A3D5A8D557417BF261B521129A36A816B42AD9A3D3EB6E | ||
4131 | 0FDAF94EDA824044E8A831E7026E38F04EF10386FA4A424B7F23081754D4145E | ||
4132 | DA11604F75960991409044C2D280F2B4FAA99E8EAB014EA2797F6565430C6381 | ||
4133 | 511EE3D78F86AE8C21C089ED4D054540D43BC6444C3704A0C0CE9CC8DEE45D49 | ||
4134 | 760842324A9C3BC7E9F58A36D208B94D700FB018BDAA73F3153797DF93CBA6EE | ||
4135 | DDC129DCEA3CB6E0F0FDF3ADE93207CFC53FDA358AA7740EC3532FC2D5E5B810 | ||
4136 | AC5223C4ECA70C31E7A3C09E87CB9F1E64F463B513BE2C70A95B1C0B995B5514 | ||
4137 | 96F914C8BC972E49F4AFE4B8F9466CEA5DFE5B7D18C80B3060A661BE5832186E | ||
4138 | 128DF73548708F37A8F644BB2445743C21E381C3F038DDCEEBACD48DFE02EC9D | ||
4139 | 7B5D412E1D4F9C0A35E732C017E295E4639458FFFE52705B1EC321288203F7BB | ||
4140 | 7B5C690C3450683856F51AA52F284ADDBDE92F628DA991BDC0D7BFE87C9764BD | ||
4141 | C943F079C90E1F9E7A5D4773E6B585D71ACD7E1609D8DC4D7AF15AD00DCFF6D4 | ||
4142 | 56FB3F21E7DD2AC894A88FC795F4E8EFEE88F73B896F64B226F75BDE1B3933B4 | ||
4143 | 7D095CE431A296E02600FD0AF694B3720A490C2996359AF872F1F1DDD78A22D8 | ||
Max diff block lines reached; 2682/26459 bytes (10.14%) of diff not shown. |
Offset 1, 13 lines modified | Offset 1, 13 lines modified | ||
1 | ····························The·Reference·Manual·for·SPOOLES,·Release·2.2:\xd | 1 | ····························The·Reference·Manual·for·SPOOLES,·Release·2.2:\xd |
2 | ·······························An·Object·Oriented·Software·Library·for·Solving\xd | 2 | ·······························An·Object·Oriented·Software·Library·for·Solving\xd |
3 | ·········································Sparse·Linear·Systems·of·Equations\xd | 3 | ·········································Sparse·Linear·Systems·of·Equations\xd |
4 | ············································1······················2·······················3··················4\xd | 4 | ············································1······················2·······················3··················4\xd |
5 | ···························Cleve·Ashcraft··········Daniel·Pierce···········David·K.·Wah············Jason·Wu\xd | 5 | ···························Cleve·Ashcraft··········Daniel·Pierce···········David·K.·Wah············Jason·Wu\xd |
6 | ··························································· | 6 | ···························································February·18,·2025\xd |
7 | ···················1Boeing·Shared·Services·Group,·P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124,\xd | 7 | ···················1Boeing·Shared·Services·Group,·P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124,\xd |
8 | ·················cleve.ashcraft@boeing.com.·This·research·was·supported·in·part·by·the·DARPA·Contract·DABT63-95-C-0122\xd | 8 | ·················cleve.ashcraft@boeing.com.·This·research·was·supported·in·part·by·the·DARPA·Contract·DABT63-95-C-0122\xd |
9 | ·················and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software·Support·Initiative.\xd | 9 | ·················and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software·Support·Initiative.\xd |
10 | ···················2Boeing·Shared·Services·Group,·P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124,\xd | 10 | ···················2Boeing·Shared·Services·Group,·P.·O.·Box·24346,·Mail·Stop·7L-22,·Seattle,·Washington·98124,\xd |
11 | ·················dpierce@redwood.rt.cs.boeing.com.···This·research·was·supported·in·part·by·the·DARPA·Contract·DABT63-\xd | 11 | ·················dpierce@redwood.rt.cs.boeing.com.···This·research·was·supported·in·part·by·the·DARPA·Contract·DABT63-\xd |
12 | ·················95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software·Support\xd | 12 | ·················95-C-0122·and·the·DoD·High·Performance·Computing·Modernization·Program·Common·HPC·Software·Support\xd |
13 | ·················Initiative.\xd | 13 | ·················Initiative.\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·SemiImplMtx.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·SemiImplMtx.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1201, 20 lines modified | Offset 1201, 21 lines modified | ||
1201 | end·readonly·def | 1201 | end·readonly·def |
1202 | /Encoding·256·array | 1202 | /Encoding·256·array |
1203 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1203 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1204 | dup·44·/comma·put | 1204 | dup·44·/comma·put |
1205 | dup·48·/zero·put | 1205 | dup·48·/zero·put |
1206 | dup·49·/one·put | 1206 | dup·49·/one·put |
1207 | dup·50·/two·put | 1207 | dup·50·/two·put |
1208 | dup·52·/four·put | ||
1209 | dup·5 | 1208 | dup·53·/five·put |
1209 | dup·56·/eight·put | ||
1210 | dup·58·/colon·put | 1210 | dup·58·/colon·put |
1211 | dup·7 | 1211 | dup·70·/F·put |
1212 | dup·97·/a·put | 1212 | dup·97·/a·put |
1213 | dup·98·/b·put | ||
1213 | dup·1 | 1214 | dup·101·/e·put |
1214 | dup·114·/r·put | 1215 | dup·114·/r·put |
1215 | dup·117·/u·put | 1216 | dup·117·/u·put |
1216 | dup·121·/y·put | 1217 | dup·121·/y·put |
1217 | readonly·def | 1218 | readonly·def |
1218 | currentdict·end | 1219 | currentdict·end |
1219 | currentfile·eexec | 1220 | currentfile·eexec |
1220 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1221 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1398, 89 lines modified | Offset 1399, 93 lines modified | ||
1398 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1399 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1399 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1400 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1400 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1401 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1401 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1402 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1402 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1403 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1403 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1404 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1404 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1405 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1405 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1406 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1406 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1407 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1408 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1409 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1410 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1411 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1412 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1413 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1414 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1415 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1416 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1417 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1418 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1419 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1420 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1421 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1422 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1423 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1424 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1425 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1426 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1427 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1428 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1429 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1430 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1431 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1432 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1433 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1434 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1435 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1436 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1437 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1438 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1439 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1440 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1441 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1442 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1443 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1444 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1445 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1446 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1447 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1448 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1449 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1450 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1451 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1452 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1453 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1454 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1455 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1456 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1457 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1458 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1459 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1460 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1461 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1462 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1463 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1464 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1465 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1466 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1467 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1468 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1469 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1470 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1471 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1472 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1473 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1474 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1475 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1476 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1477 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1478 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1479 | 1407 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1408 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1409 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1410 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1411 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1412 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1413 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 7802/19699 bytes (39.61%) of diff not shown. |
Offset 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | ·····················in·a·semi-implicit·form)·can·pay·off·—·storage·can·be·saved·when·the·number·of·entries·in·L····································and·U\xd | 51 | ·····················in·a·semi-implicit·form)·can·pay·off·—·storage·can·be·saved·when·the·number·of·entries·in·L····································and·U\xd |
52 | ··············································································································································2,1·········1,2\xd | 52 | ··············································································································································2,1·········1,2\xd |
53 | ·····················are·larger·than·the·number·of·entries·in·A····················and·A·.·The·number·of·solve·operations·is·reduced·by\xd | 53 | ·····················are·larger·than·the·number·of·entries·in·A····················and·A·.·The·number·of·solve·operations·is·reduced·by\xd |
54 | ··············································································2,1··········1,2\xd | 54 | ··············································································2,1··········1,2\xd |
55 | ·····················|L····|·+·|U·····|·−·2|D·····|·−·|A····|·−·|A·····|,·where·|···|·denotes·the·number·of·nonzeroes·in·a·matrix.\xd | 55 | ·····················|L····|·+·|U·····|·−·2|D·····|·−·|A····|·−·|A·····|,·where·|···|·denotes·the·number·of·nonzeroes·in·a·matrix.\xd |
56 | ························2,1·······1,2··········1,1·······2,1········1,2\xd | 56 | ························2,1·······1,2··········1,1·······2,1········1,2\xd |
57 | ·························································································1\xd | 57 | ·························································································1\xd |
58 | ················2·································SemiImplMtx·:·DRAFT· | 58 | ················2·································SemiImplMtx·:·DRAFT·February·18,·2025\xd |
59 | ················1.1······Data·Structure\xd | 59 | ················1.1······Data·Structure\xd |
60 | ················The·SemiImplMtx·structure·has·the·following·fields.\xd | 60 | ················The·SemiImplMtx·structure·has·the·following·fields.\xd |
61 | ····················•·int·neqns·:·number·of·equations.\xd | 61 | ····················•·int·neqns·:·number·of·equations.\xd |
62 | ····················•·int·type·:·type·of·entries,·SPOOLES·REAL·or·SPOOLES·COMPLEX.\xd | 62 | ····················•·int·type·:·type·of·entries,·SPOOLES·REAL·or·SPOOLES·COMPLEX.\xd |
63 | ····················•·int·symmetryflag:·typeofmatrixsymmetry,SPOOLES·SYMMETRIC,SPOOLES·HERMITIANorSPOOLES·NONSYMMETRIC.\xd | 63 | ····················•·int·symmetryflag:·typeofmatrixsymmetry,SPOOLES·SYMMETRIC,SPOOLES·HERMITIANorSPOOLES·NONSYMMETRIC.\xd |
64 | ····················•·int·ndomeqns·:·number·of·equations·in·the·domains,·or·(1,1)·block.\xd | 64 | ····················•·int·ndomeqns·:·number·of·equations·in·the·domains,·or·(1,1)·block.\xd |
65 | ····················•·int·nschureqns·:·number·of·equations·in·the·Schur·complement,·or·(2,2)·block.\xd | 65 | ····················•·int·nschureqns·:·number·of·equations·in·the·Schur·complement,·or·(2,2)·block.\xd |
Offset 95, 15 lines modified | Offset 95, 15 lines modified | ||
95 | ······················Thismethodsetsthestructure’sfieldstodefaultvalues:·neqns=0,type=SPOOLES·REAL,symmetryflag\xd | 95 | ······················Thismethodsetsthestructure’sfieldstodefaultvalues:·neqns=0,type=SPOOLES·REAL,symmetryflag\xd |
96 | ······················=SPOOLES·SYMMETRIC,ndomeqns=nschureqns=0,anddomainMtx,schurMtx,A21,A12,domRowsIV,\xd | 96 | ······················=SPOOLES·SYMMETRIC,ndomeqns=nschureqns=0,anddomainMtx,schurMtx,A21,A12,domRowsIV,\xd |
97 | ······················schurRowsIV,·domColumnsIV·and·schurColumnsIV·are·all·set·to·NULL.\xd | 97 | ······················schurRowsIV,·domColumnsIV·and·schurColumnsIV·are·all·set·to·NULL.\xd |
98 | ······················Return·codes:·1·means·a·normal·return,·-1·means·mtx·is·NULL.\xd | 98 | ······················Return·codes:·1·means·a·normal·return,·-1·means·mtx·is·NULL.\xd |
99 | ···················3.·int·SemiImplMtx_clearData·(·SemiImplMtx·*mtx·)·;\xd | 99 | ···················3.·int·SemiImplMtx_clearData·(·SemiImplMtx·*mtx·)·;\xd |
100 | ······················This·method·releases·all·storage·held·by·the·object.\xd | 100 | ······················This·method·releases·all·storage·held·by·the·object.\xd |
101 | ······················Return·codes:·1·means·a·normal·return,·-1·means·mtx·is·NULL.\xd | 101 | ······················Return·codes:·1·means·a·normal·return,·-1·means·mtx·is·NULL.\xd |
102 | ················································SemiImplMtx·:·DRAFT······ | 102 | ················································SemiImplMtx·:·DRAFT······February·18,·2025····························3\xd |
103 | ···················4.·int·SemiImplMtx_free·(·SemiImplMtx·*mtx·)·;\xd | 103 | ···················4.·int·SemiImplMtx_free·(·SemiImplMtx·*mtx·)·;\xd |
104 | ······················This·method·releases·all·storage·held·by·the·object·via·a·call·to·SemiImplMtx·clearData(),·then·free’d\xd | 104 | ······················This·method·releases·all·storage·held·by·the·object·via·a·call·to·SemiImplMtx·clearData(),·then·free’d\xd |
105 | ······················the·storage·for·the·object.\xd | 105 | ······················the·storage·for·the·object.\xd |
106 | ······················Return·codes:·1·means·a·normal·return,·-1·means·mtx·is·NULL.\xd | 106 | ······················Return·codes:·1·means·a·normal·return,·-1·means·mtx·is·NULL.\xd |
107 | ················1.2.2····Initialization·Methods\xd | 107 | ················1.2.2····Initialization·Methods\xd |
108 | ···················1.·int·SemiImplMtx_initFromFrontMtx·(·SemiImplMtx·*semimtx,·FrontMtx·*frontmtx,\xd | 108 | ···················1.·int·SemiImplMtx_initFromFrontMtx·(·SemiImplMtx·*semimtx,·FrontMtx·*frontmtx,\xd |
109 | ········································InpMtx·*inpmtx,·IV·*frontmapIV,·int·msglvl,·FILE·*msgFile)·;\xd | 109 | ········································InpMtx·*inpmtx,·IV·*frontmapIV,·int·msglvl,·FILE·*msgFile)·;\xd |
Offset 140, 15 lines modified | Offset 140, 15 lines modified | ||
140 | ················1.2.3····Solve·Methods\xd | 140 | ················1.2.3····Solve·Methods\xd |
141 | ···················1.·int·SemiImplMtx_solve·(·SemiImplMtx·*mtx,·DenseMtx·*X,·DenseMtx·*B,\xd | 141 | ···················1.·int·SemiImplMtx_solve·(·SemiImplMtx·*mtx,·DenseMtx·*X,·DenseMtx·*B,\xd |
142 | ································SubMtxManager·*mtxmanager,·double·cpus[],·int·msglvl,·FILE·*msgFile·)·;\xd | 142 | ································SubMtxManager·*mtxmanager,·double·cpus[],·int·msglvl,·FILE·*msgFile·)·;\xd |
143 | ······················This·methods·solves·a·linear·system·(L·+·I)D(I·+·U)X·=·B,·(UT·+·I)D(I·+·U)X·=·B·or·(UH·+\xd | 143 | ······················This·methods·solves·a·linear·system·(L·+·I)D(I·+·U)X·=·B,·(UT·+·I)D(I·+·U)X·=·B·or·(UH·+\xd |
144 | ······················I)D(I·+·U)X·=·B,·where·X·and·B·are·DenseMtx·objects.·mtxmanager·is·an·object·to·handle·the\xd | 144 | ······················I)D(I·+·U)X·=·B,·where·X·and·B·are·DenseMtx·objects.·mtxmanager·is·an·object·to·handle·the\xd |
145 | ······················working·SubMtx·objects·during·the·solve.·One·can·have·X·and·B·point·to·the·same·object,·for·entries\xd | 145 | ······················working·SubMtx·objects·during·the·solve.·One·can·have·X·and·B·point·to·the·same·object,·for·entries\xd |
146 | ······················are·read·from·B·and·written·to·X.·On·return,·the·cpus[]·vector·contains·the·following·information.\xd | 146 | ······················are·read·from·B·and·written·to·X.·On·return,·the·cpus[]·vector·contains·the·following·information.\xd |
147 | ··············4····························SemiImplMtx·:·DRAFT· | 147 | ··············4····························SemiImplMtx·:·DRAFT·February·18,·2025\xd |
148 | ·······················cpus[0]··initialize·working·matrices···cpus[5]···compute·domains’·right·hand·side\xd | 148 | ·······················cpus[0]··initialize·working·matrices···cpus[5]···compute·domains’·right·hand·side\xd |
149 | ·······················cpus[1]··load·right·hand·side··········cpus[6]···second·solve·with·domains\xd | 149 | ·······················cpus[1]··load·right·hand·side··········cpus[6]···second·solve·with·domains\xd |
150 | ·······················cpus[2]··first·solve·with·domains·······cpus[7]···store·solution\xd | 150 | ·······················cpus[2]··first·solve·with·domains·······cpus[7]···store·solution\xd |
151 | ·······················cpus[3]··compute·Schur·right·hand·side·cpus[8]···miscellaneous·time\xd | 151 | ·······················cpus[3]··compute·Schur·right·hand·side·cpus[8]···miscellaneous·time\xd |
152 | ·······················cpus[4]··Schur·solve···················cpus[9]···total·time\xd | 152 | ·······················cpus[4]··Schur·solve···················cpus[9]···total·time\xd |
153 | ···················Return·codes:\xd | 153 | ···················Return·codes:\xd |
154 | ··········································1··normal·return···-3··B·is·NULL\xd | 154 | ··········································1··normal·return···-3··B·is·NULL\xd |
Offset 181, 15 lines modified | Offset 181, 15 lines modified | ||
181 | ··············This·section·contains·brief·descriptions·of·the·driver·programs.\xd | 181 | ··············This·section·contains·brief·descriptions·of·the·driver·programs.\xd |
182 | ·················1.·testGrid·msglvl·msgFile·n1·n2·n3·maxzeros·maxsize·seed·type·symmetryflag\xd | 182 | ·················1.·testGrid·msglvl·msgFile·n1·n2·n3·maxzeros·maxsize·seed·type·symmetryflag\xd |
183 | ····························sparsityflag·pivotingflag·tau·droptol·nrhs·depth\xd | 183 | ····························sparsityflag·pivotingflag·tau·droptol·nrhs·depth\xd |
184 | ···················This·driver·program·tests·the·SemiImplMtx·creation·and·solve·methods·for·a·matrix·from·a·regular\xd | 184 | ···················This·driver·program·tests·the·SemiImplMtx·creation·and·solve·methods·for·a·matrix·from·a·regular\xd |
185 | ···················2-D·or·3-D·grid.·The·matrix·can·be·real·or·complex·and·is·loaded·with·random·entries.·The·linear\xd | 185 | ···················2-D·or·3-D·grid.·The·matrix·can·be·real·or·complex·and·is·loaded·with·random·entries.·The·linear\xd |
186 | ···················system·AX·=B·is·solved·as·follows.\xd | 186 | ···················system·AX·=B·is·solved·as·follows.\xd |
187 | ·····················•·First·A·is·factored,·and·a·FrontMtx·object·is·created·to·hold·the·factorization.\xd | 187 | ·····················•·First·A·is·factored,·and·a·FrontMtx·object·is·created·to·hold·the·factorization.\xd |
188 | ········································SemiImplMtx·:·DRAFT·· | 188 | ········································SemiImplMtx·:·DRAFT··February·18,·2025····················5\xd |
189 | ····················•·The·system·is·solved·using·the·FrontMtx·object.\xd | 189 | ····················•·The·system·is·solved·using·the·FrontMtx·object.\xd |
190 | ····················•·A·SemiImplMtx·matrix·object·is·constructed·from·the·FrontMtx·object·and·A.\xd | 190 | ····················•·A·SemiImplMtx·matrix·object·is·constructed·from·the·FrontMtx·object·and·A.\xd |
191 | ····················•·The·system·is·solved·using·the·SemiImplMtx·object.\xd | 191 | ····················•·The·system·is·solved·using·the·SemiImplMtx·object.\xd |
192 | ··················Various·statistics·and·CPU·timings·are·written·to·the·message·file·to·compare·the·two·solution·pro-\xd | 192 | ··················Various·statistics·and·CPU·timings·are·written·to·the·message·file·to·compare·the·two·solution·pro-\xd |
193 | ··················cesses.·Use·the·do·grid·shell·script·for·testing.\xd | 193 | ··················cesses.·Use·the·do·grid·shell·script·for·testing.\xd |
194 | ····················•·The·msglvl·parameter·determines·the·amount·of·output.\xd | 194 | ····················•·The·msglvl·parameter·determines·the·amount·of·output.\xd |
195 | ····················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd | 195 | ····················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the·message\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·SolveMap.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·SolveMap.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1440, 20 lines modified | Offset 1440, 21 lines modified | ||
1440 | end·readonly·def | 1440 | end·readonly·def |
1441 | /Encoding·256·array | 1441 | /Encoding·256·array |
1442 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1442 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1443 | dup·44·/comma·put | 1443 | dup·44·/comma·put |
1444 | dup·48·/zero·put | 1444 | dup·48·/zero·put |
1445 | dup·49·/one·put | 1445 | dup·49·/one·put |
1446 | dup·50·/two·put | 1446 | dup·50·/two·put |
1447 | dup·52·/four·put | ||
1448 | dup·5 | 1447 | dup·53·/five·put |
1448 | dup·56·/eight·put | ||
1449 | dup·58·/colon·put | 1449 | dup·58·/colon·put |
1450 | dup·7 | 1450 | dup·70·/F·put |
1451 | dup·97·/a·put | 1451 | dup·97·/a·put |
1452 | dup·98·/b·put | ||
1452 | dup·1 | 1453 | dup·101·/e·put |
1453 | dup·114·/r·put | 1454 | dup·114·/r·put |
1454 | dup·117·/u·put | 1455 | dup·117·/u·put |
1455 | dup·121·/y·put | 1456 | dup·121·/y·put |
1456 | readonly·def | 1457 | readonly·def |
1457 | currentdict·end | 1458 | currentdict·end |
1458 | currentfile·eexec | 1459 | currentfile·eexec |
1459 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1460 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1637, 89 lines modified | Offset 1638, 93 lines modified | ||
1637 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1638 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1638 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1639 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1639 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1640 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1640 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1641 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1641 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1642 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1642 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1643 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1643 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1644 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1644 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1645 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1645 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1646 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1647 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1648 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1649 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1650 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1651 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1652 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1653 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1654 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1655 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1656 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1657 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1658 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1659 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1660 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1661 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1662 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1663 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1664 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1665 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1666 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1667 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1668 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1669 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1670 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1671 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1672 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1673 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1674 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1675 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1676 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1677 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1678 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1679 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1680 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1681 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1682 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1683 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1684 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1685 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1686 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1687 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1688 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1689 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1690 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1691 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1692 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1693 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1694 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1695 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1696 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1697 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1698 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1699 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1700 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1701 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1702 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1703 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1704 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1705 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1706 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1707 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1708 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1709 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1710 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1711 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1712 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1713 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1714 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1715 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1716 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1717 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1718 | 1646 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1647 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1648 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1649 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1650 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1651 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1652 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 17479/29373 bytes (59.51%) of diff not shown. |
Offset 19, 15 lines modified | Offset 19, 15 lines modified | ||
19 | ················•·int·nproc·–·number·of·threads·or·processes\xd | 19 | ················•·int·nproc·–·number·of·threads·or·processes\xd |
20 | ················•·int·*owners·–·vector·mapping·fronts·to·owning·threads·or·processes\xd | 20 | ················•·int·*owners·–·vector·mapping·fronts·to·owning·threads·or·processes\xd |
21 | ················•·int·nblockUpper·–·number·of·submatrices·in·the·upper·triangle\xd | 21 | ················•·int·nblockUpper·–·number·of·submatrices·in·the·upper·triangle\xd |
22 | ················•·int·*rowidsUpper·–·vector·of·row·ids·for·the·upper·triangle\xd | 22 | ················•·int·*rowidsUpper·–·vector·of·row·ids·for·the·upper·triangle\xd |
23 | ················•·int·*colidsUpper·–·vector·of·column·ids·for·the·upper·triangle\xd | 23 | ················•·int·*colidsUpper·–·vector·of·column·ids·for·the·upper·triangle\xd |
24 | ················•·int·*mapUpper·–·map·from·submatrices·to·threads·or·processes\xd | 24 | ················•·int·*mapUpper·–·map·from·submatrices·to·threads·or·processes\xd |
25 | ·······················································1\xd | 25 | ·······················································1\xd |
26 | ··············2··························SolveMap·:·DRAFT· | 26 | ··············2··························SolveMap·:·DRAFT·February·18,·2025\xd |
27 | ·················•·int·nblockLower·–·number·of·submatrices·in·the·lower·triangle\xd | 27 | ·················•·int·nblockLower·–·number·of·submatrices·in·the·lower·triangle\xd |
28 | ·················•·int·*rowidsLower·–·vector·of·row·ids·for·the·lower·triangle\xd | 28 | ·················•·int·*rowidsLower·–·vector·of·row·ids·for·the·lower·triangle\xd |
29 | ·················•·int·*colidsLower·–·vector·of·column·ids·for·the·lower·triangle\xd | 29 | ·················•·int·*colidsLower·–·vector·of·column·ids·for·the·lower·triangle\xd |
30 | ·················•·int·*mapLower·–·map·from·submatrices·to·threads·or·processes·processes\xd | 30 | ·················•·int·*mapLower·–·map·from·submatrices·to·threads·or·processes·processes\xd |
31 | ··············1.2···Prototypes·and·descriptions·of·SolveMap·methods\xd | 31 | ··············1.2···Prototypes·and·descriptions·of·SolveMap·methods\xd |
32 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 32 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
33 | ··············SolveMap·object.\xd | 33 | ··············SolveMap·object.\xd |
Offset 50, 15 lines modified | Offset 50, 15 lines modified | ||
50 | ···················This·method·releases·any·storage·by·a·call·to·SolveMap·clearData()·then·free’s·the·storage\xd | 50 | ···················This·method·releases·any·storage·by·a·call·to·SolveMap·clearData()·then·free’s·the·storage\xd |
51 | ···················for·the·structure·with·a·call·to·free().\xd | 51 | ···················for·the·structure·with·a·call·to·free().\xd |
52 | ···················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 52 | ···················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
53 | ··············1.2.2··Instance·methods\xd | 53 | ··············1.2.2··Instance·methods\xd |
54 | ················1.·int·SolveMap_symmetryflag·(·SolveMap·*solvemap·)·;\xd | 54 | ················1.·int·SolveMap_symmetryflag·(·SolveMap·*solvemap·)·;\xd |
55 | ···················This·method·returns·symmetryflag,·the·symmetry·flag.\xd | 55 | ···················This·method·returns·symmetryflag,·the·symmetry·flag.\xd |
56 | ···················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 56 | ···················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
57 | ···································· | 57 | ····································SolveMap·:·DRAFT···February·18,·2025·················3\xd |
58 | ···············2.·int·SolveMap_nfront·(·SolveMap·*solvemap·)·;\xd | 58 | ···············2.·int·SolveMap_nfront·(·SolveMap·*solvemap·)·;\xd |
59 | ·················This·method·returns·nfront,·the·number·of·fronts.\xd | 59 | ·················This·method·returns·nfront,·the·number·of·fronts.\xd |
60 | ·················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 60 | ·················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
61 | ···············3.·int·SolveMap_nproc·(·SolveMap·*solvemap·)·;\xd | 61 | ···············3.·int·SolveMap_nproc·(·SolveMap·*solvemap·)·;\xd |
62 | ·················This·method·returns·nproc,·the·number·of·threads·or·processes.\xd | 62 | ·················This·method·returns·nproc,·the·number·of·threads·or·processes.\xd |
63 | ·················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 63 | ·················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
64 | ···············4.·int·SolveMap_nblockUpper·(·SolveMap·*solvemap·)·;\xd | 64 | ···············4.·int·SolveMap_nblockUpper·(·SolveMap·*solvemap·)·;\xd |
Offset 84, 15 lines modified | Offset 84, 15 lines modified | ||
84 | ·················This·method·returns·mapUpper,·a·pointer·to·the·vector·that·maps·the·submatrices·in·the\xd | 84 | ·················This·method·returns·mapUpper,·a·pointer·to·the·vector·that·maps·the·submatrices·in·the\xd |
85 | ·················upper·triangle·to·threads·or·processes.\xd | 85 | ·················upper·triangle·to·threads·or·processes.\xd |
86 | ·················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 86 | ·················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
87 | ··············10.·int·*·SolveMap_rowidsLower·(·SolveMap·*solvemap·)·;\xd | 87 | ··············10.·int·*·SolveMap_rowidsLower·(·SolveMap·*solvemap·)·;\xd |
88 | ·················This·method·returns·rowidsLower,·a·pointer·to·the·vector·of·row·ids·of·the·submatrices·in\xd | 88 | ·················This·method·returns·rowidsLower,·a·pointer·to·the·vector·of·row·ids·of·the·submatrices·in\xd |
89 | ·················the·lower·triangle.\xd | 89 | ·················the·lower·triangle.\xd |
90 | ·················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 90 | ·················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
91 | ··············4··························SolveMap·:·DRAFT· | 91 | ··············4··························SolveMap·:·DRAFT·February·18,·2025\xd |
92 | ···············11.·int·*·SolveMap_colidsLower·(·SolveMap·*solvemap·)·;\xd | 92 | ···············11.·int·*·SolveMap_colidsLower·(·SolveMap·*solvemap·)·;\xd |
93 | ···················This·method·returns·colidsLower,·a·pointer·to·the·vector·of·column·ids·of·the·submatrices\xd | 93 | ···················This·method·returns·colidsLower,·a·pointer·to·the·vector·of·column·ids·of·the·submatrices\xd |
94 | ···················in·the·upper·triangle.\xd | 94 | ···················in·the·upper·triangle.\xd |
95 | ···················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 95 | ···················Error·checking:·If·solvemap·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
96 | ···············12.·int·*·SolveMap_mapLower·(·SolveMap·*solvemap·)·;\xd | 96 | ···············12.·int·*·SolveMap_mapLower·(·SolveMap·*solvemap·)·;\xd |
97 | ···················This·method·returns·mapLower,·a·pointer·to·the·vector·that·maps·the·submatrices·in·the\xd | 97 | ···················This·method·returns·mapLower,·a·pointer·to·the·vector·that·maps·the·submatrices·in·the\xd |
98 | ···················upper·triangle·to·threads·or·processes.\xd | 98 | ···················upper·triangle·to·threads·or·processes.\xd |
Offset 118, 15 lines modified | Offset 118, 15 lines modified | ||
118 | ···················fashion.·A·domain·is·a·subtree·of·fronts·that·are·owned·by·the·same·thread·or·process.\xd | 118 | ···················fashion.·A·domain·is·a·subtree·of·fronts·that·are·owned·by·the·same·thread·or·process.\xd |
119 | ···················Furthermore,·a·domain·is·maximal,·i.e.,·the·parent·of·the·root·domain·(if·it·exists)·is·owned\xd | 119 | ···················Furthermore,·a·domain·is·maximal,·i.e.,·the·parent·of·the·root·domain·(if·it·exists)·is·owned\xd |
120 | ···················by·a·different·process.·If·J·belongs·to·a·domain,·then·for·all·K,·LK,J·and·UJ,K·are·owned·by\xd | 120 | ···················by·a·different·process.·If·J·belongs·to·a·domain,·then·for·all·K,·LK,J·and·UJ,K·are·owned·by\xd |
121 | ···················the·thread·or·process·that·owns·the·domain.·All·other·submatrices·are·mapped·to·threads·or\xd | 121 | ···················the·thread·or·process·that·owns·the·domain.·All·other·submatrices·are·mapped·to·threads·or\xd |
122 | ···················processes·in·a·random·fashion.\xd | 122 | ···················processes·in·a·random·fashion.\xd |
123 | ···················Error·checking:·If·solvemap,·upperBlockIVL·or·ownersIV·is·NULL,·or·if·symmetryflag·is\xd | 123 | ···················Error·checking:·If·solvemap,·upperBlockIVL·or·ownersIV·is·NULL,·or·if·symmetryflag·is\xd |
124 | ···················invalid,·an·error·message·is·printed·and·the·program·exits.\xd | 124 | ···················invalid,·an·error·message·is·printed·and·the·program·exits.\xd |
125 | ············································· | 125 | ·············································SolveMap·:·DRAFT·······February·18,·2025··························5\xd |
126 | ···············1.2.5····Solve·setup·methods\xd | 126 | ···············1.2.5····Solve·setup·methods\xd |
127 | ··················1.·IP·**·SolveMap_forwardSetup·(·SolveMap·*solvemap,·int·myid,\xd | 127 | ··················1.·IP·**·SolveMap_forwardSetup·(·SolveMap·*solvemap,·int·myid,\xd |
128 | ·························································int·msglvl,·FILE·*msgFile·)·;\xd | 128 | ·························································int·msglvl,·FILE·*msgFile·)·;\xd |
129 | ·····················IP·**·SolveMap_backwardSetup·(·SolveMap·*solvemap,·int·myid,\xd | 129 | ·····················IP·**·SolveMap_backwardSetup·(·SolveMap·*solvemap,·int·myid,\xd |
130 | ·························································int·msglvl,·FILE·*msgFile·)·;\xd | 130 | ·························································int·msglvl,·FILE·*msgFile·)·;\xd |
131 | ·····················ThesetwomethodsreturnavectorofpointerstoIPobjectsthatcontainthelistofsubmatrices\xd | 131 | ·····················ThesetwomethodsreturnavectorofpointerstoIPobjectsthatcontainthelistofsubmatrices\xd |
132 | ·····················that·thread·or·process·myid·will·use·during·the·forward·or·backward·solves.\xd | 132 | ·····················that·thread·or·process·myid·will·use·during·the·forward·or·backward·solves.\xd |
Offset 157, 15 lines modified | Offset 157, 15 lines modified | ||
157 | ·····················submatrices·process·myid·expects·for·front·J.\xd | 157 | ·····················submatrices·process·myid·expects·for·front·J.\xd |
158 | ·····················Error·checking:·If·solvemap·is·NULL·or·nlist·<·0·then·an·error·message·is·printed·and·the\xd | 158 | ·····················Error·checking:·If·solvemap·is·NULL·or·nlist·<·0·then·an·error·message·is·printed·and·the\xd |
159 | ·····················program·exits.\xd | 159 | ·····················program·exits.\xd |
160 | ··················5.·IV·*·SolveMap_lowerAggregateIV·(·SolveMap·*solvemap,·int·myid\xd | 160 | ··················5.·IV·*·SolveMap_lowerAggregateIV·(·SolveMap·*solvemap,·int·myid\xd |
161 | ··························································int·msglvl,·FILE·*msgFile·)·;\xd | 161 | ··························································int·msglvl,·FILE·*msgFile·)·;\xd |
162 | ·····················This·method·returns·an·IV·object·that·contains·the·aggregate·count·for·a·forward·solve.·If\xd | 162 | ·····················This·method·returns·an·IV·object·that·contains·the·aggregate·count·for·a·forward·solve.·If\xd |
163 | ·····················myid·owns·front·J,·then·entry·J·of·the·returned·IV·object·contains·the·number·of·processes\xd | 163 | ·····················myid·owns·front·J,·then·entry·J·of·the·returned·IV·object·contains·the·number·of·processes\xd |
164 | ···············6·····························SolveMap·:·DRAFT· | 164 | ···············6·····························SolveMap·:·DRAFT·February·18,·2025\xd |
165 | ····················(other·than·myid)·that·own·an·L···submatrix,·(or·U···submatrix·if·symmetric·or·hermitian)\xd | 165 | ····················(other·than·myid)·that·own·an·L···submatrix,·(or·U···submatrix·if·symmetric·or·hermitian)\xd |
166 | ···················································J,I················I,J\xd | 166 | ···················································J,I················I,J\xd |
167 | ····················and·so·is·the·number·of·incoming·aggregate·submatrices·process·myid·expects·for·front·J.\xd | 167 | ····················and·so·is·the·number·of·incoming·aggregate·submatrices·process·myid·expects·for·front·J.\xd |
168 | ····················Error·checking:·If·solvemap·is·NULL·or·nlist·<·0·then·an·error·message·is·printed·and·the\xd | 168 | ····················Error·checking:·If·solvemap·is·NULL·or·nlist·<·0·then·an·error·message·is·printed·and·the\xd |
169 | ····················program·exits.\xd | 169 | ····················program·exits.\xd |
170 | ···············1.2.7···IO·methods\xd | 170 | ···············1.2.7···IO·methods\xd |
171 | ···············TherearetheusualeightIOroutines.·ThefilestructureofaSolveMapobjectissimple:·symmetryflag,\xd | 171 | ···············TherearetheusualeightIOroutines.·ThefilestructureofaSolveMapobjectissimple:·symmetryflag,\xd |
Offset 194, 15 lines modified | Offset 194, 15 lines modified | ||
194 | ····················Error·checking:·If·solvemap·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.solvemapf·(for·a\xd | 194 | ····················Error·checking:·If·solvemap·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.solvemapf·(for·a\xd |
195 | ····················formatted·file)·or·*.solvemapb·(for·a·binary·file),·an·error·message·is·printed·and·the·method\xd | 195 | ····················formatted·file)·or·*.solvemapb·(for·a·binary·file),·an·error·message·is·printed·and·the·method\xd |
196 | ····················returns·zero.\xd | 196 | ····················returns·zero.\xd |
197 | ··················5.·int·SolveMap_writeToFormattedFile·(·SolveMap·*solvemap,·FILE·*fp·)·;\xd | 197 | ··················5.·int·SolveMap_writeToFormattedFile·(·SolveMap·*solvemap,·FILE·*fp·)·;\xd |
198 | ····················This·method·writes·an·SolveMap·object·to·a·formatted·file.·If·there·are·no·errors·in·writing\xd | 198 | ····················This·method·writes·an·SolveMap·object·to·a·formatted·file.·If·there·are·no·errors·in·writing\xd |
199 | ····················the·data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd | 199 | ····················the·data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd |
200 | ····················Error·checking:·If·solvemap·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 200 | ····················Error·checking:·If·solvemap·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
201 | ···································· | 201 | ····································SolveMap·:·DRAFT···February·18,·2025·················7\xd |
202 | ···············6.·int·SolveMap_writeToBinaryFile·(·SolveMap·*solvemap,·FILE·*fp·)·;\xd | 202 | ···············6.·int·SolveMap_writeToBinaryFile·(·SolveMap·*solvemap,·FILE·*fp·)·;\xd |
203 | ·················This·method·writes·an·SolveMap·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the\xd | 203 | ·················This·method·writes·an·SolveMap·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the\xd |
204 | ·················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd | 204 | ·················data,·the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd |
205 | ·················Error·checking:·If·solvemap·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd | 205 | ·················Error·checking:·If·solvemap·or·fp·are·NULL·an·error·message·is·printed·and·zero·is·returned.\xd |
206 | ···············7.·int·SolveMap_writeForHumanEye·(·SolveMap·*solvemap,·FILE·*fp·)·;\xd | 206 | ···············7.·int·SolveMap_writeForHumanEye·(·SolveMap·*solvemap,·FILE·*fp·)·;\xd |
207 | ·················This·method·writes·an·SolveMap·object·to·a·file·in·an·easily·readable·format.·The·method\xd | 207 | ·················This·method·writes·an·SolveMap·object·to·a·file·in·an·easily·readable·format.·The·method\xd |
208 | ·················SolveMap·writeStats()·is·called·to·write·out·the·header·and·statistics.·The·value·1·is\xd | 208 | ·················SolveMap·writeStats()·is·called·to·write·out·the·header·and·statistics.·The·value·1·is\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·SubMtx.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·SubMtx.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2120, 20 lines modified | Offset 2120, 21 lines modified | ||
2120 | end·readonly·def | 2120 | end·readonly·def |
2121 | /Encoding·256·array | 2121 | /Encoding·256·array |
2122 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2122 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2123 | dup·44·/comma·put | 2123 | dup·44·/comma·put |
2124 | dup·48·/zero·put | 2124 | dup·48·/zero·put |
2125 | dup·49·/one·put | 2125 | dup·49·/one·put |
2126 | dup·50·/two·put | 2126 | dup·50·/two·put |
2127 | dup·52·/four·put | ||
2128 | dup·5 | 2127 | dup·53·/five·put |
2128 | dup·56·/eight·put | ||
2129 | dup·58·/colon·put | 2129 | dup·58·/colon·put |
2130 | dup·7 | 2130 | dup·70·/F·put |
2131 | dup·97·/a·put | 2131 | dup·97·/a·put |
2132 | dup·98·/b·put | ||
2132 | dup·1 | 2133 | dup·101·/e·put |
2133 | dup·114·/r·put | 2134 | dup·114·/r·put |
2134 | dup·117·/u·put | 2135 | dup·117·/u·put |
2135 | dup·121·/y·put | 2136 | dup·121·/y·put |
2136 | readonly·def | 2137 | readonly·def |
2137 | currentdict·end | 2138 | currentdict·end |
2138 | currentfile·eexec | 2139 | currentfile·eexec |
2139 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2140 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2317, 89 lines modified | Offset 2318, 93 lines modified | ||
2317 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2318 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2318 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2319 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2319 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2320 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2320 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2321 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2321 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2322 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2322 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2323 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2323 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2324 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2324 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2325 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2325 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2326 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2327 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2328 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2329 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2330 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2331 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2332 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2333 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2334 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2335 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2336 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2337 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2338 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2339 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2340 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2341 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2342 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2343 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2344 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2345 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2346 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2347 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2348 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2349 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2350 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2351 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2352 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2353 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2354 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2355 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2356 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2357 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2358 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2359 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2360 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2361 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2362 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2363 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2364 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2365 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2366 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2367 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2368 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2369 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2370 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2371 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2372 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2373 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2374 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2375 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2376 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2377 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2378 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2379 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2380 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2381 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2382 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2383 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2384 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2385 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2386 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2387 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2388 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2389 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2390 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2391 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2392 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2393 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2394 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2395 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2396 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2397 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2398 | 2326 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2327 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2328 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2329 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2330 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2331 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2332 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 29855/41747 bytes (71.51%) of diff not shown. |
Offset 23, 15 lines modified | Offset 23, 15 lines modified | ||
23 | ···········–·dense·by·columns,·i.e.,·dense·and·column·major\xd | 23 | ···········–·dense·by·columns,·i.e.,·dense·and·column·major\xd |
24 | ···········–·sparse·using·dense·subrows\xd | 24 | ···········–·sparse·using·dense·subrows\xd |
25 | ···········–·sparse·using·dense·subcolumns\xd | 25 | ···········–·sparse·using·dense·subcolumns\xd |
26 | ···········–·sparse·using·sparse·rows\xd | 26 | ···········–·sparse·using·sparse·rows\xd |
27 | ···········–·sparse·using·sparse·columns\xd | 27 | ···········–·sparse·using·sparse·columns\xd |
28 | ···········–·sparse·using·(i,j,ai,j)·triples\xd | 28 | ···········–·sparse·using·(i,j,ai,j)·triples\xd |
29 | ·····························1\xd | 29 | ·····························1\xd |
30 | ···········2······················SubMtx·:·DRAFT· | 30 | ···········2······················SubMtx·:·DRAFT·February·18,·2025\xd |
31 | ·················–·a·diagonal·matrix\xd | 31 | ·················–·a·diagonal·matrix\xd |
32 | ·················–·a·block·diagonal·symmetric·matrix·where·the·blocks·are·1·×·1·or·2·×·2,·used·in·the\xd | 32 | ·················–·a·block·diagonal·symmetric·matrix·where·the·blocks·are·1·×·1·or·2·×·2,·used·in·the\xd |
33 | ···················symmetric·indefinite·factorization.\xd | 33 | ···················symmetric·indefinite·factorization.\xd |
34 | ·················–·a·block·diagonal·Hermitian·matrix·where·the·blocks·are·1·×·1·or·2·×·2,·used·in·the\xd | 34 | ·················–·a·block·diagonal·Hermitian·matrix·where·the·blocks·are·1·×·1·or·2·×·2,·used·in·the\xd |
35 | ···················hermitian·indefinite·factorization.\xd | 35 | ···················hermitian·indefinite·factorization.\xd |
36 | ··············•·The·SubMtx·object·can·be·self-contained,·in·the·sense·that·its·structure·contains·a·DV·object\xd | 36 | ··············•·The·SubMtx·object·can·be·self-contained,·in·the·sense·that·its·structure·contains·a·DV·object\xd |
37 | ···············that·manages·a·contiguous·vector·of·workspace·that·is·used·to·store·all·information·about·the\xd | 37 | ···············that·manages·a·contiguous·vector·of·workspace·that·is·used·to·store·all·information·about·the\xd |
Offset 60, 15 lines modified | Offset 60, 15 lines modified | ||
60 | ···········information·is·better·than·using·explicit·structure·fields.·For·example,·if·we·want·to·extend·the\xd | 60 | ···········information·is·better·than·using·explicit·structure·fields.·For·example,·if·we·want·to·extend·the\xd |
61 | ···········object·by·allowing·another·storage·format,·we·do·not·need·to·increase·the·size·of·the·structure·at\xd | 61 | ···········object·by·allowing·another·storage·format,·we·do·not·need·to·increase·the·size·of·the·structure·at\xd |
62 | ···········all·—·it·is·only·necessary·to·provide·one·or·more·instance·methods·to·return·the·new·information.\xd | 62 | ···········all·—·it·is·only·necessary·to·provide·one·or·more·instance·methods·to·return·the·new·information.\xd |
63 | ···········1.1··Data·Structure\xd | 63 | ···········1.1··Data·Structure\xd |
64 | ···········The·SubMtx·structure·has·the·following·fields.\xd | 64 | ···········The·SubMtx·structure·has·the·following·fields.\xd |
65 | ··············•·int·type·:·type·of·entries.\xd | 65 | ··············•·int·type·:·type·of·entries.\xd |
66 | ·················–·SPOOLES·REAL·:·double·precision·real·entries.\xd | 66 | ·················–·SPOOLES·REAL·:·double·precision·real·entries.\xd |
67 | ·····································SubMtx·:·DRAFT·· | 67 | ·····································SubMtx·:·DRAFT··February·18,·2025···················3\xd |
68 | ···················–·SPOOLES·COMPLEX·:·double·precision·complex·entries.\xd | 68 | ···················–·SPOOLES·COMPLEX·:·double·precision·complex·entries.\xd |
69 | ···············•·int·mode·:·storage·mode.\xd | 69 | ···············•·int·mode·:·storage·mode.\xd |
70 | ···················–·SUBMTX·DENSE·ROWS·:·dense,·storage·by·rows.\xd | 70 | ···················–·SUBMTX·DENSE·ROWS·:·dense,·storage·by·rows.\xd |
71 | ···················–·SUBMTX·DENSE·COLUMNS·:·dense,·storage·by·columns.\xd | 71 | ···················–·SUBMTX·DENSE·COLUMNS·:·dense,·storage·by·columns.\xd |
72 | ···················–·SUBMTX·SPARSE·ROWS·:·sparse,·storage·by·rows.\xd | 72 | ···················–·SUBMTX·SPARSE·ROWS·:·sparse,·storage·by·rows.\xd |
73 | ···················–·SUBMTX·SPARSE·COLUMNS·:·sparse,·storage·by·columns.\xd | 73 | ···················–·SUBMTX·SPARSE·COLUMNS·:·sparse,·storage·by·columns.\xd |
74 | ···················–·SUBMTX·SPARSE·TRIPLES·:·sparse,·storage·by·(i,j,ai,j)·triples.\xd | 74 | ···················–·SUBMTX·SPARSE·TRIPLES·:·sparse,·storage·by·(i,j,ai,j)·triples.\xd |
Offset 92, 15 lines modified | Offset 92, 15 lines modified | ||
92 | ···············•·SUBMTX·IS·DENSE·ROWS(mtx)is·1·if·mtx·has·dense·rows·as·its·storage·format,·and·0·otherwise.\xd | 92 | ···············•·SUBMTX·IS·DENSE·ROWS(mtx)is·1·if·mtx·has·dense·rows·as·its·storage·format,·and·0·otherwise.\xd |
93 | ···············•·SUBMTX·IS·DENSE·COLUMNS(mtx)·is·1·if·mtx·has·dense·columns·as·its·storage·format,·and·0\xd | 93 | ···············•·SUBMTX·IS·DENSE·COLUMNS(mtx)·is·1·if·mtx·has·dense·columns·as·its·storage·format,·and·0\xd |
94 | ·················otherwise.\xd | 94 | ·················otherwise.\xd |
95 | ···············•·SUBMTX·IS·SPARSE·ROWS(mtx)·is·1·if·mtx·has·sparse·rows·as·its·storage·format,·and·0·other-\xd | 95 | ···············•·SUBMTX·IS·SPARSE·ROWS(mtx)·is·1·if·mtx·has·sparse·rows·as·its·storage·format,·and·0·other-\xd |
96 | ·················wise.\xd | 96 | ·················wise.\xd |
97 | ···············•·SUBMTX·IS·SPARSE·COLUMNS(mtx)·is·1·if·mtx·has·sparse·columns·as·its·storage·format,·and·0\xd | 97 | ···············•·SUBMTX·IS·SPARSE·COLUMNS(mtx)·is·1·if·mtx·has·sparse·columns·as·its·storage·format,·and·0\xd |
98 | ·················otherwise.\xd | 98 | ·················otherwise.\xd |
99 | ··············4···························SubMtx·:·DRAFT· | 99 | ··············4···························SubMtx·:·DRAFT·February·18,·2025\xd |
100 | ·················•·SUBMTX·IS·SPARSE·TRIPLES(mtx)·is·1·if·mtx·has·sparse·triples·as·its·storage·format,·0·other-\xd | 100 | ·················•·SUBMTX·IS·SPARSE·TRIPLES(mtx)·is·1·if·mtx·has·sparse·triples·as·its·storage·format,·0·other-\xd |
101 | ··················wise.\xd | 101 | ··················wise.\xd |
102 | ·················•·SUBMTX·IS·DENSE·SUBROWS(mtx)·is·1·if·mtx·has·dense·subrows·as·its·storage·format,·0·other-\xd | 102 | ·················•·SUBMTX·IS·DENSE·SUBROWS(mtx)·is·1·if·mtx·has·dense·subrows·as·its·storage·format,·0·other-\xd |
103 | ··················wise.\xd | 103 | ··················wise.\xd |
104 | ·················•·SUBMTX·IS·DENSE·SUBCOLUMNS(mtx)·is·1·if·mtx·has·dense·subcolumns·as·its·storage·format,\xd | 104 | ·················•·SUBMTX·IS·DENSE·SUBCOLUMNS(mtx)·is·1·if·mtx·has·dense·subcolumns·as·its·storage·format,\xd |
105 | ··················0·otherwise.\xd | 105 | ··················0·otherwise.\xd |
106 | ·················•·SUBMTX·IS·DIAGONAL(mtx)·is·1·if·mtx·is·diagonal,·0·otherwise.\xd | 106 | ·················•·SUBMTX·IS·DIAGONAL(mtx)·is·1·if·mtx·is·diagonal,·0·otherwise.\xd |
Offset 126, 15 lines modified | Offset 126, 15 lines modified | ||
126 | ··················This·method·clears·the·object·and·free’s·any·owned·data·by·invoking·the·clearData()\xd | 126 | ··················This·method·clears·the·object·and·free’s·any·owned·data·by·invoking·the·clearData()\xd |
127 | ··················methodsforitsinternal·DVobject.·Thereis·a·concluding·call·to·SubMtx·setDefaultFields().\xd | 127 | ··················methodsforitsinternal·DVobject.·Thereis·a·concluding·call·to·SubMtx·setDefaultFields().\xd |
128 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 128 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
129 | ················4.·void·SubMtx_free·(·SubMtx·*mtx·)·;\xd | 129 | ················4.·void·SubMtx_free·(·SubMtx·*mtx·)·;\xd |
130 | ··················This·method·releases·any·storage·by·a·call·to·SubMtx·clearData()·and·then·frees·the·space\xd | 130 | ··················This·method·releases·any·storage·by·a·call·to·SubMtx·clearData()·and·then·frees·the·space\xd |
131 | ··················for·mtx.\xd | 131 | ··················for·mtx.\xd |
132 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 132 | ··················Error·checking:·If·mtx·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
133 | ·····································SubMtx·:·DRAFT·· | 133 | ·····································SubMtx·:·DRAFT··February·18,·2025···················5\xd |
134 | ············1.2.2··Instance·methods\xd | 134 | ············1.2.2··Instance·methods\xd |
135 | ···············1.·void·SubMtx_ids·(·SubMtx·*mtx,·int·*prowid,·int·*pcolid·)·;\xd | 135 | ···············1.·void·SubMtx_ids·(·SubMtx·*mtx,·int·*prowid,·int·*pcolid·)·;\xd |
136 | ·················This·method·fills·*prowid·with·the·row·id·and·*pcolid·with·the·column·id·of·the·object.\xd | 136 | ·················This·method·fills·*prowid·with·the·row·id·and·*pcolid·with·the·column·id·of·the·object.\xd |
137 | ·················Error·checking:·If·mtx,·prowid·or·pcolid·is·NULL,·an·error·message·is·printed·and·the·program\xd | 137 | ·················Error·checking:·If·mtx,·prowid·or·pcolid·is·NULL,·an·error·message·is·printed·and·the·program\xd |
138 | ·················exits.\xd | 138 | ·················exits.\xd |
139 | ···············2.·void·SubMtx_setIds·(·SubMtx·*mtx,·int·rowid,·int·colid·)·;\xd | 139 | ···············2.·void·SubMtx_setIds·(·SubMtx·*mtx,·int·rowid,·int·colid·)·;\xd |
140 | ·················This·method·sets·the·row·and·column·id’s·of·the·matrix.\xd | 140 | ·················This·method·sets·the·row·and·column·id’s·of·the·matrix.\xd |
Offset 163, 15 lines modified | Offset 163, 15 lines modified | ||
163 | ·················the·program·exits.\xd | 163 | ·················the·program·exits.\xd |
164 | ···············7.·void·SubMtx_sparseRowsInfo·(·SubMtx·*mtx,·int·*pnrow,·int·*pnent,\xd | 164 | ···············7.·void·SubMtx_sparseRowsInfo·(·SubMtx·*mtx,·int·*pnrow,·int·*pnent,\xd |
165 | ··········································int·**psizes,·int·**pindices,·double·**pentries·)·;\xd | 165 | ··········································int·**psizes,·int·**pindices,·double·**pentries·)·;\xd |
166 | ·················This·method·is·used·when·the·storage·mode·is·sparse·rows.·It·fills·*pnrow·with·the·number\xd | 166 | ·················This·method·is·used·when·the·storage·mode·is·sparse·rows.·It·fills·*pnrow·with·the·number\xd |
167 | ·················of·rows,·*pnent·with·the·number·of·matrix·entries,·*psizes·with·the·base·address·of·the\xd | 167 | ·················of·rows,·*pnent·with·the·number·of·matrix·entries,·*psizes·with·the·base·address·of·the\xd |
168 | ·················sizes[nrow]vector·that·contains·the·number·of·entries·in·each·row,·*indices·with·the·base\xd | 168 | ·················sizes[nrow]vector·that·contains·the·number·of·entries·in·each·row,·*indices·with·the·base\xd |
169 | ·················address·of·the·indices[nent]·vector·that·contains·the·column·index·for·each·entry,·and\xd | 169 | ·················address·of·the·indices[nent]·vector·that·contains·the·column·index·for·each·entry,·and\xd |
170 | ·······6··············SubMtx·:·DRAFT· | 170 | ·······6··············SubMtx·:·DRAFT·February·18,·2025\xd |
171 | ··········*pentries·with·the·base·address·of·entries[nent]·vector.·The·indices·and·entries·for·the\xd | 171 | ··········*pentries·with·the·base·address·of·entries[nent]·vector.·The·indices·and·entries·for·the\xd |
172 | ··········rows·are·stored·contiguously.\xd | 172 | ··········rows·are·stored·contiguously.\xd |
173 | ··········Error·checking:·If·mtx,·pnrow,·pnent,·psizes,·pindices·or·pentries·is·NULL,·or·if·the·matrix\xd | 173 | ··········Error·checking:·If·mtx,·pnrow,·pnent,·psizes,·pindices·or·pentries·is·NULL,·or·if·the·matrix\xd |
174 | ··········type·is·not·SUBMTX·SPARSE·ROWS,·an·error·message·is·printed·and·the·program·exits.\xd | 174 | ··········type·is·not·SUBMTX·SPARSE·ROWS,·an·error·message·is·printed·and·the·program·exits.\xd |
175 | ········8.·void·SubMtx_sparseColumnsInfo·(·SubMtx·*mtx,·int·*pncol,·int·*pnent,\xd | 175 | ········8.·void·SubMtx_sparseColumnsInfo·(·SubMtx·*mtx,·int·*pncol,·int·*pnent,\xd |
176 | ························int·**psizes,·int·**pindices,·double·**pentries·)·;\xd | 176 | ························int·**psizes,·int·**pindices,·double·**pentries·)·;\xd |
177 | ··········Thismethodisusedwhenthestoragemodeissparsecolumns.·Itfills*pncolwiththenumber\xd | 177 | ··········Thismethodisusedwhenthestoragemodeissparsecolumns.·Itfills*pncolwiththenumber\xd |
Offset 204, 15 lines modified | Offset 204, 15 lines modified | ||
204 | ··········exits.\xd | 204 | ··········exits.\xd |
205 | ········11.·void·SubMtx_denseSubcolumnsInfo·(·SubMtx·*mtx,·int·*pncol,·int·*pnent,\xd | 205 | ········11.·void·SubMtx_denseSubcolumnsInfo·(·SubMtx·*mtx,·int·*pncol,·int·*pnent,\xd |
206 | ··················int·**pfirstlocs,·int·**plastlocs,·double·**pentries·)·;\xd | 206 | ··················int·**pfirstlocs,·int·**plastlocs,·double·**pentries·)·;\xd |
207 | ··········This·method·is·used·when·the·storage·mode·is·dense·subcolumns.·It·fills·*pncol·with\xd | 207 | ··········This·method·is·used·when·the·storage·mode·is·dense·subcolumns.·It·fills·*pncol·with\xd |
208 | ··········the·number·of·columns,·*pnent·with·the·number·of·matrix·entries,·*pfirstlocs·with·the\xd | 208 | ··········the·number·of·columns,·*pnent·with·the·number·of·matrix·entries,·*pfirstlocs·with·the\xd |
209 | ··········base·address·of·the·firstlocs[ncol]·vector,·*plastlocs·with·the·base·address·of·the\xd | 209 | ··········base·address·of·the·firstlocs[ncol]·vector,·*plastlocs·with·the·base·address·of·the\xd |
210 | ··········lastlocs[ncol]vector,·and·*pentries·with·the·base·address·of·entries[nent]·vector.·For\xd | 210 | ··········lastlocs[ncol]vector,·and·*pentries·with·the·base·address·of·entries[nent]·vector.·For\xd |
211 | ··········································· | 211 | ···········································SubMtx·:·DRAFT·····February·18,·2025·························7\xd |
212 | ····················column·jcol,·the·nonzero·entries·are·found·in·rows·[firstlocs[jcol],lastlocs[jcol]]\xd | 212 | ····················column·jcol,·the·nonzero·entries·are·found·in·rows·[firstlocs[jcol],lastlocs[jcol]]\xd |
213 | ····················when·firstlocs[jcol]·≥·0·and·firstlocs[jcol]·≤·lastlocs[jcol].·The·entries·for·the\xd | 213 | ····················when·firstlocs[jcol]·≥·0·and·firstlocs[jcol]·≤·lastlocs[jcol].·The·entries·for·the\xd |
214 | ····················columns·are·stored·contiguously.\xd | 214 | ····················columns·are·stored·contiguously.\xd |
215 | ····················Error·checking:·If·mtx,·pnrow,·pnent,·pfirstlocs,·plastlocs·or·pentries·is·NULL,·or·if·the\xd | 215 | ····················Error·checking:·If·mtx,·pnrow,·pnent,·pfirstlocs,·plastlocs·or·pentries·is·NULL,·or·if·the\xd |
216 | ····················matrix·type·is·not·SUBMTX·DENSE·SUBCOLUMNS,·an·error·message·is·printed·and·the·program\xd | 216 | ····················matrix·type·is·not·SUBMTX·DENSE·SUBCOLUMNS,·an·error·message·is·printed·and·the·program\xd |
217 | ····················exits.\xd | 217 | ····················exits.\xd |
218 | ················12.·void·SubMtx_diagonalInfo·(·SubMtx·*mtx,·int·*pncol,·double·**pentries·)·;\xd | 218 | ················12.·void·SubMtx_diagonalInfo·(·SubMtx·*mtx,·int·*pncol,·double·**pentries·)·;\xd |
Offset 242, 15 lines modified | Offset 242, 15 lines modified | ||
242 | ····················and·0·≤·jcol·≤·ncol.·If·the·(irow,jcol)·entry·is·present,·the·return·value·is·the·offset\xd | 242 | ····················and·0·≤·jcol·≤·ncol.·If·the·(irow,jcol)·entry·is·present,·the·return·value·is·the·offset\xd |
243 | ····················from·the·start·of·the·entries·vector.·(The·offset·is·in·terms·of·complex·entries,·not·double\xd | 243 | ····················from·the·start·of·the·entries·vector.·(The·offset·is·in·terms·of·complex·entries,·not·double\xd |
244 | ····················entries.)·Otherwise,·-1·is·returned.\xd | 244 | ····················entries.)·Otherwise,·-1·is·returned.\xd |
245 | ····················Error·checking:·If·mtx,·pReal·or·pImag·is·NULL,·or·if·irow·or·jcol·is·out·of·range,·an·error\xd | 245 | ····················Error·checking:·If·mtx,·pReal·or·pImag·is·NULL,·or·if·irow·or·jcol·is·out·of·range,·an·error\xd |
246 | ····················message·is·printed·and·the·program·exits.\xd | 246 | ····················message·is·printed·and·the·program·exits.\xd |
247 | ················16.·void··SubMtx_locationOfRealEntry·(·SubMtx·*mtx,·int·irow,·int·jcol,\xd | 247 | ················16.·void··SubMtx_locationOfRealEntry·(·SubMtx·*mtx,·int·irow,·int·jcol,\xd |
248 | ··························································double·**ppValue·)·;\xd | 248 | ··························································double·**ppValue·)·;\xd |
249 | ··············8···························· | 249 | ··············8····························SubMtx·:·DRAFT·February·18,·2025\xd |
250 | ···················If·the·(irow,jcol)·entry·is·present,·this·method·fills·*ppValue·with·a·pointer·to·the·entry\xd | 250 | ···················If·the·(irow,jcol)·entry·is·present,·this·method·fills·*ppValue·with·a·pointer·to·the·entry\xd |
251 | ···················in·row·irow·and·columnjcol.·Otherwise,·*ppValue·is·set·to·NULL.·Note,·irow·and·jcol·are\xd | 251 | ···················in·row·irow·and·columnjcol.·Otherwise,·*ppValue·is·set·to·NULL.·Note,·irow·and·jcol·are\xd |
252 | ···················local·indices,·i.e.,·0·≤·irow·≤·nrow·and·0·≤·jcol·≤·ncol.\xd | 252 | ···················local·indices,·i.e.,·0·≤·irow·≤·nrow·and·0·≤·jcol·≤·ncol.\xd |
253 | ···················Error·checking:·If·mtx·or·ppValue·is·NULL,·or·if·irow·or·jcol·is·out·of·range,·an·error·message\xd | 253 | ···················Error·checking:·If·mtx·or·ppValue·is·NULL,·or·if·irow·or·jcol·is·out·of·range,·an·error·message\xd |
254 | ···················is·printed·and·the·program·exits.\xd | 254 | ···················is·printed·and·the·program·exits.\xd |
255 | ················17.·void··SubMtx_locationOfComplexEntry·(·SubMtx·*mtx,·int·irow,·int·jcol,\xd | 255 | ················17.·void··SubMtx_locationOfComplexEntry·(·SubMtx·*mtx,·int·irow,·int·jcol,\xd |
256 | ·····························································double·**ppReal,·double·**ppImag·)·;\xd | 256 | ·····························································double·**ppReal,·double·**ppImag·)·;\xd |
Offset 278, 15 lines modified | Offset 278, 15 lines modified | ||
278 | ·············································int·nrow,·int·ncol,·int·nent,·int·seed·)·;\xd | 278 | ·············································int·nrow,·int·ncol,·int·nent,·int·seed·)·;\xd |
279 | ···················This·is·used·to·initialize·an·object·to·have·random·entries·and·(possibly)·random·structure.\xd | 279 | ···················This·is·used·to·initialize·an·object·to·have·random·entries·and·(possibly)·random·structure.\xd |
280 | ···················The·object·is·first·initialized·via·a·call·to·SubMtx·init().·Its·matrix·entries·are·then·filled\xd | 280 | ···················The·object·is·first·initialized·via·a·call·to·SubMtx·init().·Its·matrix·entries·are·then·filled\xd |
281 | ···················with·random·numbers.·If·the·matrix·is·sparse,·its·sparsity·pattern·is·sparse·and·random,\xd | 281 | ···················with·random·numbers.·If·the·matrix·is·sparse,·its·sparsity·pattern·is·sparse·and·random,\xd |
282 | ···················using·nent·when·applicable.·The·row·and·column·indices·are·ascending·starting·from·zero.\xd | 282 | ···················using·nent·when·applicable.·The·row·and·column·indices·are·ascending·starting·from·zero.\xd |
283 | ···················Error·checking:·If·mtx·is·NULL,·or·if·nrow,·ncol,·inc1·or·inc2·is·less·than·or·equal·to·zero,\xd | 283 | ···················Error·checking:·If·mtx·is·NULL,·or·if·nrow,·ncol,·inc1·or·inc2·is·less·than·or·equal·to·zero,\xd |
284 | ···················or·if·neither·inc1·nor·inc2·are·1,·an·error·message·is·printed·and·the·program·exits.\xd | 284 | ···················or·if·neither·inc1·nor·inc2·are·1,·an·error·message·is·printed·and·the·program·exits.\xd |
285 | ·····································SubMtx·:·DRAFT·· | 285 | ·····································SubMtx·:·DRAFT··February·18,·2025···················9\xd |
286 | ···············4.·void·SubMtx_initRandomLowerTriangle·(·SubMtx·*mtx,·int·type,·int·mode,\xd | 286 | ···············4.·void·SubMtx_initRandomLowerTriangle·(·SubMtx·*mtx,·int·type,·int·mode,\xd |
287 | ····················int·rowid,·int·colid,·int·nrow,·int·ncol,·int·nent,·int·seed,·int·strict·)·;\xd | 287 | ····················int·rowid,·int·colid,·int·nrow,·int·ncol,·int·nent,·int·seed,·int·strict·)·;\xd |
288 | ·················void·SubMtx_initRandomUpperTriangle·(·SubMtx·*mtx,·int·type,·int·mode,\xd | 288 | ·················void·SubMtx_initRandomUpperTriangle·(·SubMtx·*mtx,·int·type,·int·mode,\xd |
289 | ····················int·rowid,·int·colid,·int·nrow,·int·ncol,·int·nent,·int·seed,·int·strict·)·;\xd | 289 | ····················int·rowid,·int·colid,·int·nrow,·int·ncol,·int·nent,·int·seed,·int·strict·)·;\xd |
290 | ·················This·is·used·to·initialize·an·object·to·have·random·entries·and·(possibly)·random·struc-\xd | 290 | ·················This·is·used·to·initialize·an·object·to·have·random·entries·and·(possibly)·random·struc-\xd |
291 | ·················ture.·The·matrix·type·may·not·be·diagonal,·block·diagonal,·or·triples.·If·strict·=·1,·the\xd | 291 | ·················ture.·The·matrix·type·may·not·be·diagonal,·block·diagonal,·or·triples.·If·strict·=·1,·the\xd |
292 | ·················matrix·will·be·strict·lower·or·upper·triangular.·The·object·is·first·initialized·via·a·call·to\xd | 292 | ·················matrix·will·be·strict·lower·or·upper·triangular.·The·object·is·first·initialized·via·a·call·to\xd |
Max diff block lines reached; 12222/23016 bytes (53.10%) of diff not shown. |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·SubMtxList.ps | 15 | %DVIPSCommandLine:·dvips·main·-o·SubMtxList.ps |
16 | %DVIPSParameters:·dpi=600 | 16 | %DVIPSParameters:·dpi=600 |
17 | %DVIPSSource:··TeX·output·202 | 17 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
18 | %%BeginProcSet:·tex.pro·0·0 | 18 | %%BeginProcSet:·tex.pro·0·0 |
19 | %! | 19 | %! |
20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 20 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 21 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 22 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 23 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 24 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1778, 20 lines modified | Offset 1778, 21 lines modified | ||
1778 | end·readonly·def | 1778 | end·readonly·def |
1779 | /Encoding·256·array | 1779 | /Encoding·256·array |
1780 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1780 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1781 | dup·44·/comma·put | 1781 | dup·44·/comma·put |
1782 | dup·48·/zero·put | 1782 | dup·48·/zero·put |
1783 | dup·49·/one·put | 1783 | dup·49·/one·put |
1784 | dup·50·/two·put | 1784 | dup·50·/two·put |
1785 | dup·52·/four·put | ||
1786 | dup·5 | 1785 | dup·53·/five·put |
1786 | dup·56·/eight·put | ||
1787 | dup·58·/colon·put | 1787 | dup·58·/colon·put |
1788 | dup·7 | 1788 | dup·70·/F·put |
1789 | dup·97·/a·put | 1789 | dup·97·/a·put |
1790 | dup·98·/b·put | ||
1790 | dup·1 | 1791 | dup·101·/e·put |
1791 | dup·114·/r·put | 1792 | dup·114·/r·put |
1792 | dup·117·/u·put | 1793 | dup·117·/u·put |
1793 | dup·121·/y·put | 1794 | dup·121·/y·put |
1794 | readonly·def | 1795 | readonly·def |
1795 | currentdict·end | 1796 | currentdict·end |
1796 | currentfile·eexec | 1797 | currentfile·eexec |
1797 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1798 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1975, 89 lines modified | Offset 1976, 93 lines modified | ||
1975 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1976 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1976 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1977 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1977 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1978 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1978 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1979 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1979 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1980 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1980 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1981 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1981 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1982 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1982 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1983 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1983 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1984 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1985 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1986 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1987 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1988 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1989 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1990 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1991 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1992 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1993 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1994 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1995 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1996 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1997 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1998 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1999 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2000 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2001 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2002 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2003 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2004 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2005 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2006 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2007 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2008 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2009 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2010 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2011 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2012 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2013 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2014 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2015 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2016 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2017 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2018 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2019 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2020 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2021 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2022 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2023 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2024 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2025 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2026 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2027 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2028 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2029 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2030 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2031 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2032 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2033 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2034 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2035 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2036 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2037 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2038 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2039 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2040 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2041 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2042 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2043 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2044 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2045 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2046 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2047 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2048 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2049 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2050 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2051 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2052 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2053 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2054 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2055 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2056 | 1984 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1985 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1986 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1987 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1988 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1989 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1990 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 11268/23164 bytes (48.64%) of diff not shown. |
Offset 22, 15 lines modified | Offset 22, 15 lines modified | ||
22 | ·······The·first·two·operations·are·queries,·and·can·be·done·without·locking·the·list.·The·third·operation\xd | 22 | ·······The·first·two·operations·are·queries,·and·can·be·done·without·locking·the·list.·The·third·operation\xd |
23 | ·······needs·a·lock·only·when·two·or·more·threads·will·be·inserting·objects·into·the·list.·The·fourth\xd | 23 | ·······needs·a·lock·only·when·two·or·more·threads·will·be·inserting·objects·into·the·list.·The·fourth\xd |
24 | ·······operation·requires·a·lock·only·when·one·thread·will·add·an·object·while·another·thread·removes\xd | 24 | ·······operation·requires·a·lock·only·when·one·thread·will·add·an·object·while·another·thread·removes\xd |
25 | ·······the·object·and·the·incoming·count·is·not·yet·zero.\xd | 25 | ·······the·object·and·the·incoming·count·is·not·yet·zero.\xd |
26 | ·········Having·a·lock·associated·with·a·SubMtxList·object·is·optional,·for·example,·it·is·not·needed\xd | 26 | ·········Having·a·lock·associated·with·a·SubMtxList·object·is·optional,·for·example,·it·is·not·needed\xd |
27 | ·······during·a·serial·factorization·nor·a·MPI·solve.·In·the·latter·case·there·is·one·SubMtxList·per·process.\xd | 27 | ·······during·a·serial·factorization·nor·a·MPI·solve.·In·the·latter·case·there·is·one·SubMtxList·per·process.\xd |
28 | ·····························1\xd | 28 | ·····························1\xd |
29 | ··············2·························SubMtxList·:·DRAFT· | 29 | ··············2·························SubMtxList·:·DRAFT·February·18,·2025\xd |
30 | ··············For·a·multithreaded·solve·there·is·one·SubMtxList·object·that·is·shared·by·all·threads.·The·mutual\xd | 30 | ··············For·a·multithreaded·solve·there·is·one·SubMtxList·object·that·is·shared·by·all·threads.·The·mutual\xd |
31 | ··············exclusion·lock·that·is·(optionally)·embedded·in·the·SubMtxList·object·is·a·Lock·object·from·this\xd | 31 | ··············exclusion·lock·that·is·(optionally)·embedded·in·the·SubMtxList·object·is·a·Lock·object·from·this\xd |
32 | ··············library.·It·is·inside·the·Lock·object·that·we·have·a·mutual·exclusion·lock.·Presently·we·support·the\xd | 32 | ··············library.·It·is·inside·the·Lock·object·that·we·have·a·mutual·exclusion·lock.·Presently·we·support·the\xd |
33 | ··············Solaris·and·POSIX·thread·packages.·Porting·the·multithreaded·codes·to·another·platform·should\xd | 33 | ··············Solaris·and·POSIX·thread·packages.·Porting·the·multithreaded·codes·to·another·platform·should\xd |
34 | ··············be·simple·if·the·POSIX·thread·package·is·present.·Another·type·of·thread·package·will·require\xd | 34 | ··············be·simple·if·the·POSIX·thread·package·is·present.·Another·type·of·thread·package·will·require\xd |
35 | ··············some·modifications·to·the·Lock·object,·but·none·to·the·SubMtxList·objects.\xd | 35 | ··············some·modifications·to·the·Lock·object,·but·none·to·the·SubMtxList·objects.\xd |
36 | ··············1.1···Data·Structure\xd | 36 | ··············1.1···Data·Structure\xd |
Offset 52, 15 lines modified | Offset 52, 15 lines modified | ||
52 | ················1.·SubMtxList·*·SubMtxList_new·(·void·)·;\xd | 52 | ················1.·SubMtxList·*·SubMtxList_new·(·void·)·;\xd |
53 | ··················This·method·simply·allocates·storage·for·the·SubMtxList·structure·and·then·sets·the·default\xd | 53 | ··················This·method·simply·allocates·storage·for·the·SubMtxList·structure·and·then·sets·the·default\xd |
54 | ··················fields·by·a·call·to·SubMtxList·setDefaultFields().\xd | 54 | ··················fields·by·a·call·to·SubMtxList·setDefaultFields().\xd |
55 | ················2.·void·SubMtxList_setDefaultFields·(·SubMtxList·*list·)·;\xd | 55 | ················2.·void·SubMtxList_setDefaultFields·(·SubMtxList·*list·)·;\xd |
56 | ··················The·structure’s·fields·are·set·to·default·values:·nlist·and·nlocks·set·to·zero,·and·heads,\xd | 56 | ··················The·structure’s·fields·are·set·to·default·values:·nlist·and·nlocks·set·to·zero,·and·heads,\xd |
57 | ··················counts,·lock·and·flags·are·set·to·NULL·.\xd | 57 | ··················counts,·lock·and·flags·are·set·to·NULL·.\xd |
58 | ··················Error·checking:·If·list·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 58 | ··················Error·checking:·If·list·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
59 | ··································· | 59 | ···································SubMtxList·:·DRAFT···February·18,·2025·················3\xd |
60 | ···············3.·void·SubMtxList_clearData·(·SubMtxList·*list·)·;\xd | 60 | ···············3.·void·SubMtxList_clearData·(·SubMtxList·*list·)·;\xd |
61 | ·················This·method·clears·the·object·and·free’s·any·owned·data·by·calling·SubMtx·free()·for·each\xd | 61 | ·················This·method·clears·the·object·and·free’s·any·owned·data·by·calling·SubMtx·free()·for·each\xd |
62 | ·················object·on·the·free·list.·If·heads·is·not·NULL,·it·is·free’d.·If·counts·is·not·NULL,·it·is·free’d·via\xd | 62 | ·················object·on·the·free·list.·If·heads·is·not·NULL,·it·is·free’d.·If·counts·is·not·NULL,·it·is·free’d·via\xd |
63 | ·················a·call·to·IVfree().·If·flags·is·not·NULL,·it·is·free’d·via·a·call·to·CVfree().·If·the·lock·is·not\xd | 63 | ·················a·call·to·IVfree().·If·flags·is·not·NULL,·it·is·free’d·via·a·call·to·CVfree().·If·the·lock·is·not\xd |
64 | ·················NULL,·it·is·destroyed·via·a·call·to·mutex·destroy()·and·then·free’d.·There·is·a·concluding\xd | 64 | ·················NULL,·it·is·destroyed·via·a·call·to·mutex·destroy()·and·then·free’d.·There·is·a·concluding\xd |
65 | ·················call·to·SubMtxList·setDefaultFields().\xd | 65 | ·················call·to·SubMtxList·setDefaultFields().\xd |
66 | ·················Error·checking:·If·list·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 66 | ·················Error·checking:·If·list·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
Offset 87, 15 lines modified | Offset 87, 15 lines modified | ||
87 | ·················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd | 87 | ·················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd |
88 | ·················is·printed·and·zero·is·returned.\xd | 88 | ·················is·printed·and·zero·is·returned.\xd |
89 | ···············2.·int·SubMtxList_isCountZero·(·SubMtxList·*list,·int·ilist·)·;\xd | 89 | ···············2.·int·SubMtxList_isCountZero·(·SubMtxList·*list,·int·ilist·)·;\xd |
90 | ·················If·counts·is·NULL,·or·if·counts[ilist]·equal·to·zero,·the·method·returns·1.·Otherwise,·the\xd | 90 | ·················If·counts·is·NULL,·or·if·counts[ilist]·equal·to·zero,·the·method·returns·1.·Otherwise,·the\xd |
91 | ·················method·returns·0.\xd | 91 | ·················method·returns·0.\xd |
92 | ·················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd | 92 | ·················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd |
93 | ·················is·printed·and·zero·is·returned.\xd | 93 | ·················is·printed·and·zero·is·returned.\xd |
94 | ··············4·························SubMtxList·:·DRAFT· | 94 | ··············4·························SubMtxList·:·DRAFT·February·18,·2025\xd |
95 | ················3.·SubMtx·*·SubMtxList_getList·(·SubMtxList·*list,·int·ilist·)·;\xd | 95 | ················3.·SubMtx·*·SubMtxList_getList·(·SubMtxList·*list,·int·ilist·)·;\xd |
96 | ··················If·list·ilist·is·empty,·the·method·returns·NULL.·Otherwise,·if·the·list·needs·to·be·locked,·the\xd | 96 | ··················If·list·ilist·is·empty,·the·method·returns·NULL.·Otherwise,·if·the·list·needs·to·be·locked,·the\xd |
97 | ··················lock·is·locked.·The·head·of·the·list·is·saved·to·a·pointer·and·then·the·head·is·set·to·NULL.\xd | 97 | ··················lock·is·locked.·The·head·of·the·list·is·saved·to·a·pointer·and·then·the·head·is·set·to·NULL.\xd |
98 | ··················If·the·list·was·locked,·the·number·of·locks·is·incremented·and·the·lock·unlocked.·The·saved\xd | 98 | ··················If·the·list·was·locked,·the·number·of·locks·is·incremented·and·the·lock·unlocked.·The·saved\xd |
99 | ··················pointer·is·returned.\xd | 99 | ··················pointer·is·returned.\xd |
100 | ··················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd | 100 | ··················Error·checking:·If·list·is·NULL,·or·if·ilist·is·not·in·the·range·[0,nlist),·an·error·message\xd |
101 | ··················is·printed·and·zero·is·returned.\xd | 101 | ··················is·printed·and·zero·is·returned.\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·SubMtxManager.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·SubMtxManager.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1421, 20 lines modified | Offset 1421, 21 lines modified | ||
1421 | end·readonly·def | 1421 | end·readonly·def |
1422 | /Encoding·256·array | 1422 | /Encoding·256·array |
1423 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1423 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1424 | dup·44·/comma·put | 1424 | dup·44·/comma·put |
1425 | dup·48·/zero·put | 1425 | dup·48·/zero·put |
1426 | dup·49·/one·put | 1426 | dup·49·/one·put |
1427 | dup·50·/two·put | 1427 | dup·50·/two·put |
1428 | dup·52·/four·put | ||
1429 | dup·5 | 1428 | dup·53·/five·put |
1429 | dup·56·/eight·put | ||
1430 | dup·58·/colon·put | 1430 | dup·58·/colon·put |
1431 | dup·7 | 1431 | dup·70·/F·put |
1432 | dup·97·/a·put | 1432 | dup·97·/a·put |
1433 | dup·98·/b·put | ||
1433 | dup·1 | 1434 | dup·101·/e·put |
1434 | dup·114·/r·put | 1435 | dup·114·/r·put |
1435 | dup·117·/u·put | 1436 | dup·117·/u·put |
1436 | dup·121·/y·put | 1437 | dup·121·/y·put |
1437 | readonly·def | 1438 | readonly·def |
1438 | currentdict·end | 1439 | currentdict·end |
1439 | currentfile·eexec | 1440 | currentfile·eexec |
1440 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1441 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1618, 89 lines modified | Offset 1619, 93 lines modified | ||
1618 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1619 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1619 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1620 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1620 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1621 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1621 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1622 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1622 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1623 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1623 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1624 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1624 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1625 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1625 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1626 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1626 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1627 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1628 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1629 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1630 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1631 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1632 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1633 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1634 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1635 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1636 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1637 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1638 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1639 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1640 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1641 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1642 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1643 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1644 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1645 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1646 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1647 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1648 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1649 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1650 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1651 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1652 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1653 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1654 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1655 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1656 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1657 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1658 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1659 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1660 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1661 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1662 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1663 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1664 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1665 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1666 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1667 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1668 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1669 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1670 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1671 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1672 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1673 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1674 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1675 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1676 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1677 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1678 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1679 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1680 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1681 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1682 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1683 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1684 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1685 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1686 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1687 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1688 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1689 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1690 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1691 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1692 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1693 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1694 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1695 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1696 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1697 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1698 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1699 | 1627 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1628 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1629 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1630 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1631 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1632 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1633 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 6681/18580 bytes (35.96%) of diff not shown. |
Offset 27, 15 lines modified | Offset 27, 15 lines modified | ||
27 | ···············with·sufficient·work·space,·and·returns·a·pointer·to·the·object.·When·a·SubMtx·object·is·no·longer\xd | 27 | ···············with·sufficient·work·space,·and·returns·a·pointer·to·the·object.·When·a·SubMtx·object·is·no·longer\xd |
28 | ···············necessary,·it·is·released·to·the·manager·object,·which·then·inserts·it·into·the·free·list.·A·list·of\xd | 28 | ···············necessary,·it·is·released·to·the·manager·object,·which·then·inserts·it·into·the·free·list.·A·list·of\xd |
29 | ···············SubMtx·objects·can·be·released·in·one·call.\xd | 29 | ···············SubMtx·objects·can·be·released·in·one·call.\xd |
30 | ···················One·can·specify·whether·the·object·is·to·be·locked·via·a·mutual·exclusion·lock.·This·is·not\xd | 30 | ···················One·can·specify·whether·the·object·is·to·be·locked·via·a·mutual·exclusion·lock.·This·is·not\xd |
31 | ···············necessary·for·a·serial·or·MPI·factorization·or·solve·(where·there·is·one·SubMtxManager·object·for\xd | 31 | ···············necessary·for·a·serial·or·MPI·factorization·or·solve·(where·there·is·one·SubMtxManager·object·for\xd |
32 | ···············each·processor),·but·it·is·necessary·for·in·a·multithreaded·environment.\xd | 32 | ···············each·processor),·but·it·is·necessary·for·in·a·multithreaded·environment.\xd |
33 | ·······························································1\xd | 33 | ·······························································1\xd |
34 | ··············2·······················SubMtxManager·:·DRAFT· | 34 | ··············2·······················SubMtxManager·:·DRAFT·February·18,·2025\xd |
35 | ·················Eachmanagerobjectkeepstrackofcertainstatistics,·bytesintheirworkspaces,·thetotal·number\xd | 35 | ·················Eachmanagerobjectkeepstrackofcertainstatistics,·bytesintheirworkspaces,·thetotal·number\xd |
36 | ··············of·bytes·requested,·the·number·of·requests·for·a·SubMtx·objects,·the·number·of·releases,·and·the\xd | 36 | ··············of·bytes·requested,·the·number·of·requests·for·a·SubMtx·objects,·the·number·of·releases,·and·the\xd |
37 | ··············number·of·locks·and·unlocks.\xd | 37 | ··············number·of·locks·and·unlocks.\xd |
38 | ··············1.1···Data·Structure\xd | 38 | ··············1.1···Data·Structure\xd |
39 | ··············The·SubMtxManager·structure·has·the·following·fields.\xd | 39 | ··············The·SubMtxManager·structure·has·the·following·fields.\xd |
40 | ·················•·SubMtx·*head·:·head·of·the·free·list·of·SubMtx·objects.\xd | 40 | ·················•·SubMtx·*head·:·head·of·the·free·list·of·SubMtx·objects.\xd |
41 | ·················•·Lock·*lock·:·mutual·exclusion·lock.\xd | 41 | ·················•·Lock·*lock·:·mutual·exclusion·lock.\xd |
Offset 55, 15 lines modified | Offset 55, 15 lines modified | ||
55 | ··············SubMtxManager·object.\xd | 55 | ··············SubMtxManager·object.\xd |
56 | ··············1.2.1··Basic·methods\xd | 56 | ··············1.2.1··Basic·methods\xd |
57 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 57 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
58 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 58 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
59 | ················1.·SubMtxManager·*·SubMtxManager_new·(·void·)·;\xd | 59 | ················1.·SubMtxManager·*·SubMtxManager_new·(·void·)·;\xd |
60 | ··················This·method·simply·allocates·storage·for·the·SubMtxManager·structure·and·then·sets·the\xd | 60 | ··················This·method·simply·allocates·storage·for·the·SubMtxManager·structure·and·then·sets·the\xd |
61 | ··················default·fields·by·a·call·to·SubMtxManager·setDefaultFields().\xd | 61 | ··················default·fields·by·a·call·to·SubMtxManager·setDefaultFields().\xd |
62 | ·································· | 62 | ··································SubMtxManager·:·DRAFT···February·18,·2025···············3\xd |
63 | ···············2.·void·SubMtxManager_setDefaultFields·(·SubMtxManager·*manager·)·;\xd | 63 | ···············2.·void·SubMtxManager_setDefaultFields·(·SubMtxManager·*manager·)·;\xd |
64 | ·················Thestructure’sfieldsaresettodefaultvalues:·mode,nactive,nbytesactive,nbytesrequested,\xd | 64 | ·················Thestructure’sfieldsaresettodefaultvalues:·mode,nactive,nbytesactive,nbytesrequested,\xd |
65 | ·················nbytesalloc,·nrequests,·nreleases,·nlocks·and·nunlocks·are·set·to·zero,·and·head·and\xd | 65 | ·················nbytesalloc,·nrequests,·nreleases,·nlocks·and·nunlocks·are·set·to·zero,·and·head·and\xd |
66 | ·················lock·are·set·to·NULL·.\xd | 66 | ·················lock·are·set·to·NULL·.\xd |
67 | ·················Error·checking:·If·manager·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 67 | ·················Error·checking:·If·manager·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
68 | ···············3.·void·SubMtxManager_clearData·(·SubMtxManager·*manager·)·;\xd | 68 | ···············3.·void·SubMtxManager_clearData·(·SubMtxManager·*manager·)·;\xd |
69 | ·················This·method·clears·the·object·and·free’s·any·owned·data·by·calling·SubMtx·free()·for·each\xd | 69 | ·················This·method·clears·the·object·and·free’s·any·owned·data·by·calling·SubMtx·free()·for·each\xd |
Offset 89, 15 lines modified | Offset 89, 15 lines modified | ||
89 | ·················its·workspace.\xd | 89 | ·················its·workspace.\xd |
90 | ·················Error·checking:·If·manager·is·NULL,·or·if·nbytesNeeded·≤·0,·an·error·message·is·printed·and\xd | 90 | ·················Error·checking:·If·manager·is·NULL,·or·if·nbytesNeeded·≤·0,·an·error·message·is·printed·and\xd |
91 | ·················zero·is·returned.\xd | 91 | ·················zero·is·returned.\xd |
92 | ···············2.·void·SubMtxManager_releaseObject·(·SubMtxManager·*manager,·SubMtx·*mtx·)·;\xd | 92 | ···············2.·void·SubMtxManager_releaseObject·(·SubMtxManager·*manager,·SubMtx·*mtx·)·;\xd |
93 | ·················This·method·releases·the·mtx·instance,·either·free’ing·it·(if·mode·=·0),·or·returning·it·to·the\xd | 93 | ·················This·method·releases·the·mtx·instance,·either·free’ing·it·(if·mode·=·0),·or·returning·it·to·the\xd |
94 | ·················free·list·(if·mode·=·1).\xd | 94 | ·················free·list·(if·mode·=·1).\xd |
95 | ·················Error·checking:·If·manager·or·mtx·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 95 | ·················Error·checking:·If·manager·or·mtx·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
96 | ··············4·······················SubMtxManager·:·DRAFT· | 96 | ··············4·······················SubMtxManager·:·DRAFT·February·18,·2025\xd |
97 | ················3.·void·SubMtxManager_releaseListOfObjects·(·SubMtxManager·*manager,·SubMtx·*first·)·;\xd | 97 | ················3.·void·SubMtxManager_releaseListOfObjects·(·SubMtxManager·*manager,·SubMtx·*first·)·;\xd |
98 | ··················This·method·releases·a·list·of·SubMtx·objects·whose·head·is·first,·either·free’ing·them·(if\xd | 98 | ··················This·method·releases·a·list·of·SubMtx·objects·whose·head·is·first,·either·free’ing·them·(if\xd |
99 | ··················mode·=·0),·or·returning·them·to·the·free·list·(if·mode·=·1).\xd | 99 | ··················mode·=·0),·or·returning·them·to·the·free·list·(if·mode·=·1).\xd |
100 | ··················Error·checking:·If·manager·or·head·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 100 | ··················Error·checking:·If·manager·or·head·is·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
101 | ··············1.2.4··IO·methods\xd | 101 | ··············1.2.4··IO·methods\xd |
102 | ················1.·void·SubMtxManager_writeForHumanEye·(·SubMtxManager·*manager,·FILE·*fp·)·;\xd | 102 | ················1.·void·SubMtxManager_writeForHumanEye·(·SubMtxManager·*manager,·FILE·*fp·)·;\xd |
103 | ··················This·method·writes·a·SubMtxManager·object·to·a·file·in·an·easily·readable·format.\xd | 103 | ··················This·method·writes·a·SubMtxManager·object·to·a·file·in·an·easily·readable·format.\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·SymbFac.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·SymbFac.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 1008, 20 lines modified | Offset 1008, 21 lines modified | ||
1008 | end·readonly·def | 1008 | end·readonly·def |
1009 | /Encoding·256·array | 1009 | /Encoding·256·array |
1010 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1010 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1011 | dup·44·/comma·put | 1011 | dup·44·/comma·put |
1012 | dup·48·/zero·put | 1012 | dup·48·/zero·put |
1013 | dup·49·/one·put | 1013 | dup·49·/one·put |
1014 | dup·50·/two·put | 1014 | dup·50·/two·put |
1015 | dup·52·/four·put | ||
1016 | dup·5 | 1015 | dup·53·/five·put |
1016 | dup·56·/eight·put | ||
1017 | dup·58·/colon·put | 1017 | dup·58·/colon·put |
1018 | dup·7 | 1018 | dup·70·/F·put |
1019 | dup·97·/a·put | 1019 | dup·97·/a·put |
1020 | dup·98·/b·put | ||
1020 | dup·1 | 1021 | dup·101·/e·put |
1021 | dup·114·/r·put | 1022 | dup·114·/r·put |
1022 | dup·117·/u·put | 1023 | dup·117·/u·put |
1023 | dup·121·/y·put | 1024 | dup·121·/y·put |
1024 | readonly·def | 1025 | readonly·def |
1025 | currentdict·end | 1026 | currentdict·end |
1026 | currentfile·eexec | 1027 | currentfile·eexec |
1027 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1028 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1205, 89 lines modified | Offset 1206, 93 lines modified | ||
1205 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1206 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1206 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1207 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1207 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1208 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1208 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1209 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1209 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1210 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1210 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1211 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1211 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1212 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1212 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1213 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
1213 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1214 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1215 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1216 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1217 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1218 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1219 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1220 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1221 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
1222 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
1223 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
1224 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
1225 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
1226 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
1227 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
1228 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
1229 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
1230 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
1231 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
1232 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
1233 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
1234 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
1235 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
1236 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
1237 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
1238 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
1239 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
1240 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
1241 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
1242 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
1243 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
1244 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
1245 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
1246 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
1247 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
1248 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
1249 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
1250 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
1251 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
1252 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
1253 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
1254 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
1255 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
1256 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
1257 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
1258 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
1259 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
1260 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
1261 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
1262 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
1263 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
1264 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
1265 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
1266 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
1267 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
1268 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
1269 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
1270 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
1271 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
1272 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
1273 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
1274 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
1275 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
1276 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
1277 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
1278 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
1279 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
1280 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
1281 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
1282 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
1283 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
1284 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
1285 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
1286 | 1214 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
1215 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
1216 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
1217 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
1218 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
1219 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
1220 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 6017/17910 bytes (33.60%) of diff not shown. |
Offset 22, 15 lines modified | Offset 22, 15 lines modified | ||
22 | ···········to·have·chevron·coordinate·type·and·storage·mode·must·be·by·vectors.\xd | 22 | ···········to·have·chevron·coordinate·type·and·storage·mode·must·be·by·vectors.\xd |
23 | ···········1.1··Data·Structure\xd | 23 | ···········1.1··Data·Structure\xd |
24 | ···········There·is·no·struct·or·data·associated·with·the·SymbFac·object.\xd | 24 | ···········There·is·no·struct·or·data·associated·with·the·SymbFac·object.\xd |
25 | ···········1.2··Prototypes·and·descriptions·of·SymbFac·methods\xd | 25 | ···········1.2··Prototypes·and·descriptions·of·SymbFac·methods\xd |
26 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 26 | ···········This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
27 | ···········SymbFac·object.\xd | 27 | ···········SymbFac·object.\xd |
28 | ·············································1\xd | 28 | ·············································1\xd |
29 | ··············2·························· | 29 | ··············2··························SymbFac·:·DRAFT·February·18,·2025\xd |
30 | ··············1.2.1··Symbolic·factorization·methods\xd | 30 | ··············1.2.1··Symbolic·factorization·methods\xd |
31 | ················1.·IVL·*·SymbFac_initFromGraph·(·ETree·*etree,·Graph·*graph·)·;\xd | 31 | ················1.·IVL·*·SymbFac_initFromGraph·(·ETree·*etree,·Graph·*graph·)·;\xd |
32 | ···················This·symbolic·factorization·method·takes·a·Graph·object·as·input.·This·method·constructs\xd | 32 | ···················This·symbolic·factorization·method·takes·a·Graph·object·as·input.·This·method·constructs\xd |
33 | ···················an·IVL·object·that·contains·one·list·per·front.·List·ilist·contains·the·internal·and·external\xd | 33 | ···················an·IVL·object·that·contains·one·list·per·front.·List·ilist·contains·the·internal·and·external\xd |
34 | ···················vertices·for·front·ilist.·If·the·input·graph·is·a·compressed·graph,·then·the·lists·of·compressed\xd | 34 | ···················vertices·for·front·ilist.·If·the·input·graph·is·a·compressed·graph,·then·the·lists·of·compressed\xd |
35 | ···················vertices·make·little·sense;·they·must·be·converted·to·original·vertices.·To·do·this,·see·the\xd | 35 | ···················vertices·make·little·sense;·they·must·be·converted·to·original·vertices.·To·do·this,·see·the\xd |
36 | ···················IVL·expand()·method.·The·nodwghtsIV·and·bndwghtsIV·objects·for·the·ETree·object·are\xd | 36 | ···················IVL·expand()·method.·The·nodwghtsIV·and·bndwghtsIV·objects·for·the·ETree·object·are\xd |
Offset 61, 15 lines modified | Offset 61, 15 lines modified | ||
61 | ················1.·testSymbFacInpMtx·msglvl·msgFile·inETreeFile·inDInpMtxFile\xd | 61 | ················1.·testSymbFacInpMtx·msglvl·msgFile·inETreeFile·inDInpMtxFile\xd |
62 | ·····································outETreeFile·outIVfile·outIVLfile\xd | 62 | ·····································outETreeFile·outIVfile·outIVLfile\xd |
63 | ···················This·driver·program·reads·in·an·ETree·object·and·a·InpMtx·object·and·computes·the·symbolic\xd | 63 | ···················This·driver·program·reads·in·an·ETree·object·and·a·InpMtx·object·and·computes·the·symbolic\xd |
64 | ···················factorization.·The·ETree·object·is·updated·(the·front·sizes·and·boundary·sizes·may·change)\xd | 64 | ···················factorization.·The·ETree·object·is·updated·(the·front·sizes·and·boundary·sizes·may·change)\xd |
65 | ···················andisoptionally·written·out·to·outETreeFile.·The·old-to-new·IV·object·is·optionally·written\xd | 65 | ···················andisoptionally·written·out·to·outETreeFile.·The·old-to-new·IV·object·is·optionally·written\xd |
66 | ···················to·outIVfile.·The·IVL·object·that·contains·the·symbolic·factorization·is·optionally·written\xd | 66 | ···················to·outIVfile.·The·IVL·object·that·contains·the·symbolic·factorization·is·optionally·written\xd |
67 | ···················to·outIVLfile.\xd | 67 | ···················to·outIVLfile.\xd |
68 | ·······················································SymbFac·:·DRAFT··········· | 68 | ·······················································SymbFac·:·DRAFT···········February·18,·2025···································3\xd |
69 | ····························•·The·msglvl·parameter·determines·the·amount·of·output.\xd | 69 | ····························•·The·msglvl·parameter·determines·the·amount·of·output.\xd |
70 | ····························•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd | 70 | ····························•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd |
71 | ·······························message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd | 71 | ·······························message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd |
72 | ·······························data.\xd | 72 | ·······························data.\xd |
73 | ····························•·TheinETreeFileparameteristheinputfilefortheETreeobject.·It·mustbeof·theform\xd | 73 | ····························•·TheinETreeFileparameteristheinputfilefortheETreeobject.·It·mustbeof·theform\xd |
74 | ·······························*.etreefor*.etreeb.·TheETreeobjectisreadfromthefileviatheETree·readFromFile()\xd | 74 | ·······························*.etreefor*.etreeb.·TheETreeobjectisreadfromthefileviatheETree·readFromFile()\xd |
75 | ·······························method.\xd | 75 | ·······························method.\xd |
Offset 101, 15 lines modified | Offset 101, 15 lines modified | ||
101 | ·······························data.\xd | 101 | ·······························data.\xd |
102 | ····························•·TheinETreeFileparameteristheinputfilefortheETreeobject.·It·mustbeof·theform\xd | 102 | ····························•·TheinETreeFileparameteristheinputfilefortheETreeobject.·It·mustbeof·theform\xd |
103 | ·······························*.etreefor*.etreeb.·TheETreeobjectisreadfromthefileviatheETree·readFromFile()\xd | 103 | ·······························*.etreefor*.etreeb.·TheETreeobjectisreadfromthefileviatheETree·readFromFile()\xd |
104 | ·······························method.\xd | 104 | ·······························method.\xd |
105 | ····························•·TheinGraphFileparameteristheinputfilefortheGraphobject.·It·mustbeof·theform\xd | 105 | ····························•·TheinGraphFileparameteristheinputfilefortheGraphobject.·It·mustbeof·theform\xd |
106 | ·······························*.graphfor*.graphb.·TheGraphobjectisreadfromthefileviatheGraph·readFromFile()\xd | 106 | ·······························*.graphfor*.graphb.·TheGraphobjectisreadfromthefileviatheGraph·readFromFile()\xd |
107 | ·······························method.\xd | 107 | ·······························method.\xd |
108 | ··················4····································· | 108 | ··················4·····································SymbFac·:·DRAFT·February·18,·2025\xd |
109 | ····························•·TheoutETreeFileparameter·is·the·output·file·for·the·ETree·object.·If·outETreeFileis\xd | 109 | ····························•·TheoutETreeFileparameter·is·the·output·file·for·the·ETree·object.·If·outETreeFileis\xd |
110 | ·······························nonethentheETreeobjectisnotwrittentoafile.·Otherwise,theETree·writeToFile()\xd | 110 | ·······························nonethentheETreeobjectisnotwrittentoafile.·Otherwise,theETree·writeToFile()\xd |
111 | ·······························method·is·called·to·write·the·object·to·a·formatted·file·(if·outETreeFile·is·of·the·form\xd | 111 | ·······························method·is·called·to·write·the·object·to·a·formatted·file·(if·outETreeFile·is·of·the·form\xd |
112 | ·······························*.etreef),·or·a·binary·file·(if·outETreeFile·is·of·the·form·*.etreeb).\xd | 112 | ·······························*.etreef),·or·a·binary·file·(if·outETreeFile·is·of·the·form·*.etreeb).\xd |
113 | ····························•·The·outIVfile·parameter·is·the·output·file·for·the·vertex-to-front·map·IV·object.\xd | 113 | ····························•·The·outIVfile·parameter·is·the·output·file·for·the·vertex-to-front·map·IV·object.\xd |
114 | ·······························If·outIVfile·is·none·then·the·IV·object·is·not·written·to·a·file.······················Otherwise,·the\xd | 114 | ·······························If·outIVfile·is·none·then·the·IV·object·is·not·written·to·a·file.······················Otherwise,·the\xd |
115 | ·······························IV·writeToFile()methodis·called·to·write·the·object·to·a·formatted·file·(if·outIVfile\xd | 115 | ·······························IV·writeToFile()methodis·called·to·write·the·object·to·a·formatted·file·(if·outIVfile\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·Tree.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·Tree.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2229, 20 lines modified | Offset 2229, 21 lines modified | ||
2229 | end·readonly·def | 2229 | end·readonly·def |
2230 | /Encoding·256·array | 2230 | /Encoding·256·array |
2231 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2231 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2232 | dup·44·/comma·put | 2232 | dup·44·/comma·put |
2233 | dup·48·/zero·put | 2233 | dup·48·/zero·put |
2234 | dup·49·/one·put | 2234 | dup·49·/one·put |
2235 | dup·50·/two·put | 2235 | dup·50·/two·put |
2236 | dup·52·/four·put | ||
2237 | dup·5 | 2236 | dup·53·/five·put |
2237 | dup·56·/eight·put | ||
2238 | dup·58·/colon·put | 2238 | dup·58·/colon·put |
2239 | dup·7 | 2239 | dup·70·/F·put |
2240 | dup·97·/a·put | 2240 | dup·97·/a·put |
2241 | dup·98·/b·put | ||
2241 | dup·1 | 2242 | dup·101·/e·put |
2242 | dup·114·/r·put | 2243 | dup·114·/r·put |
2243 | dup·117·/u·put | 2244 | dup·117·/u·put |
2244 | dup·121·/y·put | 2245 | dup·121·/y·put |
2245 | readonly·def | 2246 | readonly·def |
2246 | currentdict·end | 2247 | currentdict·end |
2247 | currentfile·eexec | 2248 | currentfile·eexec |
2248 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2249 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2426, 89 lines modified | Offset 2427, 93 lines modified | ||
2426 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2427 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2427 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2428 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2428 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2429 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2429 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2430 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2430 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2431 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2431 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2432 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2432 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2433 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2433 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2434 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2434 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2435 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2436 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2437 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2438 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2439 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2440 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2441 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2442 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2443 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2444 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2445 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2446 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2447 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2448 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2449 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2450 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2451 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2452 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2453 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2454 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2455 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2456 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2457 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2458 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2459 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2460 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2461 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2462 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2463 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2464 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2465 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2466 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2467 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2468 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2469 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2470 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2471 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2472 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2473 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2474 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2475 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2476 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2477 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2478 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2479 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2480 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2481 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2482 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2483 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2484 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2485 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2486 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2487 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2488 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2489 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2490 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2491 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2492 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2493 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2494 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2495 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2496 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2497 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2498 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2499 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2500 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2501 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2502 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2503 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2504 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2505 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2506 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2507 | 2435 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2436 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2437 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2438 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2439 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2440 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2441 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 20664/32554 bytes (63.48%) of diff not shown. |
Offset 20, 15 lines modified | Offset 20, 15 lines modified | ||
20 | ··············•·int·*sib·:·pointer·to·sibling·vector,·size·n,·entries·in·the·range·[-1,n-1]\xd | 20 | ··············•·int·*sib·:·pointer·to·sibling·vector,·size·n,·entries·in·the·range·[-1,n-1]\xd |
21 | ···········The·user·should·rarely·if·ever·change·these·five·fields.·In·particular,·throughout·the·code·we\xd | 21 | ···········The·user·should·rarely·if·ever·change·these·five·fields.·In·particular,·throughout·the·code·we\xd |
22 | ···········assume·that·the·Tree·object·was·correctly·initialized·using·one·of·the·three·initializer·methods.\xd | 22 | ···········assume·that·the·Tree·object·was·correctly·initialized·using·one·of·the·three·initializer·methods.\xd |
23 | ···········Inside·almost·every·method·we·check·to·ensure·n·>·0.·If·n·>·0·then·we·assume·that·the·structure\xd | 23 | ···········Inside·almost·every·method·we·check·to·ensure·n·>·0.·If·n·>·0·then·we·assume·that·the·structure\xd |
24 | ···········was·intialized·correctly·and·that·the·par,·fch·and·sib·fields·point·to·storage·that·was·allocated·by\xd | 24 | ···········was·intialized·correctly·and·that·the·par,·fch·and·sib·fields·point·to·storage·that·was·allocated·by\xd |
25 | ···········the·initializer·method.\xd | 25 | ···········the·initializer·method.\xd |
26 | ·············································1\xd | 26 | ·············································1\xd |
27 | ··············2····························Tree·:·DRAFT· | 27 | ··············2····························Tree·:·DRAFT·February·18,·2025\xd |
28 | ··············1.2···Prototypes·and·descriptions·of·Tree·methods\xd | 28 | ··············1.2···Prototypes·and·descriptions·of·Tree·methods\xd |
29 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·Tree\xd | 29 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·Tree\xd |
30 | ··············object.\xd | 30 | ··············object.\xd |
31 | ··············1.2.1··Basic·methods\xd | 31 | ··············1.2.1··Basic·methods\xd |
32 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd | 32 | ··············As·usual,·there·are·four·basic·methods·to·support·object·creation,·setting·default·fields,·clearing\xd |
33 | ··············any·allocated·data,·and·free’ing·the·object.\xd | 33 | ··············any·allocated·data,·and·free’ing·the·object.\xd |
34 | ················1.·Tree·*·Tree_new·(·void·)·;\xd | 34 | ················1.·Tree·*·Tree_new·(·void·)·;\xd |
Offset 52, 15 lines modified | Offset 52, 15 lines modified | ||
52 | ··················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 52 | ··················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
53 | ················2.·int·Tree_root·(·Tree·*tree·)·;\xd | 53 | ················2.·int·Tree_root·(·Tree·*tree·)·;\xd |
54 | ··················This·method·returns·the·root·of·the·tree.\xd | 54 | ··················This·method·returns·the·root·of·the·tree.\xd |
55 | ··················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 55 | ··················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
56 | ················3.·int·*·Tree_par·(·Tree·*tree·)·;\xd | 56 | ················3.·int·*·Tree_par·(·Tree·*tree·)·;\xd |
57 | ··················This·method·returns·a·pointer·to·the·parent·vector.\xd | 57 | ··················This·method·returns·a·pointer·to·the·parent·vector.\xd |
58 | ··················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 58 | ··················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
59 | ······································Tree·:·DRAFT·· | 59 | ······································Tree·:·DRAFT··February·18,·2025···················3\xd |
60 | ··············4.·int·*·Tree_fch·(·Tree·*tree·)·;\xd | 60 | ··············4.·int·*·Tree_fch·(·Tree·*tree·)·;\xd |
61 | ·················This·method·returns·a·pointer·to·the·first·child·vector.\xd | 61 | ·················This·method·returns·a·pointer·to·the·first·child·vector.\xd |
62 | ·················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 62 | ·················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
63 | ··············5.·int·*·Tree_sib·(·Tree·*tree·)·;\xd | 63 | ··············5.·int·*·Tree_sib·(·Tree·*tree·)·;\xd |
64 | ·················This·method·returns·a·pointer·to·the·sibling·vector.\xd | 64 | ·················This·method·returns·a·pointer·to·the·sibling·vector.\xd |
65 | ·················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 65 | ·················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
66 | ············1.2.3··Initializer·methods\xd | 66 | ············1.2.3··Initializer·methods\xd |
Offset 88, 15 lines modified | Offset 88, 15 lines modified | ||
88 | ·················The·subtree·object·is·initialized·from·the·tree·object,·the·nodes·that·are·included·are·those\xd | 88 | ·················The·subtree·object·is·initialized·from·the·tree·object,·the·nodes·that·are·included·are·those\xd |
89 | ·················found·in·nodeidsIV.·A·parent-child·link·in·the·subtree·means·that·the·two·nodes·have·a\xd | 89 | ·················found·in·nodeidsIV.·A·parent-child·link·in·the·subtree·means·that·the·two·nodes·have·a\xd |
90 | ·················parent-child·link·in·the·tree.\xd | 90 | ·················parent-child·link·in·the·tree.\xd |
91 | ·················Return·codes:\xd | 91 | ·················Return·codes:\xd |
92 | ································1··normal·return······-3··tree·is·NULL\xd | 92 | ································1··normal·return······-3··tree·is·NULL\xd |
93 | ································-1·subtree·is·NULL····-4··nodeidsIV·is·invalid\xd | 93 | ································-1·subtree·is·NULL····-4··nodeidsIV·is·invalid\xd |
94 | ································-2·nodeidsIV·is·NULL\xd | 94 | ································-2·nodeidsIV·is·NULL\xd |
95 | ··············4····························Tree·:·DRAFT· | 95 | ··············4····························Tree·:·DRAFT·February·18,·2025\xd |
96 | ················5.·void·Tree_setFchSibRoot·(·Tree·*tree·)·;\xd | 96 | ················5.·void·Tree_setFchSibRoot·(·Tree·*tree·)·;\xd |
97 | ··················Theroot·and·the·entries·in·the·fch[]·and·sib[]·vectors·are·set·using·the·entries·in·the·par[]\xd | 97 | ··················Theroot·and·the·entries·in·the·fch[]·and·sib[]·vectors·are·set·using·the·entries·in·the·par[]\xd |
98 | ··················vector.\xd | 98 | ··················vector.\xd |
99 | ··················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 99 | ··················Error·checking:·If·tree·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
100 | ················6.·void·Tree_setRoot·(·Tree·*tree·)·;\xd | 100 | ················6.·void·Tree_setRoot·(·Tree·*tree·)·;\xd |
101 | ··················The·vertices·that·are·roots·in·the·tree·are·linked·by·their·sib[]·field·and·the·root·of·the·tree\xd | 101 | ··················The·vertices·that·are·roots·in·the·tree·are·linked·by·their·sib[]·field·and·the·root·of·the·tree\xd |
102 | ··················is·set·to·the·head·of·the·list.\xd | 102 | ··················is·set·to·the·head·of·the·list.\xd |
Offset 122, 15 lines modified | Offset 122, 15 lines modified | ||
122 | ··················This·method·returns·the·first·node·in·a·pre-order·traversal.\xd | 122 | ··················This·method·returns·the·first·node·in·a·pre-order·traversal.\xd |
123 | ··················Error·checking:·If·tree·is·NULL,·or·if·tree->n·<·1,·an·error·message·is·printed·and·the\xd | 123 | ··················Error·checking:·If·tree·is·NULL,·or·if·tree->n·<·1,·an·error·message·is·printed·and·the\xd |
124 | ··················program·exits.\xd | 124 | ··················program·exits.\xd |
125 | ················5.·int·Tree_preOTnext·(·Tree·*tree,·int·v·)·;\xd | 125 | ················5.·int·Tree_preOTnext·(·Tree·*tree,·int·v·)·;\xd |
126 | ··················This·method·returns·the·node·that·follows·v·in·a·pre-order·traversal.\xd | 126 | ··················This·method·returns·the·node·that·follows·v·in·a·pre-order·traversal.\xd |
127 | ··················Error·checking:·If·tree·is·NULL,·or·if·tree->n·<·1,·or·v·is·not·in·[0,tree->n-1],·an·error\xd | 127 | ··················Error·checking:·If·tree·is·NULL,·or·if·tree->n·<·1,·or·v·is·not·in·[0,tree->n-1],·an·error\xd |
128 | ··················message·is·printed·and·the·program·exits.\xd | 128 | ··················message·is·printed·and·the·program·exits.\xd |
129 | ······································Tree·:·DRAFT·· | 129 | ······································Tree·:·DRAFT··February·18,·2025···················5\xd |
130 | ··············6.·int·Tree_nleaves·(·Tree·*tree·)·;\xd | 130 | ··············6.·int·Tree_nleaves·(·Tree·*tree·)·;\xd |
131 | ·················This·method·returns·the·number·of·leaves·of·the·tree.\xd | 131 | ·················This·method·returns·the·number·of·leaves·of·the·tree.\xd |
132 | ·················Error·checking:·If·tree·is·NULL,·or·if·tree->n·<·1,·an·error·message·is·printed·and·the\xd | 132 | ·················Error·checking:·If·tree·is·NULL,·or·if·tree->n·<·1,·an·error·message·is·printed·and·the\xd |
133 | ·················program·exits.\xd | 133 | ·················program·exits.\xd |
134 | ··············7.·int·Tree_nroots·(·Tree·*tree·)·;\xd | 134 | ··············7.·int·Tree_nroots·(·Tree·*tree·)·;\xd |
135 | ·················This·method·returns·the·number·of·roots·of·the·tree·(really·a·forest).\xd | 135 | ·················This·method·returns·the·number·of·roots·of·the·tree·(really·a·forest).\xd |
136 | ·················Error·checking:·If·tree·is·NULL,·or·if·tree->n·<·1,·an·error·message·is·printed·and·the\xd | 136 | ·················Error·checking:·If·tree·is·NULL,·or·if·tree->n·<·1,·an·error·message·is·printed·and·the\xd |
Offset 155, 15 lines modified | Offset 155, 15 lines modified | ||
155 | ··············12.·IV·*·Tree_maximizeGainIV·(·Tree·*tree,·IV·*gainIV,·int·*ptotalgain,\xd | 155 | ··············12.·IV·*·Tree_maximizeGainIV·(·Tree·*tree,·IV·*gainIV,·int·*ptotalgain,\xd |
156 | ··········································int·msglvl,·FILE·*msgFile·)·;\xd | 156 | ··········································int·msglvl,·FILE·*msgFile·)·;\xd |
157 | ·················Given·a·gain·value·assigned·to·each·node,·find·a·set·of·nodes,·no·two·in·a·child-ancestor\xd | 157 | ·················Given·a·gain·value·assigned·to·each·node,·find·a·set·of·nodes,·no·two·in·a·child-ancestor\xd |
158 | ·················relationship,·that·maximizes·the·total·gain.·This·problem·arises·in·finding·the·optimal·do-\xd | 158 | ·················relationship,·that·maximizes·the·total·gain.·This·problem·arises·in·finding·the·optimal·do-\xd |
159 | ·················main/Schur·complement·partition·for·a·semi-implicit·factorization.\xd | 159 | ·················main/Schur·complement·partition·for·a·semi-implicit·factorization.\xd |
160 | ·················Error·checking:·If·tree,·gainIV·or·ptotalgain·is·NULL,·an·error·message·is·printed·and·the\xd | 160 | ·················Error·checking:·If·tree,·gainIV·or·ptotalgain·is·NULL,·an·error·message·is·printed·and·the\xd |
161 | ·················program·exits.\xd | 161 | ·················program·exits.\xd |
162 | ··············6····························Tree·:·DRAFT· | 162 | ··············6····························Tree·:·DRAFT·February·18,·2025\xd |
163 | ··············1.2.5··Metrics·methods\xd | 163 | ··············1.2.5··Metrics·methods\xd |
164 | ··············Manyoperations·need·to·know·some·metric·defined·on·the·nodes·in·a·tree.·Here·are·three·examples:\xd | 164 | ··············Manyoperations·need·to·know·some·metric·defined·on·the·nodes·in·a·tree.·Here·are·three·examples:\xd |
165 | ··············the·height·of·a·node·(the·minimum·distance·from·a·descendant·leaf),·the·depth·of·a·node·(the\xd | 165 | ··············the·height·of·a·node·(the·minimum·distance·from·a·descendant·leaf),·the·depth·of·a·node·(the\xd |
166 | ··············distance·from·its·root·ancestor),·or·the·weight·associated·with·a·subtree·rooted·at·a·node.·Of\xd | 166 | ··············distance·from·its·root·ancestor),·or·the·weight·associated·with·a·subtree·rooted·at·a·node.·Of\xd |
167 | ··············course,·a·weight·could·be·associated·with·each·node,·so·the·height·or·depth·becomes·the·weight·of\xd | 167 | ··············course,·a·weight·could·be·associated·with·each·node,·so·the·height·or·depth·becomes·the·weight·of\xd |
168 | ··············the·nodes·on·the·path.\xd | 168 | ··············the·nodes·on·the·path.\xd |
169 | ·················Metrics·can·be·int·or·double.·Because·of·the·limitations·of·C,·we·need·two·separate·methods\xd | 169 | ·················Metrics·can·be·int·or·double.·Because·of·the·limitations·of·C,·we·need·two·separate·methods\xd |
Offset 191, 15 lines modified | Offset 191, 15 lines modified | ||
191 | ··················These·methods·create·and·return·IV·or·DV·objects·that·contain·height·metrics·using·as·input\xd | 191 | ··················These·methods·create·and·return·IV·or·DV·objects·that·contain·height·metrics·using·as·input\xd |
192 | ··················an·IV·or·DV·object·that·contains·the·metric·for·each·of·the·nodes.·If·hmetric[]·is·the·vector\xd | 192 | ··················an·IV·or·DV·object·that·contains·the·metric·for·each·of·the·nodes.·If·hmetric[]·is·the·vector\xd |
193 | ··················in·the·returned·IV·or·DV·object,·then\xd | 193 | ··················in·the·returned·IV·or·DV·object,·then\xd |
194 | ··················hmetric[v]·=·vmetric[v]·if·fch[v]·==·-1\xd | 194 | ··················hmetric[v]·=·vmetric[v]·if·fch[v]·==·-1\xd |
195 | ······························=·vmetric[v]·+·max_{par[u]·=·v}·hmetric[par[v]]\xd | 195 | ······························=·vmetric[v]·+·max_{par[u]·=·v}·hmetric[par[v]]\xd |
196 | ··················Error·checking:·If·tree·or·vmetric{I,D}V·is·NULL,·an·error·message·is·printed·and·the\xd | 196 | ··················Error·checking:·If·tree·or·vmetric{I,D}V·is·NULL,·an·error·message·is·printed·and·the\xd |
197 | ··················program·exits.\xd | 197 | ··················program·exits.\xd |
198 | ················································· | 198 | ·················································Tree·:·DRAFT·······February·18,·2025······························7\xd |
199 | ················1.2.6····Compression·methods\xd | 199 | ················1.2.6····Compression·methods\xd |
200 | ················Frequently·a·tree·will·need·to·be·compressed·in·some·manner.·Elimination·trees·usually·have·long\xd | 200 | ················Frequently·a·tree·will·need·to·be·compressed·in·some·manner.·Elimination·trees·usually·have·long\xd |
201 | ················chains·of·nodes·at·the·higher·levels,·where·each·chain·of·nodes·corresponds·to·a·supernode.·Liu’s\xd | 201 | ················chains·of·nodes·at·the·higher·levels,·where·each·chain·of·nodes·corresponds·to·a·supernode.·Liu’s\xd |
202 | ················generalized·row·envelope·methods·partition·the·vertices·by·longest·chains·[?].·In·both·cases,·we·can\xd | 202 | ················generalized·row·envelope·methods·partition·the·vertices·by·longest·chains·[?].·In·both·cases,·we·can\xd |
203 | ················construct·a·map·from·each·node·to·a·set·of·nodes·to·define·a·smaller,·more·compact·tree.·Given\xd | 203 | ················construct·a·map·from·each·node·to·a·set·of·nodes·to·define·a·smaller,·more·compact·tree.·Given\xd |
204 | ················such·a·map,·we·construct·the·smaller·tree.\xd | 204 | ················such·a·map,·we·construct·the·smaller·tree.\xd |
205 | ····················Afundamental·chain·is·a·set·of·nodes·v·,...,v·····such·that·(1)·v·is·a·leaf·or·has·two·or·more\xd | 205 | ····················Afundamental·chain·is·a·set·of·nodes·v·,...,v·····such·that·(1)·v·is·a·leaf·or·has·two·or·more\xd |
Offset 232, 15 lines modified | Offset 232, 15 lines modified | ||
232 | ······················Error·checking:·If·tree·or·map·is·NULL,·or·if·n·<·1,·an·error·message·is·printed·and·the\xd | 232 | ······················Error·checking:·If·tree·or·map·is·NULL,·or·if·n·<·1,·an·error·message·is·printed·and·the\xd |
233 | ······················program·exits.\xd | 233 | ······················program·exits.\xd |
234 | ···················2.·void·Tree_leftJustifyI·(·Tree·*tree,·IV·*metricIV·)·;\xd | 234 | ···················2.·void·Tree_leftJustifyI·(·Tree·*tree,·IV·*metricIV·)·;\xd |
235 | ······················void·Tree_leftJustifyD·(·Tree·*tree,·DV·*metricIV·)·;\xd | 235 | ······················void·Tree_leftJustifyD·(·Tree·*tree,·DV·*metricIV·)·;\xd |
236 | ······················This·method·justifies·the·tree,·reordering·the·children·of·each·node·as·necessary.·If·u·and·v\xd | 236 | ······················This·method·justifies·the·tree,·reordering·the·children·of·each·node·as·necessary.·If·u·and·v\xd |
237 | ······················are·siblings,·and·u·comes·before·v·in·a·post-order·traversal,·then·the·weight·of·the·subtree\xd | 237 | ······················are·siblings,·and·u·comes·before·v·in·a·post-order·traversal,·then·the·weight·of·the·subtree\xd |
238 | ······················rooted·at·u·is·as·large·or·larger·than·the·weight·of·the·subtree·rooted·at·v.\xd | 238 | ······················rooted·at·u·is·as·large·or·larger·than·the·weight·of·the·subtree·rooted·at·v.\xd |
239 | ··············8····························Tree·:·DRAFT· | 239 | ··············8····························Tree·:·DRAFT·February·18,·2025\xd |
240 | ··················Error·checking:·If·tree·or·metricIV·is·NULL,·or·if·n·<·1,·or·if·n·is·not·the·size·of·metricIV,\xd | 240 | ··················Error·checking:·If·tree·or·metricIV·is·NULL,·or·if·n·<·1,·or·if·n·is·not·the·size·of·metricIV,\xd |
241 | ··················an·error·message·is·printed·and·the·program·exits.\xd | 241 | ··················an·error·message·is·printed·and·the·program·exits.\xd |
242 | ··············1.2.8··Permutation·methods\xd | 242 | ··············1.2.8··Permutation·methods\xd |
243 | ··············Often·we·need·to·extract·a·permutation·from·a·tree,·e.g.,·a·post-order·traversal·of·an·elimination\xd | 243 | ··············Often·we·need·to·extract·a·permutation·from·a·tree,·e.g.,·a·post-order·traversal·of·an·elimination\xd |
244 | ··············tree·gives·an·ordering·for·a·sparse·matrix.·On·other·occasions,·we·need·to·permute·a·tree,·i.e.\xd | 244 | ··············tree·gives·an·ordering·for·a·sparse·matrix.·On·other·occasions,·we·need·to·permute·a·tree,·i.e.\xd |
245 | ··············re-label·the·nodes.\xd | 245 | ··············re-label·the·nodes.\xd |
246 | ················1.·void·Tree_fillNewToOldPerm·(·Tree·*tree,·int·newToOld[]·)·;\xd | 246 | ················1.·void·Tree_fillNewToOldPerm·(·Tree·*tree,·int·newToOld[]·)·;\xd |
Offset 269, 15 lines modified | Offset 269, 15 lines modified | ||
269 | ··················Return·codes:\xd | 269 | ··················Return·codes:\xd |
270 | ···································1··normal·return··········-3··coordflag·is·invalid\xd | 270 | ···································1··normal·return··········-3··coordflag·is·invalid\xd |
271 | ··································-1··tree·is·NULL···········-3··xDV·is·NULL\xd | 271 | ··································-1··tree·is·NULL···········-3··xDV·is·NULL\xd |
272 | ··································-2··heightflag·is·invalid··-4··yDV·is·NULL\xd | 272 | ··································-2··heightflag·is·invalid··-4··yDV·is·NULL\xd |
273 | ················2.·int·Tree_drawToEPS·(·Tree·*tree,·FILE·*filename,·DV·*xDV,·DV·*yDV,\xd | 273 | ················2.·int·Tree_drawToEPS·(·Tree·*tree,·FILE·*filename,·DV·*xDV,·DV·*yDV,\xd |
274 | ········································double·rscale,·DV·*radiusDV,·int·labelflag,\xd | 274 | ········································double·rscale,·DV·*radiusDV,·int·labelflag,\xd |
275 | ········································double·fontscale,·IV·*labelsIV,·double·bbox[],\xd | 275 | ········································double·fontscale,·IV·*labelsIV,·double·bbox[],\xd |
276 | ······································Tree·:·DRAFT·· | 276 | ······································Tree·:·DRAFT··February·18,·2025···················9\xd |
277 | ····································double·frame[],·double·bounds[]·)·;\xd | 277 | ····································double·frame[],·double·bounds[]·)·;\xd |
278 | ·················This·method·draws·a·tree.·The·coordinates·of·the·nodes·are·found·in·the·xDV·and·yDV·vectors.\xd | 278 | ·················This·method·draws·a·tree.·The·coordinates·of·the·nodes·are·found·in·the·xDV·and·yDV·vectors.\xd |
279 | ·················The·nodes·will·have·circles·of·constant·radius·(if·radiusDV·is·NULL)·or·each·circle·can·have·a\xd | 279 | ·················The·nodes·will·have·circles·of·constant·radius·(if·radiusDV·is·NULL)·or·each·circle·can·have·a\xd |
280 | ·················different·radius·found·in·radiusDV·when·radiusDV·is·not·NULL.·The·value·rscale·is·used·to\xd | 280 | ·················different·radius·found·in·radiusDV·when·radiusDV·is·not·NULL.·The·value·rscale·is·used·to\xd |
281 | ·················scale·all·the·radii.·(If·radiusDV·is·NULL,·then·all·radii·are·equal·to·one·point·—·there·are·72\xd | 281 | ·················scale·all·the·radii.·(If·radiusDV·is·NULL,·then·all·radii·are·equal·to·one·point·—·there·are·72\xd |
282 | ·················points·to·the·inch.)\xd | 282 | ·················points·to·the·inch.)\xd |
283 | ·················If·labelflag·=·1,·the·nodes·will·have·a·numeric·label.·If·labelsIV·is·NULL,·then·the·label\xd | 283 | ·················If·labelflag·=·1,·the·nodes·will·have·a·numeric·label.·If·labelsIV·is·NULL,·then·the·label\xd |
Max diff block lines reached; 4972/15731 bytes (31.61%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·Utilities.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·Utilities.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 3359, 20 lines modified | Offset 3359, 21 lines modified | ||
3359 | end·readonly·def | 3359 | end·readonly·def |
3360 | /Encoding·256·array | 3360 | /Encoding·256·array |
3361 | 0·1·255·{1·index·exch·/.notdef·put}·for | 3361 | 0·1·255·{1·index·exch·/.notdef·put}·for |
3362 | dup·44·/comma·put | 3362 | dup·44·/comma·put |
3363 | dup·48·/zero·put | 3363 | dup·48·/zero·put |
3364 | dup·49·/one·put | 3364 | dup·49·/one·put |
3365 | dup·50·/two·put | 3365 | dup·50·/two·put |
3366 | dup·52·/four·put | ||
3367 | dup·5 | 3366 | dup·53·/five·put |
3367 | dup·56·/eight·put | ||
3368 | dup·58·/colon·put | 3368 | dup·58·/colon·put |
3369 | dup·7 | 3369 | dup·70·/F·put |
3370 | dup·97·/a·put | 3370 | dup·97·/a·put |
3371 | dup·98·/b·put | ||
3371 | dup·1 | 3372 | dup·101·/e·put |
3372 | dup·114·/r·put | 3373 | dup·114·/r·put |
3373 | dup·117·/u·put | 3374 | dup·117·/u·put |
3374 | dup·121·/y·put | 3375 | dup·121·/y·put |
3375 | readonly·def | 3376 | readonly·def |
3376 | currentdict·end | 3377 | currentdict·end |
3377 | currentfile·eexec | 3378 | currentfile·eexec |
3378 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 3379 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 3556, 89 lines modified | Offset 3557, 93 lines modified | ||
3556 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 3557 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
3557 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 3558 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
3558 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 3559 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
3559 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 3560 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
3560 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 3561 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
3561 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 3562 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
3562 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 3563 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
3563 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 3564 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
3564 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
3565 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
3566 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
3567 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
3568 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
3569 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
3570 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
3571 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
3572 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
3573 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
3574 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
3575 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
3576 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
3577 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
3578 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
3579 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
3580 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
3581 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
3582 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
3583 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
3584 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
3585 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
3586 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
3587 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
3588 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
3589 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
3590 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
3591 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
3592 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
3593 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
3594 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
3595 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
3596 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
3597 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
3598 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
3599 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
3600 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
3601 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
3602 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
3603 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
3604 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
3605 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
3606 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
3607 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
3608 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
3609 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
3610 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
3611 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
3612 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
3613 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
3614 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
3615 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
3616 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
3617 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
3618 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
3619 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
3620 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
3621 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
3622 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
3623 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
3624 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
3625 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
3626 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
3627 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
3628 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
3629 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
3630 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
3631 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
3632 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
3633 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
3634 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
3635 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
3636 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
3637 | 3565 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
3566 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
3567 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
3568 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
3569 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
3570 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
3571 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 62306/74201 bytes (83.97%) of diff not shown. |
Offset 22, 15 lines modified | Offset 22, 15 lines modified | ||
22 | ·····················struct·_I2OP·{\xd | 22 | ·····················struct·_I2OP·{\xd |
23 | ·······················int···value0·;\xd | 23 | ·······················int···value0·;\xd |
24 | ·······················int···value1·;\xd | 24 | ·······················int···value1·;\xd |
25 | ·······················void··*value2·;\xd | 25 | ·······················void··*value2·;\xd |
26 | ·······················I2OP··*next··;\xd | 26 | ·······················I2OP··*next··;\xd |
27 | ·····················}·;\xd | 27 | ·····················}·;\xd |
28 | ·············································1\xd | 28 | ·············································1\xd |
29 | ··············2························· | 29 | ··············2·························Utilities·:·DRAFT·February·18,·2025\xd |
30 | ··············1.2···Prototypes·and·descriptions·of·Utilities·methods\xd | 30 | ··············1.2···Prototypes·and·descriptions·of·Utilities·methods\xd |
31 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd | 31 | ··············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the\xd |
32 | ··············Utilities·directory.\xd | 32 | ··············Utilities·directory.\xd |
33 | ··············1.2.1··CV·:·char·vector·methods\xd | 33 | ··············1.2.1··CV·:·char·vector·methods\xd |
34 | ················1.·char·*·CVinit·(·int·n,·char·c·)·;\xd | 34 | ················1.·char·*·CVinit·(·int·n,·char·c·)·;\xd |
35 | ···················This·is·the·allocator·and·initializer·method·for·char·vectors.·Storage·for·an·array·with·size\xd | 35 | ···················This·is·the·allocator·and·initializer·method·for·char·vectors.·Storage·for·an·array·with·size\xd |
36 | ···················n·is·found·and·each·entry·is·filled·with·character·c.·A·pointer·to·the·array·is·returned.\xd | 36 | ···················n·is·found·and·each·entry·is·filled·with·character·c.·A·pointer·to·the·array·is·returned.\xd |
Offset 54, 15 lines modified | Offset 54, 15 lines modified | ||
54 | ················8.·int·CVfscanf·(·FILE·*fp,·int·n,·char·y[]·)·;\xd | 54 | ················8.·int·CVfscanf·(·FILE·*fp,·int·n,·char·y[]·)·;\xd |
55 | ···················This·method·scans·in·characters·from·file·fp·and·places·them·in·the·array·y[].·It·tries·to\xd | 55 | ···················This·method·scans·in·characters·from·file·fp·and·places·them·in·the·array·y[].·It·tries·to\xd |
56 | ···················read·in·n·characters,·and·returns·the·number·that·were·actually·read.\xd | 56 | ···················read·in·n·characters,·and·returns·the·number·that·were·actually·read.\xd |
57 | ··············1.2.2··DV·:·double·vector·methods\xd | 57 | ··············1.2.2··DV·:·double·vector·methods\xd |
58 | ················1.·double·*·DVinit·(·int·n,·double·val·)·;\xd | 58 | ················1.·double·*·DVinit·(·int·n,·double·val·)·;\xd |
59 | ···················This·is·the·allocator·and·initializer·method·for·double·vectors.·Storage·for·an·array·with·size\xd | 59 | ···················This·is·the·allocator·and·initializer·method·for·double·vectors.·Storage·for·an·array·with·size\xd |
60 | ···················n·is·found·and·each·entry·is·filled·with·val.·A·pointer·to·the·array·is·returned.\xd | 60 | ···················n·is·found·and·each·entry·is·filled·with·val.·A·pointer·to·the·array·is·returned.\xd |
61 | ····································Utilities·:·DRAFT·· | 61 | ····································Utilities·:·DRAFT··February·18,·2025·················3\xd |
62 | ···············2.·double·*·DVinit2·(·int·n·)·;\xd | 62 | ···············2.·double·*·DVinit2·(·int·n·)·;\xd |
63 | ·················This·is·an·allocator·method·for·double·vectors.·Storage·for·an·array·with·size·n·is·found.·A\xd | 63 | ·················This·is·an·allocator·method·for·double·vectors.·Storage·for·an·array·with·size·n·is·found.·A\xd |
64 | ·················pointer·to·the·array·is·returned.·Note,·on·return,·there·will·likely·be·garbage·in·the·array.\xd | 64 | ·················pointer·to·the·array·is·returned.·Note,·on·return,·there·will·likely·be·garbage·in·the·array.\xd |
65 | ···············3.·void·DVfree·(·int·vec[]·)·;\xd | 65 | ···············3.·void·DVfree·(·int·vec[]·)·;\xd |
66 | ·················This·method·releases·the·storage·taken·by·vec[].\xd | 66 | ·················This·method·releases·the·storage·taken·by·vec[].\xd |
67 | ···············4.·void·DVfprintf·(·FILE·*fp,·int·n,·double·y[]·)·;\xd | 67 | ···············4.·void·DVfprintf·(·FILE·*fp,·int·n,·double·y[]·)·;\xd |
68 | ·················This·method·prints·n·entries·in·y[]·to·file·fp.·The·format·is·new·line·followed·by·lines·of·six\xd | 68 | ·················This·method·prints·n·entries·in·y[]·to·file·fp.·The·format·is·new·line·followed·by·lines·of·six\xd |
Offset 90, 15 lines modified | Offset 90, 15 lines modified | ||
90 | ·················This·method·computes·this·computation.\xd | 90 | ·················This·method·computes·this·computation.\xd |
91 | ·················y0[]·=·y0[]·+·alpha[0]·*·x0[]·+·alpha[1]·*·x1[]\xd | 91 | ·················y0[]·=·y0[]·+·alpha[0]·*·x0[]·+·alpha[1]·*·x1[]\xd |
92 | ·················y1[]·=·y1[]·+·alpha[2]·*·x0[]·+·alpha[3]·*·x1[]\xd | 92 | ·················y1[]·=·y1[]·+·alpha[2]·*·x0[]·+·alpha[3]·*·x1[]\xd |
93 | ·················y2[]·=·y2[]·+·alpha[4]·*·x0[]·+·alpha[5]·*·x1[]\xd | 93 | ·················y2[]·=·y2[]·+·alpha[4]·*·x0[]·+·alpha[5]·*·x1[]\xd |
94 | ··············11.·void·DVaxpy31·(·int·n,·double·y0[],·double·y1[],·double·y2[],\xd | 94 | ··············11.·void·DVaxpy31·(·int·n,·double·y0[],·double·y1[],·double·y2[],\xd |
95 | ································double·alpha,·double·x0[],·double·x1[]·)·;\xd | 95 | ································double·alpha,·double·x0[],·double·x1[]·)·;\xd |
96 | ·················This·method·computes·this·computation.\xd | 96 | ·················This·method·computes·this·computation.\xd |
97 | ·······4·············Utilities·:·DRAFT· | 97 | ·······4·············Utilities·:·DRAFT·February·18,·2025\xd |
98 | ··········y0[]·=·y0[]·+·alpha[0]·*·x0[]\xd | 98 | ··········y0[]·=·y0[]·+·alpha[0]·*·x0[]\xd |
99 | ··········y1[]·=·y1[]·+·alpha[1]·*·x0[]\xd | 99 | ··········y1[]·=·y1[]·+·alpha[1]·*·x0[]\xd |
100 | ··········y2[]·=·y2[]·+·alpha[2]·*·x0[]\xd | 100 | ··········y2[]·=·y2[]·+·alpha[2]·*·x0[]\xd |
101 | ········12.·void·DVaxpy23·(·int·n,·double·y0[],·double·y1[],\xd | 101 | ········12.·void·DVaxpy23·(·int·n,·double·y0[],·double·y1[],\xd |
102 | ··················double·alpha,·double·x0[],·double·x1[],·double·x2[]·)·;\xd | 102 | ··················double·alpha,·double·x0[],·double·x1[],·double·x2[]·)·;\xd |
103 | ··········This·method·computes·this·computation.\xd | 103 | ··········This·method·computes·this·computation.\xd |
104 | ··········y0[]·=·y0[]·+·alpha[0]·*·x0[]·+·alpha[1]·*·x1[]·+·alpha[2]·*·x2[]\xd | 104 | ··········y0[]·=·y0[]·+·alpha[0]·*·x0[]·+·alpha[1]·*·x1[]·+·alpha[2]·*·x2[]\xd |
Offset 121, 15 lines modified | Offset 121, 15 lines modified | ||
121 | ··········y0[]·=·y0[]·+·alpha[0]·*·x0[]·+·alpha[1]·*·x1[]\xd | 121 | ··········y0[]·=·y0[]·+·alpha[0]·*·x0[]·+·alpha[1]·*·x1[]\xd |
122 | ········17.·void·DVaxpy11·(·int·n,·double·y0[],·double·alpha,·double·x0[]·)·;\xd | 122 | ········17.·void·DVaxpy11·(·int·n,·double·y0[],·double·alpha,·double·x0[]·)·;\xd |
123 | ··········This·method·computes·this·computation.\xd | 123 | ··········This·method·computes·this·computation.\xd |
124 | ··········y0[]·=·y0[]·+·alpha[0]·*·x0[]\xd | 124 | ··········y0[]·=·y0[]·+·alpha[0]·*·x0[]\xd |
125 | ········18.·void·DVaxpyi·(·int·n,·double·y[],·int·index[],·double·alpha,·double·x[]·)·;\xd | 125 | ········18.·void·DVaxpyi·(·int·n,·double·y[],·int·index[],·double·alpha,·double·x[]·)·;\xd |
126 | ··········This·method·scatteradds·a·scaled·multiple·of·n·entries·from·x[]·into·y[],·i.e.,·y[index[i]]\xd | 126 | ··········This·method·scatteradds·a·scaled·multiple·of·n·entries·from·x[]·into·y[],·i.e.,·y[index[i]]\xd |
127 | ··········+=·alpha·*·x[i]·for·0·<=·i·<·n.\xd | 127 | ··········+=·alpha·*·x[i]·for·0·<=·i·<·n.\xd |
128 | ·······································Utilities·:·DRAFT···· | 128 | ·······································Utilities·:·DRAFT····February·18,·2025····················5\xd |
129 | ···············19.·void·DVcompress·(·int·n1,·double·x1[],·double·y1[],\xd | 129 | ···············19.·void·DVcompress·(·int·n1,·double·x1[],·double·y1[],\xd |
130 | ·····································int·n2,·double·x2[],·double·y2[]·)·;\xd | 130 | ·····································int·n2,·double·x2[],·double·y2[]·)·;\xd |
131 | ··················Given·a·pair·of·arrays·x1[n1]·and·y1[n1],·fill·x2[n2]·and·y2[n2]·with·a·subset·of·the\xd | 131 | ··················Given·a·pair·of·arrays·x1[n1]·and·y1[n1],·fill·x2[n2]·and·y2[n2]·with·a·subset·of·the\xd |
132 | ··················(x1[j],y1[j]·entries·whose·distribution·is·an·approximation.\xd | 132 | ··················(x1[j],y1[j]·entries·whose·distribution·is·an·approximation.\xd |
133 | ···············20.·void·DVcopy·(·int·n,·double·y[],·double·x[]·)·;\xd | 133 | ···············20.·void·DVcopy·(·int·n,·double·y[],·double·x[]·)·;\xd |
134 | ··················This·method·copies·n·entries·from·x[]·to·y[],·i.e.,·y[i]·=·x[i]·for·0·<=·i·<·n.\xd | 134 | ··················This·method·copies·n·entries·from·x[]·to·y[],·i.e.,·y[i]·=·x[i]·for·0·<=·i·<·n.\xd |
135 | ···············21.·int·DVdot·(·int·n,·double·y[],·double·x[]·)·;\xd | 135 | ···············21.·int·DVdot·(·int·n,·double·y[],·double·x[]·)·;\xd |
Offset 167, 15 lines modified | Offset 167, 15 lines modified | ||
167 | ····························i=0\xd | 167 | ····························i=0\xd |
168 | ····························n−1\xd | 168 | ····························n−1\xd |
169 | ···················sums[1]·=·Xrow1[i]∗col0[i]\xd | 169 | ···················sums[1]·=·Xrow1[i]∗col0[i]\xd |
170 | ····························i=0\xd | 170 | ····························i=0\xd |
171 | ····························n−1\xd | 171 | ····························n−1\xd |
172 | ···················sums[2]·=·Xrow2[i]∗col0[i]\xd | 172 | ···················sums[2]·=·Xrow2[i]∗col0[i]\xd |
173 | ····························i=0\xd | 173 | ····························i=0\xd |
174 | ·············6··························Utilities·:·DRAFT· | 174 | ·············6··························Utilities·:·DRAFT·February·18,·2025\xd |
175 | ···············25.·int·DVdot23·(·int·n,·double·row0[],·double·row1[],\xd | 175 | ···············25.·int·DVdot23·(·int·n,·double·row0[],·double·row1[],\xd |
176 | ·································double·col0[],·double·col1[],·double·col2[],·double·sums[]·)·;\xd | 176 | ·································double·col0[],·double·col1[],·double·col2[],·double·sums[]·)·;\xd |
177 | ··················This·method·computes·six·dot·products.\xd | 177 | ··················This·method·computes·six·dot·products.\xd |
178 | ····························n−1··························n−1·························n−1\xd | 178 | ····························n−1··························n−1·························n−1\xd |
179 | ···················sums[0]·=·Xrow0[i]∗col0[i]···sums[1]·=·Xrow0[i]∗col1[i]··sums[2]·=·Xrow0[i]∗col2[i]\xd | 179 | ···················sums[0]·=·Xrow0[i]∗col0[i]···sums[1]·=·Xrow0[i]∗col1[i]··sums[2]·=·Xrow0[i]∗col2[i]\xd |
180 | ····························i=0··························i=0·························i=0\xd | 180 | ····························i=0··························i=0·························i=0\xd |
181 | ····························n−1··························n−1·························n−1\xd | 181 | ····························n−1··························n−1·························n−1\xd |
Offset 212, 15 lines modified | Offset 212, 15 lines modified | ||
212 | ···················sums[0]·=·Xrow0[i]∗col0[i]···sums[1]·=·Xrow0[i]∗col1[i]\xd | 212 | ···················sums[0]·=·Xrow0[i]∗col0[i]···sums[1]·=·Xrow0[i]∗col1[i]\xd |
213 | ····························i=0··························i=0\xd | 213 | ····························i=0··························i=0\xd |
214 | ···············30.·int·DVdot11·(·int·n,·double·row0[],·double·col0[],·double·sums[]·)·;\xd | 214 | ···············30.·int·DVdot11·(·int·n,·double·row0[],·double·col0[],·double·sums[]·)·;\xd |
215 | ··················This·method·computes·one·dot·product.\xd | 215 | ··················This·method·computes·one·dot·product.\xd |
216 | ····························n−1\xd | 216 | ····························n−1\xd |
217 | ···················sums[0]·=·Xrow0[i]∗col0[i]\xd | 217 | ···················sums[0]·=·Xrow0[i]∗col0[i]\xd |
218 | ····························i=0\xd | 218 | ····························i=0\xd |
219 | ····································Utilities·:·DRAFT·· | 219 | ····································Utilities·:·DRAFT··February·18,·2025·················7\xd |
220 | ··············31.·int·DVdoti·(·int·n,·double·y[],·int·index[],·double·x[]·)·;\xd | 220 | ··············31.·int·DVdoti·(·int·n,·double·y[],·int·index[],·double·x[]·)·;\xd |
221 | ······················································n−1\xd | 221 | ······················································n−1\xd |
222 | ·················This·method·returns·the·indexed·dot·product·Xy[index[i]]∗x[i].\xd | 222 | ·················This·method·returns·the·indexed·dot·product·Xy[index[i]]∗x[i].\xd |
223 | ······················································i=0\xd | 223 | ······················································i=0\xd |
224 | ··············32.·void·DVfill·(·int·n,·double·y[],·double·val·)·;\xd | 224 | ··············32.·void·DVfill·(·int·n,·double·y[],·double·val·)·;\xd |
225 | ·················This·method·fills·n·entries·in·y[]·with·val,·i.e.,·y[i]·=·val·for·0·<=·i·<·n.\xd | 225 | ·················This·method·fills·n·entries·in·y[]·with·val,·i.e.,·y[i]·=·val·for·0·<=·i·<·n.\xd |
226 | ··············33.·void·DVgather·(·int·n,·double·y[],·double·x[],·int·index[]·)·;\xd | 226 | ··············33.·void·DVgather·(·int·n,·double·y[],·double·x[],·int·index[]·)·;\xd |
Offset 248, 15 lines modified | Offset 248, 15 lines modified | ||
248 | ·················This·method·permutes·the·vector·y·as·follows.·i.e.,·y[i]·:=·y[index[i]].·See·DVinvPerm()\xd | 248 | ·················This·method·permutes·the·vector·y·as·follows.·i.e.,·y[i]·:=·y[index[i]].·See·DVinvPerm()\xd |
249 | ·················for·a·similar·function.\xd | 249 | ·················for·a·similar·function.\xd |
250 | ··············42.·void·DVramp·(·int·n,·double·y[],·double·start,·double·inc·)·;\xd | 250 | ··············42.·void·DVramp·(·int·n,·double·y[],·double·start,·double·inc·)·;\xd |
251 | ·················This·method·fills·n·entries·in·y[]·with·values·start,·start·+·inc,·start·+·2*inc,·start\xd | 251 | ·················This·method·fills·n·entries·in·y[]·with·values·start,·start·+·inc,·start·+·2*inc,·start\xd |
252 | ·················+·3*inc,·etc.\xd | 252 | ·················+·3*inc,·etc.\xd |
253 | ··············43.·void·DVscale·(·int·n,·double·y[],·double·alpha·)·;\xd | 253 | ··············43.·void·DVscale·(·int·n,·double·y[],·double·alpha·)·;\xd |
254 | ·················This·method·scales·a·vector·y[]·by·alpha,·i.e.,·y[i]·*=·alpha.·for·0·<=·i·<·n.\xd | 254 | ·················This·method·scales·a·vector·y[]·by·alpha,·i.e.,·y[i]·*=·alpha.·for·0·<=·i·<·n.\xd |
255 | ·····························8························································· | 255 | ·····························8·························································Utilities·:·DRAFT·February·18,·2025\xd |
256 | ································44.·void·DVscale2·(·int·n,·double·x[],·double·y[],\xd | 256 | ································44.·void·DVscale2·(·int·n,·double·x[],·double·y[],\xd |
257 | ·············································································double·a,·double·b,·double·c,·double·d·)·;\xd | 257 | ·············································································double·a,·double·b,·double·c,·double·d·)·;\xd |
258 | ········································This·method·scales·two·vectors·y[]·by·a·2·×2·matrix,·i.e.,\xd | 258 | ········································This·method·scales·two·vectors·y[]·by·a·2·×2·matrix,·i.e.,\xd |
259 | ·······································································"·x[0]··········.·.·.····x[n−1]·#·:=·"·a·b·#"·x[0]·...·x[n−1]·#.\xd | 259 | ·······································································"·x[0]··········.·.·.····x[n−1]·#·:=·"·a·b·#"·x[0]·...·x[n−1]·#.\xd |
260 | ············································································y[0]·······.·.·.····y[n−1]························c·d···············y[0]·······.·.·.····y[n−1]\xd | 260 | ············································································y[0]·······.·.·.····y[n−1]························c·d···············y[0]·······.·.·.····y[n−1]\xd |
261 | ································45.·void·DVscatter·(·int·n,·double·y[],·int·index[],·double·x[]·)·;\xd | 261 | ································45.·void·DVscatter·(·int·n,·double·y[],·int·index[],·double·x[]·)·;\xd |
262 | ········································This·method·scatters·n·entries·of·x[]·into·y[]·as·follows,·y[index[i]]·=·x[i]·for·0·<=·i\xd | 262 | ········································This·method·scatters·n·entries·of·x[]·into·y[]·as·follows,·y[index[i]]·=·x[i]·for·0·<=·i\xd |
Offset 284, 15 lines modified | Offset 284, 15 lines modified | ||
284 | ········································This·method·swaps·the·x[]·and·y[]·vectors·as·follows.·i.e.,·y[i]·:=·x[i]·and·x[i]·:=\xd | 284 | ········································This·method·swaps·the·x[]·and·y[]·vectors·as·follows.·i.e.,·y[i]·:=·x[i]·and·x[i]·:=\xd |
285 | ········································y[i]·for·0·<=·i·<·n.\xd | 285 | ········································y[i]·for·0·<=·i·<·n.\xd |
286 | ································53.·void·DVzero·(·int·n,·double·y[]·)·;\xd | 286 | ································53.·void·DVzero·(·int·n,·double·y[]·)·;\xd |
287 | ········································This·method·zeroes·n·entries·in·y[],·i.e.,·y[i]·=·0·for·0·<=·i·<·n.\xd | 287 | ········································This·method·zeroes·n·entries·in·y[],·i.e.,·y[i]·=·0·for·0·<=·i·<·n.\xd |
288 | ································54.·void·DVshuffle·(·int·n,·double·y[],·int·seed·)·;\xd | 288 | ································54.·void·DVshuffle·(·int·n,·double·y[],·int·seed·)·;\xd |
289 | ········································This·method·shuffles·the·first·n·entries·in·y[].·The·value·seed·is·the·seed·to·a·random·number\xd | 289 | ········································This·method·shuffles·the·first·n·entries·in·y[].·The·value·seed·is·the·seed·to·a·random·number\xd |
290 | ········································generator,·and·one·can·get·repeatable·behavior·by·repeating·seed.\xd | 290 | ········································generator,·and·one·can·get·repeatable·behavior·by·repeating·seed.\xd |
291 | ····································Utilities·:·DRAFT·· | 291 | ····································Utilities·:·DRAFT··February·18,·2025·················9\xd |
292 | ············1.2.3··ZV·:·double·complex·vector·methods\xd | 292 | ············1.2.3··ZV·:·double·complex·vector·methods\xd |
293 | ············Adoubleprecisioncomplexvector·oflengthnissimplya·doubleprecisionvector·oflength2n.·There\xd | 293 | ············Adoubleprecisioncomplexvector·oflengthnissimplya·doubleprecisionvector·oflength2n.·There\xd |
294 | ············is·a·separate·ZVinit()·allocator·and·initializer·method,·since·it·requires·a·real·and·imaginary·part\xd | 294 | ············is·a·separate·ZVinit()·allocator·and·initializer·method,·since·it·requires·a·real·and·imaginary·part\xd |
295 | ············to·fill·the·vector.·However,·there·is·no·ZVinit2()·method·(which·allocates·without·initializing·the\xd | 295 | ············to·fill·the·vector.·However,·there·is·no·ZVinit2()·method·(which·allocates·without·initializing·the\xd |
296 | ············entries)·nor·a·ZVfree()·method·to·free·the·entries;·the·DVinit2()·and·DVfree()·methods·can·be\xd | 296 | ············entries)·nor·a·ZVfree()·method·to·free·the·entries;·the·DVinit2()·and·DVfree()·methods·can·be\xd |
297 | ············used.·Similarly,·there·is·no·ZVfscanf()·method,·instead·the·DVfscanf()·method·can·be·used.\xd | 297 | ············used.·Similarly,·there·is·no·ZVfscanf()·method,·instead·the·DVfscanf()·method·can·be·used.\xd |
298 | ···············1.·double·*·ZVinit·(·int·n,·double·real,·double·imag·)·;\xd | 298 | ···············1.·double·*·ZVinit·(·int·n,·double·real,·double·imag·)·;\xd |
Max diff block lines reached; 28064/38176 bytes (73.51%) of diff not shown. |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·ZV.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·ZV.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2352, 20 lines modified | Offset 2352, 21 lines modified | ||
2352 | end·readonly·def | 2352 | end·readonly·def |
2353 | /Encoding·256·array | 2353 | /Encoding·256·array |
2354 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2354 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2355 | dup·44·/comma·put | 2355 | dup·44·/comma·put |
2356 | dup·48·/zero·put | 2356 | dup·48·/zero·put |
2357 | dup·49·/one·put | 2357 | dup·49·/one·put |
2358 | dup·50·/two·put | 2358 | dup·50·/two·put |
2359 | dup·52·/four·put | ||
2360 | dup·5 | 2359 | dup·53·/five·put |
2360 | dup·56·/eight·put | ||
2361 | dup·58·/colon·put | 2361 | dup·58·/colon·put |
2362 | dup·7 | 2362 | dup·70·/F·put |
2363 | dup·97·/a·put | 2363 | dup·97·/a·put |
2364 | dup·98·/b·put | ||
2364 | dup·1 | 2365 | dup·101·/e·put |
2365 | dup·114·/r·put | 2366 | dup·114·/r·put |
2366 | dup·117·/u·put | 2367 | dup·117·/u·put |
2367 | dup·121·/y·put | 2368 | dup·121·/y·put |
2368 | readonly·def | 2369 | readonly·def |
2369 | currentdict·end | 2370 | currentdict·end |
2370 | currentfile·eexec | 2371 | currentfile·eexec |
2371 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2372 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2549, 89 lines modified | Offset 2550, 93 lines modified | ||
2549 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2550 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2550 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2551 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2551 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2552 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2552 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2553 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2553 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2554 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2554 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2555 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2555 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2556 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2556 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2557 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2557 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2558 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2559 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2560 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2561 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2562 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2563 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2564 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2565 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2566 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2567 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2568 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2569 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2570 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2571 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2572 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2573 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2574 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2575 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2576 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2577 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2578 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2579 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2580 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2581 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2582 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2583 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2584 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2585 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2586 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2587 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2588 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2589 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2590 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2591 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2592 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2593 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2594 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2595 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2596 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2597 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2598 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2599 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2600 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2601 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2602 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2603 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2604 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2605 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2606 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2607 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2608 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2609 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2610 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2611 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2612 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2613 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2614 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2615 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2616 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2617 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2618 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2619 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2620 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2621 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2622 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2623 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2624 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2625 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2626 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2627 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2628 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2629 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2630 | 2558 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2559 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2560 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2561 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2562 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2563 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2564 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 11944/23832 bytes (50.12%) of diff not shown. |
Offset 22, 15 lines modified | Offset 22, 15 lines modified | ||
22 | ···············Onemustchoose·where·to·use·this·object.·There·is·a·substantial·performance·penalty·for·doing·the\xd | 22 | ···············Onemustchoose·where·to·use·this·object.·There·is·a·substantial·performance·penalty·for·doing·the\xd |
23 | ···············simplest·operations,·and·so·when·we·need·to·manipulate·an·double·vector·inside·a·loop,·we·extract\xd | 23 | ···············simplest·operations,·and·so·when·we·need·to·manipulate·an·double·vector·inside·a·loop,·we·extract\xd |
24 | ···············out·the·size·and·pointer·to·the·base·array·from·the·ZV·object.·On·the·other·hand,·the·convenience\xd | 24 | ···············out·the·size·and·pointer·to·the·base·array·from·the·ZV·object.·On·the·other·hand,·the·convenience\xd |
25 | ···············makes·it·a·widely·used·object.\xd | 25 | ···············makes·it·a·widely·used·object.\xd |
26 | ···············1.1····Data·Structure\xd | 26 | ···············1.1····Data·Structure\xd |
27 | ···············The·ZV·structure·has·three·fields.\xd | 27 | ···············The·ZV·structure·has·three·fields.\xd |
28 | ·····························································1\xd | 28 | ·····························································1\xd |
29 | ··············2·····························ZV·:·DRAFT· | 29 | ··············2·····························ZV·:·DRAFT·February·18,·2025\xd |
30 | ·················•·int·size·:·present·size·of·the·vector.\xd | 30 | ·················•·int·size·:·present·size·of·the·vector.\xd |
31 | ·················•·int·maxsize·:·maximum·size·of·the·vector.\xd | 31 | ·················•·int·maxsize·:·maximum·size·of·the·vector.\xd |
32 | ·················•·int·owned·:·owner·flag·for·the·data.·When·owned·=·1,·storage·for·owned·double’s·has·been\xd | 32 | ·················•·int·owned·:·owner·flag·for·the·data.·When·owned·=·1,·storage·for·owned·double’s·has·been\xd |
33 | ···················allocated·by·this·object·and·can·be·free’d·by·the·object.·When·owned·==·0·but·size·>·0·,\xd | 33 | ···················allocated·by·this·object·and·can·be·free’d·by·the·object.·When·owned·==·0·but·size·>·0·,\xd |
34 | ···················this·object·points·to·entries·that·have·been·allocated·elsewhere,·and·these·entries·will·not·be\xd | 34 | ···················this·object·points·to·entries·that·have·been·allocated·elsewhere,·and·these·entries·will·not·be\xd |
35 | ···················free’d·by·this·object.\xd | 35 | ···················free’d·by·this·object.\xd |
36 | ·················•·double·*vec·:·pointer·to·the·base·address·of·the·double·vector\xd | 36 | ·················•·double·*vec·:·pointer·to·the·base·address·of·the·double·vector\xd |
Offset 54, 15 lines modified | Offset 54, 15 lines modified | ||
54 | ···················the·storage·for·vec·is·free’d·by·a·call·to·ZVfree().·The·structure’s·default·fields·are·then·set\xd | 54 | ···················the·storage·for·vec·is·free’d·by·a·call·to·ZVfree().·The·structure’s·default·fields·are·then·set\xd |
55 | ···················with·a·call·to·ZV·setDefaultFields().\xd | 55 | ···················with·a·call·to·ZV·setDefaultFields().\xd |
56 | ···················Error·checking:·If·zv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd | 56 | ···················Error·checking:·If·zv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd |
57 | ················4.·void·ZV_free·(·ZV·*zv·)·;\xd | 57 | ················4.·void·ZV_free·(·ZV·*zv·)·;\xd |
58 | ···················This·method·releases·any·storage·by·a·call·to·ZV·clearData()·then·free’s·the·storage·for·the\xd | 58 | ···················This·method·releases·any·storage·by·a·call·to·ZV·clearData()·then·free’s·the·storage·for·the\xd |
59 | ···················structure·with·a·call·to·free().\xd | 59 | ···················structure·with·a·call·to·free().\xd |
60 | ···················Error·checking:·If·zv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd | 60 | ···················Error·checking:·If·zv·is·NULL·an·error·message·is·printed·and·the·program·exits.\xd |
61 | ·······································ZV·:·DRAFT·· | 61 | ·······································ZV·:·DRAFT··February·18,·2025·····················3\xd |
62 | ············1.2.2··Instance·methods\xd | 62 | ············1.2.2··Instance·methods\xd |
63 | ············These·method·allow·access·to·information·in·the·data·fields·without·explicitly·following·pointers.\xd | 63 | ············These·method·allow·access·to·information·in·the·data·fields·without·explicitly·following·pointers.\xd |
64 | ············There·is·overhead·involved·with·these·method·due·to·the·function·call·and·error·checking·inside\xd | 64 | ············There·is·overhead·involved·with·these·method·due·to·the·function·call·and·error·checking·inside\xd |
65 | ············the·methods.\xd | 65 | ············the·methods.\xd |
66 | ···············1.·int·ZV_owned·(·ZV·*zv·)·;\xd | 66 | ···············1.·int·ZV_owned·(·ZV·*zv·)·;\xd |
67 | ·················This·method·returns·the·value·of·owned.·If·owned·>·0,·then·the·object·owns·the·data·pointed\xd | 67 | ·················This·method·returns·the·value·of·owned.·If·owned·>·0,·then·the·object·owns·the·data·pointed\xd |
68 | ·················to·by·vec·and·will·free·this·data·with·a·call·to·ZVfree()·when·its·data·is·cleared·by·a·call·to\xd | 68 | ·················to·by·vec·and·will·free·this·data·with·a·call·to·ZVfree()·when·its·data·is·cleared·by·a·call·to\xd |
Offset 91, 15 lines modified | Offset 91, 15 lines modified | ||
91 | ·················This·method·returns·vec,·a·pointer·to·the·base·address·of·the·vector.\xd | 91 | ·················This·method·returns·vec,·a·pointer·to·the·base·address·of·the·vector.\xd |
92 | ·················Error·checking:·If·zv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 92 | ·················Error·checking:·If·zv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
93 | ···············7.·void·ZV_sizeAndEntries·(·ZV·*zv,·int·*psize,·double·**pentries·)·;\xd | 93 | ···············7.·void·ZV_sizeAndEntries·(·ZV·*zv,·int·*psize,·double·**pentries·)·;\xd |
94 | ·················This·method·fills·*psize·with·the·size·of·the·vector·and·**pentries·with·the·base·address\xd | 94 | ·················This·method·fills·*psize·with·the·size·of·the·vector·and·**pentries·with·the·base·address\xd |
95 | ·················of·the·vector.\xd | 95 | ·················of·the·vector.\xd |
96 | ·················Error·checking:·If·zv,·psize·or·pentriesis·NULL,·an·error·message·is·printed·and·the·program\xd | 96 | ·················Error·checking:·If·zv,·psize·or·pentriesis·NULL,·an·error·message·is·printed·and·the·program\xd |
97 | ·················exits.\xd | 97 | ·················exits.\xd |
98 | ··············4·····························ZV·:·DRAFT· | 98 | ··············4·····························ZV·:·DRAFT·February·18,·2025\xd |
99 | ················8.·void·ZV_setEntry·(·ZV·*zv,·int·loc,·double·real,·double·imag·)·;\xd | 99 | ················8.·void·ZV_setEntry·(·ZV·*zv,·int·loc,·double·real,·double·imag·)·;\xd |
100 | ···················This·method·sets·the·loc’th·entry·of·the·vector·to·(real,imag).\xd | 100 | ···················This·method·sets·the·loc’th·entry·of·the·vector·to·(real,imag).\xd |
101 | ···················Error·checking:·If·zv·is·NULL·or·loc·<·0,·an·error·message·is·printed·and·the·program·exits.\xd | 101 | ···················Error·checking:·If·zv·is·NULL·or·loc·<·0,·an·error·message·is·printed·and·the·program·exits.\xd |
102 | ··············1.2.3··Initializer·methods\xd | 102 | ··············1.2.3··Initializer·methods\xd |
103 | ··············There·are·three·initializer·methods.\xd | 103 | ··············There·are·three·initializer·methods.\xd |
104 | ················1.·void·ZV_init·(·ZV·*zv,·int·size,·double·*entries·)·;\xd | 104 | ················1.·void·ZV_init·(·ZV·*zv,·int·size,·double·*entries·)·;\xd |
105 | ···················This·method·initializes·the·object·given·a·size·for·the·vector·and·a·possible·pointer·to·the\xd | 105 | ···················This·method·initializes·the·object·given·a·size·for·the·vector·and·a·possible·pointer·to·the\xd |
Offset 128, 15 lines modified | Offset 128, 15 lines modified | ||
128 | ···················Error·checking:·If·zv·is·NULL·or·newmaxsize·<·0,·or·if·0·<·maxsize·and·owned·==·0,·an\xd | 128 | ···················Error·checking:·If·zv·is·NULL·or·newmaxsize·<·0,·or·if·0·<·maxsize·and·owned·==·0,·an\xd |
129 | ···················error·message·is·printed·and·the·program·exits.\xd | 129 | ···················error·message·is·printed·and·the·program·exits.\xd |
130 | ················5.·void·ZV_setSize·(·ZV·*zv,·int·newsize·)·;\xd | 130 | ················5.·void·ZV_setSize·(·ZV·*zv,·int·newsize·)·;\xd |
131 | ···················This·method·sets·the·size·of·the·vector.·If·newsize·>·maxsize,·the·length·of·the·vector·is\xd | 131 | ···················This·method·sets·the·size·of·the·vector.·If·newsize·>·maxsize,·the·length·of·the·vector·is\xd |
132 | ···················increased·with·a·call·to·ZV·setMaxsize().·The·size·field·is·set·to·newsize.\xd | 132 | ···················increased·with·a·call·to·ZV·setMaxsize().·The·size·field·is·set·to·newsize.\xd |
133 | ···················Error·checking:·If·zv·is·NULL,·or·newsize·<·0,·or·if·0·<·maxsize·<·newsize·and·owned·=\xd | 133 | ···················Error·checking:·If·zv·is·NULL,·or·newsize·<·0,·or·if·0·<·maxsize·<·newsize·and·owned·=\xd |
134 | ···················0,·an·error·message·is·printed·and·the·program·exits.\xd | 134 | ···················0,·an·error·message·is·printed·and·the·program·exits.\xd |
135 | ·······································ZV·:·DRAFT·· | 135 | ·······································ZV·:·DRAFT··February·18,·2025·····················5\xd |
136 | ············1.2.4··Utility·methods\xd | 136 | ············1.2.4··Utility·methods\xd |
137 | ···············1.·void·ZV_shiftBase·(·ZV·*zv,·int·offset·)·;\xd | 137 | ···············1.·void·ZV_shiftBase·(·ZV·*zv,·int·offset·)·;\xd |
138 | ·················This·method·shifts·the·base·entries·of·the·vector·and·decrements·the·present·size·and·max-\xd | 138 | ·················This·method·shifts·the·base·entries·of·the·vector·and·decrements·the·present·size·and·max-\xd |
139 | ·················imum·size·of·the·vector·by·offset.·This·is·a·dangerous·method·to·use·because·the·state·of\xd | 139 | ·················imum·size·of·the·vector·by·offset.·This·is·a·dangerous·method·to·use·because·the·state·of\xd |
140 | ·················the·vector·is·lost,·namely·vec,·the·base·of·the·entries,·is·corrupted.·If·the·object·owns·its\xd | 140 | ·················the·vector·is·lost,·namely·vec,·the·base·of·the·entries,·is·corrupted.·If·the·object·owns·its\xd |
141 | ·················entries·and·ZV·free(),·ZV·setSize()·or·ZV·setMaxsize()·is·called·before·the·base·has·been\xd | 141 | ·················entries·and·ZV·free(),·ZV·setSize()·or·ZV·setMaxsize()·is·called·before·the·base·has·been\xd |
142 | ·················shifted·back·to·its·original·position,·a·segmentation·violation·will·likely·result.·This·is·a·very\xd | 142 | ·················shifted·back·to·its·original·position,·a·segmentation·violation·will·likely·result.·This·is·a·very\xd |
Offset 162, 15 lines modified | Offset 162, 15 lines modified | ||
162 | ·················This·method·fills·the·vector·with·zeros.\xd | 162 | ·················This·method·fills·the·vector·with·zeros.\xd |
163 | ·················Error·checking:·If·zv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 163 | ·················Error·checking:·If·zv·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
164 | ···············7.·void·ZV_copy·(·ZV·*zv1,·ZV·*zv2·)·;\xd | 164 | ···············7.·void·ZV_copy·(·ZV·*zv1,·ZV·*zv2·)·;\xd |
165 | ·················This·method·fills·the·zv1·object·with·entries·in·the·iv2·object.·Note,·this·is·a·mapped·copy,\xd | 165 | ·················This·method·fills·the·zv1·object·with·entries·in·the·iv2·object.·Note,·this·is·a·mapped·copy,\xd |
166 | ·················zv1·and·zv2·need·not·have·the·same·size.·The·number·of·entries·that·are·copied·is·the·smaller\xd | 166 | ·················zv1·and·zv2·need·not·have·the·same·size.·The·number·of·entries·that·are·copied·is·the·smaller\xd |
167 | ·················of·the·two·sizes.\xd | 167 | ·················of·the·two·sizes.\xd |
168 | ·················Error·checking:·If·zv1·or·zv2·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd | 168 | ·················Error·checking:·If·zv1·or·zv2·is·NULL,·an·error·message·is·printed·and·the·program·exits.\xd |
169 | ··············6·····························ZV·:·DRAFT· | 169 | ··············6·····························ZV·:·DRAFT·February·18,·2025\xd |
170 | ················8.·void·ZV_log10profile·(·ZV·*zv,·int·npts,·DV·*xDV,·DV·*yDV,·double·tausmall,\xd | 170 | ················8.·void·ZV_log10profile·(·ZV·*zv,·int·npts,·DV·*xDV,·DV·*yDV,·double·tausmall,\xd |
171 | ··········································double·taubig,·int·*pnzero,·int·*pnsmall,·int·*pnbig·)·;\xd | 171 | ··········································double·taubig,·int·*pnzero,·int·*pnsmall,·int·*pnbig·)·;\xd |
172 | ···················This·method·scans·the·entries·in·the·ZV·object·and·fills·xDV·and·yDV·with·data·that·allows\xd | 172 | ···················This·method·scans·the·entries·in·the·ZV·object·and·fills·xDV·and·yDV·with·data·that·allows\xd |
173 | ···················a·simple·log10·distribution·plot.·Only·entries·whose·magnitudes·lie·in·the·range·[tausmall,\xd | 173 | ···················a·simple·log10·distribution·plot.·Only·entries·whose·magnitudes·lie·in·the·range·[tausmall,\xd |
174 | ···················taubig]·contribute·to·the·distribution.·The·number·of·entries·whose·magnitudes·are·zero,\xd | 174 | ···················taubig]·contribute·to·the·distribution.·The·number·of·entries·whose·magnitudes·are·zero,\xd |
175 | ···················smaller·than·tausmall,·or·larger·than·taubig·are·placed·into·pnzero,·*pnsmall·and·*pnbig,\xd | 175 | ···················smaller·than·tausmall,·or·larger·than·taubig·are·placed·into·pnzero,·*pnsmall·and·*pnbig,\xd |
176 | ···················respectively.·On·return,·the·size·of·the·xDV·and·yDV·objects·is·npts.\xd | 176 | ···················respectively.·On·return,·the·size·of·the·xDV·and·yDV·objects·is·npts.\xd |
Offset 199, 15 lines modified | Offset 199, 15 lines modified | ||
199 | ···················and·returns·the·value·returned·from·the·called·routine.\xd | 199 | ···················and·returns·the·value·returned·from·the·called·routine.\xd |
200 | ···················Error·checking:·If·zv·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.zvf·(for·a·formatted·file)\xd | 200 | ···················Error·checking:·If·zv·or·fn·are·NULL,·or·if·fn·is·not·of·the·form·*.zvf·(for·a·formatted·file)\xd |
201 | ···················or·*.zvb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd | 201 | ···················or·*.zvb·(for·a·binary·file),·an·error·message·is·printed·and·the·method·returns·zero.\xd |
202 | ················5.·int·ZV_writeToFormattedFile·(·ZV·*zv,·FILE·*fp·)·;\xd | 202 | ················5.·int·ZV_writeToFormattedFile·(·ZV·*zv,·FILE·*fp·)·;\xd |
203 | ···················This·method·writes·a·ZV·object·to·a·formatted·file.·If·there·are·no·errors·in·writing·the·data,\xd | 203 | ···················This·method·writes·a·ZV·object·to·a·formatted·file.·If·there·are·no·errors·in·writing·the·data,\xd |
204 | ···················the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd | 204 | ···················the·value·1·is·returned.·If·an·IO·error·is·encountered·from·fprintf,·zero·is·returned.\xd |
205 | ···················Error·checking:·If·zv·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 205 | ···················Error·checking:·If·zv·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
206 | ·······································ZV·:·DRAFT·· | 206 | ·······································ZV·:·DRAFT··February·18,·2025·····················7\xd |
207 | ···············6.·int·ZV_writeToBinaryFile·(·ZV·*zv,·FILE·*fp·)·;\xd | 207 | ···············6.·int·ZV_writeToBinaryFile·(·ZV·*zv,·FILE·*fp·)·;\xd |
208 | ·················This·method·writes·a·ZV·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the·data,·the\xd | 208 | ·················This·method·writes·a·ZV·object·to·a·binary·file.·If·there·are·no·errors·in·writing·the·data,·the\xd |
209 | ·················value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd | 209 | ·················value·1·is·returned.·If·an·IO·error·is·encountered·from·fwrite,·zero·is·returned.\xd |
210 | ·················Error·checking:·If·zv·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd | 210 | ·················Error·checking:·If·zv·or·fp·are·NULL,·an·error·message·is·printed·and·zero·is·returned.\xd |
211 | ···············7.·int·ZV_writeForHumanEye·(·ZV·*zv,·FILE·*fp·)·;\xd | 211 | ···············7.·int·ZV_writeForHumanEye·(·ZV·*zv,·FILE·*fp·)·;\xd |
212 | ·················This·method·writes·a·ZV·object·to·a·file·in·a·human·readable·format.·is·called·to·write·out\xd | 212 | ·················This·method·writes·a·ZV·object·to·a·file·in·a·human·readable·format.·is·called·to·write·out\xd |
213 | ·················the·header·and·statistics.·The·entries·of·the·vector·then·follow·in·eighty·column·format·using\xd | 213 | ·················the·header·and·statistics.·The·entries·of·the·vector·then·follow·in·eighty·column·format·using\xd |
Offset 232, 15 lines modified | Offset 232, 15 lines modified | ||
232 | ···················•·The·msglvl·parameter·determines·the·amount·of·output.·Use·msglvl·=·1·for·just\xd | 232 | ···················•·The·msglvl·parameter·determines·the·amount·of·output.·Use·msglvl·=·1·for·just\xd |
233 | ·····················timing·output.\xd | 233 | ·····················timing·output.\xd |
234 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd | 234 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd |
235 | ·····················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd | 235 | ·····················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd |
236 | ·····················data.\xd | 236 | ·····················data.\xd |
237 | ···················•·The·inFile·parameter·is·the·name·of·the·file·from·which·to·read·in·the·object.·inFile\xd | 237 | ···················•·The·inFile·parameter·is·the·name·of·the·file·from·which·to·read·in·the·object.·inFile\xd |
238 | ·····················must·be·of·the·form·*.zvf·for·a·formatted·file·or·*.zvb·for·a·binary·file.\xd | 238 | ·····················must·be·of·the·form·*.zvf·for·a·formatted·file·or·*.zvb·for·a·binary·file.\xd |
239 | ·······8···············ZV·:·DRAFT· | 239 | ·······8···············ZV·:·DRAFT·February·18,·2025\xd |
240 | ···········•·The·outFile·parameter·is·the·name·of·the·file·to·which·to·write·out·the·object.·If\xd | 240 | ···········•·The·outFile·parameter·is·the·name·of·the·file·to·which·to·write·out·the·object.·If\xd |
241 | ············outfile·is·of·the·form·*.zvf,·the·object·is·written·to·a·formatted·file.·If·outfile·is·of\xd | 241 | ············outfile·is·of·the·form·*.zvf,·the·object·is·written·to·a·formatted·file.·If·outfile·is·of\xd |
242 | ············the·form·*.zvb,·the·object·is·written·to·a·binary·file.·When·outFile·is·not·"none",·the\xd | 242 | ············the·form·*.zvb,·the·object·is·written·to·a·binary·file.·When·outFile·is·not·"none",·the\xd |
243 | ············object·is·written·to·the·file·in·a·human·readable·format.·When·outFile·is·"none",·the\xd | 243 | ············object·is·written·to·the·file·in·a·human·readable·format.·When·outFile·is·"none",·the\xd |
244 | ············object·is·not·written·out.\xd | 244 | ············object·is·not·written·out.\xd |
245 | ·······Index\xd | 245 | ·······Index\xd |
246 | ·······ZV·clearData(),·2\xd | 246 | ·······ZV·clearData(),·2\xd |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·misc.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·misc.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2025.02.18:0318 |
19 | %%BeginProcSet:·tex.pro·0·0 | 19 | %%BeginProcSet:·tex.pro·0·0 |
20 | %! | 20 | %! |
21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 21 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 22 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 23 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 24 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 25 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2252, 20 lines modified | Offset 2252, 21 lines modified | ||
2252 | end·readonly·def | 2252 | end·readonly·def |
2253 | /Encoding·256·array | 2253 | /Encoding·256·array |
2254 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2254 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2255 | dup·44·/comma·put | 2255 | dup·44·/comma·put |
2256 | dup·48·/zero·put | 2256 | dup·48·/zero·put |
2257 | dup·49·/one·put | 2257 | dup·49·/one·put |
2258 | dup·50·/two·put | 2258 | dup·50·/two·put |
2259 | dup·52·/four·put | ||
2260 | dup·5 | 2259 | dup·53·/five·put |
2260 | dup·56·/eight·put | ||
2261 | dup·58·/colon·put | 2261 | dup·58·/colon·put |
2262 | dup·7 | 2262 | dup·70·/F·put |
2263 | dup·97·/a·put | 2263 | dup·97·/a·put |
2264 | dup·98·/b·put | ||
2264 | dup·1 | 2265 | dup·101·/e·put |
2265 | dup·114·/r·put | 2266 | dup·114·/r·put |
2266 | dup·117·/u·put | 2267 | dup·117·/u·put |
2267 | dup·121·/y·put | 2268 | dup·121·/y·put |
2268 | readonly·def | 2269 | readonly·def |
2269 | currentdict·end | 2270 | currentdict·end |
2270 | currentfile·eexec | 2271 | currentfile·eexec |
2271 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2272 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2449, 89 lines modified | Offset 2450, 93 lines modified | ||
2449 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2450 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2450 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2451 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2451 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2452 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2452 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2453 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2453 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2454 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2454 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2455 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2455 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2456 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2456 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2457 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004FD597ED |
2457 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2458 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2459 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2460 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2461 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2462 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2463 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2464 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2465 | 48D6A7F86D814CCBE85133B3A304AF0A4AA65CC750BACC5832EA38CBF518502A | ||
2466 | C870C2C62A59B8E1C43ED26F67554DDA93D517BE7D02E2E2A7A1ED987B15CC66 | ||
2467 | 6EE748DC6D3D47C3140FEAA6B1F51F65F93F012979042C202AC1C5BFE6099F23 | ||
2468 | 11A368430D1E88B76FF2977CD6859CFF2A62EB3710FEFC5D94F33A6F92BB6407 | ||
2469 | 1C951C4DD719F45837007148345E618FEC7831D2FB2E065AD51E6486A3EACE14 | ||
2470 | A9DB4EDE59F047B0A427B2D2727CA1DDD368515047DDB3F8DF1B641EAC906A5E | ||
2471 | F0F90AD3D954ADBF727DC0F768139AF1B968686786BB1EEEF05D87F79CE677BE | ||
2472 | EE9128D56339B7BE51E257D88D2566B2F56C2B68882D28C05BCB8669C2CC14D1 | ||
2473 | 033335086550B3D464A7594E63D0D49FE8CB42D48D30BCBF3F94E3900E791C66 | ||
2474 | A4A7D132F329E749CA524649436C598A9134939CDF977EA3DDE10FF3107E893C | ||
2475 | 468410BE9B77F571043CE5F8AC8EB42E8D017930E25D8A71FF9C085003EBB4F4 | ||
2476 | 3D271F5B16B1AAD3EBDC391F534AA46E545E9D8659DD19B309C3B7625A8396FA | ||
2477 | 2519464539D46E43ACB72952313C8497315E0319C08628023E8FC54D7D3BAC29 | ||
2478 | D5AD8EFDABF0C33C7AFB7151A6606C62A87F0F5F783569AC4C881A992E3FE420 | ||
2479 | 297F7BC5147F3B2FA98450D2F8B07F7D229BC8BE06729920CFEC22556740E1CB | ||
2480 | 3DE09AC763C6D4A20AD1599C368FABD07BC35C16683F2A0311A88983415A9140 | ||
2481 | 2EFC4BC1B10DCAD4B2B8A28510E5BD39D6616D2B9B079ED3CF9C315B7DEC29D9 | ||
2482 | 251DFD0194B34EC175964C23383F23FFB2E41B698C405815D65EAFF9E9DD1DDE | ||
2483 | 30F77924656C288B8DDB2E5B0E7B1FAA66791DE3848EE6DE63AD0E945E49C6C7 | ||
2484 | 9FCA16E01F027F9EF7ACB55F02F5B0136480802F789F6FE14B430879979BA04D | ||
2485 | F481AD4CF47E6847936F377FB04869F9A80E597301BFCAB718D8764094673876 | ||
2486 | BCEF8FA3701608C84B3A0399A11D2E6AD922CCB7D72AF9EBFB30F4648A37A123 | ||
2487 | CB8FB14BDC351692CF0CCAA5CA9383C2B23BAAA38700327EB743FBBE9EE04041 | ||
2488 | 13F5CEF4B3881BBC051C33369A82B3505B1CFD7D91AEF2E43EA728EE48E2D854 | ||
2489 | 5A7E516998ACDD4FD835FA901C5A21810A56D51FE919B2E58408EEB4DAEB487F | ||
2490 | BA7F1D292CED902DF3533566D96DAD918319EA650D4FC7D9E0170CDE620F755B | ||
2491 | 0E7AE02D9B118481B26F5FF7060FBCFA2A682B6826F00679BCDA68794C05286D | ||
2492 | B616DD08372ACDE0AE6E7EF116F0D36F16241ED4F0E8CCD80377792E3BB1343C | ||
2493 | EEB22CC77738F7CBCBA32CF6C3979F6DF7ED81A89AE8928FD7CC550F2730BA88 | ||
2494 | 1B51CEDC63F4C47F261AFCAB7AC3CED20B15C97E714A460A1A3B16436B4A5149 | ||
2495 | 8F91DA4BE0B9B648534CE5F442117036B602DC91E2852BEA62F55803B833FDF7 | ||
2496 | 9F901AB87489E703DDEED1091A79DC73B4440BBBF2C7592B441187C4A3562204 | ||
2497 | 859F08BA3CE2A8ECCD5AAD13C50FB806FE79A388F1822C5608837CBDE526A044 | ||
2498 | 12E5CDE4A066932AF2ACA7E8FC6BA4603640944718752975B7DA6E906BE1EA01 | ||
2499 | 46736FF5D1AA1CC682D011B6039CF98C35E36D4F14ABC84A38B7203CC9A17756 | ||
2500 | B2B0345276798F1A88A54AD9FEA0853C6DDF28525ED4F0B7380D14147012C2A4 | ||
2501 | 5B02888C986C76497EA4C729B0B82EE73C1A1A8E8F1ABF401E341028E9C15AF9 | ||
2502 | 354706D8DC07492921AD0932A46736C0D1B066D00287DACCC068FAE6A796EC89 | ||
2503 | 54D1D73AA88F3A5912BA9D3FF70065C8D0D0DAD1CD846501E06694374EFDBEC6 | ||
2504 | 931F644D5E8494AFC742423AD9A487658E310E0682BE19B8475F4D450487A686 | ||
2505 | 2B94494DEAF1C0F59DE82F2CE64BEE5E97F942FCFA1187ED6AA5761E951A7BF7 | ||
2506 | 9F842E34A4656C58B35A9E99F7E6762CEE11E0CF59FFD75D7382C5EE6DBB43F1 | ||
2507 | ED219071D3FB22DBA90977723BB467C0490D042684C0724F40DCA3E0D8F1F4E7 | ||
2508 | 3C4F9A67BE6528185EAAFDD415224F7E256A4EA00111C17C746CBD80BF569A27 | ||
2509 | D81195D7F79C1CCEEF30ED00D49F48B63E4B8D7953403A3710AE953CC1B76F0F | ||
2510 | F523D777A6A186F262A602543F94AF7471DBE25FEBC207DB42DAF7DC9A5781FB | ||
2511 | 2131AD42869D966A734AAE3466DF1CE9D1BCFA72409A558C0AEE6A8E2FEAACB6 | ||
2512 | 2CDABCC28433034848ACF9FB4465D272E4AFC48572647F05F41C7A293CC5B595 | ||
2513 | AD31555FB708A72962707348BC7033A8224BD42EB9D75FDF3AE9E6A9C960B330 | ||
2514 | 5137DF59F8E2E0D535F41524ABDF070745A4FA25CD8DFD38A5FF30A95452B875 | ||
2515 | 6569E8812631300D79A942C563AF174AC05C9F2D09D7D5D3C605F5A6B7F21B34 | ||
2516 | 18F270A993B050838E701A17938D1C156CBA7CA4BAC7C562CE9D7B758EAB25A9 | ||
2517 | A6DFFC71F65561341847B776DF34061CE3D439B87B857626987EC93B3B95B8E8 | ||
2518 | 76FFB16B263675333FA10414FEED707FF7C366BF8B20FF8577CDEBEBCF1A5BCE | ||
2519 | 258C09C90175A5278B7C444A623E3331FDE5A6387B3E389540ED1E7E883958F3 | ||
2520 | 3A5C89CCD62256FA069DF4A5090FB17C1F1757C9209DAFB8A1F47182BF3E88D9 | ||
2521 | 0B5376B59EE165A761902759C8ED7F5AD301E7EB8B49CC09AF921DB45B7F8002 | ||
2522 | AB32E73AAE53942DE0F9175D8446017006C9C0B93EF39C13B7A879F2F6DDFF16 | ||
2523 | 204BB24F976847CF006FD29332FCCB255B5116F7077A44F7066C39C81DC4BAD2 | ||
2524 | 40DB2753626C0102E5D047522ABC38EA294A699B8DFD9CA0A7980561A1062E90 | ||
2525 | AB11EE286A9C238D9F721D9980D0A1828C2814972622D948CEE8C812C19A9A03 | ||
2526 | 608ED0AC138A436FFBF8BE3D1E66C87793416AF38ED9BC5424568A175FBDAA9E | ||
2527 | D6FC11A7021693819B051562B5A59F32629E2D6019D69DD329BE1894A2B295E1 | ||
2528 | 1DCE9683B29AE126C56F26E5C595BF1A8249BDE231DBE8B066F7F62EF149B975 | ||
2529 | A863969A4690504A5EA064721DA909B8157C0B39FBF8228D95CB655E406161E1 | ||
2530 | 2458 | EFDBC64ABD9B79386FB2427D1A63522195B1239C09F8CB3F8BD7A245A6DD82E3 | |
2459 | 260C3889587626DFC5F7978E55F5524ABD6A3319CDD3D3F40D040044D51DA4E1 | ||
2460 | 6797EEAC7AA07C77EC6DB0E6E182B545A8BEF63B14F3FC07BAC09E7CD5C17ED6 | ||
2461 | 10080704B0DA4E9BA12F968DF8A58458D17E9A5B1F14A83DC51F5B161ADEE1CC | ||
2462 | 0183D82ED92C6FC7203C289949EDF0284D9893029FF5408E421324625F17C3E5 | ||
2463 | 2437C8F75A9D68EE1AF9174FEA6FC6BF793C7D2E497EA90396CF1A645E283B69 | ||
2464 | 8425F47C323587DF91E1D596DCB1E3A787C955D9D965A5E3E26ADF58B62AD5F9 | ||
Max diff block lines reached; 31446/43336 bytes (72.56%) of diff not shown. |
Offset 17, 15 lines modified | Offset 17, 15 lines modified | ||
17 | ··················The·method·calls·itself·recursively.·To·find·the·permutation·for·an·n1·x·n2·x·n3·grid,·call\xd | 17 | ··················The·method·calls·itself·recursively.·To·find·the·permutation·for·an·n1·x·n2·x·n3·grid,·call\xd |
18 | ··················mkNDperm(n1,·n2,·n3,·newToOld,·0,·n1-1,·0,·n2-1,·0,·n3-1)·;\xd | 18 | ··················mkNDperm(n1,·n2,·n3,·newToOld,·0,·n1-1,·0,·n2-1,·0,·n3-1)·;\xd |
19 | ··················from·a·driver·program.\xd | 19 | ··················from·a·driver·program.\xd |
20 | ··················Error·checking:·If·n1,·n2·or·n3·are·less·than·or·equal·to·zero,·or·if·newToOld·is·NULL,·or·if\xd | 20 | ··················Error·checking:·If·n1,·n2·or·n3·are·less·than·or·equal·to·zero,·or·if·newToOld·is·NULL,·or·if\xd |
21 | ··················west,·south·or·bottom·are·less·than·or·equal·to·zero,·of·if·east·≥·n1,·of·if·north·≥·n2,·of·if\xd | 21 | ··················west,·south·or·bottom·are·less·than·or·equal·to·zero,·of·if·east·≥·n1,·of·if·north·≥·n2,·of·if\xd |
22 | ··················top·≥·n3,·an·error·message·is·printed·and·the·program·exits.\xd | 22 | ··················top·≥·n3,·an·error·message·is·printed·and·the·program·exits.\xd |
23 | ·······················································1\xd | 23 | ·······················································1\xd |
24 | ·······2··············Misc·:·DRAFT· | 24 | ·······2··············Misc·:·DRAFT·February·18,·2025\xd |
25 | ········2.·void·mkNDperm2·(·int·n1,·int·n2,·int·n3,·int·newToOld[],·int·west,\xd | 25 | ········2.·void·mkNDperm2·(·int·n1,·int·n2,·int·n3,·int·newToOld[],·int·west,\xd |
26 | ···················int·east,·int·south,·int·north,·int·bottom,·int·top·)·;\xd | 26 | ···················int·east,·int·south,·int·north,·int·bottom,·int·top·)·;\xd |
27 | ··········This·method·this·vector·fills·a·permutation·vector·with·the·nested·dissection·new-to-old\xd | 27 | ··········This·method·this·vector·fills·a·permutation·vector·with·the·nested·dissection·new-to-old\xd |
28 | ··········ordering·of·the·vertices·for·the·subgrid·defined·by·nodes·whose·coordinates·lie·in\xd | 28 | ··········ordering·of·the·vertices·for·the·subgrid·defined·by·nodes·whose·coordinates·lie·in\xd |
29 | ··········[west,·east]·x·[south,·north]·x·[bottom,·top].\xd | 29 | ··········[west,·east]·x·[south,·north]·x·[bottom,·top].\xd |
30 | ··········There·is·one·important·difference·between·this·method·and·mkNDperm()·above;·this·method\xd | 30 | ··········There·is·one·important·difference·between·this·method·and·mkNDperm()·above;·this·method\xd |
31 | ··········finds·double-wide·separators,·necessary·for·an·operator·with·more·than·nearest·neighbor·grid\xd | 31 | ··········finds·double-wide·separators,·necessary·for·an·operator·with·more·than·nearest·neighbor·grid\xd |
Offset 58, 15 lines modified | Offset 58, 15 lines modified | ||
58 | ··········tains·a·dsizes1[q1]·x·dsizes2[q2]·x·disizes3[q3]·subgrid·of·points.\xd | 58 | ··········tains·a·dsizes1[q1]·x·dsizes2[q2]·x·disizes3[q3]·subgrid·of·points.\xd |
59 | ··········Error·checking:·If·n1,·n2·or·n3·are·less·than·or·equal·to·zero,·or·if·p1,·p2·or·p3·are·less·than·or\xd | 59 | ··········Error·checking:·If·n1,·n2·or·n3·are·less·than·or·equal·to·zero,·or·if·p1,·p2·or·p3·are·less·than·or\xd |
60 | ··········equal·to·zero,·or·if·2p1−1·>·n1,·or·if·2p2−1·>·n2,·or·if·2p3−1·>·n3,·or·if·oldToNew·is·NULL,\xd | 60 | ··········equal·to·zero,·or·if·2p1−1·>·n1,·or·if·2p2−1·>·n2,·or·if·2p3−1·>·n3,·or·if·oldToNew·is·NULL,\xd |
61 | ··········or·if·dsizes1[],·disizes2[]·and·dsizes3[]·are·not·NULL·but·have·invalid·entries·(all·entries\xd | 61 | ··········or·if·dsizes1[],·disizes2[]·and·dsizes3[]·are·not·NULL·but·have·invalid·entries·(all·entries\xd |
62 | ··········must·be·positive,·entries·in·dsizes1[]·must·sum·to·n1·-·p1·+·1,·entries·in·dsizes2[]·must\xd | 62 | ··········must·be·positive,·entries·in·dsizes1[]·must·sum·to·n1·-·p1·+·1,·entries·in·dsizes2[]·must\xd |
63 | ··········sum·to·n2·-·p2·+·1,·and·entries·in·dsizes3[]·must·sum·to·n3·-·p3·+·1,·an·error·message\xd | 63 | ··········sum·to·n2·-·p2·+·1,·and·entries·in·dsizes3[]·must·sum·to·n3·-·p3·+·1,·an·error·message\xd |
64 | ··········is·printed·and·the·program·exits.\xd | 64 | ··········is·printed·and·the·program·exits.\xd |
65 | ······································Misc·:·DRAFT·· | 65 | ······································Misc·:·DRAFT··February·18,·2025···················3\xd |
66 | ··············5.·void·fp2DGrid·(·int·n1,·int·n2,·int·ivec[],·FILE·*fp·)·;\xd | 66 | ··············5.·void·fp2DGrid·(·int·n1,·int·n2,·int·ivec[],·FILE·*fp·)·;\xd |
67 | ·················This·method·writes·the·ivec[]·vector·onto·an·n1·x·n2·grid·to·file·fp.·This·is·useful·to\xd | 67 | ·················This·method·writes·the·ivec[]·vector·onto·an·n1·x·n2·grid·to·file·fp.·This·is·useful·to\xd |
68 | ·················visualize·an·ordering·or·a·metric·on·a·grid.\xd | 68 | ·················visualize·an·ordering·or·a·metric·on·a·grid.\xd |
69 | ·················Error·checking:·If·n1·or·n2·are·less·than·or·equal·to·zero,·or·if·ivec·or·fp·are·NULL,·an·error\xd | 69 | ·················Error·checking:·If·n1·or·n2·are·less·than·or·equal·to·zero,·or·if·ivec·or·fp·are·NULL,·an·error\xd |
70 | ·················message·is·printed·and·the·program·exits.\xd | 70 | ·················message·is·printed·and·the·program·exits.\xd |
71 | ··············6.·void·fp3DGrid·(·int·n1,·int·n2,·int·n3,·int·ivec[],·FILE·*fp·)·;\xd | 71 | ··············6.·void·fp3DGrid·(·int·n1,·int·n2,·int·n3,·int·ivec[],·FILE·*fp·)·;\xd |
72 | ·················This·method·writes·the·ivec[]·vector·onto·an·n1·x·n2·x·n3·grid·to·file·fp.·This·is·useful\xd | 72 | ·················This·method·writes·the·ivec[]·vector·onto·an·n1·x·n2·x·n3·grid·to·file·fp.·This·is·useful\xd |
Offset 96, 15 lines modified | Offset 96, 15 lines modified | ||
96 | ·················This·method·returns·a·front·tree·ETree·object·for·a·multiple·minimum·degree·ordering·of\xd | 96 | ·················This·method·returns·a·front·tree·ETree·object·for·a·multiple·minimum·degree·ordering·of\xd |
97 | ·················the·graph·graph.·The·seed·parameter·is·a·random·number·seed.·The·msglvl·and·msgFile\xd | 97 | ·················the·graph·graph.·The·seed·parameter·is·a·random·number·seed.·The·msglvl·and·msgFile\xd |
98 | ·················parameters·govern·the·diagnostics·output.·Use·msglvl·=·0·for·no·output,·msglvl·=·1·for\xd | 98 | ·················parameters·govern·the·diagnostics·output.·Use·msglvl·=·0·for·no·output,·msglvl·=·1·for\xd |
99 | ·················timings·and·scalar·statistics,·and·use·msglvl·>·1·with·care,·for·it·can·generate·huge·amounts\xd | 99 | ·················timings·and·scalar·statistics,·and·use·msglvl·>·1·with·care,·for·it·can·generate·huge·amounts\xd |
100 | ·················of·output.\xd | 100 | ·················of·output.\xd |
101 | ·················Error·checking:·If·graph·is·NULL,·or·if·msglvl·>·0·and·msgFile·is·NULL,·an·error·message·is\xd | 101 | ·················Error·checking:·If·graph·is·NULL,·or·if·msglvl·>·0·and·msgFile·is·NULL,·an·error·message·is\xd |
102 | ·················printed·and·the·program·exits.\xd | 102 | ·················printed·and·the·program·exits.\xd |
103 | ··············4····························Misc·:·DRAFT· | 103 | ··············4····························Misc·:·DRAFT·February·18,·2025\xd |
104 | ················2.·ETree·*·orderViaND·(·Graph·*graph,·int·maxdomainsize,·int·seed,\xd | 104 | ················2.·ETree·*·orderViaND·(·Graph·*graph,·int·maxdomainsize,·int·seed,\xd |
105 | ········································int·msglvl,·FILE·*msgFile·)·;\xd | 105 | ········································int·msglvl,·FILE·*msgFile·)·;\xd |
106 | ··················This·method·returns·a·front·tree·ETree·object·for·a·nested·dissection·ordering·of·the·graph\xd | 106 | ··················This·method·returns·a·front·tree·ETree·object·for·a·nested·dissection·ordering·of·the·graph\xd |
107 | ··················graph.·If·a·subgraph·has·more·vertices·than·the·maxdomainsize·parameter,·it·is·split.·The\xd | 107 | ··················graph.·If·a·subgraph·has·more·vertices·than·the·maxdomainsize·parameter,·it·is·split.·The\xd |
108 | ··················seed·parameter·is·a·random·number·seed.·The·msglvl·and·msgFile·parameters·govern\xd | 108 | ··················seed·parameter·is·a·random·number·seed.·The·msglvl·and·msgFile·parameters·govern\xd |
109 | ··················the·diagnostics·output.·Use·msglvl·=·0·for·no·output,·msglvl·=·1·for·timings·and·scalar\xd | 109 | ··················the·diagnostics·output.·Use·msglvl·=·0·for·no·output,·msglvl·=·1·for·timings·and·scalar\xd |
110 | ··················statistics,·and·use·msglvl·>·1·with·care,·for·it·can·generate·huge·amounts·of·output.\xd | 110 | ··················statistics,·and·use·msglvl·>·1·with·care,·for·it·can·generate·huge·amounts·of·output.\xd |
Offset 136, 15 lines modified | Offset 136, 15 lines modified | ||
136 | ·······································double·linewidth2,·double·radius,·char·*epsFileName,\xd | 136 | ·······································double·linewidth2,·double·radius,·char·*epsFileName,\xd |
137 | ·······································int·msglvl,·FILE·*msgFile·)·;\xd | 137 | ·······································int·msglvl,·FILE·*msgFile·)·;\xd |
138 | ··················This·method·is·used·to·create·an·EPS·(Encapsulated·Postscript)·file·that·contains·a·picture\xd | 138 | ··················This·method·is·used·to·create·an·EPS·(Encapsulated·Postscript)·file·that·contains·a·picture\xd |
139 | ··················of·a·graph·in·two·dimensions.·We·use·this·to·visualize·separators·and·domain·decompositions,\xd | 139 | ··················of·a·graph·in·two·dimensions.·We·use·this·to·visualize·separators·and·domain·decompositions,\xd |
140 | ··················mostly·of·regular·grids·and·triangulations·of·a·planar·region.\xd | 140 | ··················mostly·of·regular·grids·and·triangulations·of·a·planar·region.\xd |
141 | ··················The·graph·object·defines·the·connectivity·of·the·vertices.·The·coords·object·defines·the\xd | 141 | ··················The·graph·object·defines·the·connectivity·of·the·vertices.·The·coords·object·defines·the\xd |
142 | ··················locations·of·the·vertices.·The·tagsIV·object·is·used·to·define·whether·or·not·an·edge·is\xd | 142 | ··················locations·of·the·vertices.·The·tagsIV·object·is·used·to·define·whether·or·not·an·edge·is\xd |
143 | ······································Misc·:·DRAFT·· | 143 | ······································Misc·:·DRAFT··February·18,·2025···················5\xd |
144 | ·················drawn·between·two·vertices·adjacent·in·the·graph.·When·tagsIV·is·not·NULL,·if·there·is·an\xd | 144 | ·················drawn·between·two·vertices·adjacent·in·the·graph.·When·tagsIV·is·not·NULL,·if·there·is·an\xd |
145 | ·················edge·(u,v)·in·the·graph·and·tags[u]·=·tags[v],·then·the·edge·with·width·linewidth1·is\xd | 145 | ·················edge·(u,v)·in·the·graph·and·tags[u]·=·tags[v],·then·the·edge·with·width·linewidth1·is\xd |
146 | ·················drawn.·For·edges·(u,v)·in·the·graph·and·tags[u]·!=·tags[v],·then·the·edge·with·width\xd | 146 | ·················drawn.·For·edges·(u,v)·in·the·graph·and·tags[u]·!=·tags[v],·then·the·edge·with·width\xd |
147 | ·················linewidth2is·drawn,·assuming·linewidth2>·0.·If·tagsIV·is·NULL,·than·all·edges·are·drawn\xd | 147 | ·················linewidth2is·drawn,·assuming·linewidth2>·0.·If·tagsIV·is·NULL,·than·all·edges·are·drawn\xd |
148 | ·················with·width·linewidth1.·Each·vertex·is·draw·with·a·filled·circle·with·radius·radius.\xd | 148 | ·················with·width·linewidth1.·Each·vertex·is·draw·with·a·filled·circle·with·radius·radius.\xd |
149 | ·················The·graph·and·its·Coords·object·occupy·a·certain·area·in·2-D·space.·We·try·to·plot·the\xd | 149 | ·················The·graph·and·its·Coords·object·occupy·a·certain·area·in·2-D·space.·We·try·to·plot·the\xd |
150 | ·················graph·inside·the·area·defined·by·the·rect[]·array·in·such·a·manner·that·the·relative·scales\xd | 150 | ·················graph·inside·the·area·defined·by·the·rect[]·array·in·such·a·manner·that·the·relative·scales\xd |
Offset 177, 15 lines modified | Offset 177, 15 lines modified | ||
177 | ·······························InpMtx·**pmtxA,·DenseMtx·**pmtxX,·DenseMtx·**pmtxB·)·;\xd | 177 | ·······························InpMtx·**pmtxA,·DenseMtx·**pmtxX,·DenseMtx·**pmtxB·)·;\xd |
178 | ·················This·method·creates·a·linear·system·AX·=·B·for·a·natural·factor·formulation·of·a·n1×n2×n3\xd | 178 | ·················This·method·creates·a·linear·system·AX·=·B·for·a·natural·factor·formulation·of·a·n1×n2×n3\xd |
179 | ·················grid.·If·n1,·n2·and·n3·are·all·greater·than·1,·the·grid·is·formed·of·linear·hexahedral·elements\xd | 179 | ·················grid.·If·n1,·n2·and·n3·are·all·greater·than·1,·the·grid·is·formed·of·linear·hexahedral·elements\xd |
180 | ·················andthematrixAhas8*n1*n2*n3rows.·Ifoneofn1,n2andn3isequalto1,thegridisformed\xd | 180 | ·················andthematrixAhas8*n1*n2*n3rows.·Ifoneofn1,n2andn3isequalto1,thegridisformed\xd |
181 | ·················of·linear·quadrilateral·elements·and·the·matrix·A·has·4*n1*n2*n3·rows.·The·entries·in·A·and\xd | 181 | ·················of·linear·quadrilateral·elements·and·the·matrix·A·has·4*n1*n2*n3·rows.·The·entries·in·A·and\xd |
182 | ·················X·are·random·numbers,·B·is·computed·as·the·product·of·A·with·X.·A·can·be·real·(type·=\xd | 182 | ·················X·are·random·numbers,·B·is·computed·as·the·product·of·A·with·X.·A·can·be·real·(type·=\xd |
183 | ·················1)·or·complex·(type·=·2).·The·number·of·columns·of·X·is·given·by·nrhs.·The·linear·system\xd | 183 | ·················1)·or·complex·(type·=·2).·The·number·of·columns·of·X·is·given·by·nrhs.·The·linear·system\xd |
184 | ···········6·······················Misc·:·DRAFT· | 184 | ···········6·······················Misc·:·DRAFT·February·18,·2025\xd |
185 | ···············is·ordered·using·theoretical·nested·dissection,·and·the·front·tree·is·transformed·using·the\xd | 185 | ···············is·ordered·using·theoretical·nested·dissection,·and·the·front·tree·is·transformed·using·the\xd |
186 | ···············maxzeros·and·maxsize·parameters.·The·addresses·of·the·front·tree,·symbolic·factorization,\xd | 186 | ···············maxzeros·and·maxsize·parameters.·The·addresses·of·the·front·tree,·symbolic·factorization,\xd |
187 | ···············and·three·matrix·objects·are·returned·in·the·last·five·arguments·of·the·calling·sequence.\xd | 187 | ···············and·three·matrix·objects·are·returned·in·the·last·five·arguments·of·the·calling·sequence.\xd |
188 | ···············Error·checking:·None·presently.\xd | 188 | ···············Error·checking:·None·presently.\xd |
189 | ···········1.2··Driver·programs·found·in·the·Misc·directory\xd | 189 | ···········1.2··Driver·programs·found·in·the·Misc·directory\xd |
190 | ···········This·section·contains·brief·descriptions·of·the·driver·programs.\xd | 190 | ···········This·section·contains·brief·descriptions·of·the·driver·programs.\xd |
191 | ·············1.·testNDperm·msglvl·msgFile·n1·n2·n3·outPermFile\xd | 191 | ·············1.·testNDperm·msglvl·msgFile·n1·n2·n3·outPermFile\xd |
Offset 215, 15 lines modified | Offset 215, 15 lines modified | ||
215 | ···················*.graphfor*.graphb.·TheGraphobjectisreadfromthefileviatheGraph·readFromFile()\xd | 215 | ···················*.graphfor*.graphb.·TheGraphobjectisreadfromthefileviatheGraph·readFromFile()\xd |
216 | ···················method.\xd | 216 | ···················method.\xd |
217 | ·················•·The·seed·parameter·is·a·random·number·seed.\xd | 217 | ·················•·The·seed·parameter·is·a·random·number·seed.\xd |
218 | ·················•·The·ETreeFile·parameter·is·the·output·file·for·the·ETree·object.·If·ETreeFile·is·none\xd | 218 | ·················•·The·ETreeFile·parameter·is·the·output·file·for·the·ETree·object.·If·ETreeFile·is·none\xd |
219 | ···················then·the·ETree·object·is·not·written·to·a·file.·Otherwise,·the·ETree·writeToFile()\xd | 219 | ···················then·the·ETree·object·is·not·written·to·a·file.·Otherwise,·the·ETree·writeToFile()\xd |
220 | ···················method·is·called·to·write·the·object·to·a·formatted·file·(if·ETreeFile·is·of·the·form\xd | 220 | ···················method·is·called·to·write·the·object·to·a·formatted·file·(if·ETreeFile·is·of·the·form\xd |
221 | ···················*.etreef),·or·a·binary·file·(if·ETreeFile·is·of·the·form·*.etreeb).\xd | 221 | ···················*.etreef),·or·a·binary·file·(if·ETreeFile·is·of·the·form·*.etreeb).\xd |
222 | ······································Misc·:·DRAFT·· | 222 | ······································Misc·:·DRAFT··February·18,·2025···················7\xd |
223 | ··············3.·testOrderViaND·msglvl·msgFile·GraphFile·maxdomainsize·seed·ETreeFile\xd | 223 | ··············3.·testOrderViaND·msglvl·msgFile·GraphFile·maxdomainsize·seed·ETreeFile\xd |
224 | ·················This·program·reads·in·a·Graph·object·from·a·file·and·computes·a·generalized·nested·dissection\xd | 224 | ·················This·program·reads·in·a·Graph·object·from·a·file·and·computes·a·generalized·nested·dissection\xd |
225 | ·················ordering·of·the·graph.\xd | 225 | ·················ordering·of·the·graph.\xd |
226 | ···················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd | 226 | ···················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd |
227 | ·····················the·Perm·object·is·written·to·the·output·file.\xd | 227 | ·····················the·Perm·object·is·written·to·the·output·file.\xd |
228 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd | 228 | ···················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd |
229 | ·····················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd | 229 | ·····················message·file·is·stdout,·otherwise·a·file·is·opened·with·append·status·to·receive·any·output\xd |
Offset 254, 15 lines modified | Offset 254, 15 lines modified | ||
254 | ···················•·The·seed·parameter·is·a·random·number·seed.\xd | 254 | ···················•·The·seed·parameter·is·a·random·number·seed.\xd |
255 | ···················•·The·ETreeFile·parameter·is·the·output·file·for·the·ETree·object.·If·ETreeFile·is·none\xd | 255 | ···················•·The·ETreeFile·parameter·is·the·output·file·for·the·ETree·object.·If·ETreeFile·is·none\xd |
256 | ·····················then·the·ETree·object·is·not·written·to·a·file.·Otherwise,·the·ETree·writeToFile()\xd | 256 | ·····················then·the·ETree·object·is·not·written·to·a·file.·Otherwise,·the·ETree·writeToFile()\xd |
257 | ·····················method·is·called·to·write·the·object·to·a·formatted·file·(if·ETreeFile·is·of·the·form\xd | 257 | ·····················method·is·called·to·write·the·object·to·a·formatted·file·(if·ETreeFile·is·of·the·form\xd |
258 | ·····················*.etreef),·or·a·binary·file·(if·ETreeFile·is·of·the·form·*.etreeb).\xd | 258 | ·····················*.etreef),·or·a·binary·file·(if·ETreeFile·is·of·the·form·*.etreeb).\xd |
259 | ··············5.·drawGraph·msglvl·msgFile·inGraphFile·inCoordsFile·inTagsIVfile\xd | 259 | ··············5.·drawGraph·msglvl·msgFile·inGraphFile·inCoordsFile·inTagsIVfile\xd |
260 | ··························outEPSfile·linewidth1·linewidth2·bbox[4]·rect[4]·radius\xd | 260 | ··························outEPSfile·linewidth1·linewidth2·bbox[4]·rect[4]·radius\xd |
261 | ··············8······························Misc·:·DRAFT· | 261 | ··············8······························Misc·:·DRAFT·February·18,·2025\xd |
262 | ···················This·driver·program·generates·a·Encapsulated·Postscript·file·outEPSfile·of·a·2-D·graph\xd | 262 | ···················This·driver·program·generates·a·Encapsulated·Postscript·file·outEPSfile·of·a·2-D·graph\xd |
263 | ···················using·a·Graph·object,·a·Coords·object·and·a·tags·IV·object·that·contains·the·component·ids\xd | 263 | ···················using·a·Graph·object,·a·Coords·object·and·a·tags·IV·object·that·contains·the·component·ids\xd |
264 | ···················of·the·vertices.\xd | 264 | ···················of·the·vertices.\xd |
265 | ···················See·the·doDraw·script·file·in·this·directory·for·an·example·calling·sequence.\xd | 265 | ···················See·the·doDraw·script·file·in·this·directory·for·an·example·calling·sequence.\xd |
266 | ······················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd | 266 | ······················•·The·msglvl·parameter·determines·the·amount·of·output·—·taking·msglvl·>=·3·means\xd |
267 | ························that·all·objects·are·written·to·the·output·file.\xd | 267 | ························that·all·objects·are·written·to·the·output·file.\xd |
268 | ······················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd | 268 | ······················•·The·msgFile·parameter·determines·the·message·file·—·if·msgFile·is·stdout,·then·the\xd |
Offset 293, 17 lines modified | Offset 293, 17 lines modified | ||
293 | ···················See·Figure·1.1·for·a·plot·of·the·graph·of·R2D100,·a·randomly·triangulated·grid·with·100\xd | 293 | ···················See·Figure·1.1·for·a·plot·of·the·graph·of·R2D100,·a·randomly·triangulated·grid·with·100\xd |
294 | ···················vertices·with·linewidth1·=·3.·Figure·1.2·illustrates·a·domain·decomposition·obtained·from\xd | 294 | ···················vertices·with·linewidth1·=·3.·Figure·1.2·illustrates·a·domain·decomposition·obtained·from\xd |
295 | ···················the·fishnet·algorithm·of·Chapter·??·with·linewidth1·=·3·and·linewidth2·=·0.1.\xd | 295 | ···················the·fishnet·algorithm·of·Chapter·??·with·linewidth1·=·3·and·linewidth2·=·0.1.\xd |
296 | ·················6.·testSemi·msglvl·msgFile·GraphFile·ETreeFile·mapFile\xd | 296 | ·················6.·testSemi·msglvl·msgFile·GraphFile·ETreeFile·mapFile\xd |
297 | ···················This·program·is·used·to·compute·the·effect·of·using·a·semi-implicit·factorization·to·solve\xd | 297 | ···················This·program·is·used·to·compute·the·effect·of·using·a·semi-implicit·factorization·to·solve\xd |
298 | ·········································AX="·A0,0·A0,1·#"·X0·#="·B0·#=B.\xd | 298 | ·········································AX="·A0,0·A0,1·#"·X0·#="·B0·#=B.\xd |
299 | ·················································A1,0··A1,1····X1········B1\xd | 299 | ·················································A1,0··A1,1····X1········B1\xd |
300 | ······································Misc·:·DRAFT·· | 300 | ······································Misc·:·DRAFT··February·18,·2025···················9\xd |
301 | ··········································Figure·1.1:·R2D100\xd | 301 | ··········································Figure·1.1:·R2D100\xd |
302 | ··············10····························Misc·:·DRAFT· | 302 | ··············10····························Misc·:·DRAFT·February·18,·2025\xd |
303 | ································Figure·1.2:·R2D100:·fishnet·domain·decomposition\xd | 303 | ································Figure·1.2:·R2D100:·fishnet·domain·decomposition\xd |
304 | ································3····3·····3····3·····3····3·····3····0·····0·····5\xd | 304 | ································3····3·····3····3·····3····3·····3····0·····0·····5\xd |
305 | ·········································3\xd | 305 | ·········································3\xd |
306 | ································3·················3····3·······0··················0\xd | 306 | ································3·················3····3·······0··················0\xd |
307 | ·······················································3·3\xd | 307 | ·······················································3·3\xd |
Max diff block lines reached; 6519/18329 bytes (35.57%) of diff not shown. |