Offset 1, 5 lines modified | Offset 1, 5 lines modified | ||
1 | ·01a64e0370d945ef0f7caee44cbe16ca·593508·libdevel·optional·libspooles-dev_2.2-14_amd64.deb | 1 | ·01a64e0370d945ef0f7caee44cbe16ca·593508·libdevel·optional·libspooles-dev_2.2-14_amd64.deb |
2 | ·736f29649e332d6798507f29b7cb838e·1353112·debug·optional·libspooles2.2-dbgsym_2.2-14_amd64.deb | 2 | ·736f29649e332d6798507f29b7cb838e·1353112·debug·optional·libspooles2.2-dbgsym_2.2-14_amd64.deb |
3 | ·040fafef9db32df4de23b43ac09bfda7·459684·libs·optional·libspooles2.2_2.2-14_amd64.deb | 3 | ·040fafef9db32df4de23b43ac09bfda7·459684·libs·optional·libspooles2.2_2.2-14_amd64.deb |
4 | · | 4 | ·c31a4ebc9e19b11845338f269b25d40f·8111028·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·····1952·2018-12-19·22:56:58.000000·control.tar.xz | 2 | -rw-r--r--···0········0········0·····1952·2018-12-19·22:56:58.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0··81 | 3 | -rw-r--r--···0········0········0··8108884·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:·81 | 6 | Installed-Size:·8177 |
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)···151 | 6 | -rw-r--r--···0·root·········(0)·root·········(0)···151807·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)···31 | 8 | -rw-r--r--···0·root·········(0)·root·········(0)···311822·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/AllInOne.ps.gz |
9 | -rw-r--r--···0·root·········(0)·root·········(0)···127 | 9 | -rw-r--r--···0·root·········(0)·root·········(0)···127684·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/BKL.ps.gz |
10 | -rw-r--r--···0·root·········(0)·root·········(0)···15 | 10 | -rw-r--r--···0·root·········(0)·root·········(0)···155900·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)···190111·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Chv.ps.gz |
12 | -rw-r--r--···0·root·········(0)·root·········(0)···100 | 12 | -rw-r--r--···0·root·········(0)·root·········(0)···100773·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)····94465·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ChvManager.ps.gz |
14 | -rw-r--r--···0·root·········(0)·root·········(0)···120 | 14 | -rw-r--r--···0·root·········(0)·root·········(0)···120723·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Coords.ps.gz |
15 | -rw-r--r--···0·root·········(0)·root·········(0)···115 | 15 | -rw-r--r--···0·root·········(0)·root·········(0)···115752·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/DSTree.ps.gz |
16 | -rw-r--r--···0·root·········(0)·root·········(0)···13 | 16 | -rw-r--r--···0·root·········(0)·root·········(0)···133866·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/DV.ps.gz |
17 | -rw-r--r--···0·root·········(0)·root·········(0)···117 | 17 | -rw-r--r--···0·root·········(0)·root·········(0)···117557·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)···107357·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)···121396·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/EGraph.ps.gz |
20 | -rw-r--r--···0·root·········(0)·root·········(0)···220 | 20 | -rw-r--r--···0·root·········(0)·root·········(0)···220787·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ETree.ps.gz |
21 | -rw-r--r--···0·root·········(0)·root·········(0)···254 | 21 | -rw-r--r--···0·root·········(0)·root·········(0)···254150·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)···179450·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/FrontMtx.ps.gz |
23 | -rw-r--r--···0·root·········(0)·root·········(0)···275 | 23 | -rw-r--r--···0·root·········(0)·root·········(0)···275359·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)···184337·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/GPart.ps.gz |
25 | -rw-r--r--···0·root·········(0)·root·········(0)···1 | 25 | -rw-r--r--···0·root·········(0)·root·········(0)···189930·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Graph.ps.gz |
26 | -rw-r--r--···0·root·········(0)·root·········(0)···131 | 26 | -rw-r--r--···0·root·········(0)·root·········(0)···131785·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/I2Ohash.ps.gz |
27 | -rw-r--r--···0·root·········(0)·root·········(0)···109 | 27 | -rw-r--r--···0·root·········(0)·root·········(0)···109732·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)···121532·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)···124457·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)····95438·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Ideq.ps.gz |
31 | -rw-r--r--···0·root·········(0)·root·········(0)···20 | 31 | -rw-r--r--···0·root·········(0)·root·········(0)···204829·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/InpMtx.ps.gz |
32 | -rw-r--r--···0·root·········(0)·root·········(0)···283 | 32 | -rw-r--r--···0·root·········(0)·root·········(0)···283054·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)····89254·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)···176282·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)···168475·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)···163221·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)···146309·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)···143370·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)···124515·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)···107033·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Perm.ps.gz |
41 | -rw-r--r--···0·root·········(0)·root·········(0)···91 | 41 | -rw-r--r--···0·root·········(0)·root·········(0)···910637·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ReferenceManual.ps.gz |
42 | -rw-r--r--···0·root·········(0)·root·········(0)···15 | 42 | -rw-r--r--···0·root·········(0)·root·········(0)···152850·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SemiImplMtx.ps.gz |
43 | -rw-r--r--···0·root·········(0)·root·········(0)···134 | 43 | -rw-r--r--···0·root·········(0)·root·········(0)···134443·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)···175545·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)···101424·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SubMtxList.ps.gz |
46 | -rw-r--r--···0·root·········(0)·root·········(0)···117 | 46 | -rw-r--r--···0·root·········(0)·root·········(0)···117611·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SubMtxManager.ps.gz |
47 | -rw-r--r--···0·root·········(0)·root·········(0)···120 | 47 | -rw-r--r--···0·root·········(0)·root·········(0)···120748·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/SymbFac.ps.gz |
48 | -rw-r--r--···0·root·········(0)·root·········(0)···167 | 48 | -rw-r--r--···0·root·········(0)·root·········(0)···167792·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)···190070·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/Utilities.ps.gz |
50 | -rw-r--r--···0·root·········(0)·root·········(0)···127 | 50 | -rw-r--r--···0·root·········(0)·root·········(0)···127741·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/ZV.ps.gz |
51 | -rw-r--r--···0·root·········(0)·root·········(0)·····1881·2018-12-19·22:56:58.000000·./usr/share/doc/spooles-doc/changelog.Debian.gz | 51 | -rw-r--r--···0·root·········(0)·root·········(0)·····1881·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)···18 | 53 | -rw-r--r--···0·root·········(0)·root·········(0)···188884·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 | 56 | -rw-r--r--···0·root·········(0)·root·········(0)······430·2018-12-19·22:56:58.000000·./usr/share/doc-base/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·2024.01.07:0424 |
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 2061, 21 lines modified | Offset 2061, 20 lines modified | ||
2061 | /UnderlineThickness·50·def | 2061 | /UnderlineThickness·50·def |
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·50·/two·put | 2067 | dup·50·/two·put |
2068 | dup·52·/four·put | ||
2068 | dup·5 | 2069 | dup·55·/seven·put |
2069 | dup·56·/eight·put | ||
2070 | dup·58·/colon·put | 2070 | dup·58·/colon·put |
2071 | dup·7 | 2071 | dup·74·/J·put |
2072 | dup·97·/a·put | 2072 | dup·97·/a·put |
2073 | dup·98·/b·put | ||
2074 | dup·1 | 2073 | dup·110·/n·put |
2075 | dup·114·/r·put | 2074 | dup·114·/r·put |
2076 | dup·117·/u·put | 2075 | dup·117·/u·put |
2077 | dup·121·/y·put | 2076 | dup·121·/y·put |
2078 | readonly·def | 2077 | readonly·def |
2079 | currentdict·end | 2078 | currentdict·end |
2080 | currentfile·eexec | 2079 | currentfile·eexec |
2081 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2080 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2259, 88 lines modified | Offset 2258, 83 lines modified | ||
2259 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2258 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2260 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2259 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2261 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2260 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2262 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2261 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2263 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2262 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2264 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2263 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2265 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2264 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2266 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2265 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2266 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2267 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2268 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2269 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2270 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2271 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2272 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2273 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2274 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2275 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2276 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2277 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2278 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2279 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2280 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2281 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2282 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2283 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2284 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2285 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2286 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2287 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2288 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2289 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2290 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2291 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2292 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2293 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2294 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2295 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2296 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2297 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2298 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2299 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2300 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2301 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2302 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2303 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2304 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2305 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2306 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2307 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2308 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2309 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2310 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2311 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2312 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2313 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2314 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2315 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2316 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2317 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2318 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2319 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2320 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2321 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2322 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2323 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2324 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2325 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2326 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2327 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2328 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2329 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2330 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2331 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2332 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2267 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2268 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2269 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2270 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2271 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2272 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2273 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2274 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2275 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2276 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2277 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2278 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 21956/33079 bytes (66.37%) 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·January·7,·2024\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··January·7,·2024························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·································A2·:·DRAFT· | 100 | ··············4·································A2·:·DRAFT·January·7,·2024\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··January·7,·2024························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·January·7,·2024\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··January·7,·2024························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·January·7,·2024\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··January·7,·2024························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; 3016/14072 bytes (21.43%) of diff not shown. |
Offset 12, 15 lines modified | Offset 12, 15 lines modified | ||
12 | %%EndComments | 12 | %%EndComments |
13 | %%BeginDefaults | 13 | %%BeginDefaults |
14 | %%ViewingOrientation:·1·0·0·1 | 14 | %%ViewingOrientation:·1·0·0·1 |
15 | %%EndDefaults | 15 | %%EndDefaults |
16 | %DVIPSWebPage:·(www.radicaleye.com) | 16 | %DVIPSWebPage:·(www.radicaleye.com) |
17 | %DVIPSCommandLine:·dvips·main·-o·AllInOne.ps | 17 | %DVIPSCommandLine:·dvips·main·-o·AllInOne.ps |
18 | %DVIPSParameters:·dpi=600 | 18 | %DVIPSParameters:·dpi=600 |
19 | %DVIPSSource:··TeX·output·202 | 19 | %DVIPSSource:··TeX·output·2024.01.07:0424 |
20 | %%BeginProcSet:·tex.pro·0·0 | 20 | %%BeginProcSet:·tex.pro·0·0 |
21 | %! | 21 | %! |
22 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 22 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
23 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 23 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
24 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 24 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
25 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 25 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
26 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 26 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 2705, 30 lines modified | Offset 2705, 28 lines modified | ||
2705 | end·readonly·def | 2705 | end·readonly·def |
2706 | /Encoding·256·array | 2706 | /Encoding·256·array |
2707 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2707 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2708 | dup·44·/comma·put | 2708 | dup·44·/comma·put |
2709 | dup·46·/period·put | 2709 | dup·46·/period·put |
2710 | dup·48·/zero·put | 2710 | dup·48·/zero·put |
2711 | dup·50·/two·put | 2711 | dup·50·/two·put |
2712 | dup·52·/four·put | ||
2712 | dup·5 | 2713 | dup·55·/seven·put |
2713 | dup·56·/eight·put | ||
2714 | dup·61·/equal·put | 2714 | dup·61·/equal·put |
2715 | dup·65·/A·put | 2715 | dup·65·/A·put |
2716 | dup·66·/B·put | 2716 | dup·66·/B·put |
2717 | dup·67·/C·put | 2717 | dup·67·/C·put |
2718 | dup·68·/D·put | 2718 | dup·68·/D·put |
2719 | dup·70·/F·put | ||
2720 | dup·71·/G·put | 2719 | dup·71·/G·put |
2721 | dup·74·/J·put | 2720 | dup·74·/J·put |
2722 | dup·75·/K·put | 2721 | dup·75·/K·put |
2723 | dup·80·/P·put | 2722 | dup·80·/P·put |
2724 | dup·82·/R·put | 2723 | dup·82·/R·put |
2725 | dup·87·/W·put | 2724 | dup·87·/W·put |
2726 | dup·97·/a·put | 2725 | dup·97·/a·put |
2727 | dup·98·/b·put | ||
2728 | dup·99·/c·put | 2726 | dup·99·/c·put |
2729 | dup·101·/e·put | 2727 | dup·101·/e·put |
2730 | dup·102·/f·put | 2728 | dup·102·/f·put |
2731 | dup·103·/g·put | 2729 | dup·103·/g·put |
2732 | dup·104·/h·put | 2730 | dup·104·/h·put |
2733 | dup·105·/i·put | 2731 | dup·105·/i·put |
2734 | dup·107·/k·put | 2732 | dup·107·/k·put |
Offset 2924, 216 lines modified | Offset 2922, 203 lines modified | ||
2924 | 66D4EBC86C0DF27B789D5597FE88BCDAD2925CFF60F5A8EA618FE867857D585A | 2922 | 66D4EBC86C0DF27B789D5597FE88BCDAD2925CFF60F5A8EA618FE867857D585A |
2925 | CE25A158AED63B8FE391030C518693AEC75AC0AADD0C11B0065E2ABCF51132F3 | 2923 | CE25A158AED63B8FE391030C518693AEC75AC0AADD0C11B0065E2ABCF51132F3 |
2926 | 82E3718B9A9FAAF727F2D8286177EE27BAD040C66D0D2D7C092B45D9330265B5 | 2924 | 82E3718B9A9FAAF727F2D8286177EE27BAD040C66D0D2D7C092B45D9330265B5 |
2927 | 6B5C8E29F71C9EF548BFA4BAFAB242B26455E4B7FC1882D68E408D25E6F58EC3 | 2925 | 6B5C8E29F71C9EF548BFA4BAFAB242B26455E4B7FC1882D68E408D25E6F58EC3 |
2928 | 046AAFC52C182BDCD36034FD58E8B379C9F2BD16FA6FBB8C455E36A1BEA8F803 | 2926 | 046AAFC52C182BDCD36034FD58E8B379C9F2BD16FA6FBB8C455E36A1BEA8F803 |
2929 | 2AC069379392D74A6E8DD64AAC6FB5E7EE151EE99AF33B1D9E55C5C8D601EEB7 | 2927 | 2AC069379392D74A6E8DD64AAC6FB5E7EE151EE99AF33B1D9E55C5C8D601EEB7 |
2930 | 2C194E090D261E86199D6576EC00044C87B3E79C39B4CBCBF391B78C1E9D17AE | 2928 | 2C194E090D261E86199D6576EC00044C87B3E79C39B4CBCBF391B78C1E9D17AE |
2929 | FC99092341499E3160303A869929280E672C29204632974124DE524092221775 | ||
2930 | 1ECA4A30DF02B58740DCC4BA984CB0AF7F0ED7642F310CA9C8DE9DD1ABA550D5 | ||
2931 | 0CB05C0AAC0D6FD8A162B1819417381F9FE61C6C969A9F1B90540850B1987ACB | ||
2932 | 78AFA3A7CB4777BE09789E016B56B6703DA49888701BB3E62C71C23BC4836E53 | ||
2933 | 36B08C6D7989C5CC88FBAF42D988B7C84C0BFBD1515B88EA7EDCDA0F7A90A3EF | ||
2934 | 3399B19919992B3061D71E2CA9D5EB3DAD40B23A8F46B22D97DCFB1F59C6191E | ||
2935 | 1F10115669CD6CC05A4BE4F7AC5252F4EF69041831C805F18C467E3897BD934E | ||
2936 | 535073A5F07092528A564245005C2D3DE8FB7C0766724A17C870AA8BA5D92B60 | ||
2937 | B0405DFD157AC0E2EAC29B4C646EF47AC3073866DBAF844C997648F5F8BB467A | ||
2938 | D743E84DC558A7EA03F24E67261C753FABE4EE9F7BF298980F3DCDB668261517 | ||
2939 | 137A75D73525BDA305A66D6BF225C9B4D364CBBBA5632674384228DE6841A1FB | ||
2940 | 48EE0B15B9A6B45EEE1DA7CD1310748F82FFEE4C84A9A10FD47101CE606D24F0 | ||
2941 | FFA5ED3AA1888774548C9D05F89F613E7F628CE0E1652C4F223C68A298EE07A1 | ||
2942 | 0D6136CB6F635E8C7DE8082FC196ACB13047A403D600A49291D8B3B3A95898EA | ||
2943 | 1C8C4063BA11CB33F0FF9ED593174ED95D3F165C07429025F24BFB5562127CF2 | ||
2944 | 7520479CFC3D1EF27519B5CE86B34D103B480152490503FAADD39454B53EDD82 | ||
2945 | 2DF982880409FA1F644FE5B7CAEF4F81C03FC3BC37F9BEA2606C5D4ADE9FCF95 | ||
2946 | 2A123FA37505B0C43C71FDB476B8E98B8465A0F8C7509F5F23C7E71FBFAD315C | ||
2947 | 655EC95F6A8B201FD4A3C7F164450C605E63759D23DD2D2BBFF03F9A20C47BBA | ||
2948 | 74A81926D67F12F8966C60C3C4088B697754025937D4D381BA857604B7B059E9 | ||
2949 | 2BA7C437DEFA6BF9110A8503F666FF95A315C53FAFB6B2DC9BFFAF94356B37D3 | ||
2950 | 51D4A88908E12FDD2EFC9559D9633642700756B8D8E0F198368136F13A48412E | ||
2951 | 8E087D26FF183367AAED3C1E09A21E3DBF1F73F4AA1A6ECC21B1059097B3816E | ||
2952 | 00FB0288B1D0E8F8F840965320EC73D260A5635E6423ABC503CF9A7A8B20A2B2 | ||
2953 | D95A159A29F0207DABB7DAD7187EFF159AAE862B0D6719079991D4BFFD96E392 | ||
2954 | D829E1CDA0AE55557AB084C1740C52A4F752AA0B0EEAEE5C3F155F1DB3D859C9 | ||
2955 | 41E4F28D42CD273D67E589DE38FF0C5EA845B9276D1CC41BA0C3A9CA03BEFB13 | ||
2956 | C5AD17C96FFE4D99686BC5F22CBF2DA61B3181054CF163DF1763B96B56A9FCA3 | ||
2957 | 4BBBE52DE255800C117ABD79600B39F641D88C9117C97533A5AED2BDE7B5C72F | ||
2958 | 4CA81A8C76E3524E1F5A3C12045278CA23137504626BC111BD6F4E514677FFE5 | ||
2959 | 18EF9D4D2380E572FA2452671F0A26F4E080A506EA0A776D78FD65D2C8AC8E06 | ||
2960 | 8E9CBF6C24647C4D6AD17F4771CE939924A8026F0FC929B8E0351F9CA3C010FA | ||
2961 | D4F834691176FEDCB2E1C1453F79FDB27F1D64DD1ACCEE128EF5DECB43AE3942 | ||
2962 | F38C5B690EDF00F3FE8BF9861E13F99B17E8D2E451A8F1802078DB9D9B5D9136 | ||
2963 | AC1D335C007EBEE4C1FCEE9159DDC92DFC8C2E15216A7C0D824FA78FA84D891E | ||
2964 | 6189E2766CAD6D6C881983BD306070EE37D13A90F622A00BEF7116C905CDB4E1 | ||
2965 | 895DC32C56F9AE2DF1D4773705EF1BEB4FE9BBBDAE3B4EBB698E63E4052405C0 | ||
2966 | 206D4C3FE1BFD33ECFB9E6A120EF17DFDEA2EEBD275AF5BBC8221F5B71F51D63 | ||
2967 | 649D694206B574E3EFB88D9994D707DA3D18818645CE8D78B229E60647FC08EB | ||
2968 | E77D1114ADA3FE5ECD29AD623B21E930E4EA4669620FE7839C947F2690B651A0 | ||
2969 | 42C9296947DB79D4CB018127129E7B0FD831AACC72C6D331A2EE6939E0103A28 | ||
2970 | 22D9CF16D15EC2432BC5DC83EDA59D874B3947FFB8302F87D6BA41F2D4CA85CA | ||
2971 | 84814193E3325E9DA22A5A9F0AF66BFAF36A1B4440D00CD058C9D9C8F3C71DE5 | ||
2972 | 616F770FA85D14F44F45F01FD0E1C02D3387F2BC4F9955C12EF2D9AFC3C59A6C | ||
2973 | 170C2A505D61573DF18AFCFD90C58727BCEAE2D381898E0C8C20D87A76998850 | ||
2974 | EDD32AE8D9B50DF0873F6646FC78057C773FC9059223CF52054067976D80FA7F | ||
2975 | CF5E214D22FD313EA45E0783F01D315100BD6B80CD4168DAD79AED62E30C5170 | ||
2976 | F564147897E62B73996CF105948752A1D111BDE1C2F596AE60A64619FD4B839A | ||
2977 | 8BBD3055F31A2842082DA3CF2DF26266C60D10CF751846DCB33C35C664946700 | ||
2978 | 60B23C2DC0FE01C2F6D2AB4C1D7CB2DABC107F50B9171CA54CE705A608BBD3D4 | ||
2979 | 54DC28CD75B6F698BABE3A6E580DD820A15FD40C03C8ABDD88CC565244BD2837 | ||
2980 | 6CF7979F55B4260CED5CB2EA9064A93140FD3021A555C22D0738A0909B2E8A0A | ||
2981 | FF9486C60AEF29DFEECE8DABD6864C3B9853178274BF0D6FA2AE09A57D22F35D | ||
2982 | 73DF40B4E922D52257CA5702C741D9CEDF1C596B6C970B8FB1C5A3285E9F4DA1 | ||
2983 | D4231D91DAE07A2C6AE8BB86FC3A6C77171E7053C4AB05EFC13C28AFA0B75963 | ||
2984 | 79C87AE6CFFDCB2F113E40CCFE47EF42B3CF3A00E0AFF57371E7F1E51531DE22 | ||
2985 | 7CECD228E351198586C65A62B9356C9D04E33C5585CF8EC714F7FA3DFEC04429 | ||
2986 | A37E314B395A1FF90D11AC1874840551EBAAF5FC9D523CE0E1F146F4079575AD | ||
2987 | D52ABD305A50E65D87FA0DFE971BE6ABF9DA46F5CC5A4CFD6990A15EC486CAD0 | ||
2988 | 8A76DE11A55D5688B9174789029A78798EF97BBBD3218797FC2D76C0CC07CE91 | ||
2989 | FDC4A8A70FDF7BD7D9DC4A8262FC8576AF47EF7564D90AADF3470D305BEEB082 | ||
2990 | 506C0D7676BAD3D2BFC324BD6B6BA40D42AB1738467A6023EAEC1D68480CB0D0 | ||
2991 | F9CB44FC6D38910E47B9624E2F8DDFEBD3BD946107D3FE3C14FDDB92C5694DD2 | ||
2992 | C8EE46EA8A69E2DAD328E951A654A8D1323F66B13AD1ADF3FA27221545E7C8AB | ||
2993 | 45D36D91B3D172E7009AF9BAB4172665D69D273C3C8C864BBE91C1B216B916A9 | ||
2994 | 7A22629CB723A475173065249E59D82B6EC3E96C43A8ABFE265B1879054CD3DB | ||
2995 | 55EF0177A7B420A299A2494B5D80847B99BA1246F11F0DBC69DD7782317F1E4E | ||
2996 | 0828FD61CA1188D34D0F39961C12DBDAD1B28267CF8963A928BABF2EEE434045 | ||
2997 | 949627C3AE4393C1F3EEE7DD835E336B3E6BDB278F97331019B889E368C5F39F | ||
2998 | A4DA02E53649DE2AF01DB925663594AA8DFF9B278999337BE1C4E876568CA46D | ||
2999 | 1A7B566756242AC17334E8A3A297854860E42AFF78F18DF609DB3A1A7FFC5BDE | ||
3000 | 737BF59DF7FD912B5A27BD638BDB34C82C6691FDBCF02AB238BE7B954399EAEE | ||
Max diff block lines reached; 172767/200284 bytes (86.26%) of diff not shown. |
Offset 1, 16 lines modified | Offset 1, 16 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 | ·····················································January·7,·2024\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 |
9 | ···················2···········SPOOLES·2.2·—·Solving·Linear·Systems······················································· | 9 | ···················2···········SPOOLES·2.2·—·Solving·Linear·Systems························································January·7,·2024\xd |
10 | ···················Contents\xd | 10 | ···················Contents\xd |
11 | ···················1·Overview··············································································································4\xd | 11 | ···················1·Overview··············································································································4\xd |
12 | ···················2·Serial·Solution·of·AX·=·Y·using·an·LU·factorization···································································6\xd | 12 | ···················2·Serial·Solution·of·AX·=·Y·using·an·LU·factorization···································································6\xd |
13 | ·······················2.1···Reading·the·input·parameters·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········6\xd | 13 | ·······················2.1···Reading·the·input·parameters·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········6\xd |
14 | ·······················2.2···Communicating·the·data·for·the·problem·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··············6\xd | 14 | ·······················2.2···Communicating·the·data·for·the·problem·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··············6\xd |
15 | ·······················2.3···Reordering·the·linear·system·······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.····9\xd | 15 | ·······················2.3···Reordering·the·linear·system·······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.····9\xd |
16 | ·······················2.4···Non-numeric·work·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········9\xd | 16 | ·······················2.4···Non-numeric·work·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········9\xd |
Offset 39, 18 lines modified | Offset 39, 18 lines modified | ||
39 | ·······················5.3···Reordering·the·linear·system·······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···21\xd | 39 | ·······················5.3···Reordering·the·linear·system·······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···21\xd |
40 | ·······················5.4···Non-numeric·work·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·········21\xd | 40 | ·······················5.4···Non-numeric·work·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·········21\xd |
41 | ·······················5.5···The·Matrix·Factorization·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·········22\xd | 41 | ·······················5.5···The·Matrix·Factorization·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·········22\xd |
42 | ·······················5.6···Solving·the·linear·system······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···23\xd | 42 | ·······················5.6···Solving·the·linear·system······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···23\xd |
43 | ·······················5.7···Sample·Matrix·and·Right·Hand·Side·Files·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.············23\xd | 43 | ·······················5.7···Sample·Matrix·and·Right·Hand·Side·Files·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.············23\xd |
44 | ···················A·allInOne.c·–·A·Serial·LU·Driver·Program··············································································24\xd | 44 | ···················A·allInOne.c·–·A·Serial·LU·Driver·Program··············································································24\xd |
45 | ···················B·allInOne.c·–·A·Serial·LU·Driver·Program··············································································31\xd | 45 | ···················B·allInOne.c·–·A·Serial·LU·Driver·Program··············································································31\xd |
46 | ·············· | 46 | ··············January·7,·2024······························SPOOLES·2.2·—·Solving·Linear·Systems········3\xd |
47 | ··············C·allInOne.c·–·A·Serial·LU·Driver·Program···············································39\xd | 47 | ··············C·allInOne.c·–·A·Serial·LU·Driver·Program···············································39\xd |
48 | ··············D·allInOne.c·–·A·Serial·QR·Driver·Program···············································49\xd | 48 | ··············D·allInOne.c·–·A·Serial·QR·Driver·Program···············································49\xd |
49 | ··············4········SPOOLES·2.2·—·Solving·Linear·Systems······························· | 49 | ··············4········SPOOLES·2.2·—·Solving·Linear·Systems·······························January·7,·2024\xd |
50 | ··············1····Overview\xd | 50 | ··············1····Overview\xd |
51 | ··············The·SPOOLES·software·library·is·designed·to·solve·sparse·systems·of·linear·equations·AX·=·Y·for·X,\xd | 51 | ··············The·SPOOLES·software·library·is·designed·to·solve·sparse·systems·of·linear·equations·AX·=·Y·for·X,\xd |
52 | ··············whereAisfullrankandX·andY·aredensematrices.·ThematrixAcanbeeitherrealorcomplex,symmetric,\xd | 52 | ··············whereAisfullrankandX·andY·aredensematrices.·ThematrixAcanbeeitherrealorcomplex,symmetric,\xd |
53 | ··············Hermitian,·square·nonsymmetric,·or·overdetermined.·When·A·is·square,·there·are·four·steps·in·the·process\xd | 53 | ··············Hermitian,·square·nonsymmetric,·or·overdetermined.·When·A·is·square,·there·are·four·steps·in·the·process\xd |
54 | ··············of·solving·AX·=·Y.\xd | 54 | ··············of·solving·AX·=·Y.\xd |
55 | ·················•·communicate·the·data·for·the·problem·as·A,·X·and·Y.\xd | 55 | ·················•·communicate·the·data·for·the·problem·as·A,·X·and·Y.\xd |
56 | ·····························ee····e·······e········T··e···········e\xd | 56 | ·····························ee····e·······e········T··e···········e\xd |
Offset 94, 26 lines modified | Offset 94, 26 lines modified | ||
94 | ·················The·SPOOLES·library·is·based·on·an·object·oriented·design·philosophy.·There·are·several·data·struc-\xd | 94 | ·················The·SPOOLES·library·is·based·on·an·object·oriented·design·philosophy.·There·are·several·data·struc-\xd |
95 | ··············tures·or·objects·that·the·user·must·interact·with.·These·interactions·are·performed·with·a·set·of·methods\xd | 95 | ··············tures·or·objects·that·the·user·must·interact·with.·These·interactions·are·performed·with·a·set·of·methods\xd |
96 | ··············for·each·object.·Every·object·has·some·standard·methods,·such·as·initializing·the·object,·placing·data·into\xd | 96 | ··············for·each·object.·Every·object·has·some·standard·methods,·such·as·initializing·the·object,·placing·data·into\xd |
97 | ··············the·object,·extracting·data·out·of·the·object,·writing·and·reading·the·object·to·a·input/output·file,·printing\xd | 97 | ··············the·object,·extracting·data·out·of·the·object,·writing·and·reading·the·object·to·a·input/output·file,·printing\xd |
98 | ··············the·contents·of·the·object·to·a·specified·file,·and·freeing·the·object.\xd | 98 | ··············the·contents·of·the·object·to·a·specified·file,·and·freeing·the·object.\xd |
99 | ·················For·example,·consider·the·DenseMtx·object·that·models·a·dense·matrix.·The·DenseMtx/DenseMtx.h\xd | 99 | ·················For·example,·consider·the·DenseMtx·object·that·models·a·dense·matrix.·The·DenseMtx/DenseMtx.h\xd |
100 | ··············header·file·defines·the·object’s·C·struct·and·has·prototypes·(with·extensive·comments)·of·the·object’s\xd | 100 | ··············header·file·defines·the·object’s·C·struct·and·has·prototypes·(with·extensive·comments)·of·the·object’s\xd |
101 | ·············· | 101 | ··············January·7,·2024······························SPOOLES·2.2·—·Solving·Linear·Systems········5\xd |
102 | ···········································································A\xd | 102 | ···········································································A\xd |
103 | ··············methods.·Thesourcefiles·arefound·in·the·DenseMtx/srcdirectory.·The·LT·X·documentation·files·are·found\xd | 103 | ··············methods.·Thesourcefiles·arefound·in·the·DenseMtx/srcdirectory.·The·LT·X·documentation·files·are·found\xd |
104 | ············································································E\xd | 104 | ············································································E\xd |
105 | ··············in·the·DenseMtx/docdirectory.·The·files·can·be·used·to·create·the·DenseMtxobject’s·chapter·in·the·Reference\xd | 105 | ··············in·the·DenseMtx/docdirectory.·The·files·can·be·used·to·create·the·DenseMtxobject’s·chapter·in·the·Reference\xd |
106 | ··············Manual,orinastandalonemannertogeneratetheobject’sdocumentation.·TheDenseMtx/driversdirectory\xd | 106 | ··············Manual,orinastandalonemannertogeneratetheobject’sdocumentation.·TheDenseMtx/driversdirectory\xd |
107 | ··············contains·driver·programs·that·exercise·and·validate·the·object’s·functionality.\xd | 107 | ··············contains·driver·programs·that·exercise·and·validate·the·object’s·functionality.\xd |
108 | ·················Almost·all·the·methods·in·the·library·are·associated·with·a·particular·object.·There·are·some·exceptions,\xd | 108 | ·················Almost·all·the·methods·in·the·library·are·associated·with·a·particular·object.·There·are·some·exceptions,\xd |
109 | ··············mostly·found·in·the·misc/src·directory.·The·misc/drivers·directory·contains·the·serial·LU·and·QR·driver\xd | 109 | ··············mostly·found·in·the·misc/src·directory.·The·misc/drivers·directory·contains·the·serial·LU·and·QR·driver\xd |
110 | ··············programs.·The·MT/drivers·and·MPI/drivers·directories·contain·the·multithreaded·and·MPI·LU·driver\xd | 110 | ··············programs.·The·MT/drivers·and·MPI/drivers·directories·contain·the·multithreaded·and·MPI·LU·driver\xd |
111 | ··············programs.\xd | 111 | ··············programs.\xd |
112 | ················6·········SPOOLES·2.2·—·Solving·Linear·Systems·········································· | 112 | ················6·········SPOOLES·2.2·—·Solving·Linear·Systems···········································January·7,·2024\xd |
113 | ················2·····Serial·Solution·of·AX·=·Y·using·an·LU·factorization\xd | 113 | ················2·····Serial·Solution·of·AX·=·Y·using·an·LU·factorization\xd |
114 | ················The·user·has·some·representation·of·the·data·which·represents·the·linear·system,·AX·=·Y·.·The·user·wants\xd | 114 | ················The·user·has·some·representation·of·the·data·which·represents·the·linear·system,·AX·=·Y·.·The·user·wants\xd |
115 | ················the·solution·X.·The·SPOOLES·library·will·use·A·and·Y·and·provide·X·back·to·the·user.\xd | 115 | ················the·solution·X.·The·SPOOLES·library·will·use·A·and·Y·and·provide·X·back·to·the·user.\xd |
116 | ····················The·SPOOLESlibrary·is·based·on·an·object·oriented·design·philosophy.·The·first·object·that·the·user\xd | 116 | ····················The·SPOOLESlibrary·is·based·on·an·object·oriented·design·philosophy.·The·first·object·that·the·user\xd |
117 | ················mustinteract·with·is·InpMtx1.·The·InpMtx·object·is·where·the·SPOOLES·representation·of·A·is·assembled.\xd | 117 | ················mustinteract·with·is·InpMtx1.·The·InpMtx·object·is·where·the·SPOOLES·representation·of·A·is·assembled.\xd |
118 | ················The·user·can·input·the·representation·of·A·into·the·InpMtx·object·with·methods·for·single·matrix·entry\xd | 118 | ················The·user·can·input·the·representation·of·A·into·the·InpMtx·object·with·methods·for·single·matrix·entry\xd |
119 | ················(consisting·of·the·row·index,·the·column·index,·and·the·value),·for·an·array·of·entries,·for·a·set·of·entries·in\xd | 119 | ················(consisting·of·the·row·index,·the·column·index,·and·the·value),·for·an·array·of·entries,·for·a·set·of·entries·in\xd |
Offset 145, 15 lines modified | Offset 145, 15 lines modified | ||
145 | ······················nrhs·floating·point·numbers·if·the·system·is·real,·or·2*nrhs·numbers·if·the·system·is·complex.\xd | 145 | ······················nrhs·floating·point·numbers·if·the·system·is·real,·or·2*nrhs·numbers·if·the·system·is·complex.\xd |
146 | ····················•·The·seed·parameter·is·a·random·number·seed·used·in·the·ordering·process.\xd | 146 | ····················•·The·seed·parameter·is·a·random·number·seed·used·in·the·ordering·process.\xd |
147 | ················2.2····Communicating·the·data·for·the·problem\xd | 147 | ················2.2····Communicating·the·data·for·the·problem\xd |
148 | ················The·following·code·segment·from·the·full·sample·program·opens·the·file·matrixFileName,·reads·the·first\xd | 148 | ················The·following·code·segment·from·the·full·sample·program·opens·the·file·matrixFileName,·reads·the·first\xd |
149 | ················line·of·the·file,·and·then·initializes·the·InpMtx·object.·The·program·continues·by·reading·each·line·of·the\xd | 149 | ················line·of·the·file,·and·then·initializes·the·InpMtx·object.·The·program·continues·by·reading·each·line·of·the\xd |
150 | ················input·matrix·data·and·uses·either·the·method·InpMtx·inputRealEntry()or·InpMtx·inputComplexEntry()\xd | 150 | ················input·matrix·data·and·uses·either·the·method·InpMtx·inputRealEntry()or·InpMtx·inputComplexEntry()\xd |
151 | ···················1InpMtx·stands·for·Input·Matrix,·for·it·is·the·object·into·which·the·user·inputs·the·matrix·entries.\xd | 151 | ···················1InpMtx·stands·for·Input·Matrix,·for·it·is·the·object·into·which·the·user·inputs·the·matrix·entries.\xd |
152 | ················ | 152 | ················January·7,·2024······································SPOOLES·2.2·—·Solving·Linear·Systems··············7\xd |
153 | ················to·place·that·entry·into·the·InpMtx·object.·Finally·this·code·segment·closes·the·file.·finalizes·the·input·to\xd | 153 | ················to·place·that·entry·into·the·InpMtx·object.·Finally·this·code·segment·closes·the·file.·finalizes·the·input·to\xd |
154 | ················InpMtx·by·converting·the·internal·storage·of·the·matrix·entries·to·a·vector·form.·(This·is·necessary·for·later\xd | 154 | ················InpMtx·by·converting·the·internal·storage·of·the·matrix·entries·to·a·vector·form.·(This·is·necessary·for·later\xd |
155 | ················steps.)\xd | 155 | ················steps.)\xd |
156 | ················inputFile·=·fopen(matrixFileName,·"r")·;\xd | 156 | ················inputFile·=·fopen(matrixFileName,·"r")·;\xd |
157 | ················fscanf(inputFile,·"%d·%d·%d",·&nrow,·&ncol,·&nent)·;\xd | 157 | ················fscanf(inputFile,·"%d·%d·%d",·&nrow,·&ncol,·&nent)·;\xd |
158 | ················neqns·=·nrow·;\xd | 158 | ················neqns·=·nrow·;\xd |
159 | ················mtxA·=·InpMtx_new()·;\xd | 159 | ················mtxA·=·InpMtx_new()·;\xd |
Offset 192, 15 lines modified | Offset 192, 15 lines modified | ||
192 | ····················•·The·fifth·argument·maxnvector·is·an·estimate·of·the·number·of·number·of·vectors·that·will·be·used,\xd | 192 | ····················•·The·fifth·argument·maxnvector·is·an·estimate·of·the·number·of·number·of·vectors·that·will·be·used,\xd |
193 | ······················e.g.,·number·of·rows·or·numbers·of·columns.\xd | 193 | ······················e.g.,·number·of·rows·or·numbers·of·columns.\xd |
194 | ················The·maxnent·and·maxnvector·arguments·only·have·to·be·estimates·as·they·are·used·in·the·initial·sizing·of\xd | 194 | ················The·maxnent·and·maxnvector·arguments·only·have·to·be·estimates·as·they·are·used·in·the·initial·sizing·of\xd |
195 | ················the·object.·Either·can·be·0.·The·InpMtx·object·resizes·itself·as·required·to·handle·the·linear·system.\xd | 195 | ················the·object.·Either·can·be·0.·The·InpMtx·object·resizes·itself·as·required·to·handle·the·linear·system.\xd |
196 | ···················2Note·that·SPOOLES·has·some·pre-defined·parameters·such·as·INPMTX·BY·ROWS·for·some·objects.·These·parameters·are\xd | 196 | ···················2Note·that·SPOOLES·has·some·pre-defined·parameters·such·as·INPMTX·BY·ROWS·for·some·objects.·These·parameters·are\xd |
197 | ················always·uppercase·and·either·begin·with·the·name·of·the·object·which·they·apply·to,·or·the·library·name,·e.g.,·SPOOLES·REAL.\xd | 197 | ················always·uppercase·and·either·begin·with·the·name·of·the·object·which·they·apply·to,·or·the·library·name,·e.g.,·SPOOLES·REAL.\xd |
198 | ················They·are·described·in·the·reference·manual·in·the·section·for·the·particular·object.\xd | 198 | ················They·are·described·in·the·reference·manual·in·the·section·for·the·particular·object.\xd |
199 | ··············8········SPOOLES·2.2·—·Solving·Linear·Systems······························· | 199 | ··············8········SPOOLES·2.2·—·Solving·Linear·Systems·······························January·7,·2024\xd |
200 | ·················Every·object·in·SPOOLES·has·print·methods·to·output·the·contents·of·that·object.·This·is·illustrated\xd | 200 | ·················Every·object·in·SPOOLES·has·print·methods·to·output·the·contents·of·that·object.·This·is·illustrated\xd |
201 | ··············in·this·code·segment·by·printing·the·input·matrix·as·contained·in·the·InpMtx·object,·mtxA.·To·shorten·this\xd | 201 | ··············in·this·code·segment·by·printing·the·input·matrix·as·contained·in·the·InpMtx·object,·mtxA.·To·shorten·this\xd |
202 | ··············chapter·we·will·from·now·on·omit·the·part·of·the·code·that·prints·debug·output·to·msgFile·for·the·various\xd | 202 | ··············chapter·we·will·from·now·on·omit·the·part·of·the·code·that·prints·debug·output·to·msgFile·for·the·various\xd |
203 | ··············code·segments.·The·complete·sample·program·in·Section·A·contains·all·of·the·debug·print·statements.\xd | 203 | ··············code·segments.·The·complete·sample·program·in·Section·A·contains·all·of·the·debug·print·statements.\xd |
204 | ·················After·the·matrix·A·has·been·read·in·from·the·file·and·placed·in·an·InpMtx·object,·the·right·hand·matrix\xd | 204 | ·················After·the·matrix·A·has·been·read·in·from·the·file·and·placed·in·an·InpMtx·object,·the·right·hand·matrix\xd |
205 | ··············Y·is·read·in·from·a·file·and·placed·in·a·DenseMtx·object.·The·following·code·fragment·does·this·operation.\xd | 205 | ··············Y·is·read·in·from·a·file·and·placed·in·a·DenseMtx·object.·The·following·code·fragment·does·this·operation.\xd |
206 | ··············inputFile·=·fopen(rhsFileName,·"r")·;\xd | 206 | ··············inputFile·=·fopen(rhsFileName,·"r")·;\xd |
Offset 240, 15 lines modified | Offset 240, 15 lines modified | ||
240 | ···················number·of·rows,·or·neqns.\xd | 240 | ···················number·of·rows,·or·neqns.\xd |
241 | ··············Theinitialization·step·allocates·storage·for·the·matrix·entries,·but·it·does·not·fill·them·with·any·values.·This\xd | 241 | ··············Theinitialization·step·allocates·storage·for·the·matrix·entries,·but·it·does·not·fill·them·with·any·values.·This\xd |
242 | ··············is·done·explicitly·via·the·DenseMtx·zero()·method,·which·places·zeroes·in·all·the·entries.·This·is·necessary\xd | 242 | ··············is·done·explicitly·via·the·DenseMtx·zero()·method,·which·places·zeroes·in·all·the·entries.·This·is·necessary\xd |
243 | ··············since·the·right·hand·side·matrix·Y·may·be·sparse,·and·so·the·number·of·rows·in·the·file·may·not·equal·the\xd | 243 | ··············since·the·right·hand·side·matrix·Y·may·be·sparse,·and·so·the·number·of·rows·in·the·file·may·not·equal·the\xd |
244 | ··············number·of·equations.\xd | 244 | ··············number·of·equations.\xd |
245 | ·················The·right·hand·side·entries·are·then·in,·row·by·row,·and·placed·into·their·locations·via·one·of·the·two\xd | 245 | ·················The·right·hand·side·entries·are·then·in,·row·by·row,·and·placed·into·their·locations·via·one·of·the·two\xd |
246 | ··············“set·entries”·methods.·Note,·the·nonzero·rows·can·be·read·from·the·file·in·any·order.\xd | 246 | ··············“set·entries”·methods.·Note,·the·nonzero·rows·can·be·read·from·the·file·in·any·order.\xd |
247 | ················· | 247 | ·················January·7,·2024·····································SPOOLES·2.2·—·Solving·Linear·Systems···············9\xd |
248 | ·················2.3···Reordering·the·linear·system\xd | 248 | ·················2.3···Reordering·the·linear·system\xd |
249 | ·················The·first·step·is·to·find·the·permutation·matrix·P,·and·then·permute·AX·=·Y·into·(PAPT)(PX)·=·PY.\xd | 249 | ·················The·first·step·is·to·find·the·permutation·matrix·P,·and·then·permute·AX·=·Y·into·(PAPT)(PX)·=·PY.\xd |
250 | ·················The·result·of·the·SPOOLES·ordering·step·is·not·just·P·or·its·permutation·vector,·it·is·a·front·tree·that\xd | 250 | ·················The·result·of·the·SPOOLES·ordering·step·is·not·just·P·or·its·permutation·vector,·it·is·a·front·tree·that\xd |
251 | ·················defines·not·just·the·permutation,·but·the·blocking·of·the·factor·matrices,·which·in·turn·specifies·the·data\xd | 251 | ·················defines·not·just·the·permutation,·but·the·blocking·of·the·factor·matrices,·which·in·turn·specifies·the·data\xd |
252 | ·················structures·and·the·computations·that·are·performed·during·the·factor·and·solves.·To·determine·this·ETree\xd | 252 | ·················structures·and·the·computations·that·are·performed·during·the·factor·and·solves.·To·determine·this·ETree\xd |
253 | ·················front·tree·object·takes·three·step,·as·seen·in·the·code·fragment·below.\xd | 253 | ·················front·tree·object·takes·three·step,·as·seen·in·the·code·fragment·below.\xd |
254 | ·················adjIVL·=·InpMtx_fullAdjacency(mtxA)·;\xd | 254 | ·················adjIVL·=·InpMtx_fullAdjacency(mtxA)·;\xd |
Offset 287, 15 lines modified | Offset 287, 15 lines modified | ||
287 | ·················InpMtx_changeCoordType(mtxA,·INPMTX_BY_CHEVRONS)·;\xd | 287 | ·················InpMtx_changeCoordType(mtxA,·INPMTX_BY_CHEVRONS)·;\xd |
288 | ·················InpMtx_changeStorageMode(mtxA,·INPMTX_BY_VECTORS)·;\xd | 288 | ·················InpMtx_changeStorageMode(mtxA,·INPMTX_BY_VECTORS)·;\xd |
289 | ·················DenseMtx_permuteRows(mtxB,·oldToNewIV)·;\xd | 289 | ·················DenseMtx_permuteRows(mtxB,·oldToNewIV)·;\xd |
290 | ·················The·oldToNewIV·and·newToOldIV·variables·are·IV·objects·that·represent·an·integer·vector.·The·oldToNew\xd | 290 | ·················The·oldToNewIV·and·newToOldIV·variables·are·IV·objects·that·represent·an·integer·vector.·The·oldToNew\xd |
291 | ·················and·newToOld·variables·are·pointers·to·int,·which·point·to·the·base·address·of·the·int·vector·in·an·IV\xd | 291 | ·················and·newToOld·variables·are·pointers·to·int,·which·point·to·the·base·address·of·the·int·vector·in·an·IV\xd |
292 | ·················object.\xd | 292 | ·················object.\xd |
293 | ···················3IVL·stands·for·Integer·Vector·List,·i.e.,·a·list·of·integer·vectors.\xd | 293 | ···················3IVL·stands·for·Integer·Vector·List,·i.e.,·a·list·of·integer·vectors.\xd |
294 | ·················10·········SPOOLES2.2—SolvingLinearSystems·············································· | 294 | ·················10·········SPOOLES2.2—SolvingLinearSystems···············································January·7,·2024\xd |
295 | ····················Once·we·have·the·permutation·vector,·we·apply·it·to·the·front·tree,·by·the·ETree·permuteVertices()\xd | 295 | ····················Once·we·have·the·permutation·vector,·we·apply·it·to·the·front·tree,·by·the·ETree·permuteVertices()\xd |
296 | ·················method,·and·then·to·the·matrix·with·the·InpMtx·permute()·method.·If·the·matrix·A·is·symmetric·or\xd | 296 | ·················method,·and·then·to·the·matrix·with·the·InpMtx·permute()·method.·If·the·matrix·A·is·symmetric·or\xd |
297 | ·················Hermitian,·we·expect·all·nonzero·entries·to·be·in·the·upper·triangle.·Permuting·the·matrix·yields·PAPT,\xd | 297 | ·················Hermitian,·we·expect·all·nonzero·entries·to·be·in·the·upper·triangle.·Permuting·the·matrix·yields·PAPT,\xd |
298 | ·················which·may·not·have·all·of·its·entries·in·the·upper·triangle.·If·A·is·symmetric·or·Hermitian,·the·call·to\xd | 298 | ·················which·may·not·have·all·of·its·entries·in·the·upper·triangle.·If·A·is·symmetric·or·Hermitian,·the·call·to\xd |
299 | ·················InpMtx·mapToUpperTriangle()·ensures·that·all·entries·of·PAPT·are·in·its·upper·triangle.·Permuting·the\xd | 299 | ·················InpMtx·mapToUpperTriangle()·ensures·that·all·entries·of·PAPT·are·in·its·upper·triangle.·Permuting·the\xd |
300 | ·················matrix·destroys·the·internal·vector·structure,·which·has·to·be·restored.·But·first·we·need·to·change·the\xd | 300 | ·················matrix·destroys·the·internal·vector·structure,·which·has·to·be·restored.·But·first·we·need·to·change·the\xd |
301 | ················································································4\xd | 301 | ················································································4\xd |
Offset 330, 15 lines modified | Offset 330, 15 lines modified | ||
Max diff block lines reached; 46904/60763 bytes (77.19%) 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·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·2024.01.07:0424 |
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 2554, 21 lines modified | Offset 2554, 20 lines modified | ||
2554 | /UnderlineThickness·50·def | 2554 | /UnderlineThickness·50·def |
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·50·/two·put | 2560 | dup·50·/two·put |
2561 | dup·52·/four·put | ||
2561 | dup·5 | 2562 | dup·55·/seven·put |
2562 | dup·56·/eight·put | ||
2563 | dup·58·/colon·put | 2563 | dup·58·/colon·put |
2564 | dup·7 | 2564 | dup·74·/J·put |
2565 | dup·97·/a·put | 2565 | dup·97·/a·put |
2566 | dup·98·/b·put | ||
2567 | dup·1 | 2566 | dup·110·/n·put |
2568 | dup·114·/r·put | 2567 | dup·114·/r·put |
2569 | dup·117·/u·put | 2568 | dup·117·/u·put |
2570 | dup·121·/y·put | 2569 | dup·121·/y·put |
2571 | readonly·def | 2570 | readonly·def |
2572 | currentdict·end | 2571 | currentdict·end |
2573 | currentfile·eexec | 2572 | currentfile·eexec |
2574 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2573 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2752, 88 lines modified | Offset 2751, 83 lines modified | ||
2752 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2751 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2753 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2752 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2754 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2753 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2755 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2754 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2756 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2755 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2757 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2756 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2758 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2757 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2759 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2758 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2759 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2760 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2761 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2762 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2763 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2764 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2765 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2766 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2767 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2768 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2769 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2770 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2771 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2772 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2773 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2774 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2775 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2776 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2777 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2778 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2779 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2780 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2781 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2782 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2783 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2784 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2785 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2786 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2787 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2788 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2789 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2790 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2791 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2792 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2793 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2794 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2795 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2796 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2797 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2798 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2799 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2800 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2801 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2802 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2803 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2804 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2805 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2806 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2807 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2808 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2809 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2810 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2811 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2812 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2813 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2814 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2815 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2816 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2817 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2818 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2819 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2820 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2821 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2822 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2823 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2824 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2825 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2760 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2761 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2762 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2763 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2764 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2765 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2766 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2767 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2768 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2769 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2770 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2771 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 6222/17346 bytes (35.87%) 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·January·7,·2024\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··January·7,·2024·····················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·····························BKL·:·DRAFT· | 91 | ··············4·····························BKL·:·DRAFT·January·7,·2024\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 | ····················································BKL·:·DRAFT······· | 126 | ····················································BKL·:·DRAFT·······January·7,·2024·································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·2024.01.07:0424 |
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 1426, 21 lines modified | Offset 1426, 20 lines modified | ||
1426 | /UnderlineThickness·50·def | 1426 | /UnderlineThickness·50·def |
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·50·/two·put | 1432 | dup·50·/two·put |
1433 | dup·52·/four·put | ||
1433 | dup·5 | 1434 | dup·55·/seven·put |
1434 | dup·56·/eight·put | ||
1435 | dup·58·/colon·put | 1435 | dup·58·/colon·put |
1436 | dup·7 | 1436 | dup·74·/J·put |
1437 | dup·97·/a·put | 1437 | dup·97·/a·put |
1438 | dup·98·/b·put | ||
1439 | dup·1 | 1438 | dup·110·/n·put |
1440 | dup·114·/r·put | 1439 | dup·114·/r·put |
1441 | dup·117·/u·put | 1440 | dup·117·/u·put |
1442 | dup·121·/y·put | 1441 | dup·121·/y·put |
1443 | readonly·def | 1442 | readonly·def |
1444 | currentdict·end | 1443 | currentdict·end |
1445 | currentfile·eexec | 1444 | currentfile·eexec |
1446 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1445 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1624, 88 lines modified | Offset 1623, 83 lines modified | ||
1624 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1623 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1625 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1624 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1626 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1625 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1627 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1626 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1628 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1627 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1629 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1628 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1630 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1629 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1631 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1630 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1631 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1632 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1633 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1634 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1635 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1636 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1637 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1638 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1639 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1640 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1641 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1642 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1643 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1644 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1645 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1646 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1647 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1648 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1649 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1650 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1651 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1652 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1653 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1654 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1655 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1656 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1657 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1658 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1659 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1660 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1661 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1662 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1663 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1664 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1665 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1666 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1667 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1668 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1669 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1670 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1671 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1672 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1673 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1674 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1675 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1676 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1677 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1678 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1679 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1680 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1681 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1682 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1683 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1684 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1685 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1686 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1687 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1688 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1689 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1690 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1691 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1692 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1693 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1694 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1695 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1696 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1697 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1632 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1633 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1634 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1635 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1636 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1637 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1638 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1639 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1640 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1641 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1642 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1643 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 17535/28659 bytes (61.18%) 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·January·7,·2024\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···January·7,·2024·························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······························BPG·:·DRAFT· | 117 | ··············4······························BPG·:·DRAFT·January·7,·2024\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 | ····················································BPG·:·DRAFT···· | 158 | ····················································BPG·:·DRAFT·····January·7,·2024································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·January·7,·2024\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···January·7,·2024·························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·2024.01.07:0425 |
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 2517, 21 lines modified | Offset 2517, 20 lines modified | ||
2517 | /UnderlineThickness·50·def | 2517 | /UnderlineThickness·50·def |
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·50·/two·put | 2523 | dup·50·/two·put |
2524 | dup·52·/four·put | ||
2524 | dup·5 | 2525 | dup·55·/seven·put |
2525 | dup·56·/eight·put | ||
2526 | dup·58·/colon·put | 2526 | dup·58·/colon·put |
2527 | dup·7 | 2527 | dup·74·/J·put |
2528 | dup·97·/a·put | 2528 | dup·97·/a·put |
2529 | dup·98·/b·put | ||
2530 | dup·1 | 2529 | dup·110·/n·put |
2531 | dup·114·/r·put | 2530 | dup·114·/r·put |
2532 | dup·117·/u·put | 2531 | dup·117·/u·put |
2533 | dup·121·/y·put | 2532 | dup·121·/y·put |
2534 | readonly·def | 2533 | readonly·def |
2535 | currentdict·end | 2534 | currentdict·end |
2536 | currentfile·eexec | 2535 | currentfile·eexec |
2537 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2536 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2715, 88 lines modified | Offset 2714, 83 lines modified | ||
2715 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2714 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2716 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2715 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2717 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2716 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2718 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2717 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2719 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2718 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2720 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2719 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2721 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2720 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2722 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2721 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2722 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2723 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2724 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2725 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2726 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2727 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2728 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2729 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2730 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2731 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2732 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2733 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2734 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2735 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2736 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2737 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2738 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2739 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2740 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2741 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2742 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2743 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2744 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2745 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2746 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2747 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2748 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2749 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2750 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2751 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2752 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2753 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2754 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2755 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2756 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2757 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2758 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2759 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2760 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2761 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2762 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2763 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2764 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2765 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2766 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2767 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2768 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2769 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2770 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2771 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2772 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2773 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2774 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2775 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2776 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2777 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2778 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2779 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2780 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2781 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2782 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2783 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2784 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2785 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2786 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2787 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2788 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2723 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2724 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2725 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2726 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2727 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2728 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2729 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2730 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2731 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2732 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2733 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2734 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 42427/53551 bytes (79.23%) 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································································Chv·:·DRAFT· | 30 | ····························2·································································Chv·:·DRAFT·January·7,·2024\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··January·7,·2024·····················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·····························Chv·:·DRAFT· | 107 | ··············4·····························Chv·:·DRAFT·January·7,·2024\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·····January·7,·2024····························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·······························Chv·:·DRAFT· | 174 | ··············6·······························Chv·:·DRAFT·January·7,·2024\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 | ·············································Chv·:·DRAFT···· | 212 | ·············································Chv·:·DRAFT·····January·7,·2024··························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·································Chv·:·DRAFT· | 249 | ···············8·································Chv·:·DRAFT·January·7,·2024\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·····January·7,·2024·····························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; 29696/41845 bytes (70.97%) 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·2024.01.07:0425 |
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 1761, 21 lines modified | Offset 1761, 20 lines modified | ||
1761 | /UnderlineThickness·50·def | 1761 | /UnderlineThickness·50·def |
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·50·/two·put | 1767 | dup·50·/two·put |
1768 | dup·52·/four·put | ||
1768 | dup·5 | 1769 | dup·55·/seven·put |
1769 | dup·56·/eight·put | ||
1770 | dup·58·/colon·put | 1770 | dup·58·/colon·put |
1771 | dup·7 | 1771 | dup·74·/J·put |
1772 | dup·97·/a·put | 1772 | dup·97·/a·put |
1773 | dup·98·/b·put | ||
1774 | dup·1 | 1773 | dup·110·/n·put |
1775 | dup·114·/r·put | 1774 | dup·114·/r·put |
1776 | dup·117·/u·put | 1775 | dup·117·/u·put |
1777 | dup·121·/y·put | 1776 | dup·121·/y·put |
1778 | readonly·def | 1777 | readonly·def |
1779 | currentdict·end | 1778 | currentdict·end |
1780 | currentfile·eexec | 1779 | currentfile·eexec |
1781 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1780 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1959, 88 lines modified | Offset 1958, 83 lines modified | ||
1959 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1958 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1960 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1959 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1961 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1960 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1962 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1961 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1963 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1962 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1964 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1963 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1965 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1964 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1966 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1965 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1966 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1967 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1968 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1969 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1970 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1971 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1972 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1973 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1974 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1975 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1976 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1977 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1978 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1979 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1980 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1981 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1982 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1983 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1984 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1985 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1986 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1987 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1988 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1989 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1990 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1991 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1992 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1993 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1994 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1995 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1996 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1997 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1998 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1999 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2000 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2001 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2002 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2003 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2004 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2005 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2006 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2007 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2008 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2009 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2010 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2011 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2012 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2013 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2014 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2015 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2016 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2017 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2018 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2019 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2020 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2021 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2022 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2023 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2024 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2025 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2026 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2027 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2028 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2029 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2030 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2031 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2032 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1967 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1968 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1969 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1970 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1971 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1972 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1973 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1974 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1975 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1976 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1977 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1978 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 7405/18533 bytes (39.96%) 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···························ChvList·:·DRAFT· | 29 | ··············2···························ChvList·:·DRAFT·January·7,·2024\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··January·7,·2024····················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···························ChvList·:·DRAFT· | 94 | ··············4···························ChvList·:·DRAFT·January·7,·2024\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·2024.01.07:0425 |
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 1158, 21 lines modified | Offset 1158, 20 lines modified | ||
1158 | /UnderlineThickness·50·def | 1158 | /UnderlineThickness·50·def |
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·50·/two·put | 1164 | dup·50·/two·put |
1165 | dup·52·/four·put | ||
1165 | dup·5 | 1166 | dup·55·/seven·put |
1166 | dup·56·/eight·put | ||
1167 | dup·58·/colon·put | 1167 | dup·58·/colon·put |
1168 | dup·7 | 1168 | dup·74·/J·put |
1169 | dup·97·/a·put | 1169 | dup·97·/a·put |
1170 | dup·98·/b·put | ||
1171 | dup·1 | 1170 | dup·110·/n·put |
1172 | dup·114·/r·put | 1171 | dup·114·/r·put |
1173 | dup·117·/u·put | 1172 | dup·117·/u·put |
1174 | dup·121·/y·put | 1173 | dup·121·/y·put |
1175 | readonly·def | 1174 | readonly·def |
1176 | currentdict·end | 1175 | currentdict·end |
1177 | currentfile·eexec | 1176 | currentfile·eexec |
1178 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1177 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1356, 88 lines modified | Offset 1355, 83 lines modified | ||
1356 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1355 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1357 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1356 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1358 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1357 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1359 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1358 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1360 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1359 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1361 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1360 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1362 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1361 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1363 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1362 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1363 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1364 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1365 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1366 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1367 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1368 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1369 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1370 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1371 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1372 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1373 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1374 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1375 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1376 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1377 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1378 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1379 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1380 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1381 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1382 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1383 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1384 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1385 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1386 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1387 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1388 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1389 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1390 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1391 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1392 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1393 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1394 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1395 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1396 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1397 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1398 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1399 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1400 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1401 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1402 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1403 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1404 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1405 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1406 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1407 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1408 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1409 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1410 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1411 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1412 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1413 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1414 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1415 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1416 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1417 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1418 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1419 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1420 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1421 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1422 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1423 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1424 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1425 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1426 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1427 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1428 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1429 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1364 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1365 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1366 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1367 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1368 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1369 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1370 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1371 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1372 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1373 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1374 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1375 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 6446/17577 bytes (36.67%) 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·January·7,·2024\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 | ·····································DChvList·:·DRAFT·· | 61 | ·····································DChvList·:·DRAFT···January·7,·2024···················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·January·7,·2024\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·2024.01.07:0425 |
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 1237, 21 lines modified | Offset 1237, 20 lines modified | ||
1237 | /UnderlineThickness·50·def | 1237 | /UnderlineThickness·50·def |
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·50·/two·put | 1243 | dup·50·/two·put |
1244 | dup·52·/four·put | ||
1244 | dup·5 | 1245 | dup·55·/seven·put |
1245 | dup·56·/eight·put | ||
1246 | dup·58·/colon·put | 1246 | dup·58·/colon·put |
1247 | dup·7 | 1247 | dup·74·/J·put |
1248 | dup·97·/a·put | 1248 | dup·97·/a·put |
1249 | dup·98·/b·put | ||
1250 | dup·1 | 1249 | dup·110·/n·put |
1251 | dup·114·/r·put | 1250 | dup·114·/r·put |
1252 | dup·117·/u·put | 1251 | dup·117·/u·put |
1253 | dup·121·/y·put | 1252 | dup·121·/y·put |
1254 | readonly·def | 1253 | readonly·def |
1255 | currentdict·end | 1254 | currentdict·end |
1256 | currentfile·eexec | 1255 | currentfile·eexec |
1257 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1256 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1435, 88 lines modified | Offset 1434, 83 lines modified | ||
1435 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1434 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1436 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1435 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1437 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1436 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1438 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1437 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1439 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1438 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1440 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1439 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1441 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1440 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1442 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1441 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1442 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1443 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1444 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1445 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1446 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1447 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1448 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1449 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1450 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1451 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1452 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1453 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1454 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1455 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1456 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1457 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1458 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1459 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1460 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1461 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1462 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1463 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1464 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1465 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1466 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1467 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1468 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1469 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1470 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1471 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1472 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1473 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1474 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1475 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1476 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1477 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1478 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1479 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1480 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1481 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1482 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1483 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1484 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1485 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1486 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1487 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1488 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1489 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1490 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1491 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1492 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1493 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1494 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1495 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1496 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1497 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1498 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1499 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1500 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1501 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1502 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1503 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1504 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1505 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1506 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1507 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1508 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1443 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1444 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1445 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1446 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1447 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1448 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1449 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1450 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1451 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1452 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1453 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1454 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 12400/23527 bytes (52.71%) 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·January·7,·2024\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····January·7,·2024·························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·January·7,·2024\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··January·7,·2024····················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··············Coords·:·DRAFT· | 171 | ·······6··············Coords·:·DRAFT·January·7,·2024\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·2024.01.07:0425 |
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 1407, 21 lines modified | Offset 1407, 20 lines modified | ||
1407 | /UnderlineThickness·50·def | 1407 | /UnderlineThickness·50·def |
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·50·/two·put | 1413 | dup·50·/two·put |
1414 | dup·52·/four·put | ||
1414 | dup·5 | 1415 | dup·55·/seven·put |
1415 | dup·56·/eight·put | ||
1416 | dup·58·/colon·put | 1416 | dup·58·/colon·put |
1417 | dup·7 | 1417 | dup·74·/J·put |
1418 | dup·97·/a·put | 1418 | dup·97·/a·put |
1419 | dup·98·/b·put | ||
1420 | dup·1 | 1419 | dup·110·/n·put |
1421 | dup·114·/r·put | 1420 | dup·114·/r·put |
1422 | dup·117·/u·put | 1421 | dup·117·/u·put |
1423 | dup·121·/y·put | 1422 | dup·121·/y·put |
1424 | readonly·def | 1423 | readonly·def |
1425 | currentdict·end | 1424 | currentdict·end |
1426 | currentfile·eexec | 1425 | currentfile·eexec |
1427 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1426 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1605, 88 lines modified | Offset 1604, 83 lines modified | ||
1605 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1604 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1606 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1605 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1607 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1606 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1608 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1607 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1609 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1608 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1610 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1609 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1611 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1610 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1612 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1611 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1612 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1613 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1614 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1615 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1616 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1617 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1618 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1619 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1620 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1621 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1622 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1623 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1624 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1625 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1626 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1627 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1628 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1629 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1630 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1631 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1632 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1633 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1634 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1635 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1636 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1637 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1638 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1639 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1640 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1641 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1642 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1643 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1644 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1645 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1646 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1647 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1648 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1649 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1650 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1651 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1652 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1653 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1654 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1655 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1656 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1657 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1658 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1659 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1660 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1661 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1662 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1663 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1664 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1665 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1666 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1667 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1668 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1669 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1670 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1671 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1672 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1673 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1674 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1675 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1676 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1677 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1678 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1613 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1614 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1615 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1616 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1617 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1618 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1619 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1620 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1621 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1622 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1623 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1624 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 15928/27055 bytes (58.87%) 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·January·7,·2024\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····January·7,·2024·······················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·January·7,·2024\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, 15 lines modified | Offset 125, 15 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···January·7,·2024····················5\xd |
133 | ··············3.·int·DSTree_domainWeight·(·DSTree·*dstree,·int·vwghts[]·)·;\xd | 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 | ··············4.·int·DSTree_separatorWeight·(·DSTree·*dstree,·int·vwghts[]·)·;\xd | 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 |
Offset 159, 15 lines modified | Offset 159, 15 lines modified | ||
159 | ··············4.·int·DSTree_writeToFile·(·DSTree·*dstree,·char·*fn·)·;\xd | 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·January·7,·2024\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, 15 lines modified | Offset 195, 15 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···January·7,·2024····················7\xd |
203 | ··············2.·writeStagesIV·msglvl·msgFile·inFile·type·outFile\xd | 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 |
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·2024.01.07:0425 |
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 2351, 21 lines modified | Offset 2351, 20 lines modified | ||
2351 | /UnderlineThickness·50·def | 2351 | /UnderlineThickness·50·def |
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·50·/two·put | 2357 | dup·50·/two·put |
2358 | dup·52·/four·put | ||
2358 | dup·5 | 2359 | dup·55·/seven·put |
2359 | dup·56·/eight·put | ||
2360 | dup·58·/colon·put | 2360 | dup·58·/colon·put |
2361 | dup·7 | 2361 | dup·74·/J·put |
2362 | dup·97·/a·put | 2362 | dup·97·/a·put |
2363 | dup·98·/b·put | ||
2364 | dup·1 | 2363 | dup·110·/n·put |
2365 | dup·114·/r·put | 2364 | dup·114·/r·put |
2366 | dup·117·/u·put | 2365 | dup·117·/u·put |
2367 | dup·121·/y·put | 2366 | dup·121·/y·put |
2368 | readonly·def | 2367 | readonly·def |
2369 | currentdict·end | 2368 | currentdict·end |
2370 | currentfile·eexec | 2369 | currentfile·eexec |
2371 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2370 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2549, 88 lines modified | Offset 2548, 83 lines modified | ||
2549 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2548 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2550 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2549 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2551 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2550 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2552 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2551 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2553 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2552 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2554 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2553 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2555 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2554 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2556 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2555 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2556 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2557 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2558 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2559 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2560 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2561 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2562 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2563 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2564 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2565 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2566 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2567 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2568 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2569 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2570 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2571 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2572 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2573 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2574 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2575 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2576 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2577 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2578 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2579 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2580 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2581 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2582 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2583 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2584 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2585 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2586 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2587 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2588 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2589 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2590 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2591 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2592 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2593 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2594 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2595 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2596 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2597 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2598 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2599 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2600 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2601 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2602 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2603 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2604 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2605 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2606 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2607 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2608 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2609 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2610 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2611 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2612 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2613 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2614 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2615 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2616 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2617 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2618 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2619 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2620 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2621 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2622 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2557 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2558 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2559 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2560 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2561 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2562 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2563 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2564 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2565 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2566 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2567 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2568 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 16892/28015 bytes (60.30%) 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·January·7,·2024\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··January·7,·2024······················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·January·7,·2024\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··January·7,·2024······················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·January·7,·2024\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··January·7,·2024······················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························DV·:·DRAFT· | 237 | ···········8························DV·:·DRAFT·January·7,·2024\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·2024.01.07:0425 |
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 1622, 21 lines modified | Offset 1622, 20 lines modified | ||
1622 | /UnderlineThickness·50·def | 1622 | /UnderlineThickness·50·def |
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·50·/two·put | 1628 | dup·50·/two·put |
1629 | dup·52·/four·put | ||
1629 | dup·5 | 1630 | dup·55·/seven·put |
1630 | dup·56·/eight·put | ||
1631 | dup·58·/colon·put | 1631 | dup·58·/colon·put |
1632 | dup·7 | 1632 | dup·74·/J·put |
1633 | dup·97·/a·put | 1633 | dup·97·/a·put |
1634 | dup·98·/b·put | ||
1635 | dup·1 | 1634 | dup·110·/n·put |
1636 | dup·114·/r·put | 1635 | dup·114·/r·put |
1637 | dup·117·/u·put | 1636 | dup·117·/u·put |
1638 | dup·121·/y·put | 1637 | dup·121·/y·put |
1639 | readonly·def | 1638 | readonly·def |
1640 | currentdict·end | 1639 | currentdict·end |
1641 | currentfile·eexec | 1640 | currentfile·eexec |
1642 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1641 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1820, 88 lines modified | Offset 1819, 83 lines modified | ||
1820 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1819 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1821 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1820 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1822 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1821 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1823 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1822 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1824 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1823 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1825 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1824 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1826 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1825 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1827 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1826 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1827 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1828 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1829 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1830 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1831 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1832 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1833 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1834 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1835 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1836 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1837 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1838 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1839 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1840 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1841 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1842 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1843 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1844 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1845 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1846 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1847 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1848 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1849 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1850 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1851 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1852 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1853 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1854 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1855 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1856 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1857 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1858 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1859 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1860 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1861 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1862 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1863 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1864 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1865 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1866 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1867 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1868 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1869 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1870 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1871 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1872 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1873 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1874 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1875 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1876 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1877 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1878 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1879 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1880 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1881 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1882 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1883 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1884 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1885 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1886 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1887 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1888 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1889 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1890 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1891 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1892 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1893 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1828 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1829 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1830 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1831 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1832 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1833 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1834 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1835 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1836 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1837 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1838 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1839 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 17420/28549 bytes (61.02%) 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·January·7,·2024\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·····January·7,·2024····························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·································DenseMtx·:·DRAFT· | 104 | ················4·································DenseMtx·:·DRAFT·January·7,·2024\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 | ··········································DenseMtx·:·DRAFT·· | 146 | ··········································DenseMtx·:·DRAFT···January·7,·2024······················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 180, 15 lines modified | Offset 180, 15 lines modified | ||
180 | ················8.·void·DenseMtx_copyRowAndIndex·(·DenseMtx·*mtxB,·int·irowB,\xd | 180 | ················8.·void·DenseMtx_copyRowAndIndex·(·DenseMtx·*mtxB,·int·irowB,\xd |
181 | ·················································DenseMtx·*mtxA,·int·irowA·)·;\xd | 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·January·7,·2024\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 | ··········································DenseMtx·:·DRAFT·· | 226 | ··········································DenseMtx·:·DRAFT···January·7,·2024······················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·January·7,·2024\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·2024.01.07:0425 |
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 1720, 21 lines modified | Offset 1720, 20 lines modified | ||
1720 | /UnderlineThickness·50·def | 1720 | /UnderlineThickness·50·def |
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·50·/two·put | 1726 | dup·50·/two·put |
1727 | dup·52·/four·put | ||
1727 | dup·5 | 1728 | dup·55·/seven·put |
1728 | dup·56·/eight·put | ||
1729 | dup·58·/colon·put | 1729 | dup·58·/colon·put |
1730 | dup·7 | 1730 | dup·74·/J·put |
1731 | dup·97·/a·put | 1731 | dup·97·/a·put |
1732 | dup·98·/b·put | ||
1733 | dup·1 | 1732 | dup·110·/n·put |
1734 | dup·114·/r·put | 1733 | dup·114·/r·put |
1735 | dup·117·/u·put | 1734 | dup·117·/u·put |
1736 | dup·121·/y·put | 1735 | dup·121·/y·put |
1737 | readonly·def | 1736 | readonly·def |
1738 | currentdict·end | 1737 | currentdict·end |
1739 | currentfile·eexec | 1738 | currentfile·eexec |
1740 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1739 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1918, 88 lines modified | Offset 1917, 83 lines modified | ||
1918 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1917 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1919 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1918 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1920 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1919 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1921 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1920 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1922 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1921 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1923 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1922 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1924 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1923 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1925 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1924 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1925 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1926 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1927 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1928 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1929 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1930 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1931 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1932 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1933 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1934 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1935 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1936 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1937 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1938 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1939 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1940 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1941 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1942 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1943 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1944 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1945 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1946 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1947 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1948 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1949 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1950 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1951 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1952 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1953 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1954 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1955 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1956 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1957 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1958 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1959 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1960 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1961 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1962 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1963 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1964 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1965 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1966 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1967 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1968 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1969 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1970 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1971 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1972 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1973 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1974 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1975 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1976 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1977 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1978 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1979 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1980 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1981 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1982 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1983 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1984 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1985 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1986 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1987 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1988 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1989 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1990 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1991 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1926 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1927 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1928 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1929 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1930 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1931 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1932 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1933 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1934 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1935 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1936 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1937 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 7293/18419 bytes (39.59%) 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····························Drand·:·DRAFT· | 22 | ··············2····························Drand·:·DRAFT·January·7,·2024\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 | ······································Drand·:·DRAFT·· | 54 | ······································Drand·:·DRAFT···January·7,·2024····················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·January·7,·2024\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·2024.01.07:0425 |
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 1406, 21 lines modified | Offset 1406, 20 lines modified | ||
1406 | /UnderlineThickness·50·def | 1406 | /UnderlineThickness·50·def |
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·50·/two·put | 1412 | dup·50·/two·put |
1413 | dup·52·/four·put | ||
1413 | dup·5 | 1414 | dup·55·/seven·put |
1414 | dup·56·/eight·put | ||
1415 | dup·58·/colon·put | 1415 | dup·58·/colon·put |
1416 | dup·7 | 1416 | dup·74·/J·put |
1417 | dup·97·/a·put | 1417 | dup·97·/a·put |
1418 | dup·98·/b·put | ||
1419 | dup·1 | 1418 | dup·110·/n·put |
1420 | dup·114·/r·put | 1419 | dup·114·/r·put |
1421 | dup·117·/u·put | 1420 | dup·117·/u·put |
1422 | dup·121·/y·put | 1421 | dup·121·/y·put |
1423 | readonly·def | 1422 | readonly·def |
1424 | currentdict·end | 1423 | currentdict·end |
1425 | currentfile·eexec | 1424 | currentfile·eexec |
1426 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1425 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1604, 88 lines modified | Offset 1603, 83 lines modified | ||
1604 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1603 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1605 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1604 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1606 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1605 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1607 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1606 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1608 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1607 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1609 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1608 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1610 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1609 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1611 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1610 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1611 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1612 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1613 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1614 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1615 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1616 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1617 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1618 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1619 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1620 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1621 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1622 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1623 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1624 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1625 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1626 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1627 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1628 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1629 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1630 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1631 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1632 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1633 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1634 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1635 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1636 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1637 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1638 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1639 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1640 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1641 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1642 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1643 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1644 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1645 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1646 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1647 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1648 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1649 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1650 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1651 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1652 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1653 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1654 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1655 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1656 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1657 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1658 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1659 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1660 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1661 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1662 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1663 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1664 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1665 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1666 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1667 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1668 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1669 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1670 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1671 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1672 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1673 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1674 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1675 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1676 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1677 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1612 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1613 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1614 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1615 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1616 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1617 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1618 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1619 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1620 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1621 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1622 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1623 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 18392/29519 bytes (62.31%) 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·January·7,·2024\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··January·7,·2024····················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·January·7,·2024\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··January·7,·2024····················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··············EGraph·:·DRAFT· | 173 | ·······6··············EGraph·:·DRAFT·January·7,·2024\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·2024.01.07:0425 |
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 3606, 21 lines modified | Offset 3606, 20 lines modified | ||
3606 | /UnderlineThickness·50·def | 3606 | /UnderlineThickness·50·def |
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·50·/two·put | 3612 | dup·50·/two·put |
3613 | dup·52·/four·put | ||
3613 | dup·5 | 3614 | dup·55·/seven·put |
3614 | dup·56·/eight·put | ||
3615 | dup·58·/colon·put | 3615 | dup·58·/colon·put |
3616 | dup·7 | 3616 | dup·74·/J·put |
3617 | dup·97·/a·put | 3617 | dup·97·/a·put |
3618 | dup·98·/b·put | ||
3619 | dup·1 | 3618 | dup·110·/n·put |
3620 | dup·114·/r·put | 3619 | dup·114·/r·put |
3621 | dup·117·/u·put | 3620 | dup·117·/u·put |
3622 | dup·121·/y·put | 3621 | dup·121·/y·put |
3623 | readonly·def | 3622 | readonly·def |
3624 | currentdict·end | 3623 | currentdict·end |
3625 | currentfile·eexec | 3624 | currentfile·eexec |
3626 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 3625 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 3804, 88 lines modified | Offset 3803, 83 lines modified | ||
3804 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 3803 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
3805 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 3804 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
3806 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 3805 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
3807 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 3806 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
3808 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 3807 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
3809 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 3808 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
3810 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 3809 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
3811 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 3810 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
3811 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
3812 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
3813 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
3814 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
3815 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
3816 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
3817 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
3818 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
3819 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
3820 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
3821 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
3822 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
3823 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
3824 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
3825 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
3826 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
3827 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
3828 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
3829 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
3830 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
3831 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
3832 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
3833 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
3834 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
3835 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
3836 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
3837 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
3838 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
3839 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
3840 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
3841 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
3842 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
3843 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
3844 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
3845 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
3846 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
3847 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
3848 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
3849 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
3850 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
3851 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
3852 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
3853 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
3854 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
3855 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
3856 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
3857 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
3858 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
3859 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
3860 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
3861 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
3862 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
3863 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
3864 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
3865 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
3866 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
3867 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
3868 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
3869 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
3870 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
3871 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
3872 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
3873 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
3874 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
3875 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
3876 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
3877 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
3812 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
3813 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
3814 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
3815 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
3816 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
3817 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
3818 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
3819 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
3820 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
3821 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
3822 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
3823 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 53578/64704 bytes (82.80%) 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····························ETree·:·DRAFT· | 28 | ··············2····························ETree·:·DRAFT·January·7,·2024\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·····January·7,·2024··························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····························ETree·:·DRAFT· | 93 | ··············4····························ETree·:·DRAFT·January·7,·2024\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···January·7,·2024····················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·······························ETree·:·DRAFT· | 167 | ···············6·······························ETree·:·DRAFT·January·7,·2024\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···January·7,·2024····················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····························ETree·:·DRAFT· | 240 | ··············8····························ETree·:·DRAFT·January·7,·2024\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 | ················································ETree·:·DRAFT······ | 273 | ················································ETree·:·DRAFT·······January·7,·2024····························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; 30234/41370 bytes (73.08%) 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·Eigen.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·Eigen.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2024.01.07:0425 |
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 1595, 21 lines modified | Offset 1595, 20 lines modified | ||
1595 | /UnderlineThickness·50·def | 1595 | /UnderlineThickness·50·def |
1596 | end·readonly·def | 1596 | end·readonly·def |
1597 | /Encoding·256·array | 1597 | /Encoding·256·array |
1598 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1598 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1599 | dup·44·/comma·put | 1599 | dup·44·/comma·put |
1600 | dup·48·/zero·put | 1600 | dup·48·/zero·put |
1601 | dup·50·/two·put | 1601 | dup·50·/two·put |
1602 | dup·52·/four·put | ||
1602 | dup·5 | 1603 | dup·55·/seven·put |
1603 | dup·56·/eight·put | ||
1604 | dup·58·/colon·put | 1604 | dup·58·/colon·put |
1605 | dup·7 | 1605 | dup·74·/J·put |
1606 | dup·97·/a·put | 1606 | dup·97·/a·put |
1607 | dup·98·/b·put | ||
1608 | dup·1 | 1607 | dup·110·/n·put |
1609 | dup·114·/r·put | 1608 | dup·114·/r·put |
1610 | dup·117·/u·put | 1609 | dup·117·/u·put |
1611 | dup·121·/y·put | 1610 | dup·121·/y·put |
1612 | readonly·def | 1611 | readonly·def |
1613 | currentdict·end | 1612 | currentdict·end |
1614 | currentfile·eexec | 1613 | currentfile·eexec |
1615 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1614 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1793, 88 lines modified | Offset 1792, 83 lines modified | ||
1793 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1792 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1794 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1793 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1795 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1794 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1796 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1795 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1797 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1796 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1798 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1797 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1799 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1798 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1800 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1799 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1800 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1801 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1802 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1803 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1804 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1805 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1806 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1807 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1808 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1809 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1810 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1811 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1812 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1813 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1814 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1815 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1816 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1817 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1818 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1819 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1820 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1821 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1822 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1823 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1824 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1825 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1826 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1827 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1828 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1829 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1830 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1831 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1832 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1833 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1834 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1835 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1836 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1837 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1838 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1839 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1840 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1841 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1842 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1843 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1844 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1845 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1846 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1847 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1848 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1849 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1850 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1851 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1852 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1853 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1854 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1855 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1856 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1857 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1858 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1859 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1860 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1861 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1862 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1863 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1864 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1865 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1866 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1801 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1802 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1803 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1804 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1805 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1806 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1807 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1808 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1809 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1810 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1811 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1812 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 68124/79250 bytes (85.96%) of diff not shown. |
Offset 1, 12 lines modified | Offset 1, 12 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 | ····························································January·7,·2024\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 |
12 | ··················Contents\xd | 12 | ··················Contents\xd |
Offset 55, 18 lines modified | Offset 55, 18 lines modified | ||
55 | ·····································b····b\xd | 55 | ·····································b····b\xd |
56 | ··············izations·and·solves·involving·A·and·B.·This·permutation·matrix·P·is·typically·found·by·ordering·the·graph\xd | 56 | ··············izations·and·solves·involving·A·and·B.·This·permutation·matrix·P·is·typically·found·by·ordering·the·graph\xd |
57 | ··············of·A·+B·using·a·variant·of·minimum·degree·or·nested·dissection.·The·ordering·is·performed·prior·to·any\xd | 57 | ··············of·A·+B·using·a·variant·of·minimum·degree·or·nested·dissection.·The·ordering·is·performed·prior·to·any\xd |
58 | ··············action·by·the·eigensolver.·This·“setup·phase”·includes·more·than·just·finding·the·permutation·matrix,·e.g.,\xd | 58 | ··············action·by·the·eigensolver.·This·“setup·phase”·includes·more·than·just·finding·the·permutation·matrix,·e.g.,\xd |
59 | ··············various·data·structures·must·be·initialized.·In·a·parallel·environment,·there·is·even·more·setup·work·to·do,\xd | 59 | ··············various·data·structures·must·be·initialized.·In·a·parallel·environment,·there·is·even·more·setup·work·to·do,\xd |
60 | ··············analyzing·the·factorization·and·solves·and·specifying·which·threads·or·processors·perform·what·computations\xd | 60 | ··············analyzing·the·factorization·and·solves·and·specifying·which·threads·or·processors·perform·what·computations\xd |
61 | ························································2\xd | 61 | ························································2\xd |
62 | ································ | 62 | ································SPOOLES2.2·Wrapper·Objects·:···January·7,·2024·············3\xd |
63 | ·············and·store·what·data.·In·a·distributed·environment,·the·entries·of·A·and·B·must·also·be·distributed·among\xd | 63 | ·············and·store·what·data.·In·a·distributed·environment,·the·entries·of·A·and·B·must·also·be·distributed·among\xd |
64 | ·············the·processors·in·preparation·for·the·factors·and·multiplies.\xd | 64 | ·············the·processors·in·preparation·for·the·factors·and·multiplies.\xd |
65 | ··············· | 65 | ···············For·each·of·the·three·environments·—·serial,·multithreaded·and·MPI·—·the·SPOOLES·solver·has\xd |
66 | ·············constructed·a·“bridge”·object·to·span·the·interface·between·the·linear·system·solver·and·the·eigensolver.\xd | 66 | ·············constructed·a·“bridge”·object·to·span·the·interface·between·the·linear·system·solver·and·the·eigensolver.\xd |
67 | ·············Each·of·the·Bridge,·BridgeMT·and·BridgeMPI·objects·have·five·methods:·set-up,·factor,·solve,·matrix-\xd | 67 | ·············Each·of·the·Bridge,·BridgeMT·and·BridgeMPI·objects·have·five·methods:·set-up,·factor,·solve,·matrix-\xd |
68 | ·············multiply·and·cleanup.·The·factor,·solve·and·matrix-multiply·methods·follow·the·calling·sequence·convention\xd | 68 | ·············multiply·and·cleanup.·The·factor,·solve·and·matrix-multiply·methods·follow·the·calling·sequence·convention\xd |
69 | ·············imposed·by·the·eigensolver,·and·are·passed·to·the·eigensolver·at·the·beginning·of·the·Lanczos·run.·The\xd | 69 | ·············imposed·by·the·eigensolver,·and·are·passed·to·the·eigensolver·at·the·beginning·of·the·Lanczos·run.·The\xd |
70 | ·············set-up·method·is·called·prior·to·the·eigensolver,·and·the·cleanup·method·is·called·after·the·eigenvalues·and\xd | 70 | ·············set-up·method·is·called·prior·to·the·eigensolver,·and·the·cleanup·method·is·called·after·the·eigenvalues·and\xd |
71 | ·············eigenvectors·have·been·determined.\xd | 71 | ·············eigenvectors·have·been·determined.\xd |
72 | ···········Chapter·2\xd | 72 | ···········Chapter·2\xd |
Offset 91, 55 lines modified | Offset 91, 55 lines modified | ||
91 | ···············and·are·used·in·the·solves.\xd | 91 | ···············and·are·used·in·the·solves.\xd |
92 | ·············•·FrontMtx·*frontmtx·:·object·that·stores·the·L,·D·and·U·factor·matrices.\xd | 92 | ·············•·FrontMtx·*frontmtx·:·object·that·stores·the·L,·D·and·U·factor·matrices.\xd |
93 | ·············•·IV·*oldToNewIV·:·object·that·stores·old-to-new·permutation·vector.\xd | 93 | ·············•·IV·*oldToNewIV·:·object·that·stores·old-to-new·permutation·vector.\xd |
94 | ·············•·IV·*newToOldIV·:·object·that·stores·new-to-old·permutation·vector.\xd | 94 | ·············•·IV·*newToOldIV·:·object·that·stores·new-to-old·permutation·vector.\xd |
95 | ·············•·DenseMtx·*X·:·dense·matrix·object·that·is·used·during·the·matrix·multiples·and·solves.\xd | 95 | ·············•·DenseMtx·*X·:·dense·matrix·object·that·is·used·during·the·matrix·multiples·and·solves.\xd |
96 | ·············•·DenseMtx·*Y·:·dense·matrix·object·that·is·used·during·the·matrix·multiples·and·solves.\xd | 96 | ·············•·DenseMtx·*Y·:·dense·matrix·object·that·is·used·during·the·matrix·multiples·and·solves.\xd |
97 | ·············································4\xd | 97 | ·············································4\xd |
98 | ································ | 98 | ································SPOOLES2.2·Wrapper·Objects·:···January·7,·2024·············5\xd |
99 | ··············· | 99 | ···············•·int·msglvl·:·message·level·for·output.·When·0,·no·output,·When·1,·just·statistics·and·cpu·times.\xd |
100 | ·················When·greater·than·1,·more·and·more·output.\xd | 100 | ·················When·greater·than·1,·more·and·more·output.\xd |
101 | ··············· | 101 | ···············•·FILE·*msgFile·:·message·file·for·output.·When·msglvl·>·0,·msgFile·must·not·be·NULL.\xd |
102 | ·············2.2··· | 102 | ·············2.2···Prototypes·and·descriptions·of·Bridge·methods\xd |
103 | ·············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·Bridge·object.\xd | 103 | ·············This·section·contains·brief·descriptions·including·prototypes·of·all·methods·that·belong·to·the·Bridge·object.\xd |
104 | ···············1.·int·Setup·(·void·*data,·int·*pprbtype,·int·*pneqns,·int·*pmxbsz,\xd | 104 | ···············1.·int·Setup·(·void·*data,·int·*pprbtype,·int·*pneqns,·int·*pmxbsz,\xd |
105 | ··························· | 105 | ···························InpMtx·*A,·InpMtx·*B,·int·*pseed,·int·*pmsglvl,·FILE·*msgFile·)·;\xd |
106 | ·················All·calling·sequence·parameters·are·pointers·to·more·easily·allow·an·interface·with·Fortran.\xd | 106 | ·················All·calling·sequence·parameters·are·pointers·to·more·easily·allow·an·interface·with·Fortran.\xd |
107 | ··················· | 107 | ···················•·void·*data·—·a·pointer·to·the·Bridge·object.\xd |
108 | ··················· | 108 | ···················•·int·*pprbtype·—·*pprbtype·holds·the·problem·type.\xd |
109 | ······················ | 109 | ······················–·1·—·vibration,·a·multiply·with·B·is·required.\xd |
110 | ······················ | 110 | ······················–·2·—·buckling,·a·multiply·with·A·is·required.\xd |
111 | ······················ | 111 | ······················–·3·—·simple,·no·multiply·is·required.\xd |
112 | ··················· | 112 | ···················•·int·*pneqns·—·*pneqns·is·the·number·of·equations.\xd |
113 | ··················· | 113 | ···················•·int·*pmxbsz·—·*pmxbsz·is·an·upper·bound·on·the·block·size.\xd |
114 | ··················· | 114 | ···················•·InpMtx·*A·—·A·is·a·SPOOLES·object·that·holds·the·matrix·A.\xd |
115 | ··················· | 115 | ···················•·InpMtx·*B·—·B·is·a·SPOOLES·object·that·holds·the·matrix·B.·For·an·ordinary·eigenproblem,\xd |
116 | ···················· | 116 | ····················B·is·the·identity·and·B·is·NULL.\xd |
117 | ··················· | 117 | ···················•·int·*pseed·—·*pseed·is·a·random·number·seed.\xd |
118 | ··················· | 118 | ···················•·int·*pmsglvl—*pmsglvlisamessagelevelforthebridgemethodsandtheSPOOLESmethods\xd |
119 | ···················· | 119 | ····················they·call.\xd |
120 | ··················· | 120 | ···················•·FILE·*pmsglvl—·msgFileis·the·message·file·for·the·bridge·methods·and·the·SPOOLES·meth-\xd |
121 | ···················· | 121 | ····················ods·they·call.\xd |
122 | ·················This·method·must·be·called·in·the·driver·program·prior·to·invoking·the·eigensolver·via·a·call·to\xd | 122 | ·················This·method·must·be·called·in·the·driver·program·prior·to·invoking·the·eigensolver·via·a·call·to\xd |
123 | ·················lanczos·run().·It·then·follows·this·sequence·of·action.\xd | 123 | ·················lanczos·run().·It·then·follows·this·sequence·of·action.\xd |
124 | ··················· | 124 | ···················•·Themethodbeginsbycheckingalltheinput·data,·andsetting·the·appropriatefields·of·the·Bridge\xd |
125 | ···················· | 125 | ····················object.\xd |
126 | ··················· | 126 | ···················•·The·pencil·object·is·initialized·with·A·and·B.\xd |
127 | ··················· | 127 | ···················•·A·and·B·are·converted·to·storage·by·rows·and·vector·mode.\xd |
128 | ··················· | 128 | ···················•·A·Graph·object·is·created·that·contains·the·sparsity·pattern·of·the·union·of·A·and·B.\xd |
129 | ··················· | 129 | ···················•·The·graph·is·ordered·by·first·finding·a·recursive·dissection·partition,·and·then·evaluating·the\xd |
130 | ···················· | 130 | ····················orderings·produced·by·nested·dissection·and·multisection,·and·choosing·the·better·of·the·two.\xd |
131 | ···················· | 131 | ····················The·frontETree·object·is·produced·and·placed·into·the·bridge·object.\xd |
132 | ··················· | 132 | ···················•·Old-to-new·and·new-to-old·permutations·are·extracted·from·the·front·tree·and·loaded·into·the\xd |
133 | ···················· | 133 | ····················Bridge·object.\xd |
134 | ··················· | 134 | ···················•·The·vertices·in·the·front·tree·are·permuted,·as·well·as·the·entries·in·A·and·B.·Entries·in·the·lower\xd |
135 | ···················· | 135 | ····················triangle·of·A·and·B·are·mapped·into·the·upper·triangle,·and·the·storage·modes·of·A·and·B·are\xd |
136 | ···················· | 136 | ····················changed·to·chevrons·and·vectors,·in·preparation·for·the·first·factorization.\xd |
137 | ··················· | 137 | ···················•·The·symbolic·factorization·is·then·computed·and·loaded·in·the·Bridge·object.\xd |
138 | ··········································SPOOLES | 138 | ···········································SPOOLES2.2·Wrapper·Objects·:·············January·7,·2024······················6\xd |
139 | ·························•·A·FrontMtx·object·is·created·to·hold·the·factorization·and·loaded·into·the·Bridge·object.\xd | 139 | ·························•·A·FrontMtx·object·is·created·to·hold·the·factorization·and·loaded·into·the·Bridge·object.\xd |
140 | ·························•·A·SubMtxManager·object·is·created·to·hold·the·factor’s·submatrices·and·loaded·into·the·Bridge\xd | 140 | ·························•·A·SubMtxManager·object·is·created·to·hold·the·factor’s·submatrices·and·loaded·into·the·Bridge\xd |
141 | ···························object.\xd | 141 | ···························object.\xd |
142 | ·························•·Two·DenseMtx·objects·are·created·to·be·used·during·the·matrix·multiplies·and·solves.\xd | 142 | ·························•·Two·DenseMtx·objects·are·created·to·be·used·during·the·matrix·multiplies·and·solves.\xd |
143 | ······················The·A·and·B·matrices·are·now·in·their·permuted·ordering,·i.e.,·PAPT·and·PBPT,·and·all·data·struc-\xd | 143 | ······················The·A·and·B·matrices·are·now·in·their·permuted·ordering,·i.e.,·PAPT·and·PBPT,·and·all·data·struc-\xd |
144 | ······················tures·are·with·respect·to·this·ordering.·After·the·Lanczos·run·completes,·any·generated·eigenvectors\xd | 144 | ······················tures·are·with·respect·to·this·ordering.·After·the·Lanczos·run·completes,·any·generated·eigenvectors\xd |
145 | ······················must·be·permuted·back·into·their·original·ordering·using·the·oldToNewIV·and·newToOldIV·objects.\xd | 145 | ······················must·be·permuted·back·into·their·original·ordering·using·the·oldToNewIV·and·newToOldIV·objects.\xd |
Offset 173, 15 lines modified | Offset 173, 15 lines modified | ||
173 | ·························•·double·X[]·—·this·is·the·X·matrix,·stored·column·major·with·leading·dimension·*pnrows.\xd | 173 | ·························•·double·X[]·—·this·is·the·X·matrix,·stored·column·major·with·leading·dimension·*pnrows.\xd |
174 | ·························•·double·Y[]·—·this·is·the·Y·matrix,·stored·column·major·with·leading·dimension·*pnrows.\xd | 174 | ·························•·double·Y[]·—·this·is·the·Y·matrix,·stored·column·major·with·leading·dimension·*pnrows.\xd |
175 | ·························•·int·*pprbtype·—·*pprbtype·holds·the·problem·type.\xd | 175 | ·························•·int·*pprbtype·—·*pprbtype·holds·the·problem·type.\xd |
176 | ·····························–·1·—·vibration,·a·multiply·with·B·is·required.\xd | 176 | ·····························–·1·—·vibration,·a·multiply·with·B·is·required.\xd |
177 | ·····························–·2·—·buckling,·a·multiply·with·A·is·required.\xd | 177 | ·····························–·2·—·buckling,·a·multiply·with·A·is·required.\xd |
178 | ·····························–·3·—·simple,·no·multiply·is·required.\xd | 178 | ·····························–·3·—·simple,·no·multiply·is·required.\xd |
179 | ·························•·void·*data·—·a·pointer·to·the·Bridge·object.\xd | 179 | ·························•·void·*data·—·a·pointer·to·the·Bridge·object.\xd |
180 | ········································SPOOLES | 180 | ·········································SPOOLES2.2·Wrapper·Objects·:···········January·7,·2024····················7\xd |
181 | ···················4.·void·Solve·(·int·*pnrows,·int·*pncols,·double·X[],·double·Y[],\xd | 181 | ···················4.·void·Solve·(·int·*pnrows,·int·*pncols,·double·X[],·double·Y[],\xd |
182 | ····································void·*data,·int·*perror·)·;\xd | 182 | ····································void·*data,·int·*perror·)·;\xd |
183 | ·····················This·method·solves·(A−σB)X·=·Y,·where·(A−σB)·has·been·factored·by·a·previous·call·to·Factor().\xd | 183 | ·····················This·method·solves·(A−σB)X·=·Y,·where·(A−σB)·has·been·factored·by·a·previous·call·to·Factor().\xd |
184 | ·····················All·calling·sequence·parameters·are·pointers·to·more·easily·allow·an·interface·with·Fortran.\xd | 184 | ·····················All·calling·sequence·parameters·are·pointers·to·more·easily·allow·an·interface·with·Fortran.\xd |
185 | ························•·int·*pnrows·—·*pnrows·contains·the·number·of·rows·in·X·and·Y.\xd | 185 | ························•·int·*pnrows·—·*pnrows·contains·the·number·of·rows·in·X·and·Y.\xd |
186 | ························•·int·*pncols·—·*pncols·contains·the·number·of·columns·in·X·and·Y.\xd | 186 | ························•·int·*pncols·—·*pncols·contains·the·number·of·columns·in·X·and·Y.\xd |
187 | ························•·double·X[]·—·this·is·the·X·matrix,·stored·column·major·with·leading·dimension·*pnrows.\xd | 187 | ························•·double·X[]·—·this·is·the·X·matrix,·stored·column·major·with·leading·dimension·*pnrows.\xd |
Offset 207, 15 lines modified | Offset 207, 15 lines modified | ||
207 | ···················•·inFileB·is·the·Harwell-Boeing·file·for·the·matrix·B.\xd | 207 | ···················•·inFileB·is·the·Harwell-Boeing·file·for·the·matrix·B.\xd |
208 | ················This·program·is·executed·for·some·sample·matrices·by·the·do·ST·*·shell·scripts·in·the·drivers·directory.\xd | 208 | ················This·program·is·executed·for·some·sample·matrices·by·the·do·ST·*·shell·scripts·in·the·drivers·directory.\xd |
209 | ···················Here·is·a·short·description·of·the·steps·in·the·driver·program.·See·Chapter·A·for·the·listing.\xd | 209 | ···················Here·is·a·short·description·of·the·steps·in·the·driver·program.·See·Chapter·A·for·the·listing.\xd |
210 | ···················1.·The·command·line·inputs·are·decoded.\xd | 210 | ···················1.·The·command·line·inputs·are·decoded.\xd |
211 | ···················2.·The·header·of·the·Harwell-Boeing·file·for·A·is·read.·This·yields·the·number·of·equations.\xd | 211 | ···················2.·The·header·of·the·Harwell-Boeing·file·for·A·is·read.·This·yields·the·number·of·equations.\xd |
212 | ···················3.·The·parameters·that·define·the·eigensystem·to·be·solved·are·read·in·from·the·parmFile·file.\xd | 212 | ···················3.·The·parameters·that·define·the·eigensystem·to·be·solved·are·read·in·from·the·parmFile·file.\xd |
213 | ···················4.·The·Lanczos·eigensolver·workspace·is·initialized.\xd | 213 | ···················4.·The·Lanczos·eigensolver·workspace·is·initialized.\xd |
214 | ································ | 214 | ································SPOOLES2.2·Wrapper·Objects·:···January·7,·2024·············8\xd |
215 | ···············5.·The·Lanczos·communication·structure·is·filled·with·some·parameters.\xd | 215 | ···············5.·The·Lanczos·communication·structure·is·filled·with·some·parameters.\xd |
216 | ···············6.·The·A·and·possibly·B·matrices·are·read·in·from·the·Harwell-Boeing·files·and·converted·into·InpMtx\xd | 216 | ···············6.·The·A·and·possibly·B·matrices·are·read·in·from·the·Harwell-Boeing·files·and·converted·into·InpMtx\xd |
217 | ·················objects·from·the·SPOOLES·library.\xd | 217 | ·················objects·from·the·SPOOLES·library.\xd |
218 | ···············7.·The·linear·solver·environment·is·then·initialized·via·a·call·to·Setup().\xd | 218 | ···············7.·The·linear·solver·environment·is·then·initialized·via·a·call·to·Setup().\xd |
219 | ···············8.·The·eigensolver·is·invoked·via·a·call·to·lanczos·run().·The·FactorMT(),·SolveMT()·and·MatMulMT()\xd | 219 | ···············8.·The·eigensolver·is·invoked·via·a·call·to·lanczos·run().·The·FactorMT(),·SolveMT()·and·MatMulMT()\xd |
220 | ·················methods·are·passed·to·this·routine.\xd | 220 | ·················methods·are·passed·to·this·routine.\xd |
221 | ···············9.·The·eigenvalues·are·extracted·and·printed·via·a·call·to·lanczos·eigenvalues().\xd | 221 | ···············9.·The·eigenvalues·are·extracted·and·printed·via·a·call·to·lanczos·eigenvalues().\xd |
Offset 243, 15 lines modified | Offset 243, 15 lines modified | ||
243 | ···············where·it·is·contained.\xd | 243 | ···············where·it·is·contained.\xd |
244 | ·············•·IVL·*symbfacIVL·:·object·that·contains·the·symbolic·factorization·of·the·matrix.\xd | 244 | ·············•·IVL·*symbfacIVL·:·object·that·contains·the·symbolic·factorization·of·the·matrix.\xd |
245 | ·············•·SubMtxManager·*mtxmanager·:·object·that·manages·the·SubMtx·objects·that·store·the·factor·entries\xd | 245 | ·············•·SubMtxManager·*mtxmanager·:·object·that·manages·the·SubMtx·objects·that·store·the·factor·entries\xd |
246 | ···············and·are·used·in·the·solves.\xd | 246 | ···············and·are·used·in·the·solves.\xd |
247 | ·············•·FrontMtx·*frontmtx·:·object·that·stores·the·L,·D·and·U·factor·matrices.\xd | 247 | ·············•·FrontMtx·*frontmtx·:·object·that·stores·the·L,·D·and·U·factor·matrices.\xd |
248 | ·············•·IV·*oldToNewIV·:·object·that·stores·old-to-new·permutation·vector.\xd | 248 | ·············•·IV·*oldToNewIV·:·object·that·stores·old-to-new·permutation·vector.\xd |
249 | ·············································9\xd | 249 | ·············································9\xd |
Max diff block lines reached; 29976/45068 bytes (66.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·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·2024.01.07:0425 |
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 1759, 21 lines modified | Offset 1759, 20 lines modified | ||
1759 | /UnderlineThickness·50·def | 1759 | /UnderlineThickness·50·def |
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·50·/two·put | 1765 | dup·50·/two·put |
1766 | dup·52·/four·put | ||
1766 | dup·5 | 1767 | dup·55·/seven·put |
1767 | dup·56·/eight·put | ||
1768 | dup·58·/colon·put | 1768 | dup·58·/colon·put |
1769 | dup·7 | 1769 | dup·74·/J·put |
1770 | dup·97·/a·put | 1770 | dup·97·/a·put |
1771 | dup·98·/b·put | ||
1772 | dup·1 | 1771 | dup·110·/n·put |
1773 | dup·114·/r·put | 1772 | dup·114·/r·put |
1774 | dup·117·/u·put | 1773 | dup·117·/u·put |
1775 | dup·121·/y·put | 1774 | dup·121·/y·put |
1776 | readonly·def | 1775 | readonly·def |
1777 | currentdict·end | 1776 | currentdict·end |
1778 | currentfile·eexec | 1777 | currentfile·eexec |
1779 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1778 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1957, 88 lines modified | Offset 1956, 83 lines modified | ||
1957 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1956 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1958 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1957 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1959 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1958 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1960 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1959 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1961 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1960 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1962 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1961 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1963 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1962 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1964 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1963 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1964 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1965 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1966 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1967 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1968 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1969 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1970 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1971 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1972 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1973 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1974 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1975 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1976 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1977 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1978 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1979 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1980 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1981 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1982 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1983 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1984 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1985 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1986 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1987 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1988 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1989 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1990 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1991 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1992 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1993 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1994 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1995 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1996 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1997 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1998 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1999 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2000 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2001 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2002 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2003 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2004 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2005 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2006 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2007 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2008 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2009 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2010 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2011 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2012 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2013 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2014 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2015 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2016 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2017 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2018 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2019 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2020 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2021 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2022 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2023 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2024 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2025 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2026 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2027 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2028 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2029 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2030 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1965 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1966 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1967 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1968 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1969 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1970 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1971 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1972 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1973 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1974 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1975 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1976 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 52684/63813 bytes (82.56%) 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·························FrontMtx·:·DRAFT· | 30 | ············2·························FrontMtx·:·DRAFT·January·7,·2024\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 | ·····································FrontMtx·:·DRAFT·· | 63 | ·····································FrontMtx·:·DRAFT···January·7,·2024···················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·January·7,·2024\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 | ·····································FrontMtx·:·DRAFT·· | 138 | ·····································FrontMtx·:·DRAFT···January·7,·2024···················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·January·7,·2024\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 | ·····································FrontMtx·:·DRAFT·· | 203 | ·····································FrontMtx·:·DRAFT···January·7,·2024···················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······························FrontMtx·:·DRAFT· | 238 | ···············8······························FrontMtx·:·DRAFT·January·7,·2024\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 | ·····································FrontMtx·:·DRAFT·· | 276 | ·····································FrontMtx·:·DRAFT···January·7,·2024···················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; 19960/31226 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·2024.01.07:0424 |
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 3345, 21 lines modified | Offset 3345, 21 lines modified | ||
3345 | /UnderlineThickness·50·def | 3345 | /UnderlineThickness·50·def |
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·50·/two·put | 3351 | dup·50·/two·put |
3352 | dup·52·/four·put | ||
3352 | dup·5 | 3353 | dup·55·/seven·put |
3353 | dup·56·/eight·put | ||
3354 | dup·70·/F·put | 3354 | dup·70·/F·put |
3355 | dup·74·/J·put | ||
3355 | dup·79·/O·put | 3356 | dup·79·/O·put |
3356 | dup·84·/T·put | 3357 | dup·84·/T·put |
3357 | dup·97·/a·put | 3358 | dup·97·/a·put |
3358 | dup·98·/b·put | ||
3359 | dup·100·/d·put | 3359 | dup·100·/d·put |
3360 | dup·101·/e·put | 3360 | dup·101·/e·put |
3361 | dup·103·/g·put | 3361 | dup·103·/g·put |
3362 | dup·105·/i·put | 3362 | dup·105·/i·put |
3363 | dup·110·/n·put | 3363 | dup·110·/n·put |
3364 | dup·111·/o·put | 3364 | dup·111·/o·put |
3365 | dup·114·/r·put | 3365 | dup·114·/r·put |
Offset 3560, 124 lines modified | Offset 3560, 121 lines modified | ||
3560 | 74EC2A7E24F94C1B867EA193FADA6F132370A02A7F704404421DBBEEF4D377B0 | 3560 | 74EC2A7E24F94C1B867EA193FADA6F132370A02A7F704404421DBBEEF4D377B0 |
3561 | 6FD3B44C4B53DF870E932BA700422DD125FC00D210197A2B78C149C9C3BF04A4 | 3561 | 6FD3B44C4B53DF870E932BA700422DD125FC00D210197A2B78C149C9C3BF04A4 |
3562 | E3EF6A6176E23204BCFB04D985B1196C831374A8CD31383AFB3C9C2FDF8C83E8 | 3562 | E3EF6A6176E23204BCFB04D985B1196C831374A8CD31383AFB3C9C2FDF8C83E8 |
3563 | CE84F332FB505DB3A3EBE03860F8E885D659DCF532B026E8A2AE9D9584A5073E | 3563 | CE84F332FB505DB3A3EBE03860F8E885D659DCF532B026E8A2AE9D9584A5073E |
3564 | 3DC9E54BAF8DB26AE708C4B7353490B531096051727ADD35B17A54E519432D87 | 3564 | 3DC9E54BAF8DB26AE708C4B7353490B531096051727ADD35B17A54E519432D87 |
3565 | 48863163EABCE4311F2E95EC8C1061B3B3772A751B41E6E8D10AA9C9FAD95161 | 3565 | 48863163EABCE4311F2E95EC8C1061B3B3772A751B41E6E8D10AA9C9FAD95161 |
3566 | 4C69AA33848D17D5D3B550B8BF69108E3A2521948A4574BCA0E31922B1B10F51 | 3566 | 4C69AA33848D17D5D3B550B8BF69108E3A2521948A4574BCA0E31922B1B10F51 |
3567 | BB7DCAE275B7C18116580B2D8E26F40A45F84DAF1E0A155F5CA88236395 | 3567 | BB7DCAE275B7C18116580B2D8E26F40A45F84DAF1E0A155F5CA88236395451E1 |
3568 | 8BECE73222A7F459CF47F6F664107A1CB538547134CF8BE12B379976D6D1E349 | ||
3569 | FA050837B0D6FC3C15946120841D18093C107AA487B2157308DE5D05C74AA177 | ||
3570 | 96EE4CD0AAAEA93474BEFBF609AF88907D7E41E53B8AFEB8705F2F4B1A7BD50F | ||
3571 | 419904A55622427205948BAF3DB3FB0A2AC0F286DEAF327BD653B11C4EA789B0 | ||
3572 | A52F8C3AC1C1748E48B39AC00B21CAB44512544AE9EB262FE09F990C372917CD | ||
3573 | E0CA4CEA02343C05FDDF44AE1267865F67798D5D8C62C7B2F0C58613E5CF7729 | ||
3574 | 009495AF32958EDCE516050D453DDA7772461C98CF2942BE19905E008192603D | ||
3575 | E7B6B8CCBB6249F517FA52567300AAC956DEB5D628B75470052EC305C2F294DD | ||
3576 | 0271994055F5D06FAE9E79BC75D96391B0AA8997B23B898813B4C320478D74ED | ||
3577 | F66991F0EDA2AD7F6A7E58E0B3D86C1C10008D993C9E9899FB205A9E4CC1BC27 | ||
3578 | 7FE4513D65A1B70E2D6C13B00E42BD08E72F017EED17D1AA6817D21EF0360996 | ||
3579 | C5A03B53F0E4AAC9069E71C513D56F5ADC4EEE12176D81E6411839C788B8086B | ||
3580 | C8AAA845B11DC85BD4DE9CBC304D7172D0A85CAC8DCAA334361412C79AE46788 | ||
3581 | A69D82E3E5AEA7E60ED0A3179E3FA814A2DB4959D829AFC076F619D0E22FDE8C | ||
3582 | 7571CD78E73EE106D893DE95A9FF07BA79EFAB9C7E4F0F4C846EBA3F6A02180D | ||
3583 | 39AA5A08DC4495489F1F77A4640231A30243C3BD615C13917D318F2A0F3E9F09 | ||
3584 | 77F87A79E9AD892FBFEFBD7A02113AC741575763B0302112B7C99432FEBC2B05 | ||
3585 | FC2E1D11D07E143FD940FA5A9E109013E7DDA76BC42214E7F73CD7826971D599 | ||
3586 | DC640650EC6BCB276AAD65C61A2CAEA8F4C27BA83B647356D6B78A1CB461C341 | ||
3587 | D6CA000027EF04D008A414335C1EA77B3B9445FC33FF6515A72D1BC8FF8390EC | ||
3588 | 38DC5EEA65697ED67532F8D1B54330F033AE0891EE7BBDBBE1A9A22CBE1F1F10 | ||
3589 | 21E035ABD9D31EB6A1D7A32ECE1D08AD8AE596C4516337A7F04432455062FA1D | ||
3590 | 25E77905413D4197DBD26C4E6C98768A0A8149720277C40E59EB0F0C9369A518 | ||
3591 | 47E0A945A47A2DD7B4A9C6E2896F642A5F0A7759A55F6C3E43951557BCA4BCED | ||
3592 | 8E6AA219CE9AB66A6AB232AF2919ADC8EB84BE6822E22070BCD099D8F0C1062C | ||
3593 | E1745846E50CC85B9B1CE3F14A4639B118CAFDA952F3B21D426DD7808BD0CFBA | ||
3594 | AE03CA6BD92E71196F51D1E683BDF18255C756D3DCC7DED1594EA4E1C5FE9705 | ||
3595 | B8862FCF2A116032C2C8ED7B5DDA3AEDB20C7301D0E6C536F3419DF34E43E785 | ||
3596 | 0AD20CEACE127526826A618D9C4B44D3D3F6CC88648B594601556D5EB3E24F51 | ||
3597 | F3B7FC5C877DCFE9D4CE9344E496B8CEB1943836676A39923337A9FE0BD490B9 | ||
3598 | 0D787108CE74ABBFE7DF54C82610088784AD8BCFE6524A9BC8C2CDAE99B4B0A2 | ||
3599 | A1846489D38B853523A6B7EC712B3D782EFAAA4CF6C33133D079618E99A8D8C8 | ||
3600 | 156BD00CFAA25130D1BDA909A7F5D3AF1DAD4C70858F142ECD13D33CE1C5F6B5 | ||
3601 | C8C7B028ED8F7E4202179CFC017558B12CA9DF16121086EA5863926B2533A8FD | ||
3602 | D4ED1BCBF5616DC7196E7AFBB0E7EC5070375B99D85B928C3E975ED1A0B9E5F8 | ||
3603 | E54E7B2A19E67DB8F4877EAE2E091DD7659A4DE41B9CA7E2C0173041BCC9CAD4 | ||
3604 | BD4B78F49F652515C07BBDBB246E9534FCE28470BFF52667F229CFCF20117BDF | ||
3605 | 83ED0613DA910275A033440FAD21496DC907C58777B7CFDFAB39F94D970F210E | ||
3606 | 5734BC322CD92AF825210077C92835E8991A37C432288DFF4DDF03FD3E20DB80 | ||
3607 | 89DA909CBEEBE85807E5223F8DDFD0366EF5C6EFEE02021B1B5FE276D6675723 | ||
3608 | 82DF5DB42B6FF210BFF7EB4CFC11B8E0D8A21AD88DA150897C3F1A650E2A7E9A | ||
3609 | 8C0AD0F0A038DFDB55423EC5DA4EABBFEBE2FC6BCC7CF8746192F159A5D6F30D | ||
3610 | 3FB19FC7BF033554C1FCA438F2E0AACFCFAC9B1B20BF69FBAA460CA48B3010E7 | ||
3611 | C8C6C432F908AD5CE4E5B98F685E0AE2186919127DFB7E66D523972E53F2E10F | ||
3612 | 70BEE17E386C9ACBA27103B4211952754922CCEE3AA238B8DA526A3C1D748F48 | ||
3613 | 1F9EE2F2724B5AB6BE35FA92736481535BF4E484131D765F70ED803F3E57F890 | ||
3614 | B9553518958E5D975A484B67F512C04D3E75AA347E334BD0D40C3BE8E98B09EA | ||
3615 | 12386297319633095133DC680F58169EC30BA6688941714FAFA899C5ABAE83B8 | ||
3616 | C4066A1A37903B4A2CB32606631D9280FF4274661774ECAC100BC13A7D0299DD | ||
3617 | BA4AB27CF8F833470BE83E47A2CB777035AB9F30549CB6C65F2E70029DAA984C | ||
3618 | 1AC5A2B9F1B44CE8F15474D76B056C1FF8B06AD927BDF136386E47CDE16169C7 | ||
3619 | 7AB5963F2A200B92EE65358D9EB4FC8F6E8FEF6A0C2A76172491EAB785D76663 | ||
3620 | 9DB6B70FD40408608E86FF6BDE773597E681A1A9CFC7D3D087BF8F81B77990C6 | ||
3621 | 64FFE0BB4A5CF86A9B7CC9F0324DD72C826323078FFF438DA744061D3EE0661D | ||
3622 | 52E708807B31ADBFCF366596F5E37BAEEE2A2A424B7F2E49B7B315386B5AB955 | ||
3623 | 5F977588213BF6F359F3E6B9841A36EAF27CA2538CA7547B786B420010277DF3 | ||
3624 | 1CE4B92EAE09DE43FCB2299D7A2E3A31DF9A07EF4D15EABE035415C0EC70F217 | ||
3625 | 119D651E454A162247357272F26E1D81BBFA8CBE63D8C2AA0367994F3632BA8E | ||
3626 | 557CBF62D95FCC9B7DE13EC9A371C04CC34F4E4C8746B07ABF880C0DE3DFE479 | ||
3627 | 0420A22607CE955BE0CCB08DEC88D4556BA2E0B24BC557746508623BCE179DA7 | ||
3628 | 1B5CFC08C97454299D2A102D419479E20BF48BBA36992E095A2DA922C702A46D | ||
3629 | F8D9E6ECA77CA813759B573F9F0000785D601DEB5129C9D4A1F818AB1E109FBE | ||
3630 | 23AA7F2F9570D8A49156BE015BF0B5F77A9BCDA5563C041717D69AFB46110469 | ||
3631 | FAC39CA28C774CF986690AE4E56DF6EC0E144A307979B177466A0ED15E4E426B | ||
3632 | CC2115B77CF463369626C5686100F864D576DF92D7A77924ECBCC50F43169361 | ||
3633 | 354E0160677F2987B791B2DC4CF96565B805A0CBA6AE2DE07A6770F62C6B32B9 | ||
3634 | 6AC80A5FC02F0BCE7EAF461452643FB7814CCD94E31F9EAEE88489B0CD2E32AF | ||
3635 | 522C80C468C3B32D8801083E3FFC9B425699C550D32D28F19299A9131F930B5D | ||
3636 | 34DE6A025ED6B0D24664B3B76FCE643F6D0DE48A4BA17C71B682F9D70397E42C | ||
3637 | DE6F3B180140834315789872C251F6546E187B0DEFA5A11CC873C2CB7CA1C0AA | ||
3638 | 2C837F3BE6F7A2578D9B30199CBCD3294A1611007B91EEE59A585862EDEB489E | ||
3639 | E77F60F2E6DB691289898EC8409574EA801FEF1CC84531BDA321ED3690C808D5 | ||
3640 | 0EE357E44F7C5F5701D796C58932BD1A66D8B8BA886A60AD40DFE0AA7A643FDC | ||
3641 | FD8718AA91CFAD2BB4C03E827877C6DA186CD94882AC59CC10582EFCCAFC6E70 | ||
3642 | A98C36A3E530D04700AC97A74C0B19B95D5506F7F51F85F1104D8425A4103E6B | ||
3643 | 76DC1142E6FAD7A68D4D55C2FA0283AB624C53EF1212887D3CF7C03BF763AECC | ||
3644 | 1A9E07C309BCF150F1F19D9A227C6844FAFF477515CEB6E80F5D95FEE88FECE0 | ||
3645 | 8AC51F64A9A140611AA1F8D2F3580F23E4DB593D6026753505B83A0A0D5FD35B | ||
3646 | 09EDC1C1085FCCC5106A58F96B71F1161C4D954D6B42D8B42BD41CB1CC0E58C3 | ||
Max diff block lines reached; 56610/72558 bytes (78.02%) 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 | ···························································January·7,·2024\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···········································January·7,·2024\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 | ·················January·7,·2024······················································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··········································January·7,·2024\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 | ················January·7,·2024····················································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············································January·7,·2024\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 | ·····························January·7,·2024·············································································································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··········································January·7,·2024\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; 15068/28102 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·2024.01.07:0425 |
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 1789, 21 lines modified | Offset 1789, 20 lines modified | ||
1789 | /UnderlineThickness·50·def | 1789 | /UnderlineThickness·50·def |
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·50·/two·put | 1795 | dup·50·/two·put |
1796 | dup·52·/four·put | ||
1796 | dup·5 | 1797 | dup·55·/seven·put |
1797 | dup·56·/eight·put | ||
1798 | dup·58·/colon·put | 1798 | dup·58·/colon·put |
1799 | dup·7 | 1799 | dup·74·/J·put |
1800 | dup·97·/a·put | 1800 | dup·97·/a·put |
1801 | dup·98·/b·put | ||
1802 | dup·1 | 1801 | dup·110·/n·put |
1803 | dup·114·/r·put | 1802 | dup·114·/r·put |
1804 | dup·117·/u·put | 1803 | dup·117·/u·put |
1805 | dup·121·/y·put | 1804 | dup·121·/y·put |
1806 | readonly·def | 1805 | readonly·def |
1807 | currentdict·end | 1806 | currentdict·end |
1808 | currentfile·eexec | 1807 | currentfile·eexec |
1809 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1808 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1987, 88 lines modified | Offset 1986, 83 lines modified | ||
1987 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1986 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1988 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1987 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1989 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1988 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1990 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1989 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1991 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1990 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1992 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1991 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1993 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1992 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1994 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1993 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1994 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1995 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1996 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1997 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1998 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1999 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2000 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2001 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2002 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2003 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2004 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2005 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2006 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2007 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2008 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2009 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2010 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2011 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2012 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2013 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2014 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2015 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2016 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2017 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2018 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2019 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2020 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2021 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2022 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2023 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2024 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2025 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2026 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2027 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2028 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2029 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2030 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2031 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2032 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2033 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2034 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2035 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2036 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2037 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2038 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2039 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2040 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2041 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2042 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2043 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2044 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2045 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2046 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2047 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2048 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2049 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2050 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2051 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2052 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2053 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2054 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2055 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2056 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2057 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2058 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2059 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2060 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1995 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1996 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1997 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1998 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1999 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2000 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2001 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2002 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2003 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2004 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2005 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2006 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 34208/45334 bytes (75.46%) 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·January·7,·2024\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·····January·7,·2024··························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····························GPart·:·DRAFT· | 105 | ··············4····························GPart·:·DRAFT·January·7,·2024\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 | ······································GPart·:·DRAFT·· | 139 | ······································GPart·:·DRAFT···January·7,·2024····················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····························GPart·:·DRAFT· | 178 | ··············6····························GPart·:·DRAFT·January·7,·2024\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 | ······································GPart·:·DRAFT·· | 216 | ······································GPart·:·DRAFT···January·7,·2024····················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·····································GPart·:·DRAFT· | 260 | ··················8······································GPart·:·DRAFT·January·7,·2024\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 | ······································GPart·:·DRAFT·· | 310 | ······································GPart·:·DRAFT···January·7,·2024····················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; 6484/17518 bytes (37.01%) 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·2024.01.07:0425 |
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 1203, 21 lines modified | Offset 1203, 20 lines modified | ||
1203 | /UnderlineThickness·50·def | 1203 | /UnderlineThickness·50·def |
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·50·/two·put | 1209 | dup·50·/two·put |
1210 | dup·52·/four·put | ||
1210 | dup·5 | 1211 | dup·55·/seven·put |
1211 | dup·56·/eight·put | ||
1212 | dup·58·/colon·put | 1212 | dup·58·/colon·put |
1213 | dup·7 | 1213 | dup·74·/J·put |
1214 | dup·97·/a·put | 1214 | dup·97·/a·put |
1215 | dup·98·/b·put | ||
1216 | dup·1 | 1215 | dup·110·/n·put |
1217 | dup·114·/r·put | 1216 | dup·114·/r·put |
1218 | dup·117·/u·put | 1217 | dup·117·/u·put |
1219 | dup·121·/y·put | 1218 | dup·121·/y·put |
1220 | readonly·def | 1219 | readonly·def |
1221 | currentdict·end | 1220 | currentdict·end |
1222 | currentfile·eexec | 1221 | currentfile·eexec |
1223 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1222 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1401, 88 lines modified | Offset 1400, 83 lines modified | ||
1401 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1400 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1402 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1401 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1403 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1402 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1404 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1403 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1405 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1404 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1406 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1405 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1407 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1406 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1408 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1407 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1408 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1409 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1410 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1411 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1412 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1413 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1414 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1415 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1416 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1417 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1418 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1419 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1420 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1421 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1422 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1423 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1424 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1425 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1426 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1427 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1428 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1429 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1430 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1431 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1432 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1433 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1434 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1435 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1436 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1437 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1438 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1439 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1440 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1441 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1442 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1443 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1444 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1445 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1446 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1447 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1448 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1449 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1450 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1451 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1452 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1453 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1454 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1455 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1456 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1457 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1458 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1459 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1460 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1461 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1462 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1463 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1464 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1465 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1466 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1467 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1468 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1469 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1470 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1471 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1472 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1473 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1474 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1409 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1410 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1411 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1412 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1413 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1414 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1415 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1416 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1417 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1418 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1419 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1420 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 26276/37402 bytes (70.25%) 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·January·7,·2024\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 | ················································Graph·:·DRAFT······ | 64 | ················································Graph·:·DRAFT·······January·7,·2024····························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····························Graph·:·DRAFT· | 98 | ··············4····························Graph·:·DRAFT·January·7,·2024\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···January·7,·2024····················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·January·7,·2024\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···January·7,·2024····················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·······················Graph·:·DRAFT· | 249 | ···········8·······················Graph·:·DRAFT·January·7,·2024\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·····January·7,·2024·························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; 4217/15737 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·2024.01.07:0425 |
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 2424, 21 lines modified | Offset 2424, 20 lines modified | ||
2424 | /UnderlineThickness·50·def | 2424 | /UnderlineThickness·50·def |
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·50·/two·put | 2430 | dup·50·/two·put |
2431 | dup·52·/four·put | ||
2431 | dup·5 | 2432 | dup·55·/seven·put |
2432 | dup·56·/eight·put | ||
2433 | dup·58·/colon·put | 2433 | dup·58·/colon·put |
2434 | dup·7 | 2434 | dup·74·/J·put |
2435 | dup·97·/a·put | 2435 | dup·97·/a·put |
2436 | dup·98·/b·put | ||
2437 | dup·1 | 2436 | dup·110·/n·put |
2438 | dup·114·/r·put | 2437 | dup·114·/r·put |
2439 | dup·117·/u·put | 2438 | dup·117·/u·put |
2440 | dup·121·/y·put | 2439 | dup·121·/y·put |
2441 | readonly·def | 2440 | readonly·def |
2442 | currentdict·end | 2441 | currentdict·end |
2443 | currentfile·eexec | 2442 | currentfile·eexec |
2444 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2443 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2622, 88 lines modified | Offset 2621, 83 lines modified | ||
2622 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2621 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2623 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2622 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2624 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2623 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2625 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2624 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2626 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2625 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2627 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2626 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2628 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2627 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2629 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2628 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2629 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2630 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2631 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2632 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2633 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2634 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2635 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2636 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2637 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2638 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2639 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2640 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2641 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2642 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2643 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2644 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2645 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2646 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2647 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2648 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2649 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2650 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2651 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2652 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2653 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2654 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2655 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2656 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2657 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2658 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2659 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2660 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2661 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2662 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2663 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2664 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2665 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2666 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2667 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2668 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2669 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2670 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2671 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2672 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2673 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2674 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2675 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2676 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2677 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2678 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2679 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2680 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2681 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2682 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2683 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2684 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2685 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2686 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2687 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2688 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2689 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2690 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2691 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2692 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2693 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2694 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2695 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2630 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2631 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2632 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2633 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2634 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2635 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2636 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2637 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2638 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2639 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2640 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2641 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 6692/17820 bytes (37.55%) 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···························I2Ohash·:·DRAFT· | 28 | ··············2···························I2Ohash·:·DRAFT·January·7,·2024\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·······January·7,·2024·····························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······················I2Ohash·:·DRAFT· | 99 | ···········4······················I2Ohash·:·DRAFT·January·7,·2024\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·2024.01.07:0425 |
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 1277, 21 lines modified | Offset 1277, 20 lines modified | ||
1277 | /UnderlineThickness·50·def | 1277 | /UnderlineThickness·50·def |
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·50·/two·put | 1283 | dup·50·/two·put |
1284 | dup·52·/four·put | ||
1284 | dup·5 | 1285 | dup·55·/seven·put |
1285 | dup·56·/eight·put | ||
1286 | dup·58·/colon·put | 1286 | dup·58·/colon·put |
1287 | dup·7 | 1287 | dup·74·/J·put |
1288 | dup·97·/a·put | 1288 | dup·97·/a·put |
1289 | dup·98·/b·put | ||
1290 | dup·1 | 1289 | dup·110·/n·put |
1291 | dup·114·/r·put | 1290 | dup·114·/r·put |
1292 | dup·117·/u·put | 1291 | dup·117·/u·put |
1293 | dup·121·/y·put | 1292 | dup·121·/y·put |
1294 | readonly·def | 1293 | readonly·def |
1295 | currentdict·end | 1294 | currentdict·end |
1296 | currentfile·eexec | 1295 | currentfile·eexec |
1297 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1296 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1475, 88 lines modified | Offset 1474, 83 lines modified | ||
1475 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1474 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1476 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1475 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1477 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1476 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1478 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1477 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1479 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1478 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1480 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1479 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1481 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1480 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1482 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1481 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1482 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1483 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1484 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1485 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1486 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1487 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1488 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1489 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1490 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1491 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1492 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1493 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1494 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1495 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1496 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1497 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1498 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1499 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1500 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1501 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1502 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1503 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1504 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1505 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1506 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1507 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1508 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1509 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1510 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1511 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1512 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1513 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1514 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1515 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1516 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1517 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1518 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1519 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1520 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1521 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1522 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1523 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1524 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1525 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1526 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1527 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1528 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1529 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1530 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1531 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1532 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1533 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1534 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1535 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1536 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1537 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1538 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1539 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1540 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1541 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1542 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1543 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1544 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1545 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1546 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1547 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1548 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1483 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1484 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1485 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1486 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1487 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1488 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1489 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1490 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1491 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1492 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1493 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1494 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 5431/16558 bytes (32.80%) 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·January·7,·2024\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··January·7,·2024····················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·2024.01.07:0425 |
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 1609, 21 lines modified | Offset 1609, 20 lines modified | ||
1609 | /UnderlineThickness·50·def | 1609 | /UnderlineThickness·50·def |
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·50·/two·put | 1615 | dup·50·/two·put |
1616 | dup·52·/four·put | ||
1616 | dup·5 | 1617 | dup·55·/seven·put |
1617 | dup·56·/eight·put | ||
1618 | dup·58·/colon·put | 1618 | dup·58·/colon·put |
1619 | dup·7 | 1619 | dup·74·/J·put |
1620 | dup·97·/a·put | 1620 | dup·97·/a·put |
1621 | dup·98·/b·put | ||
1622 | dup·1 | 1621 | dup·110·/n·put |
1623 | dup·114·/r·put | 1622 | dup·114·/r·put |
1624 | dup·117·/u·put | 1623 | dup·117·/u·put |
1625 | dup·121·/y·put | 1624 | dup·121·/y·put |
1626 | readonly·def | 1625 | readonly·def |
1627 | currentdict·end | 1626 | currentdict·end |
1628 | currentfile·eexec | 1627 | currentfile·eexec |
1629 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1628 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1807, 88 lines modified | Offset 1806, 83 lines modified | ||
1807 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1806 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1808 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1807 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1809 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1808 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1810 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1809 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1811 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1810 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1812 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1811 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1813 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1812 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1814 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1813 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1814 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1815 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1816 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1817 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1818 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1819 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1820 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1821 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1822 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1823 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1824 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1825 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1826 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1827 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1828 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1829 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1830 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1831 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1832 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1833 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1834 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1835 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1836 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1837 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1838 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1839 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1840 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1841 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1842 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1843 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1844 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1845 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1846 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1847 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1848 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1849 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1850 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1851 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1852 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1853 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1854 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1855 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1856 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1857 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1858 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1859 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1860 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1861 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1862 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1863 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1864 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1865 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1866 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1867 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1868 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1869 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1870 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1871 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1872 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1873 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1874 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1875 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1876 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1877 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1878 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1879 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1880 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1815 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1816 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1817 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1818 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1819 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1820 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1821 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1822 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1823 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1824 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1825 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1826 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 16162/27285 bytes (59.23%) 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·January·7,·2024\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··January·7,·2024······················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·January·7,·2024\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··January·7,·2024······················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·January·7,·2024\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··January·7,·2024······················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·January·7,·2024\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··January·7,·2024······················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/10855 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·2024.01.07:0425 |
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 1856, 21 lines modified | Offset 1856, 20 lines modified | ||
1856 | /UnderlineThickness·50·def | 1856 | /UnderlineThickness·50·def |
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·50·/two·put | 1862 | dup·50·/two·put |
1863 | dup·52·/four·put | ||
1863 | dup·5 | 1864 | dup·55·/seven·put |
1864 | dup·56·/eight·put | ||
1865 | dup·58·/colon·put | 1865 | dup·58·/colon·put |
1866 | dup·7 | 1866 | dup·74·/J·put |
1867 | dup·97·/a·put | 1867 | dup·97·/a·put |
1868 | dup·98·/b·put | ||
1869 | dup·1 | 1868 | dup·110·/n·put |
1870 | dup·114·/r·put | 1869 | dup·114·/r·put |
1871 | dup·117·/u·put | 1870 | dup·117·/u·put |
1872 | dup·121·/y·put | 1871 | dup·121·/y·put |
1873 | readonly·def | 1872 | readonly·def |
1874 | currentdict·end | 1873 | currentdict·end |
1875 | currentfile·eexec | 1874 | currentfile·eexec |
1876 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1875 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2054, 88 lines modified | Offset 2053, 83 lines modified | ||
2054 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2053 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2055 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2054 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2056 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2055 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2057 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2056 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2058 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2057 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2059 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2058 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2060 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2059 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2061 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2060 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2061 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2062 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2063 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2064 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2065 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2066 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2067 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2068 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2069 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2070 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2071 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2072 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2073 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2074 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2075 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2076 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2077 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2078 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2079 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2080 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2081 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2082 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2083 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2084 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2085 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2086 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2087 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2088 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2089 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2090 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2091 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2092 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2093 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2094 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2095 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2096 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2097 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2098 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2099 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2100 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2101 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2102 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2103 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2104 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2105 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2106 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2107 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2108 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2109 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2110 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2111 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2112 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2113 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2114 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2115 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2116 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2117 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2118 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2119 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2120 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2121 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2122 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2123 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2124 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2125 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2126 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2127 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2062 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2063 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2064 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2065 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2066 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2067 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2068 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2069 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2070 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2071 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2072 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2073 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 18890/30014 bytes (62.94%) 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·····························IVL·:·DRAFT· | 29 | ··············2·····························IVL·:·DRAFT·January·7,·2024\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··January·7,·2024·····················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·····························IVL·:·DRAFT· | 94 | ··············4·····························IVL·:·DRAFT·January·7,·2024\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··January·7,·2024·····················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·····························IVL·:·DRAFT· | 158 | ··············6·····························IVL·:·DRAFT·January·7,·2024\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··January·7,·2024·····················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·····························IVL·:·DRAFT· | 233 | ··············8·····························IVL·:·DRAFT·January·7,·2024\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·····January·7,·2024···························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; 1320/12065 bytes (10.94%) 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·2024.01.07:0425 |
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 1256, 21 lines modified | Offset 1256, 20 lines modified | ||
1256 | /UnderlineThickness·50·def | 1256 | /UnderlineThickness·50·def |
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·50·/two·put | 1262 | dup·50·/two·put |
1263 | dup·52·/four·put | ||
1263 | dup·5 | 1264 | dup·55·/seven·put |
1264 | dup·56·/eight·put | ||
1265 | dup·58·/colon·put | 1265 | dup·58·/colon·put |
1266 | dup·7 | 1266 | dup·74·/J·put |
1267 | dup·97·/a·put | 1267 | dup·97·/a·put |
1268 | dup·98·/b·put | ||
1269 | dup·1 | 1268 | dup·110·/n·put |
1270 | dup·114·/r·put | 1269 | dup·114·/r·put |
1271 | dup·117·/u·put | 1270 | dup·117·/u·put |
1272 | dup·121·/y·put | 1271 | dup·121·/y·put |
1273 | readonly·def | 1272 | readonly·def |
1274 | currentdict·end | 1273 | currentdict·end |
1275 | currentfile·eexec | 1274 | currentfile·eexec |
1276 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1275 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1454, 88 lines modified | Offset 1453, 83 lines modified | ||
1454 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1453 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1455 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1454 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1456 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1455 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1457 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1456 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1458 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1457 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1459 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1458 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1460 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1459 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1461 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1460 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1461 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1462 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1463 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1464 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1465 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1466 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1467 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1468 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1469 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1470 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1471 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1472 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1473 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1474 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1475 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1476 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1477 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1478 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1479 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1480 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1481 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1482 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1483 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1484 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1485 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1486 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1487 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1488 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1489 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1490 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1491 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1492 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1493 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1494 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1495 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1496 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1497 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1498 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1499 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1500 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1501 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1502 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1503 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1504 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1505 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1506 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1507 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1508 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1509 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1510 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1511 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1512 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1513 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1514 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1515 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1516 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1517 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1518 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1519 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1520 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1521 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1522 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1523 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1524 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1525 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1526 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1527 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1462 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1463 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1464 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1465 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1466 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1467 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1468 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1469 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1470 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1471 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1472 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1473 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 7640/18765 bytes (40.71%) 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·January·7,·2024\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, 15 lines modified | Offset 47, 15 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···January·7,·2024····················3\xd |
55 | ············1.2.3··Utility·methods\xd | 55 | ············1.2.3··Utility·methods\xd |
56 | ··············1.·void·Ideq_clear·(·Ideq·*deq·)·;\xd | 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 | ··············2.·int·Ideq_head·(·Ideq·*deq·)·;\xd | 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 |
Offset 82, 15 lines modified | Offset 82, 15 lines modified | ||
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 | ··············7.·int·Ideq_insertAtTail·(·Ideq·*deq,·int·val·)·;\xd | 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·January·7,·2024\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·2024.01.07:0425 |
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 2763, 21 lines modified | Offset 2763, 20 lines modified | ||
2763 | /UnderlineThickness·50·def | 2763 | /UnderlineThickness·50·def |
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·50·/two·put | 2769 | dup·50·/two·put |
2770 | dup·52·/four·put | ||
2770 | dup·5 | 2771 | dup·55·/seven·put |
2771 | dup·56·/eight·put | ||
2772 | dup·58·/colon·put | 2772 | dup·58·/colon·put |
2773 | dup·7 | 2773 | dup·74·/J·put |
2774 | dup·97·/a·put | 2774 | dup·97·/a·put |
2775 | dup·98·/b·put | ||
2776 | dup·1 | 2775 | dup·110·/n·put |
2777 | dup·114·/r·put | 2776 | dup·114·/r·put |
2778 | dup·117·/u·put | 2777 | dup·117·/u·put |
2779 | dup·121·/y·put | 2778 | dup·121·/y·put |
2780 | readonly·def | 2779 | readonly·def |
2781 | currentdict·end | 2780 | currentdict·end |
2782 | currentfile·eexec | 2781 | currentfile·eexec |
2783 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2782 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2961, 88 lines modified | Offset 2960, 83 lines modified | ||
2961 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2960 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2962 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2961 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2963 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2962 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2964 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2963 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2965 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2964 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2966 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2965 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2967 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2966 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2968 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2967 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2968 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2969 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2970 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2971 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2972 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2973 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2974 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2975 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2976 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2977 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2978 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2979 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2980 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2981 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2982 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2983 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2984 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2985 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2986 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2987 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2988 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2989 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2990 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2991 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2992 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2993 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2994 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2995 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2996 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2997 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2998 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2999 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
3000 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
3001 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
3002 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
3003 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
3004 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
3005 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
3006 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
3007 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
3008 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
3009 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
3010 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
3011 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
3012 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
3013 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
3014 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
3015 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
3016 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
3017 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
3018 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
3019 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
3020 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
3021 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
3022 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
3023 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
3024 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
3025 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
3026 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
3027 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
3028 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
3029 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
3030 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
3031 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
3032 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
3033 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
3034 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2969 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2970 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2971 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2972 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2973 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2974 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2975 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2976 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2977 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2978 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2979 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2980 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 45683/56810 bytes (80.41%) 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···································InpMtx·:·DRAFT· | 35 | ················2···································InpMtx·:·DRAFT·January·7,·2024\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··January·7,·2024························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·January·7,·2024\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··January·7,·2024························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·January·7,·2024\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··January·7,·2024························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·January·7,·2024\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 | ·············································InpMtx·:·DRAFT··· | 314 | ·············································InpMtx·:·DRAFT····January·7,·2024·························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; 22736/34110 bytes (66.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·LinSol.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·LinSol.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2024.01.07:0426 |
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 2991, 21 lines modified | Offset 2991, 20 lines modified | ||
2991 | /UnderlineThickness·50·def | 2991 | /UnderlineThickness·50·def |
2992 | end·readonly·def | 2992 | end·readonly·def |
2993 | /Encoding·256·array | 2993 | /Encoding·256·array |
2994 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2994 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2995 | dup·44·/comma·put | 2995 | dup·44·/comma·put |
2996 | dup·48·/zero·put | 2996 | dup·48·/zero·put |
2997 | dup·50·/two·put | 2997 | dup·50·/two·put |
2998 | dup·52·/four·put | ||
2998 | dup·5 | 2999 | dup·55·/seven·put |
2999 | dup·56·/eight·put | ||
3000 | dup·58·/colon·put | 3000 | dup·58·/colon·put |
3001 | dup·7 | 3001 | dup·74·/J·put |
3002 | dup·97·/a·put | 3002 | dup·97·/a·put |
3003 | dup·98·/b·put | ||
3004 | dup·1 | 3003 | dup·110·/n·put |
3005 | dup·114·/r·put | 3004 | dup·114·/r·put |
3006 | dup·117·/u·put | 3005 | dup·117·/u·put |
3007 | dup·121·/y·put | 3006 | dup·121·/y·put |
3008 | readonly·def | 3007 | readonly·def |
3009 | currentdict·end | 3008 | currentdict·end |
3010 | currentfile·eexec | 3009 | currentfile·eexec |
3011 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 3010 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 3189, 88 lines modified | Offset 3188, 83 lines modified | ||
3189 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 3188 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
3190 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 3189 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
3191 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 3190 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
3192 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 3191 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
3193 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 3192 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
3194 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 3193 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
3195 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 3194 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
3196 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 3195 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
3196 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
3197 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
3198 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
3199 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
3200 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
3201 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
3202 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
3203 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
3204 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
3205 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
3206 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
3207 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
3208 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
3209 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
3210 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
3211 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
3212 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
3213 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
3214 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
3215 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
3216 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
3217 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
3218 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
3219 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
3220 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
3221 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
3222 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
3223 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
3224 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
3225 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
3226 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
3227 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
3228 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
3229 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
3230 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
3231 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
3232 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
3233 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
3234 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
3235 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
3236 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
3237 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
3238 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
3239 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
3240 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
3241 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
3242 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
3243 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
3244 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
3245 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
3246 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
3247 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
3248 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
3249 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
3250 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
3251 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
3252 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
3253 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
3254 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
3255 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
3256 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
3257 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
3258 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
3259 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
3260 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
3261 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
3262 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
3197 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
3198 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
3199 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
3200 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
3201 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
3202 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
3203 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
3204 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
3205 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
3206 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
3207 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
3208 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 86098/97225 bytes (88.56%) 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 | ························································January·7,·2024\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 51, 15 lines modified | Offset 51, 15 lines modified | ||
51 | ·····························4.3.5···Factor·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······25\xd | 51 | ·····························4.3.5···Factor·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······25\xd |
52 | ·····························4.3.6···Solve·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········26\xd | 52 | ·····························4.3.6···Solve·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········26\xd |
53 | ···················5·The·MPI·Wrapper·Object·and·Driver····················································································27\xd | 53 | ···················5·The·MPI·Wrapper·Object·and·Driver····················································································27\xd |
54 | ·······················5.1···Aquick·look·at·the·MPI·driver·program·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.············28\xd | 54 | ·······················5.1···Aquick·look·at·the·MPI·driver·program·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.············28\xd |
55 | ·······················5.2···The·BridgeMPI·Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···········30\xd | 55 | ·······················5.2···The·BridgeMPI·Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···········30\xd |
56 | ·······················5.3···Prototypes·and·descriptions·of·BridgeMPI·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·············32\xd | 56 | ·······················5.3···Prototypes·and·descriptions·of·BridgeMPI·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·············32\xd |
57 | ···············································································1\xd | 57 | ···············································································1\xd |
58 | ·················································SPOOLES | 58 | ·················································SPOOLES2.2·Wrapper·Objects·:···················January·7,·2024·····························2\xd |
59 | ·····························5.3.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········32\xd | 59 | ·····························5.3.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········32\xd |
60 | ·····························5.3.2···Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······33\xd | 60 | ·····························5.3.2···Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······33\xd |
61 | ·····························5.3.3···Parameter·methods········.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···34\xd | 61 | ·····························5.3.3···Parameter·methods········.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···34\xd |
62 | ·····························5.3.4···Setup·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········35\xd | 62 | ·····························5.3.4···Setup·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········35\xd |
63 | ·····························5.3.5···Factor·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······35\xd | 63 | ·····························5.3.5···Factor·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······35\xd |
64 | ·····························5.3.6···Solve·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········36\xd | 64 | ·····························5.3.6···Solve·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········36\xd |
65 | ···················A·testWrapper.c·—·A·Serial·Driver·Program··············································································37\xd | 65 | ···················A·testWrapper.c·—·A·Serial·Driver·Program··············································································37\xd |
Offset 104, 25 lines modified | Offset 104, 25 lines modified | ||
104 | ·················the·user·must·generate·two·SPOOLES·objects·—·a·InpMtx·object·for·A·and·DenseMtx·objects·for·Y·and\xd | 104 | ·················the·user·must·generate·two·SPOOLES·objects·—·a·InpMtx·object·for·A·and·DenseMtx·objects·for·Y·and\xd |
105 | ·················X.·This·process·is·described·in·section·2.\xd | 105 | ·················X.·This·process·is·described·in·section·2.\xd |
106 | ····················Serial·code·has·one·process·and·one·address·space.·Multithreaded·code·can·have·multiple·threads·sharing\xd | 106 | ····················Serial·code·has·one·process·and·one·address·space.·Multithreaded·code·can·have·multiple·threads·sharing\xd |
107 | ·················one·address·space.·The·SPOOLES·library·utilizes·multiple·threads·only·in·the·factorization·and·solve·steps.\xd | 107 | ·················one·address·space.·The·SPOOLES·library·utilizes·multiple·threads·only·in·the·factorization·and·solve·steps.\xd |
108 | ·················All·other·operations·act·on·the·global·data·structures·using·serial·methods.·In·the·MPI·environment,·the\xd | 108 | ·················All·other·operations·act·on·the·global·data·structures·using·serial·methods.·In·the·MPI·environment,·the\xd |
109 | ·················data·structures·for·A,·X·and·Y·may·be·distributed,·and·all·working·data·structures·that·contain·the·factor\xd | 109 | ·················data·structures·for·A,·X·and·Y·may·be·distributed,·and·all·working·data·structures·that·contain·the·factor\xd |
110 | ·····································································3\xd | 110 | ·····································································3\xd |
111 | ································ | 111 | ································SPOOLES2.2·Wrapper·Objects·:···January·7,·2024·············4\xd |
112 | ·············matrices·and·their·supporting·information·are·distributed.·The·MPI·code·is·much·more·complex·than·the\xd | 112 | ·············matrices·and·their·supporting·information·are·distributed.·The·MPI·code·is·much·more·complex·than·the\xd |
113 | ·············serial·or·multithreaded·codes,·for·not·only·are·the·factor·and·solves·parallel·and·distributed·(as·is·the·symbolic\xd | 113 | ·············serial·or·multithreaded·codes,·for·not·only·are·the·factor·and·solves·parallel·and·distributed·(as·is·the·symbolic\xd |
114 | ·············factorization),·but·there·is·a·great·deal·of·support·code·necessary·because·of·the·distributed·data·structures.\xd | 114 | ·············factorization),·but·there·is·a·great·deal·of·support·code·necessary·because·of·the·distributed·data·structures.\xd |
115 | ··············· | 115 | ···············ThewrappermethodsdescribedinthispaperdonotexerciseallthefunctionalityoftheMPIenvironment.\xd |
116 | ·············This·is·due·to·the·present·state·of·the·CSAR-Nastran·code·from·CSAR,·where·the·matrix·A·and·right·hand\xd | 116 | ·············This·is·due·to·the·present·state·of·the·CSAR-Nastran·code·from·CSAR,·where·the·matrix·A·and·right·hand\xd |
117 | ·············side·Y·are·generated·on·one·processor.·We·chose·to·do·all·the·serial·preprocessing\xd | 117 | ·············side·Y·are·generated·on·one·processor.·We·chose·to·do·all·the·serial·preprocessing\xd |
118 | ··············· | 118 | ···············•·generate·a·graph·of·the·matrix,\xd |
119 | ··············· | 119 | ···············•·order·the·graph,\xd |
120 | ··············· | 120 | ···············•·compute·the·symbolic·factorization,\xd |
121 | ··············· | 121 | ···············•·and·construct·the·permutations\xd |
122 | ·············on·processor·0·that·reads·in·A·and·Y·from·the·CSAR-Nastran·files.·Since·the·bulk·of·the·overall·time·for·a\xd | 122 | ·············on·processor·0·that·reads·in·A·and·Y·from·the·CSAR-Nastran·files.·Since·the·bulk·of·the·overall·time·for·a\xd |
123 | ·············CSAR-Nastran·run·is·dominated·by·the·factor·and·solves,·this·approach·was·considered·acceptable.·For·the\xd | 123 | ·············CSAR-Nastran·run·is·dominated·by·the·factor·and·solves,·this·approach·was·considered·acceptable.·For·the\xd |
124 | ·············user·who·is·interested·in·using·the·MPI·environment·for·the·entire·process,·e.g.,·when·A·and·Y·cannot·fit\xd | 124 | ·············user·who·is·interested·in·using·the·MPI·environment·for·the·entire·process,·e.g.,·when·A·and·Y·cannot·fit\xd |
125 | ·············on·one·processor,·see·the·SPOOLES·User·Manual·for·driver·programs.\xd | 125 | ·············on·one·processor,·see·the·SPOOLES·User·Manual·for·driver·programs.\xd |
126 | ·················Chapter·2\xd | 126 | ·················Chapter·2\xd |
127 | ·················Setting·up·the·linear·system\xd | 127 | ·················Setting·up·the·linear·system\xd |
128 | ·················Ourtypical·user·is·interested·in·solving·AX·=·Y·,·where·A·is·square,·large·and·sparse,·and·X·and·Y·are·dense\xd | 128 | ·················Ourtypical·user·is·interested·in·solving·AX·=·Y·,·where·A·is·square,·large·and·sparse,·and·X·and·Y·are·dense\xd |
Offset 150, 15 lines modified | Offset 150, 15 lines modified | ||
150 | ·····················•·INPMTX·BY·COLUMNS,·where·r(i,j)·=·j,·c(i,j)·=·i.\xd | 150 | ·····················•·INPMTX·BY·COLUMNS,·where·r(i,j)·=·j,·c(i,j)·=·i.\xd |
151 | ·····················•·INPMTX·BY·CHEVRONS,·where·r(i,j)·=·min(i,j),·c(i,j)·=·j·−i.\xd | 151 | ·····················•·INPMTX·BY·CHEVRONS,·where·r(i,j)·=·min(i,j),·c(i,j)·=·j·−i.\xd |
152 | ·················Rows·and·columns·are·self-explanatory,·the·first·coordinate·r(i,j)·is·either·the·row·or·column·of·ai,j.·The\xd | 152 | ·················Rows·and·columns·are·self-explanatory,·the·first·coordinate·r(i,j)·is·either·the·row·or·column·of·ai,j.·The\xd |
153 | ·················j-th·“chevron”·is·composed·of·the·diagonal·entry·aj,j,·entries·in·the·j-th·row·of·the·upper·triangle,·and\xd | 153 | ·················j-th·“chevron”·is·composed·of·the·diagonal·entry·aj,j,·entries·in·the·j-th·row·of·the·upper·triangle,·and\xd |
154 | ·················entries·in·the·j-th·column·of·the·lower·triangle.·It·is·the·natural·data·structure·for·the·assembly·of·the\xd | 154 | ·················entries·in·the·j-th·column·of·the·lower·triangle.·It·is·the·natural·data·structure·for·the·assembly·of·the\xd |
155 | ·················matrix·entries·into·the·“fronts”·used·to·factor·the·matrix.\xd | 155 | ·················matrix·entries·into·the·“fronts”·used·to·factor·the·matrix.\xd |
156 | ·······································································5\xd | 156 | ·······································································5\xd |
157 | ······································SPOOLES | 157 | ·······································SPOOLES2.2·Wrapper·Objects·:········January·7,·2024···················6\xd |
158 | ··················The·InpMtx·object·can·hold·one·of·three·types·of·entries·as·“indices·only”·(no·entries·are·present),·real\xd | 158 | ··················The·InpMtx·object·can·hold·one·of·three·types·of·entries·as·“indices·only”·(no·entries·are·present),·real\xd |
159 | ···············entries,·or·complex·entries.·The·type·is·specified·by·the·inputModeparameter·to·the·InpMtx·init()·method.\xd | 159 | ···············entries,·or·complex·entries.·The·type·is·specified·by·the·inputModeparameter·to·the·InpMtx·init()·method.\xd |
160 | ··················•·INPMTX·INDICES·ONLY·where·the·triples·langler(i,j),c(i,j),−i·are·really·only·pairs,·i.e.,·no·numerical\xd | 160 | ··················•·INPMTX·INDICES·ONLY·where·the·triples·langler(i,j),c(i,j),−i·are·really·only·pairs,·i.e.,·no·numerical\xd |
161 | ····················values·are·present.·This·mode·is·useful·for·assembling·graphs.\xd | 161 | ····················values·are·present.·This·mode·is·useful·for·assembling·graphs.\xd |
162 | ··················•·SPOOLES·REAL·where·ai,j·is·a·real·number,·a·double·value.\xd | 162 | ··················•·SPOOLES·REAL·where·ai,j·is·a·real·number,·a·double·value.\xd |
163 | ··················•·SPOOLES·COMPLEX·where·a···is·a·complex·number,·really·two·consecutive·double·values.\xd | 163 | ··················•·SPOOLES·COMPLEX·where·a···is·a·complex·number,·really·two·consecutive·double·values.\xd |
164 | ···········································i,j\xd | 164 | ···········································i,j\xd |
Offset 192, 15 lines modified | Offset 192, 15 lines modified | ||
192 | ···············to·assemble·finite·element·matrices.)·The·knowledgeable·user·can·change·the·storage·mode·as·necessary,\xd | 192 | ···············to·assemble·finite·element·matrices.)·The·knowledgeable·user·can·change·the·storage·mode·as·necessary,\xd |
193 | ···············and·thus·avoiding·expensive·sorts·when·possible.·For·example,·after·reading·in·the·matrix·data·from·the\xd | 193 | ···············and·thus·avoiding·expensive·sorts·when·possible.·For·example,·after·reading·in·the·matrix·data·from·the\xd |
194 | ···············CSAR-Nastran·file,·the·entries·are·already·in·sorted·form,·and·the·explicit·sort·can·be·avoided.\xd | 194 | ···············CSAR-Nastran·file,·the·entries·are·already·in·sorted·form,·and·the·explicit·sort·can·be·avoided.\xd |
195 | ··················Now·let·us·see·how·we·“input”·information·into·the·InpMtx·object.·There·are·several·input·methods,\xd | 195 | ··················Now·let·us·see·how·we·“input”·information·into·the·InpMtx·object.·There·are·several·input·methods,\xd |
196 | ···············e.g.,·single·entries,·rows,·columns,·and·submatrices,·and·each·input·method·has·three·types·of·input,·e.g,\xd | 196 | ···············e.g.,·single·entries,·rows,·columns,·and·submatrices,·and·each·input·method·has·three·types·of·input,·e.g,\xd |
197 | ···············indices·only,·real·entries,·or·complex·entries.·Here·are·the·prototypes·below.\xd | 197 | ···············indices·only,·real·entries,·or·complex·entries.·Here·are·the·prototypes·below.\xd |
198 | ··················•·Input·methods·for·“indices·only”·mode.\xd | 198 | ··················•·Input·methods·for·“indices·only”·mode.\xd |
199 | ···································SPOOLES | 199 | ···································SPOOLES2.2·Wrapper·Objects·:·····January·7,·2024···············7\xd |
200 | ··················void·InpMtx_inputEntry·(·InpMtx·*mtxA,·int·row,·int·col·)·;\xd | 200 | ··················void·InpMtx_inputEntry·(·InpMtx·*mtxA,·int·row,·int·col·)·;\xd |
201 | ··················void·InpMtx_inputRow·(·InpMtx·*mtxA,·int·row,·int·rowsize,·int·rowind[]·)·;\xd | 201 | ··················void·InpMtx_inputRow·(·InpMtx·*mtxA,·int·row,·int·rowsize,·int·rowind[]·)·;\xd |
202 | ··················void·InpMtx_inputColumn·(·InpMtx·*mtxA,·int·col,·int·colsize,·int·colind[]·)·;\xd | 202 | ··················void·InpMtx_inputColumn·(·InpMtx·*mtxA,·int·col,·int·colsize,·int·colind[]·)·;\xd |
203 | ··················void·InpMtx_inputMatrix·(·InpMtx·*mtxA,·int·nrow,·int·ncol,·int·rowstride,\xd | 203 | ··················void·InpMtx_inputMatrix·(·InpMtx·*mtxA,·int·nrow,·int·ncol,·int·rowstride,\xd |
204 | ···········································int·colstride,·int·rowind[],·colind[]·)·;\xd | 204 | ···········································int·colstride,·int·rowind[],·colind[]·)·;\xd |
205 | ················•·Input·methods·for·real·entries.\xd | 205 | ················•·Input·methods·for·real·entries.\xd |
206 | ··················void·InpMtx_inputRealEntry·(·InpMtx·*mtxA,·int·row,·int·col,·double·value·)·;\xd | 206 | ··················void·InpMtx_inputRealEntry·(·InpMtx·*mtxA,·int·row,·int·col,·double·value·)·;\xd |
Offset 238, 94 lines modified | Offset 238, 94 lines modified | ||
238 | ···················if·(·ii·<·n1·)·{\xd | 238 | ···················if·(·ii·<·n1·)·{\xd |
239 | ······················indices[count]·=·ij·+·1·;\xd | 239 | ······················indices[count]·=·ij·+·1·;\xd |
240 | ······················entries[count]·=·-1.0·;\xd | 240 | ······················entries[count]·=·-1.0·;\xd |
241 | ······················count++·;\xd | 241 | ······················count++·;\xd |
242 | ···················}\xd | 242 | ···················}\xd |
243 | ···················if·(·jj·<·n2·)·{\xd | 243 | ···················if·(·jj·<·n2·)·{\xd |
244 | ······················indices[count]·=·ij·+·n1·;\xd | 244 | ······················indices[count]·=·ij·+·n1·;\xd |
245 | ································ | 245 | ································SPOOLES2.2·Wrapper·Objects·:···January·7,·2024·············8\xd |
246 | ·····················entries[count]·=·-1.0·;\xd | 246 | ·····················entries[count]·=·-1.0·;\xd |
247 | ·····················count++·;\xd | 247 | ·····················count++·;\xd |
248 | ·················· | 248 | ··················}\xd |
249 | ·················· | 249 | ··················InpMtx_inputRealRow(mtxA,·ij,·count,·indices,·entries)·;\xd |
250 | ··············· | 250 | ···············}\xd |
251 | ·············}\xd | 251 | ·············}\xd |
252 | ·············InpMtx_changeStorageMode(mtxA,·INPMTX_BY_VECTORS)·;\xd | 252 | ·············InpMtx_changeStorageMode(mtxA,·INPMTX_BY_VECTORS)·;\xd |
253 | ·············The·process·begins·by·allocating·an·InpMtx·object·mtxA·using·the·InpMtx·new()·method,·initializing·it·with\xd | 253 | ·············The·process·begins·by·allocating·an·InpMtx·object·mtxA·using·the·InpMtx·new()·method,·initializing·it·with\xd |
254 | ·············the·InpMtx·init()·method,·and·filling·it·with·matrix·entries·with·the·InpMtx·inputRealRow()·method.\xd | 254 | ·············the·InpMtx·init()·method,·and·filling·it·with·matrix·entries·with·the·InpMtx·inputRealRow()·method.\xd |
255 | ·············The·last·method,·InpMtx·changeStorageMode(),·“assembles”·the·data·(not·really·necessary·because·the\xd | 255 | ·············The·last·method,·InpMtx·changeStorageMode(),·“assembles”·the·data·(not·really·necessary·because·the\xd |
256 | ·············entries·are·disjoint,·“sorts”·the·data·(again·not·necessary·since·the·entries·were·input·in·ascending·order,\xd | 256 | ·············entries·are·disjoint,·“sorts”·the·data·(again·not·necessary·since·the·entries·were·input·in·ascending·order,\xd |
257 | ·············and·creates·a·vector·structure·inside·the·InpMtx·object·that·allows·easy·access·to·each·individual·row.\xd | 257 | ·············and·creates·a·vector·structure·inside·the·InpMtx·object·that·allows·easy·access·to·each·individual·row.\xd |
258 | ··············· | 258 | ···············We·could·have·input·all·the·entries·and·treated·it·as·a·nonsymmetric·matrix,·but·that·would·not·be\xd |
259 | ·············efficient·with·respect·to·storage·or·factorization·cost.·Alternatively,·we·could·have·input·all·the·entries·and\xd | 259 | ·············efficient·with·respect·to·storage·or·factorization·cost.·Alternatively,·we·could·have·input·all·the·entries·and\xd |
260 | ·············called·the·InpMtx·dropLowerTriangle()·method·to·drop·the·lower·triangular·entries.\xd | 260 | ·············called·the·InpMtx·dropLowerTriangle()·method·to·drop·the·lower·triangular·entries.\xd |
261 | ·············2.2··· | 261 | ·············2.2···Constructing·an·DenseMtx·object\xd |
262 | ·············The·DenseMtx·stores·a·real·or·complex·dense·matrix.·It·is·not·just·an·array·of·numbers,·it·also·has·row\xd | 262 | ·············The·DenseMtx·stores·a·real·or·complex·dense·matrix.·It·is·not·just·an·array·of·numbers,·it·also·has·row\xd |
263 | ·············indices·and·column·indices.·This·allows·it·to·exist·in·a·distributed·MPI·environment·where·each·processors\xd | 263 | ·············indices·and·column·indices.·This·allows·it·to·exist·in·a·distributed·MPI·environment·where·each·processors\xd |
264 | ·············has·only·a·submatrix·of·the·matrix.·Here·is·how·to·initialize·a·DenseMtx·object.\xd | 264 | ·············has·only·a·submatrix·of·the·matrix.·Here·is·how·to·initialize·a·DenseMtx·object.\xd |
265 | ·············int······ | 265 | ·············int······type,·rowid,·colid,·nrow,·ncol,·inc1,·inc2·;\xd |
266 | ·············DenseMtx· | 266 | ·············DenseMtx·*mtx·=·DenseMtx_new()·;\xd |
267 | ·············DenseMtx_init(mtx,·type,·rowid,·colid,·nrow,·ncol,·inc1,·inc2)·;\xd | 267 | ·············DenseMtx_init(mtx,·type,·rowid,·colid,·nrow,·ncol,·inc1,·inc2)·;\xd |
268 | ··············· | 268 | ···············•·The·type·is·either·SPOOLES·REAL·or·SPOOLES·COMPLEX.\xd |
269 | ··············· | 269 | ···············•·The·rowid·and·colid·values·are·used·to·identify·a·DenseMtx·as·a·submatrix·of·a·larger·matrix.·Any\xd |
270 | ·················values·are·suitable.\xd | 270 | ·················values·are·suitable.\xd |
271 | ··············· | 271 | ···············•·nrow·and·ncol·are·the·number·of·rows·and·columns·in·the·matrix,·respectively.\xd |
272 | ··············· | 272 | ···············•·The·entries·of·the·matrix·can·be·stored·in·either·row·major·or·column·major·form.·For·row·major,·use\xd |
273 | ·················inc1·=·ncol·and·inc2·=·1.·For·column·major,·use·inc1·=·1·and·inc2·=·nrow.·Note,·all·solve·and\xd | 273 | ·················inc1·=·ncol·and·inc2·=·1.·For·column·major,·use·inc1·=·1·and·inc2·=·nrow.·Note,·all·solve·and\xd |
274 | ·················matrix-matrix·multiply·methods·require·that·the·DenseMtx·object·be·column·major.\xd | 274 | ·················matrix-matrix·multiply·methods·require·that·the·DenseMtx·object·be·column·major.\xd |
275 | ·············For·example,·here·is·the·call·to·initialize·a·DenseMtx·object·to·have·real·entries,·100·rows·and·5·columns,\xd | 275 | ·············For·example,·here·is·the·call·to·initialize·a·DenseMtx·object·to·have·real·entries,·100·rows·and·5·columns,\xd |
276 | ·············entries·column·major.\xd | 276 | ·············entries·column·major.\xd |
Max diff block lines reached; 53477/66947 bytes (79.88%) 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·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·2024.01.07:0425 |
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 1514, 21 lines modified | Offset 1514, 20 lines modified | ||
1514 | /UnderlineThickness·50·def | 1514 | /UnderlineThickness·50·def |
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·50·/two·put | 1520 | dup·50·/two·put |
1521 | dup·52·/four·put | ||
1521 | dup·5 | 1522 | dup·55·/seven·put |
1522 | dup·56·/eight·put | ||
1523 | dup·58·/colon·put | 1523 | dup·58·/colon·put |
1524 | dup·7 | 1524 | dup·74·/J·put |
1525 | dup·97·/a·put | 1525 | dup·97·/a·put |
1526 | dup·98·/b·put | ||
1527 | dup·1 | 1526 | dup·110·/n·put |
1528 | dup·114·/r·put | 1527 | dup·114·/r·put |
1529 | dup·117·/u·put | 1528 | dup·117·/u·put |
1530 | dup·121·/y·put | 1529 | dup·121·/y·put |
1531 | readonly·def | 1530 | readonly·def |
1532 | currentdict·end | 1531 | currentdict·end |
1533 | currentfile·eexec | 1532 | currentfile·eexec |
1534 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1533 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1712, 88 lines modified | Offset 1711, 83 lines modified | ||
1712 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1711 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1713 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1712 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1714 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1713 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1715 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1714 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1716 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1715 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1717 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1716 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1718 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1717 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1719 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1718 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1719 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1720 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1721 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1722 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1723 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1724 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1725 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1726 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1727 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1728 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1729 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1730 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1731 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1732 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1733 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1734 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1735 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1736 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1737 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1738 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1739 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1740 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1741 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1742 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1743 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1744 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1745 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1746 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1747 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1748 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1749 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1750 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1751 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1752 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1753 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1754 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1755 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1756 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1757 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1758 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1759 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1760 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1761 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1762 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1763 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1764 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1765 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1766 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1767 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1768 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1769 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1770 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1771 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1772 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1773 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1774 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1775 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1776 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1777 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1778 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1779 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1780 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1781 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1782 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1783 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1784 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1785 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1720 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1721 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1722 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1723 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1724 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1725 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1726 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1727 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1728 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1729 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1730 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1731 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 4128/15253 bytes (27.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·January·7,·2024\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···January·7,·2024····················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·2024.01.07:0425 |
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 1205, 21 lines modified | Offset 1205, 20 lines modified | ||
1205 | /UnderlineThickness·50·def | 1205 | /UnderlineThickness·50·def |
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·50·/two·put | 1211 | dup·50·/two·put |
1212 | dup·52·/four·put | ||
1212 | dup·5 | 1213 | dup·55·/seven·put |
1213 | dup·56·/eight·put | ||
1214 | dup·58·/colon·put | 1214 | dup·58·/colon·put |
1215 | dup·7 | 1215 | dup·74·/J·put |
1216 | dup·97·/a·put | 1216 | dup·97·/a·put |
1217 | dup·98·/b·put | ||
1218 | dup·1 | 1217 | dup·110·/n·put |
1219 | dup·114·/r·put | 1218 | dup·114·/r·put |
1220 | dup·117·/u·put | 1219 | dup·117·/u·put |
1221 | dup·121·/y·put | 1220 | dup·121·/y·put |
1222 | readonly·def | 1221 | readonly·def |
1223 | currentdict·end | 1222 | currentdict·end |
1224 | currentfile·eexec | 1223 | currentfile·eexec |
1225 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1224 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1403, 88 lines modified | Offset 1402, 83 lines modified | ||
1403 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1402 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1404 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1403 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1405 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1404 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1406 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1405 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1407 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1406 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1408 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1407 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1409 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1408 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1410 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1409 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1410 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1411 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1412 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1413 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1414 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1415 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1416 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1417 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1418 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1419 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1420 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1421 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1422 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1423 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1424 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1425 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1426 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1427 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1428 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1429 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1430 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1431 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1432 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1433 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1434 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1435 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1436 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1437 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1438 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1439 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1440 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1441 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1442 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1443 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1444 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1445 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1446 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1447 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1448 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1449 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1450 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1451 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1452 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1453 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1454 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1455 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1456 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1457 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1458 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1459 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1460 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1461 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1462 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1463 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1464 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1465 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1466 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1467 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1468 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1469 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1470 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1471 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1472 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1473 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1474 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1475 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1476 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1411 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1412 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1413 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1414 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1415 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1416 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1417 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1418 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1419 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1420 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1421 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1422 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 43551/54675 bytes (79.65%) 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·January·7,·2024\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···January·7,·2024·························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································MPI·:·DRAFT· | 124 | ··············4································MPI·:·DRAFT·January·7,·2024\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 | ························································MPI·:·DRAFT······ | 165 | ························································MPI·:·DRAFT······January·7,·2024····································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·····································MPI·:·DRAFT· | 209 | ················6·····································MPI·:·DRAFT·January·7,·2024\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···January·7,·2024·························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·January·7,·2024\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···January·7,·2024·························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; 16641/29194 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·2024.01.07:0425 |
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 1228, 21 lines modified | Offset 1228, 20 lines modified | ||
1228 | /UnderlineThickness·50·def | 1228 | /UnderlineThickness·50·def |
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·50·/two·put | 1234 | dup·50·/two·put |
1235 | dup·52·/four·put | ||
1235 | dup·5 | 1236 | dup·55·/seven·put |
1236 | dup·56·/eight·put | ||
1237 | dup·58·/colon·put | 1237 | dup·58·/colon·put |
1238 | dup·7 | 1238 | dup·74·/J·put |
1239 | dup·97·/a·put | 1239 | dup·97·/a·put |
1240 | dup·98·/b·put | ||
1241 | dup·1 | 1240 | dup·110·/n·put |
1242 | dup·114·/r·put | 1241 | dup·114·/r·put |
1243 | dup·117·/u·put | 1242 | dup·117·/u·put |
1244 | dup·121·/y·put | 1243 | dup·121·/y·put |
1245 | readonly·def | 1244 | readonly·def |
1246 | currentdict·end | 1245 | currentdict·end |
1247 | currentfile·eexec | 1246 | currentfile·eexec |
1248 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1247 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1426, 88 lines modified | Offset 1425, 83 lines modified | ||
1426 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1425 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1427 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1426 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1428 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1427 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1429 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1428 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1430 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1429 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1431 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1430 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1432 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1431 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1433 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1432 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1433 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1434 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1435 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1436 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1437 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1438 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1439 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1440 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1441 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1442 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1443 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1444 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1445 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1446 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1447 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1448 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1449 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1450 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1451 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1452 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1453 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1454 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1455 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1456 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1457 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1458 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1459 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1460 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1461 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1462 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1463 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1464 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1465 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1466 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1467 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1468 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1469 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1470 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1471 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1472 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1473 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1474 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1475 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1476 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1477 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1478 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1479 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1480 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1481 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1482 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1483 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1484 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1485 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1486 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1487 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1488 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1489 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1490 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1491 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1492 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1493 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1494 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1495 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1496 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1497 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1498 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1499 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1434 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1435 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1436 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1437 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1438 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1439 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1440 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1441 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1442 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1443 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1444 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1445 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 27159/38284 bytes (70.94%) 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·January·7,·2024\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 | ·······································MSMD·:·DRAFT·· | 64 | ·······································MSMD·:·DRAFT···January·7,·2024····················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·January·7,·2024\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 | ·······································MSMD·:·DRAFT·· | 126 | ·······································MSMD·:·DRAFT···January·7,·2024····················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·January·7,·2024\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 | ·······································MSMD·:·DRAFT·· | 188 | ·······································MSMD·:·DRAFT···January·7,·2024····················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·January·7,·2024\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 | ·······································MSMD·:·DRAFT·· | 256 | ·······································MSMD·:·DRAFT···January·7,·2024····················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; 4055/15055 bytes (26.93%) 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·2024.01.07:0425 |
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 1600, 21 lines modified | Offset 1600, 20 lines modified | ||
1600 | /UnderlineThickness·50·def | 1600 | /UnderlineThickness·50·def |
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·50·/two·put | 1606 | dup·50·/two·put |
1607 | dup·52·/four·put | ||
1607 | dup·5 | 1608 | dup·55·/seven·put |
1608 | dup·56·/eight·put | ||
1609 | dup·58·/colon·put | 1609 | dup·58·/colon·put |
1610 | dup·7 | 1610 | dup·74·/J·put |
1611 | dup·97·/a·put | 1611 | dup·97·/a·put |
1612 | dup·98·/b·put | ||
1613 | dup·1 | 1612 | dup·110·/n·put |
1614 | dup·114·/r·put | 1613 | dup·114·/r·put |
1615 | dup·117·/u·put | 1614 | dup·117·/u·put |
1616 | dup·121·/y·put | 1615 | dup·121·/y·put |
1617 | readonly·def | 1616 | readonly·def |
1618 | currentdict·end | 1617 | currentdict·end |
1619 | currentfile·eexec | 1618 | currentfile·eexec |
1620 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1619 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1798, 88 lines modified | Offset 1797, 83 lines modified | ||
1798 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1797 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1799 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1798 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1800 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1799 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1801 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1800 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1802 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1801 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1803 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1802 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1804 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1803 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1805 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1804 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1805 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1806 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1807 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1808 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1809 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1810 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1811 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1812 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1813 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1814 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1815 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1816 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1817 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1818 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1819 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1820 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1821 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1822 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1823 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1824 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1825 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1826 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1827 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1828 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1829 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1830 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1831 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1832 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1833 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1834 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1835 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1836 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1837 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1838 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1839 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1840 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1841 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1842 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1843 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1844 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1845 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1846 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1847 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1848 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1849 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1850 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1851 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1852 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1853 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1854 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1855 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1856 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1857 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1858 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1859 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1860 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1861 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1862 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1863 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1864 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1865 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1866 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1867 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1868 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1869 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1870 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1871 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1806 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1807 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1808 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1809 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1810 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1811 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1812 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1813 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1814 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1815 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1816 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1817 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 22653/33776 bytes (67.07%) 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·January·7,·2024\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 | ········································Multithreaded·:·DRAFT·· | 86 | ········································Multithreaded·:·DRAFT···January·7,·2024····················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·January·7,·2024\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···January·7,·2024······················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·January·7,·2024\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···January·7,·2024······················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·January·7,·2024\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 | ················································Multithreaded·:·DRAFT······· | 343 | ················································Multithreaded·:·DRAFT········January·7,·2024···························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; 1309/13575 bytes (9.64%) 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·2024.01.07:0425 |
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 1542, 21 lines modified | Offset 1542, 20 lines modified | ||
1542 | /UnderlineThickness·50·def | 1542 | /UnderlineThickness·50·def |
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·50·/two·put | 1548 | dup·50·/two·put |
1549 | dup·52·/four·put | ||
1549 | dup·5 | 1550 | dup·55·/seven·put |
1550 | dup·56·/eight·put | ||
1551 | dup·58·/colon·put | 1551 | dup·58·/colon·put |
1552 | dup·7 | 1552 | dup·74·/J·put |
1553 | dup·97·/a·put | 1553 | dup·97·/a·put |
1554 | dup·98·/b·put | ||
1555 | dup·1 | 1554 | dup·110·/n·put |
1556 | dup·114·/r·put | 1555 | dup·114·/r·put |
1557 | dup·117·/u·put | 1556 | dup·117·/u·put |
1558 | dup·121·/y·put | 1557 | dup·121·/y·put |
1559 | readonly·def | 1558 | readonly·def |
1560 | currentdict·end | 1559 | currentdict·end |
1561 | currentfile·eexec | 1560 | currentfile·eexec |
1562 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1561 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1740, 88 lines modified | Offset 1739, 83 lines modified | ||
1740 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1739 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1741 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1740 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1742 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1741 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1743 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1742 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1744 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1743 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1745 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1744 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1746 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1745 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1747 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1746 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1747 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1748 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1749 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1750 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1751 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1752 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1753 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1754 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1755 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1756 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1757 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1758 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1759 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1760 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1761 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1762 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1763 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1764 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1765 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1766 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1767 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1768 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1769 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1770 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1771 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1772 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1773 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1774 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1775 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1776 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1777 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1778 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1779 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1780 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1781 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1782 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1783 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1784 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1785 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1786 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1787 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1788 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1789 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1790 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1791 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1792 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1793 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1794 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1795 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1796 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1797 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1798 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1799 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1800 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1801 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1802 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1803 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1804 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1805 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1806 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1807 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1808 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1809 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1810 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1811 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1812 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1813 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1748 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1749 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1750 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1751 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1752 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1753 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1754 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1755 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1756 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1757 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1758 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1759 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 16927/28055 bytes (60.34%) 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·January·7,·2024\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··January·7,·2024···················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···························Network·:·DRAFT· | 106 | ··············4···························Network·:·DRAFT·January·7,·2024\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··January·7,·2024···················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···························Network·:·DRAFT· | 179 | ··············6···························Network·:·DRAFT·January·7,·2024\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·2024.01.07:0425 |
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 2040, 21 lines modified | Offset 2040, 20 lines modified | ||
2040 | /UnderlineThickness·50·def | 2040 | /UnderlineThickness·50·def |
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·50·/two·put | 2046 | dup·50·/two·put |
2047 | dup·52·/four·put | ||
2047 | dup·5 | 2048 | dup·55·/seven·put |
2048 | dup·56·/eight·put | ||
2049 | dup·58·/colon·put | 2049 | dup·58·/colon·put |
2050 | dup·7 | 2050 | dup·74·/J·put |
2051 | dup·97·/a·put | 2051 | dup·97·/a·put |
2052 | dup·98·/b·put | ||
2053 | dup·1 | 2052 | dup·110·/n·put |
2054 | dup·114·/r·put | 2053 | dup·114·/r·put |
2055 | dup·117·/u·put | 2054 | dup·117·/u·put |
2056 | dup·121·/y·put | 2055 | dup·121·/y·put |
2057 | readonly·def | 2056 | readonly·def |
2058 | currentdict·end | 2057 | currentdict·end |
2059 | currentfile·eexec | 2058 | currentfile·eexec |
2060 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2059 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2238, 88 lines modified | Offset 2237, 83 lines modified | ||
2238 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2237 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2239 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2238 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2240 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2239 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2241 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2240 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2242 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2241 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2243 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2242 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2244 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2243 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2245 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2244 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2245 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2246 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2247 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2248 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2249 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2250 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2251 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2252 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2253 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2254 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2255 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2256 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2257 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2258 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2259 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2260 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2261 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2262 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2263 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2264 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2265 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2266 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2267 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2268 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2269 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2270 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2271 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2272 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2273 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2274 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2275 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2276 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2277 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2278 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2279 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2280 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2281 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2282 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2283 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2284 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2285 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2286 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2287 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2288 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2289 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2290 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2291 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2292 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2293 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2294 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2295 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2296 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2297 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2298 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2299 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2300 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2301 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2302 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2303 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2304 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2305 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2306 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2307 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2308 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2309 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2310 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2311 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2246 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2247 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2248 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2249 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2250 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2251 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2252 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2253 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2254 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2255 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2256 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2257 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 4634/15769 bytes (29.39%) 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·January·7,·2024\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··January·7,·2024················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·2024.01.07:0425 |
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 1881, 21 lines modified | Offset 1881, 20 lines modified | ||
1881 | /UnderlineThickness·50·def | 1881 | /UnderlineThickness·50·def |
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·50·/two·put | 1887 | dup·50·/two·put |
1888 | dup·52·/four·put | ||
1888 | dup·5 | 1889 | dup·55·/seven·put |
1889 | dup·56·/eight·put | ||
1890 | dup·58·/colon·put | 1890 | dup·58·/colon·put |
1891 | dup·7 | 1891 | dup·74·/J·put |
1892 | dup·97·/a·put | 1892 | dup·97·/a·put |
1893 | dup·98·/b·put | ||
1894 | dup·1 | 1893 | dup·110·/n·put |
1895 | dup·114·/r·put | 1894 | dup·114·/r·put |
1896 | dup·117·/u·put | 1895 | dup·117·/u·put |
1897 | dup·121·/y·put | 1896 | dup·121·/y·put |
1898 | readonly·def | 1897 | readonly·def |
1899 | currentdict·end | 1898 | currentdict·end |
1900 | currentfile·eexec | 1899 | currentfile·eexec |
1901 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1900 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2079, 88 lines modified | Offset 2078, 83 lines modified | ||
2079 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2078 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2080 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2079 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2081 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2080 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2082 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2081 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2083 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2082 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2084 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2083 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2085 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2084 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2086 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2085 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2086 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2087 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2088 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2089 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2090 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2091 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2092 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2093 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2094 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2095 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2096 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2097 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2098 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2099 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2100 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2101 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2102 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2103 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2104 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2105 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2106 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2107 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2108 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2109 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2110 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2111 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2112 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2113 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2114 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2115 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2116 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2117 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2118 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2119 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2120 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2121 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2122 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2123 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2124 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2125 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2126 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2127 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2128 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2129 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2130 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2131 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2132 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2133 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2134 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2135 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2136 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2137 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2138 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2139 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2140 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2141 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2142 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2143 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2144 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2145 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2146 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2147 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2148 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2149 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2150 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2151 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2152 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2087 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2088 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2089 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2090 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2091 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2092 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2093 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2094 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2095 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2096 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2097 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2098 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 6150/17277 bytes (35.60%) 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·····························Chv·:·DRAFT· | 23 | ··············2·····························Chv·:·DRAFT·January·7,·2024\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 | ·············································Chv·:·DRAFT····· | 55 | ·············································Chv·:·DRAFT·····January·7,·2024···························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···············Chv·:·DRAFT· | 90 | ·······4···············Chv·:·DRAFT·January·7,·2024\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·2024.01.07:0425 |
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 1015, 21 lines modified | Offset 1015, 20 lines modified | ||
1015 | /UnderlineThickness·50·def | 1015 | /UnderlineThickness·50·def |
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·50·/two·put | 1021 | dup·50·/two·put |
1022 | dup·52·/four·put | ||
1022 | dup·5 | 1023 | dup·55·/seven·put |
1023 | dup·56·/eight·put | ||
1024 | dup·58·/colon·put | 1024 | dup·58·/colon·put |
1025 | dup·7 | 1025 | dup·74·/J·put |
1026 | dup·97·/a·put | 1026 | dup·97·/a·put |
1027 | dup·98·/b·put | ||
1028 | dup·1 | 1027 | dup·110·/n·put |
1029 | dup·114·/r·put | 1028 | dup·114·/r·put |
1030 | dup·117·/u·put | 1029 | dup·117·/u·put |
1031 | dup·121·/y·put | 1030 | dup·121·/y·put |
1032 | readonly·def | 1031 | readonly·def |
1033 | currentdict·end | 1032 | currentdict·end |
1034 | currentfile·eexec | 1033 | currentfile·eexec |
1035 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1034 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1213, 88 lines modified | Offset 1212, 83 lines modified | ||
1213 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1212 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1214 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1213 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1215 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1214 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1216 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1215 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1217 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1216 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1218 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1217 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1219 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1218 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1220 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1219 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1220 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1221 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1222 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1223 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1224 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1225 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1226 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1227 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1228 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1229 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1230 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1231 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1232 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1233 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1234 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1235 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1236 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1237 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1238 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1239 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1240 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1241 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1242 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1243 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1244 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1245 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1246 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1247 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1248 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1249 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1250 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1251 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1252 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1253 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1254 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1255 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1256 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1257 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1258 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1259 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1260 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1261 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1262 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1263 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1264 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1265 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1266 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1267 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1268 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1269 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1270 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1271 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1272 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1273 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1274 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1275 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1276 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1277 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1278 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1279 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1280 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1281 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1282 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1283 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1284 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1285 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1286 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1221 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1222 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1223 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1224 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1225 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1226 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1227 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1228 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1229 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1230 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1231 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1232 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 12647/23772 bytes (53.20%) 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·January·7,·2024\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 | ·······································PERM·:·DRAFT·· | 53 | ·······································PERM·:·DRAFT···January·7,·2024····················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·January·7,·2024\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 | ·······································PERM·:·DRAFT·· | 124 | ·······································PERM·:·DRAFT···January·7,·2024····················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 12, 15 lines modified | Offset 12, 15 lines modified | ||
12 | %%EndComments | 12 | %%EndComments |
13 | %%BeginDefaults | 13 | %%BeginDefaults |
14 | %%ViewingOrientation:·1·0·0·1 | 14 | %%ViewingOrientation:·1·0·0·1 |
15 | %%EndDefaults | 15 | %%EndDefaults |
16 | %DVIPSWebPage:·(www.radicaleye.com) | 16 | %DVIPSWebPage:·(www.radicaleye.com) |
17 | %DVIPSCommandLine:·dvips·main·-o·ReferenceManual.ps | 17 | %DVIPSCommandLine:·dvips·main·-o·ReferenceManual.ps |
18 | %DVIPSParameters:·dpi=600 | 18 | %DVIPSParameters:·dpi=600 |
19 | %DVIPSSource:··TeX·output·202 | 19 | %DVIPSSource:··TeX·output·2024.01.07:0424 |
20 | %%BeginProcSet:·tex.pro·0·0 | 20 | %%BeginProcSet:·tex.pro·0·0 |
21 | %! | 21 | %! |
22 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S | 22 | /TeXDict·300·dict·def·TeXDict·begin/N{def}def/B{bind·def}N/S{exch}N/X{S |
23 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 | 23 | N}B/A{dup}B/TR{translate}N/isls·false·N/vsize·11·72·mul·N/hsize·8.5·72 |
24 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 | 24 | mul·N/landplus90{false}def/@rigin{isls{[0·landplus90{1·-1}{-1·1}ifelse·0 |
25 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ | 25 | 0·0]concat}if·72·Resolution·div·72·VResolution·div·neg·scale·isls{ |
26 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize | 26 | landplus90{VResolution·72·div·vsize·mul·0·exch}{Resolution·-72·div·hsize |
Offset 4807, 21 lines modified | Offset 4807, 20 lines modified | ||
4807 | /UnderlineThickness·50·def | 4807 | /UnderlineThickness·50·def |
4808 | end·readonly·def | 4808 | end·readonly·def |
4809 | /Encoding·256·array | 4809 | /Encoding·256·array |
4810 | 0·1·255·{1·index·exch·/.notdef·put}·for | 4810 | 0·1·255·{1·index·exch·/.notdef·put}·for |
4811 | dup·44·/comma·put | 4811 | dup·44·/comma·put |
4812 | dup·48·/zero·put | 4812 | dup·48·/zero·put |
4813 | dup·50·/two·put | 4813 | dup·50·/two·put |
4814 | dup·52·/four·put | ||
4814 | dup·5 | 4815 | dup·55·/seven·put |
4815 | dup·56·/eight·put | ||
4816 | dup·58·/colon·put | 4816 | dup·58·/colon·put |
4817 | dup·7 | 4817 | dup·74·/J·put |
4818 | dup·97·/a·put | 4818 | dup·97·/a·put |
4819 | dup·98·/b·put | ||
4820 | dup·1 | 4819 | dup·110·/n·put |
4821 | dup·114·/r·put | 4820 | dup·114·/r·put |
4822 | dup·117·/u·put | 4821 | dup·117·/u·put |
4823 | dup·121·/y·put | 4822 | dup·121·/y·put |
4824 | readonly·def | 4823 | readonly·def |
4825 | currentdict·end | 4824 | currentdict·end |
4826 | currentfile·eexec | 4825 | currentfile·eexec |
4827 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 4826 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 5005, 88 lines modified | Offset 5004, 83 lines modified | ||
5005 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 5004 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
5006 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 5005 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
5007 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 5006 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
5008 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 5007 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
5009 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 5008 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
5010 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 5009 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
5011 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 5010 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
5012 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 5011 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
5012 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
5013 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
5014 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
5015 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
5016 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
5017 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
5018 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
5019 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
5020 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
5021 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
5022 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
5023 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
5024 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
5025 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
5026 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
5027 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
5028 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
5029 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
5030 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
5031 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
5032 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
5033 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
5034 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
5035 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
5036 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
5037 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
5038 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
5039 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
5040 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
5041 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
5042 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
5043 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
5044 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
5045 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
5046 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
5047 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
5048 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
5049 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
5050 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
5051 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
5052 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
5053 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
5054 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
5055 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
5056 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
5057 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
5058 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
5059 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
5060 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
5061 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
5062 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
5063 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
5064 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
5065 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
5066 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
5067 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
5068 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
5069 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
5070 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
5071 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
5072 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
5073 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
5074 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
5075 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
5076 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
5077 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
5078 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
5013 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
5014 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
5015 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
5016 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
5017 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
5018 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
5019 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
5020 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
5021 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
5022 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
5023 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
5024 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 60083/71219 bytes (84.36%) 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 | ····························································January·7,·2024\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 68, 15 lines modified | Offset 68, 15 lines modified | ||
68 | ·······················3.2···Prototypes·and·descriptions·of·Coords·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.············34\xd | 68 | ·······················3.2···Prototypes·and·descriptions·of·Coords·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.············34\xd |
69 | ·····························3.2.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········34\xd | 69 | ·····························3.2.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········34\xd |
70 | ·····························3.2.2···Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······35\xd | 70 | ·····························3.2.2···Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······35\xd |
71 | ·····························3.2.3···Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······36\xd | 71 | ·····························3.2.3···Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······36\xd |
72 | ·····························3.2.4···IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······36\xd | 72 | ·····························3.2.4···IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······36\xd |
73 | ·······················3.3···Driver·programs·for·the·Coords·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········37\xd | 73 | ·······················3.3···Driver·programs·for·the·Coords·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········37\xd |
74 | ···············································································2\xd | 74 | ···············································································2\xd |
75 | ·····························································SPOOLES | 75 | ·····························································SPOOLES2.2:·············January·7,·2024········································3\xd |
76 | ···················4·DV:·Double·Vector·Object·····························································································39\xd | 76 | ···················4·DV:·Double·Vector·Object·····························································································39\xd |
77 | ·······················4.1···Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······39\xd | 77 | ·······················4.1···Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······39\xd |
78 | ·······················4.2···Prototypes·and·descriptions·of·DV·methods··········.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···40\xd | 78 | ·······················4.2···Prototypes·and·descriptions·of·DV·methods··········.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···40\xd |
79 | ·····························4.2.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········40\xd | 79 | ·····························4.2.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········40\xd |
80 | ·····························4.2.2···Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······40\xd | 80 | ·····························4.2.2···Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······40\xd |
81 | ·····························4.2.3···Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······41\xd | 81 | ·····························4.2.3···Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······41\xd |
82 | ·····························4.2.4···Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······42\xd | 82 | ·····························4.2.4···Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······42\xd |
Offset 109, 15 lines modified | Offset 109, 15 lines modified | ||
109 | ·······················8.2···Prototypes·and·descriptions·of·IV·methods··········.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···57\xd | 109 | ·······················8.2···Prototypes·and·descriptions·of·IV·methods··········.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···57\xd |
110 | ·····························8.2.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········57\xd | 110 | ·····························8.2.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········57\xd |
111 | ·····························8.2.2···Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······57\xd | 111 | ·····························8.2.2···Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······57\xd |
112 | ·····························8.2.3···Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······58\xd | 112 | ·····························8.2.3···Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······58\xd |
113 | ·····························8.2.4···Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······59\xd | 113 | ·····························8.2.4···Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.······59\xd |
114 | ·····························8.2.5···IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······61\xd | 114 | ·····························8.2.5···IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······61\xd |
115 | ·······················8.3···Driver·programs·for·the·IV·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········63\xd | 115 | ·······················8.3···Driver·programs·for·the·IV·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········63\xd |
116 | ···················4··········································SPOOLES2.2:· | 116 | ···················4··········································SPOOLES·2.2·:·January·7,·2024\xd |
117 | ···················9·IVL:·Integer·Vector·List·Object······················································································64\xd | 117 | ···················9·IVL:·Integer·Vector·List·Object······················································································64\xd |
118 | ·······················9.1···Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······64\xd | 118 | ·······················9.1···Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······64\xd |
119 | ·······················9.2···Prototypes·and·descriptions·of·IVL·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···········65\xd | 119 | ·······················9.2···Prototypes·and·descriptions·of·IVL·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···········65\xd |
120 | ·····························9.2.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········65\xd | 120 | ·····························9.2.1···Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········65\xd |
121 | ·····························9.2.2···Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······66\xd | 121 | ·····························9.2.2···Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······66\xd |
122 | ·····························9.2.3···Initialization·and·resizing·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········66\xd | 122 | ·····························9.2.3···Initialization·and·resizing·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.········66\xd |
123 | ·····························9.2.4···List·manipulation·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········67\xd | 123 | ·····························9.2.4···List·manipulation·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········67\xd |
Offset 149, 15 lines modified | Offset 149, 15 lines modified | ||
149 | ·······················13.1·Data·Structures·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······81\xd | 149 | ·······················13.1·Data·Structures·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·······81\xd |
150 | ·······················13.2·Prototypes·and·descriptions·of·Utilities·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··············81\xd | 150 | ·······················13.2·Prototypes·and·descriptions·of·Utilities·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··············81\xd |
151 | ·····························13.2.1·CV·:·char·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········82\xd | 151 | ·····························13.2.1·CV·:·char·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········82\xd |
152 | ·····························13.2.2·DV·:·double·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········82\xd | 152 | ·····························13.2.2·DV·:·double·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··········82\xd |
153 | ·····························13.2.3·ZV·:·double·complex·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··············88\xd | 153 | ·····························13.2.3·ZV·:·double·complex·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.··············88\xd |
154 | ·····························13.2.4·IV·:·int·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·········94\xd | 154 | ·····························13.2.4·IV·:·int·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·········94\xd |
155 | ·····························13.2.5·FV·:·float·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·········96\xd | 155 | ·····························13.2.5·FV·:·float·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·········96\xd |
156 | ························································SPOOLES | 156 | ·························································SPOOLES2.2:··········January·7,·2024····································5\xd |
157 | ···························13.2.6·PCV·:·char·*·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···99\xd | 157 | ···························13.2.6·PCV·:·char·*·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···99\xd |
158 | ···························13.2.7·PDV·:·double·*·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···99\xd | 158 | ···························13.2.7·PDV·:·double·*·vector·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.···99\xd |
159 | ···························13.2.8·PFV·:·float·*·vector·methods·······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·100\xd | 159 | ···························13.2.8·PFV·:·float·*·vector·methods·······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·100\xd |
160 | ···························13.2.9·Sorting·routines····.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·100\xd | 160 | ···························13.2.9·Sorting·routines····.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·100\xd |
161 | ···························13.2.10Sort·and·compress·routines·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·102\xd | 161 | ···························13.2.10Sort·and·compress·routines·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·102\xd |
162 | ···························13.2.11IP·:·(int,·pointer)·singly·linked-list·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·103\xd | 162 | ···························13.2.11IP·:·(int,·pointer)·singly·linked-list·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·103\xd |
163 | ···························13.2.12I2OP·:·(int,·int,·void*,·pointer)·singly·linked-list·methods·.·.·.·.·.·.·.·.·.·.·.·.·104\xd | 163 | ···························13.2.12I2OP·:·(int,·int,·void*,·pointer)·singly·linked-list·methods·.·.·.·.·.·.·.·.·.·.·.·.·104\xd |
Offset 186, 15 lines modified | Offset 186, 15 lines modified | ||
186 | ···························16.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·121\xd | 186 | ···························16.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·121\xd |
187 | ···························16.2.2·Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·122\xd | 187 | ···························16.2.2·Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·122\xd |
188 | ···························16.2.3·Generate·induced·graphs······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·122\xd | 188 | ···························16.2.3·Generate·induced·graphs······.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·122\xd |
189 | ···························16.2.4·Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·122\xd | 189 | ···························16.2.4·Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·122\xd |
190 | ···························16.2.5·Dulmage-Mendelsohn·decomposition·method·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·123\xd | 190 | ···························16.2.5·Dulmage-Mendelsohn·decomposition·method·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·123\xd |
191 | ···························16.2.6·IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·123\xd | 191 | ···························16.2.6·IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·123\xd |
192 | ·····················16.3·Driver·programs·for·the·BPG·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·124\xd | 192 | ·····················16.3·Driver·programs·for·the·BPG·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·124\xd |
193 | ················6···································SPOOLES2.2:· | 193 | ················6···································SPOOLES·2.2·:·January·7,·2024\xd |
194 | ················17·DSTree:\xd | 194 | ················17·DSTree:\xd |
195 | ···················ADomain/Separator·Tree·Object··································································126\xd | 195 | ···················ADomain/Separator·Tree·Object··································································126\xd |
196 | ···················17.1·Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·126\xd | 196 | ···················17.1·Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·126\xd |
197 | ···················17.2·Prototypes·and·descriptions·of·DSTree·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·126\xd | 197 | ···················17.2·Prototypes·and·descriptions·of·DSTree·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·126\xd |
198 | ························17.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·127\xd | 198 | ························17.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·127\xd |
199 | ························17.2.2·Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·127\xd | 199 | ························17.2.2·Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·127\xd |
200 | ························17.2.3·Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·127\xd | 200 | ························17.2.3·Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·127\xd |
Offset 226, 15 lines modified | Offset 226, 15 lines modified | ||
226 | ························19.2.11Parallel·factorization·map·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·148\xd | 226 | ························19.2.11Parallel·factorization·map·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·148\xd |
227 | ························19.2.12Storage·profile·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·149\xd | 227 | ························19.2.12Storage·profile·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·149\xd |
228 | ························19.2.13IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·150\xd | 228 | ························19.2.13IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·150\xd |
229 | ···················19.3·Driver·programs·for·the·ETree·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·151\xd | 229 | ···················19.3·Driver·programs·for·the·ETree·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·151\xd |
230 | ················20·GPart:·Graph·Partitioning·Object·······························································162\xd | 230 | ················20·GPart:·Graph·Partitioning·Object·······························································162\xd |
231 | ···················20.1·Data·Structures·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·163\xd | 231 | ···················20.1·Data·Structures·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·163\xd |
232 | ···················20.2·Prototypes·and·descriptions·of·GPart·methods···.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·164\xd | 232 | ···················20.2·Prototypes·and·descriptions·of·GPart·methods···.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·164\xd |
233 | ·····················································SPOOLES | 233 | ·····················································SPOOLES2.2:··········January·7,·2024································7\xd |
234 | ·························20.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·164\xd | 234 | ·························20.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·164\xd |
235 | ·························20.2.2·Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·165\xd | 235 | ·························20.2.2·Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·165\xd |
236 | ·························20.2.3·Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·165\xd | 236 | ·························20.2.3·Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·165\xd |
237 | ·························20.2.4·Domain·decomposition·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·166\xd | 237 | ·························20.2.4·Domain·decomposition·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·166\xd |
238 | ·························20.2.5·Methods·to·generate·a·2-set·partition··.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·167\xd | 238 | ·························20.2.5·Methods·to·generate·a·2-set·partition··.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·167\xd |
239 | ·························20.2.6·Methods·to·improve·a·2-set·partition·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·167\xd | 239 | ·························20.2.6·Methods·to·improve·a·2-set·partition·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·167\xd |
240 | ·························20.2.7·Recursive·Bisection·method·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·169\xd | 240 | ·························20.2.7·Recursive·Bisection·method·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·169\xd |
Offset 264, 15 lines modified | Offset 264, 15 lines modified | ||
264 | ·························22.3.1·Basic·methods·—·public·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·189\xd | 264 | ·························22.3.1·Basic·methods·—·public·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·189\xd |
265 | ·························22.3.2·Initialization·methods·—·public·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·190\xd | 265 | ·························22.3.2·Initialization·methods·—·public·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·190\xd |
266 | ·························22.3.3·Ordering·methods·—·public·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·190\xd | 266 | ·························22.3.3·Ordering·methods·—·public·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·190\xd |
267 | ·························22.3.4·Extraction·methods·—·public·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·190\xd | 267 | ·························22.3.4·Extraction·methods·—·public·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·190\xd |
268 | ·························22.3.5·Internal·methods·—·private·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·191\xd | 268 | ·························22.3.5·Internal·methods·—·private·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·191\xd |
269 | ····················22.4·Prototypes·and·descriptions·of·MSMDvtx·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·192\xd | 269 | ····················22.4·Prototypes·and·descriptions·of·MSMDvtx·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·192\xd |
270 | ····················22.5·Driver·programs·for·the·MSMD·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·192\xd | 270 | ····················22.5·Driver·programs·for·the·MSMD·object·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·192\xd |
271 | ················8··································SPOOLES2.2:· | 271 | ················8···································SPOOLES·2.2·:·January·7,·2024\xd |
272 | ················23·Network:·Simple·Max-flow·solver································································195\xd | 272 | ················23·Network:·Simple·Max-flow·solver································································195\xd |
273 | ···················23.1·Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·196\xd | 273 | ···················23.1·Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·196\xd |
274 | ···················23.2·Prototypes·and·descriptions·of·Network·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·197\xd | 274 | ···················23.2·Prototypes·and·descriptions·of·Network·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·197\xd |
275 | ························23.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·197\xd | 275 | ························23.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·197\xd |
276 | ························23.2.2·Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·198\xd | 276 | ························23.2.2·Initializer·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·198\xd |
277 | ························23.2.3·Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·198\xd | 277 | ························23.2.3·Utility·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·198\xd |
278 | ························23.2.4·IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·199\xd | 278 | ························23.2.4·IO·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·199\xd |
Offset 303, 15 lines modified | Offset 303, 15 lines modified | ||
303 | ················IV·Numeric·Objects·and·Methods···································································216\xd | 303 | ················IV·Numeric·Objects·and·Methods···································································216\xd |
304 | ················26·Chv:·Block·chevron············································································217\xd | 304 | ················26·Chv:·Block·chevron············································································217\xd |
305 | ···················26.1·Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·219\xd | 305 | ···················26.1·Data·Structure·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·219\xd |
306 | ···················26.2·Prototypes·and·descriptions·of·Chv·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·219\xd | 306 | ···················26.2·Prototypes·and·descriptions·of·Chv·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·219\xd |
307 | ························26.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·220\xd | 307 | ························26.2.1·Basic·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·220\xd |
308 | ························26.2.2·Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·220\xd | 308 | ························26.2.2·Instance·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·220\xd |
309 | ························26.2.3·Initialization·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·222\xd | 309 | ························26.2.3·Initialization·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·222\xd |
310 | ··················································SPOOLES | 310 | ···················································SPOOLES2.2:········January·7,·2024·······························9\xd |
311 | ························26.2.4·Search·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·223\xd | 311 | ························26.2.4·Search·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·223\xd |
312 | ························26.2.5·Pivot·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·224\xd | 312 | ························26.2.5·Pivot·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·224\xd |
313 | ························26.2.6·Update·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·224\xd | 313 | ························26.2.6·Update·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·224\xd |
314 | ························26.2.7·Assembly·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·225\xd | 314 | ························26.2.7·Assembly·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·225\xd |
315 | ························26.2.8·Factorization·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·225\xd | 315 | ························26.2.8·Factorization·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·225\xd |
316 | ························26.2.9·Copy·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·226\xd | 316 | ························26.2.9·Copy·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·226\xd |
317 | ························26.2.10Swap·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·228\xd | 317 | ························26.2.10Swap·methods·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·.·228\xd |
Offset 343, 15 lines modified | Offset 343, 15 lines modified | ||
343 | ················30·FrontMtx:·Front·matrix········································································250\xd | 343 | ················30·FrontMtx:·Front·matrix········································································250\xd |
Max diff block lines reached; 7862/24298 bytes (32.36%) 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·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·2024.01.07:0425 |
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 1200, 21 lines modified | Offset 1200, 20 lines modified | ||
1200 | /UnderlineThickness·50·def | 1200 | /UnderlineThickness·50·def |
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·50·/two·put | 1206 | dup·50·/two·put |
1207 | dup·52·/four·put | ||
1207 | dup·5 | 1208 | dup·55·/seven·put |
1208 | dup·56·/eight·put | ||
1209 | dup·58·/colon·put | 1209 | dup·58·/colon·put |
1210 | dup·7 | 1210 | dup·74·/J·put |
1211 | dup·97·/a·put | 1211 | dup·97·/a·put |
1212 | dup·98·/b·put | ||
1213 | dup·1 | 1212 | dup·110·/n·put |
1214 | dup·114·/r·put | 1213 | dup·114·/r·put |
1215 | dup·117·/u·put | 1214 | dup·117·/u·put |
1216 | dup·121·/y·put | 1215 | dup·121·/y·put |
1217 | readonly·def | 1216 | readonly·def |
1218 | currentdict·end | 1217 | currentdict·end |
1219 | currentfile·eexec | 1218 | currentfile·eexec |
1220 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1219 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1398, 88 lines modified | Offset 1397, 83 lines modified | ||
1398 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1397 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1399 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1398 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1400 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1399 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1401 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1400 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1402 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1401 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1403 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1402 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1404 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1403 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1405 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1404 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1405 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1406 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1407 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1408 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1409 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1410 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1411 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1412 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1413 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1414 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1415 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1416 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1417 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1418 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1419 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1420 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1421 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1422 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1423 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1424 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1425 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1426 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1427 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1428 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1429 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1430 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1431 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1432 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1433 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1434 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1435 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1436 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1437 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1438 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1439 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1440 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1441 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1442 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1443 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1444 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1445 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1446 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1447 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1448 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1449 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1450 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1451 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1452 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1453 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1454 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1455 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1456 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1457 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1458 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1459 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1460 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1461 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1462 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1463 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1464 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1465 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1466 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1467 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1468 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1469 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1470 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1471 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1406 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1407 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1408 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1409 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1410 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1411 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1412 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1413 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1414 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1415 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1416 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1417 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 7792/18924 bytes (41.18%) 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·January·7,·2024\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······January·7,·2024·····························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·January·7,·2024\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··January·7,·2024·····················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·2024.01.07:0425 |
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 1439, 21 lines modified | Offset 1439, 20 lines modified | ||
1439 | /UnderlineThickness·50·def | 1439 | /UnderlineThickness·50·def |
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·50·/two·put | 1445 | dup·50·/two·put |
1446 | dup·52·/four·put | ||
1446 | dup·5 | 1447 | dup·55·/seven·put |
1447 | dup·56·/eight·put | ||
1448 | dup·58·/colon·put | 1448 | dup·58·/colon·put |
1449 | dup·7 | 1449 | dup·74·/J·put |
1450 | dup·97·/a·put | 1450 | dup·97·/a·put |
1451 | dup·98·/b·put | ||
1452 | dup·1 | 1451 | dup·110·/n·put |
1453 | dup·114·/r·put | 1452 | dup·114·/r·put |
1454 | dup·117·/u·put | 1453 | dup·117·/u·put |
1455 | dup·121·/y·put | 1454 | dup·121·/y·put |
1456 | readonly·def | 1455 | readonly·def |
1457 | currentdict·end | 1456 | currentdict·end |
1458 | currentfile·eexec | 1457 | currentfile·eexec |
1459 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1458 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1637, 88 lines modified | Offset 1636, 83 lines modified | ||
1637 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1636 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1638 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1637 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1639 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1638 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1640 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1639 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1641 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1640 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1642 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1641 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1643 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1642 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1644 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1643 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1644 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1645 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1646 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1647 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1648 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1649 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1650 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1651 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1652 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1653 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1654 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1655 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1656 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1657 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1658 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1659 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1660 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1661 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1662 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1663 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1664 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1665 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1666 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1667 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1668 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1669 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1670 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1671 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1672 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1673 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1674 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1675 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1676 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1677 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1678 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1679 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1680 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1681 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1682 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1683 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1684 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1685 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1686 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1687 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1688 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1689 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1690 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1691 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1692 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1693 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1694 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1695 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1696 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1697 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1698 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1699 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1700 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1701 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1702 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1703 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1704 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1705 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1706 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1707 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1708 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1709 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1710 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1645 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1646 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1647 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1648 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1649 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1650 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1651 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1652 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1653 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1654 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1655 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1656 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 17465/28594 bytes (61.08%) 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·January·7,·2024\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 | ·····································SolveMap·:·DRAFT·· | 57 | ·····································SolveMap·:·DRAFT···January·7,·2024··················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·January·7,·2024\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 | ··············································SolveMap·:·DRAFT······· | 125 | ··············································SolveMap·:·DRAFT·······January·7,·2024···························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·January·7,·2024\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 | ·····································SolveMap·:·DRAFT·· | 201 | ·····································SolveMap·:·DRAFT···January·7,·2024··················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·2024.01.07:0425 |
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 2119, 21 lines modified | Offset 2119, 20 lines modified | ||
2119 | /UnderlineThickness·50·def | 2119 | /UnderlineThickness·50·def |
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·50·/two·put | 2125 | dup·50·/two·put |
2126 | dup·52·/four·put | ||
2126 | dup·5 | 2127 | dup·55·/seven·put |
2127 | dup·56·/eight·put | ||
2128 | dup·58·/colon·put | 2128 | dup·58·/colon·put |
2129 | dup·7 | 2129 | dup·74·/J·put |
2130 | dup·97·/a·put | 2130 | dup·97·/a·put |
2131 | dup·98·/b·put | ||
2132 | dup·1 | 2131 | dup·110·/n·put |
2133 | dup·114·/r·put | 2132 | dup·114·/r·put |
2134 | dup·117·/u·put | 2133 | dup·117·/u·put |
2135 | dup·121·/y·put | 2134 | dup·121·/y·put |
2136 | readonly·def | 2135 | readonly·def |
2137 | currentdict·end | 2136 | currentdict·end |
2138 | currentfile·eexec | 2137 | currentfile·eexec |
2139 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2138 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2317, 88 lines modified | Offset 2316, 83 lines modified | ||
2317 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2316 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2318 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2317 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2319 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2318 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2320 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2319 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2321 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2320 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2322 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2321 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2323 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2322 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2324 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2323 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2324 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2325 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2326 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2327 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2328 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2329 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2330 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2331 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2332 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2333 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2334 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2335 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2336 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2337 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2338 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2339 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2340 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2341 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2342 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2343 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2344 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2345 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2346 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2347 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2348 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2349 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2350 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2351 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2352 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2353 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2354 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2355 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2356 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2357 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2358 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2359 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2360 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2361 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2362 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2363 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2364 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2365 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2366 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2367 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2368 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2369 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2370 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2371 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2372 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2373 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2374 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2375 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2376 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2377 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2378 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2379 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2380 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2381 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2382 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2383 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2384 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2385 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2386 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2387 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2388 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2389 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2390 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2325 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2326 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2327 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2328 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2329 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2330 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2331 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2332 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2333 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2334 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2335 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2336 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 29819/40946 bytes (72.83%) 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·January·7,·2024\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··January·7,·2024····················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·January·7,·2024\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··January·7,·2024····················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·January·7,·2024\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 | ············································SubMtx·:·DRAFT····· | 211 | ············································SubMtx·:·DRAFT·····January·7,·2024··························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·····························SubMtx·:·DRAFT· | 249 | ··············8·····························SubMtx·:·DRAFT·January·7,·2024\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··January·7,·2024····················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; 12215/23004 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·2024.01.07:0425 |
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 1777, 21 lines modified | Offset 1777, 20 lines modified | ||
1777 | /UnderlineThickness·50·def | 1777 | /UnderlineThickness·50·def |
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·50·/two·put | 1783 | dup·50·/two·put |
1784 | dup·52·/four·put | ||
1784 | dup·5 | 1785 | dup·55·/seven·put |
1785 | dup·56·/eight·put | ||
1786 | dup·58·/colon·put | 1786 | dup·58·/colon·put |
1787 | dup·7 | 1787 | dup·74·/J·put |
1788 | dup·97·/a·put | 1788 | dup·97·/a·put |
1789 | dup·98·/b·put | ||
1790 | dup·1 | 1789 | dup·110·/n·put |
1791 | dup·114·/r·put | 1790 | dup·114·/r·put |
1792 | dup·117·/u·put | 1791 | dup·117·/u·put |
1793 | dup·121·/y·put | 1792 | dup·121·/y·put |
1794 | readonly·def | 1793 | readonly·def |
1795 | currentdict·end | 1794 | currentdict·end |
1796 | currentfile·eexec | 1795 | currentfile·eexec |
1797 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1796 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1975, 88 lines modified | Offset 1974, 83 lines modified | ||
1975 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1974 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1976 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1975 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1977 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1976 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1978 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1977 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1979 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1978 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1980 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1979 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1981 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1980 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1982 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1981 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1982 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1983 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1984 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1985 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1986 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1987 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1988 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1989 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1990 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1991 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1992 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1993 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1994 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1995 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1996 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1997 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1998 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1999 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2000 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2001 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2002 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2003 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2004 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2005 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2006 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2007 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2008 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2009 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2010 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2011 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2012 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2013 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2014 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2015 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2016 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2017 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2018 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2019 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2020 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2021 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2022 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2023 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2024 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2025 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2026 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2027 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2028 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2029 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2030 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2031 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2032 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2033 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2034 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2035 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2036 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2037 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2038 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2039 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2040 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2041 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2042 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2043 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2044 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2045 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2046 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2047 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2048 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1983 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1984 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1985 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1986 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1987 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1988 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1989 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1990 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1991 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1992 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1993 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1994 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 17329/28460 bytes (60.89%) 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·January·7,·2024\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 | ····································SubMtxList·:·DRAFT·· | 59 | ····································SubMtxList·:·DRAFT···January·7,·2024··················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·January·7,·2024\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·2024.01.07:0425 |
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 1420, 21 lines modified | Offset 1420, 20 lines modified | ||
1420 | /UnderlineThickness·50·def | 1420 | /UnderlineThickness·50·def |
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·50·/two·put | 1426 | dup·50·/two·put |
1427 | dup·52·/four·put | ||
1427 | dup·5 | 1428 | dup·55·/seven·put |
1428 | dup·56·/eight·put | ||
1429 | dup·58·/colon·put | 1429 | dup·58·/colon·put |
1430 | dup·7 | 1430 | dup·74·/J·put |
1431 | dup·97·/a·put | 1431 | dup·97·/a·put |
1432 | dup·98·/b·put | ||
1433 | dup·1 | 1432 | dup·110·/n·put |
1434 | dup·114·/r·put | 1433 | dup·114·/r·put |
1435 | dup·117·/u·put | 1434 | dup·117·/u·put |
1436 | dup·121·/y·put | 1435 | dup·121·/y·put |
1437 | readonly·def | 1436 | readonly·def |
1438 | currentdict·end | 1437 | currentdict·end |
1439 | currentfile·eexec | 1438 | currentfile·eexec |
1440 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1439 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1618, 88 lines modified | Offset 1617, 83 lines modified | ||
1618 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1617 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1619 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1618 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1620 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1619 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1621 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1620 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1622 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1621 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1623 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1622 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1624 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1623 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1625 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1624 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1625 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1626 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1627 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1628 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1629 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1630 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1631 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1632 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1633 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1634 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1635 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1636 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1637 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1638 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1639 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1640 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1641 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1642 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1643 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1644 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1645 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1646 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1647 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1648 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1649 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1650 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1651 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1652 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1653 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1654 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1655 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1656 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1657 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1658 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1659 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1660 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1661 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1662 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1663 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1664 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1665 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1666 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1667 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1668 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1669 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1670 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1671 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1672 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1673 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1674 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1675 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1676 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1677 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1678 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1679 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1680 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1681 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1682 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1683 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1684 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1685 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1686 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1687 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1688 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1689 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1690 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1691 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1626 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1627 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1628 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1629 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1630 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1631 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1632 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1633 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1634 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1635 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1636 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1637 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 6189/17323 bytes (35.73%) 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·January·7,·2024\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 | ···································SubMtxManager·:·DRAFT·· | 62 | ···································SubMtxManager·:·DRAFT···January·7,·2024················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·January·7,·2024\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·2024.01.07:0425 |
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 1007, 21 lines modified | Offset 1007, 20 lines modified | ||
1007 | /UnderlineThickness·50·def | 1007 | /UnderlineThickness·50·def |
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·50·/two·put | 1013 | dup·50·/two·put |
1014 | dup·52·/four·put | ||
1014 | dup·5 | 1015 | dup·55·/seven·put |
1015 | dup·56·/eight·put | ||
1016 | dup·58·/colon·put | 1016 | dup·58·/colon·put |
1017 | dup·7 | 1017 | dup·74·/J·put |
1018 | dup·97·/a·put | 1018 | dup·97·/a·put |
1019 | dup·98·/b·put | ||
1020 | dup·1 | 1019 | dup·110·/n·put |
1021 | dup·114·/r·put | 1020 | dup·114·/r·put |
1022 | dup·117·/u·put | 1021 | dup·117·/u·put |
1023 | dup·121·/y·put | 1022 | dup·121·/y·put |
1024 | readonly·def | 1023 | readonly·def |
1025 | currentdict·end | 1024 | currentdict·end |
1026 | currentfile·eexec | 1025 | currentfile·eexec |
1027 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1026 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 1205, 88 lines modified | Offset 1204, 83 lines modified | ||
1205 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1204 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1206 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1205 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1207 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1206 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1208 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1207 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1209 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1208 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1210 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1209 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1211 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1210 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1212 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1211 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
1212 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
1213 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
1214 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
1215 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
1216 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
1217 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
1218 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
1219 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
1220 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
1221 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
1222 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
1223 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
1224 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
1225 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
1226 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
1227 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
1228 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
1229 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
1230 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
1231 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
1232 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
1233 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
1234 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
1235 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
1236 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
1237 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
1238 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
1239 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
1240 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
1241 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
1242 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
1243 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
1244 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
1245 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
1246 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
1247 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
1248 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
1249 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
1250 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
1251 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
1252 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
1253 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
1254 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
1255 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
1256 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
1257 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
1258 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
1259 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
1260 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
1261 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
1262 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
1263 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
1264 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
1265 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
1266 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
1267 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
1268 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
1269 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
1270 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
1271 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
1272 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
1273 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
1274 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
1275 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
1276 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
1277 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
1278 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
1213 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
1214 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
1215 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
1216 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
1217 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
1218 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
1219 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
1220 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
1221 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
1222 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
1223 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
1224 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 6009/17137 bytes (35.06%) 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···························SymbFac·:·DRAFT· | 29 | ··············2···························SymbFac·:·DRAFT·January·7,·2024\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···········January·7,·2024····································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······································SymbFac·:·DRAFT· | 108 | ··················4······································SymbFac·:·DRAFT·January·7,·2024\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·2024.01.07:0425 |
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 2228, 21 lines modified | Offset 2228, 20 lines modified | ||
2228 | /UnderlineThickness·50·def | 2228 | /UnderlineThickness·50·def |
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·50·/two·put | 2234 | dup·50·/two·put |
2235 | dup·52·/four·put | ||
2235 | dup·5 | 2236 | dup·55·/seven·put |
2236 | dup·56·/eight·put | ||
2237 | dup·58·/colon·put | 2237 | dup·58·/colon·put |
2238 | dup·7 | 2238 | dup·74·/J·put |
2239 | dup·97·/a·put | 2239 | dup·97·/a·put |
2240 | dup·98·/b·put | ||
2241 | dup·1 | 2240 | dup·110·/n·put |
2242 | dup·114·/r·put | 2241 | dup·114·/r·put |
2243 | dup·117·/u·put | 2242 | dup·117·/u·put |
2244 | dup·121·/y·put | 2243 | dup·121·/y·put |
2245 | readonly·def | 2244 | readonly·def |
2246 | currentdict·end | 2245 | currentdict·end |
2247 | currentfile·eexec | 2246 | currentfile·eexec |
2248 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2247 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2426, 88 lines modified | Offset 2425, 83 lines modified | ||
2426 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2425 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2427 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2426 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2428 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2427 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2429 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2428 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2430 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2429 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2431 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2430 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2432 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2431 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2433 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2432 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2433 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2434 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2435 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2436 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2437 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2438 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2439 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2440 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2441 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2442 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2443 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2444 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2445 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2446 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2447 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2448 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2449 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2450 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2451 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2452 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2453 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2454 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2455 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2456 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2457 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2458 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2459 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2460 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2461 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2462 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2463 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2464 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2465 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2466 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2467 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2468 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2469 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2470 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2471 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2472 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2473 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2474 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2475 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2476 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2477 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2478 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2479 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2480 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2481 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2482 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2483 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2484 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2485 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2486 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2487 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2488 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2489 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2490 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2491 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2492 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2493 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2494 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2495 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2496 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2497 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2498 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2499 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2434 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2435 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2436 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2437 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2438 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2439 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2440 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2441 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2442 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2443 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2444 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2445 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 22184/33309 bytes (66.60%) 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·January·7,·2024\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···January·7,·2024····················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·January·7,·2024\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···January·7,·2024····················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·January·7,·2024\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 | ··················································Tree·:·DRAFT······· | 198 | ··················································Tree·:·DRAFT·······January·7,·2024·······························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·January·7,·2024\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···January·7,·2024····················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; 4971/15726 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·2024.01.07:0425 |
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 3358, 21 lines modified | Offset 3358, 20 lines modified | ||
3358 | /UnderlineThickness·50·def | 3358 | /UnderlineThickness·50·def |
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·50·/two·put | 3364 | dup·50·/two·put |
3365 | dup·52·/four·put | ||
3365 | dup·5 | 3366 | dup·55·/seven·put |
3366 | dup·56·/eight·put | ||
3367 | dup·58·/colon·put | 3367 | dup·58·/colon·put |
3368 | dup·7 | 3368 | dup·74·/J·put |
3369 | dup·97·/a·put | 3369 | dup·97·/a·put |
3370 | dup·98·/b·put | ||
3371 | dup·1 | 3370 | dup·110·/n·put |
3372 | dup·114·/r·put | 3371 | dup·114·/r·put |
3373 | dup·117·/u·put | 3372 | dup·117·/u·put |
3374 | dup·121·/y·put | 3373 | dup·121·/y·put |
3375 | readonly·def | 3374 | readonly·def |
3376 | currentdict·end | 3375 | currentdict·end |
3377 | currentfile·eexec | 3376 | currentfile·eexec |
3378 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 3377 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 3556, 88 lines modified | Offset 3555, 83 lines modified | ||
3556 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 3555 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
3557 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 3556 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
3558 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 3557 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
3559 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 3558 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
3560 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 3559 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
3561 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 3560 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
3562 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 3561 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
3563 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 3562 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
3563 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
3564 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
3565 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
3566 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
3567 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
3568 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
3569 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
3570 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
3571 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
3572 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
3573 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
3574 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
3575 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
3576 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
3577 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
3578 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
3579 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
3580 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
3581 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
3582 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
3583 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
3584 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
3585 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
3586 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
3587 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
3588 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
3589 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
3590 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
3591 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
3592 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
3593 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
3594 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
3595 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
3596 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
3597 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
3598 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
3599 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
3600 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
3601 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
3602 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
3603 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
3604 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
3605 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
3606 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
3607 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
3608 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
3609 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
3610 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
3611 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
3612 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
3613 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
3614 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
3615 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
3616 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
3617 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
3618 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
3619 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
3620 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
3621 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
3622 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
3623 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
3624 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
3625 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
3626 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
3627 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
3628 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
3629 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
3564 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
3565 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
3566 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
3567 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
3568 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
3569 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
3570 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
3571 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
3572 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
3573 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
3574 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
3575 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 46794/57924 bytes (80.79%) 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··························Utilities·:·DRAFT· | 29 | ··············2··························Utilities·:·DRAFT·January·7,·2024\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··January·7,·2024··················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·January·7,·2024\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····January·7,·2024·····················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·January·7,·2024\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··January·7,·2024··················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··························································Utilities·:·DRAFT· | 255 | ·····························8···························································Utilities·:·DRAFT·January·7,·2024\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··January·7,·2024··················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; 28053/38161 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·2024.01.07:0425 |
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 2351, 21 lines modified | Offset 2351, 20 lines modified | ||
2351 | /UnderlineThickness·50·def | 2351 | /UnderlineThickness·50·def |
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·50·/two·put | 2357 | dup·50·/two·put |
2358 | dup·52·/four·put | ||
2358 | dup·5 | 2359 | dup·55·/seven·put |
2359 | dup·56·/eight·put | ||
2360 | dup·58·/colon·put | 2360 | dup·58·/colon·put |
2361 | dup·7 | 2361 | dup·74·/J·put |
2362 | dup·97·/a·put | 2362 | dup·97·/a·put |
2363 | dup·98·/b·put | ||
2364 | dup·1 | 2363 | dup·110·/n·put |
2365 | dup·114·/r·put | 2364 | dup·114·/r·put |
2366 | dup·117·/u·put | 2365 | dup·117·/u·put |
2367 | dup·121·/y·put | 2366 | dup·121·/y·put |
2368 | readonly·def | 2367 | readonly·def |
2369 | currentdict·end | 2368 | currentdict·end |
2370 | currentfile·eexec | 2369 | currentfile·eexec |
2371 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2370 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2549, 88 lines modified | Offset 2548, 83 lines modified | ||
2549 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2548 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2550 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2549 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2551 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2550 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2552 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2551 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2553 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2552 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2554 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2553 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2555 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2554 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2556 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2555 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2556 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2557 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2558 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2559 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2560 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2561 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2562 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2563 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2564 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2565 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2566 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2567 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2568 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2569 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2570 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2571 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2572 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2573 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2574 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2575 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2576 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2577 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2578 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2579 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2580 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2581 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2582 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2583 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2584 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2585 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2586 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2587 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2588 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2589 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2590 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2591 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2592 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2593 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2594 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2595 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2596 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2597 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2598 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2599 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2600 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2601 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2602 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2603 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2604 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2605 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2606 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2607 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2608 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2609 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2610 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2611 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2612 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2613 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2614 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2615 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2616 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2617 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2618 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2619 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2620 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2621 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2622 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2557 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2558 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2559 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2560 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2561 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2562 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2563 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2564 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2565 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2566 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2567 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2568 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 11928/23051 bytes (51.75%) 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·January·7,·2024\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··January·7,·2024······················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·January·7,·2024\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··January·7,·2024······················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·January·7,·2024\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··January·7,·2024······················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·January·7,·2024\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·2024.01.07:0425 |
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 2251, 21 lines modified | Offset 2251, 20 lines modified | ||
2251 | /UnderlineThickness·50·def | 2251 | /UnderlineThickness·50·def |
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·50·/two·put | 2257 | dup·50·/two·put |
2258 | dup·52·/four·put | ||
2258 | dup·5 | 2259 | dup·55·/seven·put |
2259 | dup·56·/eight·put | ||
2260 | dup·58·/colon·put | 2260 | dup·58·/colon·put |
2261 | dup·7 | 2261 | dup·74·/J·put |
2262 | dup·97·/a·put | 2262 | dup·97·/a·put |
2263 | dup·98·/b·put | ||
2264 | dup·1 | 2263 | dup·110·/n·put |
2265 | dup·114·/r·put | 2264 | dup·114·/r·put |
2266 | dup·117·/u·put | 2265 | dup·117·/u·put |
2267 | dup·121·/y·put | 2266 | dup·121·/y·put |
2268 | readonly·def | 2267 | readonly·def |
2269 | currentdict·end | 2268 | currentdict·end |
2270 | currentfile·eexec | 2269 | currentfile·eexec |
2271 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2270 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
Offset 2449, 88 lines modified | Offset 2448, 83 lines modified | ||
2449 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2448 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2450 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2449 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2451 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2450 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2452 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2451 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2453 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2452 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2454 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2453 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2455 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2454 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2456 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2455 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB884400493EF704 |
2456 | AAD58B5EC7446C104E35E1BD40C2A5E8212D57F595E78782FF19251B1D373536 | ||
2457 | E1A3A3EE00CD97FC5A24DC762E7B137A39BF92FCC32B212DD98F38F58DBF529B | ||
2458 | 46E5C4DF7FCC98AF1868EFACE75B457F265EABDBED7B0B4C58B992F2C7447EFE | ||
2459 | FBB747B040B7A00BDD7E6E1A9144C7C2A0B5FE09992FD8372689AC90494273BA | ||
2460 | 389E9AEECD921A82778626A823A88C7E731F64A920DF219678972CC33BA79221 | ||
2461 | 7883F0BED070FA6336715004DE725C4438E0A4431CDB05CA0177BDEA3DFF75DB | ||
2462 | 2938B887D7EC2E7CBC13845072C39A1DA383303D39F219ABC7F6E6C99B6A4FC0 | ||
2463 | C6F170700D1A58EF5512E64926C123AAF808D1F82B4347D87457E6C42D4F2861 | ||
2464 | B15A3EDD23FA95CAE9D32CB9EE6A700CEC2EEA533EEE0F00CA439A37411A466A | ||
2465 | F6C8B4BC37A342DA97BE768416340641DF734271EE332F3763367088C8D2F5D1 | ||
2466 | B449959619A4DAD5EE691A62AB98C9BE7746648046A1C58CE843113593A1A10F | ||
2467 | D57F3443B8E9CA5948AC50008389EB42FA4389968616998AD134A8E2E8296CD1 | ||
2468 | EBEDAA3EB7C026D5D278CD661DE0C5458BE871894537AAD4DA1263381284D664 | ||
2469 | 7CBEF442BDA369A70583951C321B8BA376849751840CC1DB0E9AE1BF1EB6A6CD | ||
2470 | 5C9CFFE491A29BFBAA81748806C0197CF02738AF64AF426C30A53A94D9761FFD | ||
2471 | 4542E058DCC4FF352A96547462BEC1CF81944498557B2EC3573F73FCA516CB9C | ||
2472 | 9A5B3FE6ABE533BF2A2174A17D54EBBEC88E48E19DAA19E677B700F7FD327CB7 | ||
2473 | B5717878035F4563A565B0C5877B4D56E9A308FD2A369A21AFDF75646FCCF89C | ||
2474 | 1B4B20B5D9FFEE1E4B2183516E0EFB339708C1612124983C0F6DFE8E02AFB817 | ||
2475 | 6107350605A0FB00D54150B01CD30428376450F2DB2FD96D9E404038CBABF963 | ||
2476 | 3B492FC43496E0A3A5ED18B733EE61E7EAB0BE8B647ADDD37E97C5EFC8D1C19F | ||
2477 | 0C6300218C28D632730823BACB3F26FAF7BB98A7FF62650C58BCB592E5A9A9AF | ||
2478 | E994D93E2C5F4074A837774791F0ED09913498CDBBF10E31CFB78E83521726B6 | ||
2479 | 70810BFFA1D9557FC47D0985BF6D071DA994E75BE261004DD63DCACC9C7EF276 | ||
2480 | 3B5005F00675A3E389FE768A562BBF82D10A3AA6AB595233B269795A1BCA6BC0 | ||
2481 | D82E9DEA5009E56307D4F90DAB366511845328900FBD1D3A0974AAE6F3D0D082 | ||
2482 | 3381F505FC1C51305685901C412A361DDB496F8457E801D20E3D25CC6B74B90D | ||
2483 | B6188058A129D9C4646C35FCD508D7A84F4902AEF1642A7F54108F9C11F1F670 | ||
2484 | E0BB408B74DAEC3DBB23C17E173888F0B7EA4A5CBD3C6E8FC64A347B76C7D10E | ||
2485 | DBE89E59D6967D4DE94BFF96318F25817DDF6455E6D1D0E32964A11900664ED4 | ||
2486 | E61B1C1FF2EA65ADBF64D4D3674E1D7628A01AC4CCA30269482D57629A3D147C | ||
2487 | 53CBEE45AB05290CEACE60767DE112DC3090980717A65B2CF1A2D12451185DEA | ||
2488 | E2AA14D2E4B196311360C4961E1C45B855BC19E3FEECFA911F7BDBF14B7DC1C5 | ||
2489 | 3696614AF402D7F10002A0FD428CD3F512D7332578B78E9BD03363A3A9AB86E5 | ||
2490 | D03F160D78FCDAF4FD94E2DB85504289B2DDE689C8566FC560703222FB2F7ADE | ||
2491 | 8829EF36824644D1F58F9B6F9CC4D65C77D8992BC3E6D5FA072167BCAADC243A | ||
2492 | 92C21F9184625753C637BC8752B48C0A7A5930E6B12E464EA00A2533E2F015DB | ||
2493 | 7257F5446F13EEA0F658D97529E85837E02D7CC042934230A87EFD5C672A175D | ||
2494 | 7988125337794D26B5B0CD8B8F3CDA6D520D4BC9668F66A246BCD2C288F6E00F | ||
2495 | A8FD53180F154405E3DCC11FE918CEB1C3DFD506F0B44BD6A7195089C876914E | ||
2496 | 25BBA23A63673677BF4DC8B1198560836501398185AC11761022359013FEEFA6 | ||
2497 | 8956DED15E9B181183495F49A0DDCA7CCA16F298951229BE8A48409A69D4CFC8 | ||
2498 | B160D21C16EFF2A4CE39644D6B0C5E7DC2DED8B473E1DB387551A35BD44CF201 | ||
2499 | CDEC173724C0D0EB234ACE2F65133613D70B8509BDE5B7D316F5F2C83E179E52 | ||
2500 | D5130535AB7196BEB82E61168C4EE0DF9B7232C7EE88132663A1B1FD272D74E4 | ||
2501 | A68047B5F5162045B0EB710084DBFD076808220E6BB24B0014DD4AD3AF7712B1 | ||
2502 | 68FDBD0A626A5765A7F000B42148BD07DF4DAD4F302889E00CE56E7A0313107C | ||
2503 | 194D0AD8C18EA65AFC27663E3F69FE2B050FE41A8C64EA00A57FC06A519CAFA1 | ||
2504 | 1D9A7603106E65293A1E38D547026691DC7C9C574A515E16304F703F9EF7EA0A | ||
2505 | 7A562239C8E4B88E004E16C81277AC968211A08024551E92F38EFF21B2252798 | ||
2506 | A5583C23D884CC4951337F0FD9D63398BBCF146F83FAC1B4C12ADE6FC1980088 | ||
2507 | A95F8921960ABB4AA44DF2F889B1DB6868314812D0D5649F44FAC3BF85B86115 | ||
2508 | 5F43C0C200E7D97203DA3FA2992080B970BAFC37A7D095D8E22C07FF206E4CB2 | ||
2509 | BF4872A44C911CA31ADB4BBE42E25E058AD13DBE259F46653CC2817BC7282905 | ||
2510 | 8A826684D82DA9D1C2EFA613C3D4CC1E3E870A097A8C54BCA9F21C63C38B8908 | ||
2511 | AF56126552737063C7395D8E9F415E6C748E33019DD43584BC652B70BFFAAD3F | ||
2512 | 3A4E9CEF2EDCC0435286C4F1A3EEF60F988B699A14BC349FF636AB5B298B19CE | ||
2513 | B983E63D7F6D489951B8B717355A27FB989E90BE141150B6FAA88AA32C900792 | ||
2514 | 5613408A42C291CE5C60D88D8118648688CE5B1D1AD4CC2BE2887F2AD6CDACD8 | ||
2515 | 1BD31C17650283670F8880BEB6FD696679DEA623D020592AEFF17EF7903F01E9 | ||
2516 | AB054F45D1DDD4F455A2C4738AF477FBA31084335DDFD9335A4185280EF39A82 | ||
2517 | AC94D2854B9C683462C75D10114DEC0263D8AC05A333E173C752592884635EF1 | ||
2518 | 124932E242F3D56580446A13C9222C70E39ABBDFDD359D0E8A445EF459C5675E | ||
2519 | 238BC1F9C8C04ADC6E9927B9E5A1911968F978F0C82C4C1DE5C8F0BBB4AC21A8 | ||
2520 | F847186E0A2B51B2B4B16B80209F7A308438F59D8397A22543DFA8A500BE7876 | ||
2521 | F88B3EC8B05753F8C6AA99695935FB9A7C9D837B17B447CE7F99CE7809501553 | ||
2522 | F2E7529000B6AEB196648E9B33AB730076E7426C097247E12D5DEB2A080F9F24 | ||
2457 | 88009C56E0A43A9F2C854AB15BE89F440EA595FC1B79E3B328B583C840EF718E | ||
2458 | EA8EE6B6C64D7325289DCFFBDEE1D1D14B28E009E5ECBF7626D8440C676974C4 | ||
2459 | 1AFCC4688D674C01A6D8AC619A4A13B1259FC65826315E692F52273D5761C841 | ||
2460 | B4D14DBE9F11DCC4AFF9A3309A4AEE4ABFCD80A3ED6EC056A499666D4E637044 | ||
2461 | 38E6795EACA5B1CCB1C87577CABB7247FFED46CE6ECE2330348701D7987E6B5A | ||
2462 | C673340DE61033E7EBE83890DEFF32BCAE034D5CF098F16F768D9A1BD46465F3 | ||
2463 | DAE58EA38E5B582263A7D86B9AD5A0AD75CA7A5A0017FF9530FF80EA907ED3CD | ||
2464 | E05C9AB9209F8DC8447847C16AC02318B17AA985A38B2C77229F5E0E3DA8D1F3 | ||
2465 | 48D6A7F86D814CCBE85133B3A304AF0A4AA647CD0E2539DFAD9604486DCCFA49 | ||
2466 | AC96130D106A8F8387633622C3809400D6E8FF9D60877C743502E4D211CEBF62 | ||
2467 | 9A6F91045C22D5D20C5FF677D89983D02E5EE26C71A9EAE0E7C52465DA5A149A | ||
2468 | 9B731C27EC8366BC3E841C0CAE49A33DE164A857365B17B09CAD121C47A980CB | ||
Max diff block lines reached; 25573/36698 bytes (69.68%) 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·January·7,·2024\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···January·7,·2024····················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·January·7,·2024\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···January·7,·2024····················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·January·7,·2024\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···January·7,·2024····················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·January·7,·2024\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, 48 lines modified | Offset 293, 48 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···January·7,·2024····················9\xd |
301 | ··········································Figure·1.1:·R2D100\xd | 301 | ··········································Figure·1.1:·R2D100\xd |
302 | ··············10····························Misc·:·DRAFT· | 302 | ··············10····························Misc·:·DRAFT·January·7,·2024\xd |
303 | ································Figure·1.2:·R2D100:·fishnet·domain·decomposition\xd | 303 | ································Figure·1.2:·R2D100:·fishnet·domain·decomposition\xd |
304 | ································3····3·····3····3···· | 304 | ································3····3·····3····3····3·····3····3·····0····0·····5\xd |
305 | ·········································3\xd | 305 | ·········································3\xd |
306 | ································3················ | 306 | ································3················3····3·······0··················0\xd |
307 | ·······················································3·3\xd | 307 | ·······················································3·3\xd |
Max diff block lines reached; 9219/21192 bytes (43.50%) of diff not shown. |