Offset 1, 5 lines modified | Offset 1, 5 lines modified | ||
1 | ·f2b1f13f3e0c40463115c7bbd35ec1f6·567248·libdevel·optional·libspooles-dev_2.2-14.2_arm64.deb | 1 | ·f2b1f13f3e0c40463115c7bbd35ec1f6·567248·libdevel·optional·libspooles-dev_2.2-14.2_arm64.deb |
2 | ·16c8bb1c58da882b6185b69400b703b7·1345924·debug·optional·libspooles2.2t64-dbgsym_2.2-14.2_arm64.deb | 2 | ·16c8bb1c58da882b6185b69400b703b7·1345924·debug·optional·libspooles2.2t64-dbgsym_2.2-14.2_arm64.deb |
3 | ·1c4fb2e7b31b1d2543827f0549e8dd41·411956·libs·optional·libspooles2.2t64_2.2-14.2_arm64.deb | 3 | ·1c4fb2e7b31b1d2543827f0549e8dd41·411956·libs·optional·libspooles2.2t64_2.2-14.2_arm64.deb |
4 | · | 4 | ·5730330f3440ac469bd3cf9019b8f139·8091336·doc·optional·spooles-doc_2.2-14.2_all.deb |
Offset 1, 3 lines modified | Offset 1, 3 lines modified | ||
1 | -rw-r--r--···0········0········0········4·2025-04-10·19:26:46.000000·debian-binary | 1 | -rw-r--r--···0········0········0········4·2025-04-10·19:26:46.000000·debian-binary |
2 | -rw-r--r--···0········0········0·····19 | 2 | -rw-r--r--···0········0········0·····1944·2025-04-10·19:26:46.000000·control.tar.xz |
3 | -rw-r--r--···0········0········0··808 | 3 | -rw-r--r--···0········0········0··8089200·2025-04-10·19:26:46.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.2 | 3 | Version:·2.2-14.2 |
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:·816 | 6 | Installed-Size:·8165 |
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·2025-04-10·19:26:46.000000·./ | 1 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./ |
2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/ | 2 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/ |
3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/share/ | 3 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/share/ |
4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/share/doc/ | 4 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/share/doc/ |
5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/ | 5 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/ |
6 | -rw-r--r--···0·root·········(0)·root·········(0)···15148 | 6 | -rw-r--r--···0·root·········(0)·root·········(0)···151489·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/A2.ps.gz |
7 | -rw-r--r--···0·root·········(0)·root·········(0)···596035·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/ASHCRAFC.ps.gz | 7 | -rw-r--r--···0·root·········(0)·root·········(0)···596035·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/ASHCRAFC.ps.gz |
8 | -rw-r--r--···0·root·········(0)·root·········(0)···312 | 8 | -rw-r--r--···0·root·········(0)·root·········(0)···312649·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/AllInOne.ps.gz |
9 | -rw-r--r--···0·root·········(0)·root·········(0)···12735 | 9 | -rw-r--r--···0·root·········(0)·root·········(0)···127359·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/BKL.ps.gz |
10 | -rw-r--r--···0·root·········(0)·root·········(0)···155 | 10 | -rw-r--r--···0·root·········(0)·root·········(0)···155597·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/BPG.ps.gz |
11 | -rw-r--r--···0·root·········(0)·root·········(0)···18977 | 11 | -rw-r--r--···0·root·········(0)·root·········(0)···189773·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Chv.ps.gz |
12 | -rw-r--r--···0·root·········(0)·root·········(0)···1004 | 12 | -rw-r--r--···0·root·········(0)·root·········(0)···100462·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/ChvList.ps.gz |
13 | -rw-r--r--···0·root·········(0)·root·········(0)····941 | 13 | -rw-r--r--···0·root·········(0)·root·········(0)····94155·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/ChvManager.ps.gz |
14 | -rw-r--r--···0·root·········(0)·root·········(0)···1204 | 14 | -rw-r--r--···0·root·········(0)·root·········(0)···120434·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Coords.ps.gz |
15 | -rw-r--r--···0·root·········(0)·root·········(0)···1154 | 15 | -rw-r--r--···0·root·········(0)·root·········(0)···115415·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/DSTree.ps.gz |
16 | -rw-r--r--···0·root·········(0)·root·········(0)···1335 | 16 | -rw-r--r--···0·root·········(0)·root·········(0)···133564·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/DV.ps.gz |
17 | -rw-r--r--···0·root·········(0)·root·········(0)···1172 | 17 | -rw-r--r--···0·root·········(0)·root·········(0)···117240·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/DenseMtx.ps.gz |
18 | -rw-r--r--···0·root·········(0)·root·········(0)···10708 | 18 | -rw-r--r--···0·root·········(0)·root·········(0)···107089·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Drand.ps.gz |
19 | -rw-r--r--···0·root·········(0)·root·········(0)···1210 | 19 | -rw-r--r--···0·root·········(0)·root·········(0)···121037·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/EGraph.ps.gz |
20 | -rw-r--r--···0·root·········(0)·root·········(0)···2204 | 20 | -rw-r--r--···0·root·········(0)·root·········(0)···220446·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/ETree.ps.gz |
21 | -rw-r--r--···0·root·········(0)·root·········(0)···25 | 21 | -rw-r--r--···0·root·········(0)·root·········(0)···254235·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Eigen.ps.gz |
22 | -rw-r--r--···0·root·········(0)·root·········(0)···1791 | 22 | -rw-r--r--···0·root·········(0)·root·········(0)···179141·2025-04-10·19:26:46.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)···275931·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/FrontTrees.ps.gz |
24 | -rw-r--r--···0·root·········(0)·root·········(0)···18 | 24 | -rw-r--r--···0·root·········(0)·root·········(0)···183999·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/GPart.ps.gz |
25 | -rw-r--r--···0·root·········(0)·root·········(0)···189 | 25 | -rw-r--r--···0·root·········(0)·root·········(0)···189589·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Graph.ps.gz |
26 | -rw-r--r--···0·root·········(0)·root·········(0)···13157 | 26 | -rw-r--r--···0·root·········(0)·root·········(0)···131575·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/I2Ohash.ps.gz |
27 | -rw-r--r--···0·root·········(0)·root·········(0)···10940 | 27 | -rw-r--r--···0·root·········(0)·root·········(0)···109406·2025-04-10·19:26:46.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)···121207·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/IV.ps.gz |
29 | -rw-r--r--···0·root·········(0)·root·········(0)···1241 | 29 | -rw-r--r--···0·root·········(0)·root·········(0)···124126·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/IVL.ps.gz |
30 | -rw-r--r--···0·root·········(0)·root·········(0)····951 | 30 | -rw-r--r--···0·root·········(0)·root·········(0)····95155·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Ideq.ps.gz |
31 | -rw-r--r--···0·root·········(0)·root·········(0)···2044 | 31 | -rw-r--r--···0·root·········(0)·root·········(0)···204472·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/InpMtx.ps.gz |
32 | -rw-r--r--···0·root·········(0)·root·········(0)···28 | 32 | -rw-r--r--···0·root·········(0)·root·········(0)···283211·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/LinSol.ps.gz |
33 | -rw-r--r--···0·root·········(0)·root·········(0)····889 | 33 | -rw-r--r--···0·root·········(0)·root·········(0)····88938·2025-04-10·19:26:46.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)···176155·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/MPI.ps.gz |
35 | -rw-r--r--···0·root·········(0)·root·········(0)···16825 | 35 | -rw-r--r--···0·root·········(0)·root·········(0)···168252·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/MSMD.ps.gz |
36 | -rw-r--r--···0·root·········(0)·root·········(0)···1629 | 36 | -rw-r--r--···0·root·········(0)·root·········(0)···162994·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/MT.ps.gz |
37 | -rw-r--r--···0·root·········(0)·root·········(0)···14600 | 37 | -rw-r--r--···0·root·········(0)·root·········(0)···146004·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Network.ps.gz |
38 | -rw-r--r--···0·root·········(0)·root·········(0)···14306 | 38 | -rw-r--r--···0·root·········(0)·root·········(0)···143066·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/PatchAndGoInfo.ps.gz |
39 | -rw-r--r--···0·root·········(0)·root·········(0)···1242 | 39 | -rw-r--r--···0·root·········(0)·root·········(0)···124222·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Pencil.ps.gz |
40 | -rw-r--r--···0·root·········(0)·root·········(0)···1067 | 40 | -rw-r--r--···0·root·········(0)·root·········(0)···106773·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Perm.ps.gz |
41 | -rw-r--r--···0·root·········(0)·root·········(0)···9104 | 41 | -rw-r--r--···0·root·········(0)·root·········(0)···911040·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/ReferenceManual.ps.gz |
42 | -rw-r--r--···0·root·········(0)·root·········(0)···1525 | 42 | -rw-r--r--···0·root·········(0)·root·········(0)···152546·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/SemiImplMtx.ps.gz |
43 | -rw-r--r--···0·root·········(0)·root·········(0)···1341 | 43 | -rw-r--r--···0·root·········(0)·root·········(0)···134150·2025-04-10·19:26:46.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)···175476·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/SubMtx.ps.gz |
45 | -rw-r--r--···0·root·········(0)·root·········(0)···1011 | 45 | -rw-r--r--···0·root·········(0)·root·········(0)···101119·2025-04-10·19:26:46.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)···117297·2025-04-10·19:26:46.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)···120399·2025-04-10·19:26:46.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)···167493·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Tree.ps.gz |
49 | -rw-r--r--···0·root·········(0)·root·········(0)···1897 | 49 | -rw-r--r--···0·root·········(0)·root·········(0)···189761·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/Utilities.ps.gz |
50 | -rw-r--r--···0·root·········(0)·root·········(0)···1274 | 50 | -rw-r--r--···0·root·········(0)·root·········(0)···127437·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/ZV.ps.gz |
51 | -rw-r--r--···0·root·········(0)·root·········(0)······737·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/changelog.Debian.gz | 51 | -rw-r--r--···0·root·········(0)·root·········(0)······737·2025-04-10·19:26:46.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)···1885 | 53 | -rw-r--r--···0·root·········(0)·root·········(0)···188540·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/misc.ps.gz |
54 | -rw-r--r--···0·root·········(0)·root·········(0)·····9600·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/spooles.2.2.html | 54 | -rw-r--r--···0·root·········(0)·root·········(0)·····9600·2025-04-10·19:26:46.000000·./usr/share/doc/spooles-doc/spooles.2.2.html |
55 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/share/doc-base/ | 55 | drwxr-xr-x···0·root·········(0)·root·········(0)········0·2025-04-10·19:26:46.000000·./usr/share/doc-base/ |
56 | -rw-r--r--···0·root·········(0)·root·········(0)······430·2018-12-19·22:56:58.000000·./usr/share/doc-base/spooles-doc.spooles | 56 | -rw-r--r--···0·root·········(0)·root·········(0)······430·2018-12-19·22:56:58.000000·./usr/share/doc-base/spooles-doc.spooles |
Offset 11, 15 lines modified | Offset 11, 15 lines modified | ||
11 | %%EndComments | 11 | %%EndComments |
12 | %%BeginDefaults | 12 | %%BeginDefaults |
13 | %%ViewingOrientation:·1·0·0·1 | 13 | %%ViewingOrientation:·1·0·0·1 |
14 | %%EndDefaults | 14 | %%EndDefaults |
15 | %DVIPSWebPage:·(www.radicaleye.com) | 15 | %DVIPSWebPage:·(www.radicaleye.com) |
16 | %DVIPSCommandLine:·dvips·main·-o·A2.ps | 16 | %DVIPSCommandLine:·dvips·main·-o·A2.ps |
17 | %DVIPSParameters:·dpi=600 | 17 | %DVIPSParameters:·dpi=600 |
18 | %DVIPSSource:··TeX·output·202 | 18 | %DVIPSSource:··TeX·output·2026.05.15:0640 |
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 2063, 20 lines modified | Offset 2063, 19 lines modified | ||
2063 | /Encoding·256·array | 2063 | /Encoding·256·array |
2064 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2064 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2065 | dup·44·/comma·put | 2065 | dup·44·/comma·put |
2066 | dup·48·/zero·put | 2066 | dup·48·/zero·put |
2067 | dup·49·/one·put | 2067 | dup·49·/one·put |
2068 | dup·50·/two·put | 2068 | dup·50·/two·put |
2069 | dup·53·/five·put | 2069 | dup·53·/five·put |
2070 | dup·54·/six·put | ||
2070 | dup·58·/colon·put | 2071 | dup·58·/colon·put |
2071 | dup· | 2072 | dup·77·/M·put |
2073 | dup·97·/a·put | ||
2072 | dup·105·/i·put | ||
2073 | dup·108·/l·put | ||
2074 | dup·1 | 2074 | dup·121·/y·put |
2075 | dup·114·/r·put | ||
2076 | readonly·def | 2075 | readonly·def |
2077 | currentdict·end | 2076 | currentdict·end |
2078 | currentfile·eexec | 2077 | currentfile·eexec |
2079 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2078 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2080 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2079 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2081 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2080 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2082 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2081 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2257, 75 lines modified | Offset 2256, 75 lines modified | ||
2257 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2256 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2258 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2257 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2259 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2258 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2260 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2259 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2261 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2260 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2262 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2261 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2263 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2262 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2264 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2263 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2265 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2266 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2267 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2268 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2269 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2270 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2271 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2272 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2273 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2274 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2275 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2276 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2277 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2278 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2279 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2280 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2281 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2282 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2283 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2284 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2285 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2286 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2287 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2288 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2289 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2290 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2291 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2292 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2293 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2294 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2295 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2296 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2297 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2298 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2299 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2300 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2301 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2302 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2303 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2304 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2305 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2306 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2307 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2308 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2309 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2310 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2311 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2312 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2313 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2314 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2315 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2316 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2317 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2318 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2319 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2320 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2321 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2322 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2323 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2324 | 8B | 2264 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2265 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2266 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2267 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2268 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2269 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2270 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2271 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2272 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2273 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2274 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2275 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2276 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2277 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2278 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2279 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2280 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2281 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2282 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2283 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2284 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 13902/23742 bytes (58.55%) 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·May·15,·2026\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···May·15,·2026··························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·May·15,·2026\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···May·15,·2026··························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·May·15,·2026\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···May·15,·2026··························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·May·15,·2026\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···May·15,·2026··························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; 3013/14056 bytes (21.44%) 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·2026.05.15:0640 |
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 2707, 41 lines modified | Offset 2707, 42 lines modified | ||
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·49·/one·put | 2711 | dup·49·/one·put |
2712 | dup·50·/two·put | 2712 | dup·50·/two·put |
2713 | dup·53·/five·put | 2713 | dup·53·/five·put |
2714 | dup·54·/six·put | ||
2714 | dup·61·/equal·put | 2715 | dup·61·/equal·put |
2715 | dup·65·/A·put | 2716 | dup·65·/A·put |
2716 | dup·66·/B·put | 2717 | dup·66·/B·put |
2717 | dup·67·/C·put | 2718 | dup·67·/C·put |
2718 | dup·68·/D·put | 2719 | dup·68·/D·put |
2719 | dup·71·/G·put | 2720 | dup·71·/G·put |
2720 | dup·74·/J·put | 2721 | dup·74·/J·put |
2721 | dup·75·/K·put | 2722 | dup·75·/K·put |
2723 | dup·77·/M·put | ||
2722 | dup·80·/P·put | 2724 | dup·80·/P·put |
2723 | dup·82·/R·put | 2725 | dup·82·/R·put |
2724 | dup·87·/W·put | 2726 | dup·87·/W·put |
2725 | dup·97·/a·put | 2727 | dup·97·/a·put |
2726 | dup·99·/c·put | 2728 | dup·99·/c·put |
2727 | dup·101·/e·put | 2729 | dup·101·/e·put |
2728 | dup·102·/f·put | 2730 | dup·102·/f·put |
2729 | dup·103·/g·put | 2731 | dup·103·/g·put |
2730 | dup·104·/h·put | 2732 | dup·104·/h·put |
2731 | dup·105·/i·put | 2733 | dup·105·/i·put |
2732 | dup·107·/k·put | 2734 | dup·107·/k·put |
2733 | dup·108·/l·put | ||
2734 | dup·109·/m·put | 2735 | dup·109·/m·put |
2735 | dup·110·/n·put | 2736 | dup·110·/n·put |
2736 | dup·111·/o·put | 2737 | dup·111·/o·put |
2737 | dup·112·/p·put | ||
2738 | dup·114·/r·put | 2738 | dup·114·/r·put |
2739 | dup·115·/s·put | 2739 | dup·115·/s·put |
2740 | dup·116·/t·put | 2740 | dup·116·/t·put |
2741 | dup·121·/y·put | ||
2741 | readonly·def | 2742 | readonly·def |
2742 | currentdict·end | 2743 | currentdict·end |
2743 | currentfile·eexec | 2744 | currentfile·eexec |
2744 | D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA | 2745 | D9D66F633B846AB284BCF8B0411B772DE5CE3DD325E55798292D7BD972BD75FA |
2745 | 0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93 | 2746 | 0E079529AF9C82DF72F64195C9C210DCE34528F540DA1FFD7BEBB9B40787BA93 |
2746 | 51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71 | 2747 | 51BBFB7CFC5F9152D1E5BB0AD8D016C6CFA4EB41B3C51D091C2D5440E67CFD71 |
2747 | 7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551 | 2748 | 7C56816B03B901BF4A25A07175380E50A213F877C44778B3C5AADBCC86D6E551 |
Offset 2922, 203 lines modified | Offset 2923, 214 lines modified | ||
2922 | 66D4EBC86C0DF27B789D5597FE88BCDAD2925CFF60F5A8EA618FE867857D585A | 2923 | 66D4EBC86C0DF27B789D5597FE88BCDAD2925CFF60F5A8EA618FE867857D585A |
2923 | CE25A158AED63B8FE391030C518693AEC75AC0AADD0C11B0065E2ABCF51132F3 | 2924 | CE25A158AED63B8FE391030C518693AEC75AC0AADD0C11B0065E2ABCF51132F3 |
2924 | 82E3718B9A9FAAF727F2D8286177EE27BAD040C66D0D2D7C092B45D9330265B5 | 2925 | 82E3718B9A9FAAF727F2D8286177EE27BAD040C66D0D2D7C092B45D9330265B5 |
2925 | 6B5C8E29F71C9EF548BFA4BAFAB242B26455E4B7FC1882D68E408D25E6F58EC3 | 2926 | 6B5C8E29F71C9EF548BFA4BAFAB242B26455E4B7FC1882D68E408D25E6F58EC3 |
2926 | 046AAFC52C182BDCD36034FD58E8B379C9F2BD16FA6FBB8C455E36A1BEA8F803 | 2927 | 046AAFC52C182BDCD36034FD58E8B379C9F2BD16FA6FBB8C455E36A1BEA8F803 |
2927 | 2AC069379392D74A6E8DD64AAC6FB5E7EE151EE99AF33B1D9E55C5C8D601EEB7 | 2928 | 2AC069379392D74A6E8DD64AAC6FB5E7EE151EE99AF33B1D9E55C5C8D601EEB7 |
2928 | 2C194E090D261E86199D6576EC00044C87B3E79C39B4CBCBF391B78C1E9D17AE | 2929 | 2C194E090D261E86199D6576EC00044C87B3E79C39B4CBCBF391B78C1E9D17AE |
2929 | FC99092341499E3160303A869929280E672C29204632974124DE524092221775 | ||
2930 | 1ECA4A30DF02B58740DCC4BA984CB0AF7F0ED7642F310CA9C8DE9DD1ABA550D5 | ||
2931 | 0CB05C0AAC0D6FD8A162B1819417381F9FE61C6C969A9F1B90540850B1987ACB | ||
2932 | 78AFA3A7CB4777BE09789E016B56B6703DA49888701BB3E62C71C23BC4836E53 | ||
2933 | 36B08C6D7989C5CC88FBAF42D988B7C84C0BFBD1515B88EA7EDCDA0F7A90A3EF | ||
2934 | 3399B19919992B3061D71E2CA9D5EB3DAD40B23A8F46B22D97DCFB1F59C6191E | ||
2935 | 1F10115669CD6CC05A4BE4F7AC5252F4EF69041831C805F18C467E3897BD934E | ||
2936 | 535073A5F07092528A564245005C2D3DE8FB7C0766724A17C870AA8BA5D92B60 | ||
2937 | B0405DFD157AC0E2EAC29B4C646EF47AC3073866DBAF844C997648F5F8BB467A | ||
2938 | D743E84DC558A7EA03F24E67261C753FABE4EE9F7BF298980F3DCDB668261517 | ||
2939 | 137A75D73525BDA305A66D6BF225C9B4D364CBBBA5632674384228DE6841A1FB | ||
2940 | 48EE0B15B9A6B45EEE062A92E75FE251C3264464FCB8816800C17A05DB8551A8 | ||
2941 | DB9364CB0B4AB7BB3318F4D15FFEB6DE1F46442861C50C30949CB7F2166385AD | ||
2942 | 46632ED0AAA2FB3434D6A0D964E28CB20EAEC9E247CE185B2D44ED0A293BC092 | ||
2943 | 82F4C469C80917C66BE00DA188E07436627F58C4E397AF82ECBE69F55594ECB9 | ||
2944 | CC5BD92164913FD02D98C4499D772355DA6C3A4975722C9F37E4C9B457CBC7C6 | ||
2945 | 8A34D50B9578E6903B81A1EBBF5B958F1B808DCC6C1932ED0205232EAFE4A534 | ||
2946 | 7F9357AC44FB46AC86498BB3232F7E3778ABA8D251CA4E1BDFD9283F61E64E96 | ||
2947 | BBC373DCC8789452063B4426AB14A3D4F39F53FCA9E2E60E057059A04EFB7EB7 | ||
2948 | E6A4C0DBB5A974E6123865778F68229ED529309E3E83859F5FE137361BB04538 | ||
2949 | E2EBB21AC4A4D8BD4F4DBEFD7F9A354A8C82B5B1AC8B0E627689536310A32441 | ||
2950 | 4317C223DEF1BC3A60490B2743250F5375FD416E0F9D14C3828124A8913408F7 | ||
2951 | 20436E2A13285022AB0D80091E68CFCA2E95876AE2BBDB0BFED1AC79EFFB423A | ||
2952 | 4588BDE591C08736F2391EC6424A12EAB20CD9CEDF0F239B41345789F30847A6 | ||
2953 | A9BB3E7C02961ADC5D101E83049037416334202229793E94898D6B2E0304D98C | ||
2954 | 530E609644AC3F21C6F3AC220A64AE11A563E9D0237A3618626C019327F17C7A | ||
2955 | 5AADFC0C2EFABB18873E52B0A12D5D4778AE354EE4F96570AB4A8AD6EE0DF79B | ||
2956 | 13EB5D68B45B1536F98E7E300D2F4DDD7739DC83B5DA3C15CB0F20913DD8B8CD | ||
2957 | A09C3A02832883079B79BFF3624484BFACDF4042ADED532AD28B966016CE7184 | ||
2958 | 660E379DC893C32EC133140FD3E0C51A32577529C867B088E6DD86AE8CA0BBB1 | ||
2959 | 8E89075C833F67C1C91F32DB215D24224F4EAD63891463C19E99008C3E4E049B | ||
2960 | 76D0245E82544A158CE8A6EAD33916B000FD1C405E7D8A078AC7BCB9B81717C6 | ||
2961 | C8699F0F98966A66A8F8F771EB452599B2D625428726838C854340BD880AF559 | ||
2962 | 014819098153229AA860C4A4E70E8258169D5C8FB4604D6029B73ECB2C687860 | ||
2963 | 57FA4DAADDA973BD17A1C5D61D756793FB057C4D6242904F8376B24A54748A38 | ||
2964 | 96DCCD66F9997EE7C83110F3BF96D6BF08F33B3DDE2C317BBC3B483A0BE3DE6F | ||
2965 | 4FDA3C5D46E64CD3441E3391B3B092387A2062A80ADF32C48ACACEA7C28AF340 | ||
2966 | CD8A4562703AF76CA8E3AA0551852B84811F61CC56958E8BF302C7DFCE4B9E3D | ||
2967 | 6BD75B163AFD28AD41FD39D2B2825F476183135C3CE30FEE9BD1F6246B22E32C | ||
2968 | 266C7458DD4C4DBCDB586E0CE01DE48F3D515A12D350D5339D3139887A3D2EA2 | ||
2969 | B6E605242727E8CC8B536F1F2CD7D54F44D595F0E15C0664404B627C4E2857AA | ||
2970 | F511514162462A5421864448D60B5C2174217E5A09856A60A633278D08351B95 | ||
2971 | DE82C849E7266B554FC2EE3943309A956AF4698A9B87C9BABC8330431EDE9DFD | ||
2972 | 8FE31340EC5AA70F47422DC60EFD58597F219D04DF1F8BE9F732C4401EFB180D | ||
2973 | 60D5D47D3334166D9A21F9F8A25A1C027BF552E25EFA72742D4950BF5F5BD724 | ||
2974 | 6F55701B403342132F8CC0817D5E5A0F918DF4144C56E83A09DB0712EF701084 | ||
2975 | 75EA0EB5E2AABFA2166EE045DC5CAB1DB1966D77C2D2850A13668F44327AA6E4 | ||
2976 | 59B16285F272090CFE17ED730DDD02885C7941C34CA6B7532071256E92B61DD2 | ||
2977 | 11CE749BD186EB21BC42860ED8CB652E2CF4623A416DC50F7333505B4101D303 | ||
2978 | 21F4AFD22B5AA98BCDC37FBDF5A611CD56FD389B41D5A4FBE5931091B00445E4 | ||
2979 | 7B0F26C21E4C8451CED8832BD8D2A859BF358DF2FDBAA8D3A46BF220274DDB7E | ||
2980 | 92FCDBF5117FDF755183A5D5F7A12475AA1150F0D598682C81EBAA1A3C21E78E | ||
2981 | 62B98EED7948C8C0AB9C14DC1AD70C919F306E194AD422B0CCCC4FFAAA85156D | ||
2982 | C9B7D7E92A195E9807E0E1C9B0075F1A8E2A902710FED0C7B42719EC3C8F2E60 | ||
2983 | 8F18D6EA89DDD09E45E307AA1D4EFFADCA8FFA7A1436126FC860B9375DC54594 | ||
2984 | 6CD9D24E12595B329909821BD121F361A00E86DA46B9ED2D6429C703C250CF28 | ||
2985 | F63E85C336EBB7CB03E0970F4AEEAE73E18217B59D6B951335C91E4937691799 | ||
2986 | 0E34D3F9EFA1D62924DFB982C30F5026DAF3BF51771189C718D9C9E60FBFDA74 | ||
2987 | FF042F39F1F947DC5F1F63DAB17D306938368CCB2A333C55C6830758BE013E40 | ||
Max diff block lines reached; 92681/120494 bytes (76.92%) 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 | ·······················································May·15,·2026\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···························································May·15,·2026\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 | ··············May·15,·2026·································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··································May·15,·2026\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 | ··············May·15,·2026·································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··············································May·15,·2026\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 | ················May·15,·2026·········································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··································May·15,·2026\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 | ·················May·15,·2026········································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·················································May·15,·2026\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; 46873/60732 bytes (77.18%) 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·2026.05.15:0640 |
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 2556, 20 lines modified | Offset 2556, 19 lines modified | ||
2556 | /Encoding·256·array | 2556 | /Encoding·256·array |
2557 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2557 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2558 | dup·44·/comma·put | 2558 | dup·44·/comma·put |
2559 | dup·48·/zero·put | 2559 | dup·48·/zero·put |
2560 | dup·49·/one·put | 2560 | dup·49·/one·put |
2561 | dup·50·/two·put | 2561 | dup·50·/two·put |
2562 | dup·53·/five·put | 2562 | dup·53·/five·put |
2563 | dup·54·/six·put | ||
2563 | dup·58·/colon·put | 2564 | dup·58·/colon·put |
2564 | dup· | 2565 | dup·77·/M·put |
2566 | dup·97·/a·put | ||
2565 | dup·105·/i·put | ||
2566 | dup·108·/l·put | ||
2567 | dup·1 | 2567 | dup·121·/y·put |
2568 | dup·114·/r·put | ||
2569 | readonly·def | 2568 | readonly·def |
2570 | currentdict·end | 2569 | currentdict·end |
2571 | currentfile·eexec | 2570 | currentfile·eexec |
2572 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2571 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2573 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2572 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2574 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2573 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2575 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2574 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2750, 75 lines modified | Offset 2749, 75 lines modified | ||
2750 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2749 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2751 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2750 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2752 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2751 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2753 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2752 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2754 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2753 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2755 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2754 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2756 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2755 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2757 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2756 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2758 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2759 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2760 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2761 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2762 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2763 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2764 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2765 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2766 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2767 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2768 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2769 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2770 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2771 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2772 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2773 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2774 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2775 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2776 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2777 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2778 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2779 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2780 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2781 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2782 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2783 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2784 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2785 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2786 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2787 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2788 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2789 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2790 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2791 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2792 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2793 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2794 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2795 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2796 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2797 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2798 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2799 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2800 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2801 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2802 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2803 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2804 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2805 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2806 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2807 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2808 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2809 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2810 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2811 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2812 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2813 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2814 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2815 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2816 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2817 | 8B | 2757 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2758 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2759 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2760 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2761 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2762 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2763 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2764 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2765 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2766 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2767 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2768 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2769 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2770 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2771 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2772 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2773 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2774 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2775 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2776 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2777 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 6147/15988 bytes (38.45%) 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·May·15,·2026\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··May·15,·2026·······················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·May·15,·2026\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·······May·15,·2026··································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·2026.05.15:0640 |
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 1428, 20 lines modified | Offset 1428, 19 lines modified | ||
1428 | /Encoding·256·array | 1428 | /Encoding·256·array |
1429 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1429 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1430 | dup·44·/comma·put | 1430 | dup·44·/comma·put |
1431 | dup·48·/zero·put | 1431 | dup·48·/zero·put |
1432 | dup·49·/one·put | 1432 | dup·49·/one·put |
1433 | dup·50·/two·put | 1433 | dup·50·/two·put |
1434 | dup·53·/five·put | 1434 | dup·53·/five·put |
1435 | dup·54·/six·put | ||
1435 | dup·58·/colon·put | 1436 | dup·58·/colon·put |
1436 | dup· | 1437 | dup·77·/M·put |
1438 | dup·97·/a·put | ||
1437 | dup·105·/i·put | ||
1438 | dup·108·/l·put | ||
1439 | dup·1 | 1439 | dup·121·/y·put |
1440 | dup·114·/r·put | ||
1441 | readonly·def | 1440 | readonly·def |
1442 | currentdict·end | 1441 | currentdict·end |
1443 | currentfile·eexec | 1442 | currentfile·eexec |
1444 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1443 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1445 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1444 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1446 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1445 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1447 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1446 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1622, 75 lines modified | Offset 1621, 75 lines modified | ||
1622 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1621 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1623 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1622 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1624 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1623 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1625 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1624 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1626 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1625 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1627 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1626 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1628 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1627 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1629 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1628 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1630 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1631 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1632 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1633 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1634 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1635 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1636 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1637 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1638 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1639 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1640 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1641 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1642 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1643 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1644 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1645 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1646 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1647 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1648 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1649 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1650 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1651 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1652 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1653 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1654 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1655 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1656 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1657 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1658 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1659 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1660 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1661 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1662 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1663 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1664 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1665 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1666 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1667 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1668 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1669 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1670 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1671 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1672 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1673 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1674 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1675 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1676 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1677 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1678 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1679 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1680 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1681 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1682 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1683 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1684 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1685 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1686 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1687 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1688 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1689 | 8B | 1629 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1630 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1631 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1632 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1633 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1634 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1635 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1636 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1637 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1638 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1639 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1640 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1641 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1642 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1643 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1644 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1645 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1646 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1647 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1648 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1649 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 8733/18574 bytes (47.02%) 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·May·15,·2026\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···May·15,·2026···························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·May·15,·2026\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·····May·15,·2026··································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·May·15,·2026\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···May·15,·2026···························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·2026.05.15:0640 |
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 2519, 20 lines modified | Offset 2519, 19 lines modified | ||
2519 | /Encoding·256·array | 2519 | /Encoding·256·array |
2520 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2520 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2521 | dup·44·/comma·put | 2521 | dup·44·/comma·put |
2522 | dup·48·/zero·put | 2522 | dup·48·/zero·put |
2523 | dup·49·/one·put | 2523 | dup·49·/one·put |
2524 | dup·50·/two·put | 2524 | dup·50·/two·put |
2525 | dup·53·/five·put | 2525 | dup·53·/five·put |
2526 | dup·54·/six·put | ||
2526 | dup·58·/colon·put | 2527 | dup·58·/colon·put |
2527 | dup· | 2528 | dup·77·/M·put |
2529 | dup·97·/a·put | ||
2528 | dup·105·/i·put | ||
2529 | dup·108·/l·put | ||
2530 | dup·1 | 2530 | dup·121·/y·put |
2531 | dup·114·/r·put | ||
2532 | readonly·def | 2531 | readonly·def |
2533 | currentdict·end | 2532 | currentdict·end |
2534 | currentfile·eexec | 2533 | currentfile·eexec |
2535 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2534 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2536 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2535 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2537 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2536 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2538 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2537 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2713, 75 lines modified | Offset 2712, 75 lines modified | ||
2713 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2712 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2714 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2713 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2715 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2714 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2716 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2715 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2717 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2716 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2718 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2717 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2719 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2718 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2720 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2719 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2721 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2722 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2723 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2724 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2725 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2726 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2727 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2728 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2729 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2730 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2731 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2732 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2733 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2734 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2735 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2736 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2737 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2738 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2739 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2740 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2741 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2742 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2743 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2744 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2745 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2746 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2747 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2748 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2749 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2750 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2751 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2752 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2753 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2754 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2755 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2756 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2757 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2758 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2759 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2760 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2761 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2762 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2763 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2764 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2765 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2766 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2767 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2768 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2769 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2770 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2771 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2772 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2773 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2774 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2775 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2776 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2777 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2778 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2779 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2780 | 8B | 2720 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2721 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2722 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2723 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2724 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2725 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2726 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2727 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2728 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2729 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2730 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2731 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2732 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2733 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2734 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2735 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2736 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2737 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2738 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2739 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2740 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 29638/39479 bytes (75.07%) 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·May·15,·2026\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··May·15,·2026·······················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·May·15,·2026\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·····May·15,·2026······························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·May·15,·2026\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·····May·15,·2026····························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·May·15,·2026\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·····May·15,·2026·······························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; 29676/41816 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·2026.05.15:0640 |
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 1763, 20 lines modified | Offset 1763, 19 lines modified | ||
1763 | /Encoding·256·array | 1763 | /Encoding·256·array |
1764 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1764 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1765 | dup·44·/comma·put | 1765 | dup·44·/comma·put |
1766 | dup·48·/zero·put | 1766 | dup·48·/zero·put |
1767 | dup·49·/one·put | 1767 | dup·49·/one·put |
1768 | dup·50·/two·put | 1768 | dup·50·/two·put |
1769 | dup·53·/five·put | 1769 | dup·53·/five·put |
1770 | dup·54·/six·put | ||
1770 | dup·58·/colon·put | 1771 | dup·58·/colon·put |
1771 | dup· | 1772 | dup·77·/M·put |
1773 | dup·97·/a·put | ||
1772 | dup·105·/i·put | ||
1773 | dup·108·/l·put | ||
1774 | dup·1 | 1774 | dup·121·/y·put |
1775 | dup·114·/r·put | ||
1776 | readonly·def | 1775 | readonly·def |
1777 | currentdict·end | 1776 | currentdict·end |
1778 | currentfile·eexec | 1777 | currentfile·eexec |
1779 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1778 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1780 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1779 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1781 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1780 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1782 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1781 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1957, 75 lines modified | Offset 1956, 75 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 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1965 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1966 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1967 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1968 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1969 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1970 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1971 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1972 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1973 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1974 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1975 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1976 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1977 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1978 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1979 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1980 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1981 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1982 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1983 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1984 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1985 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1986 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1987 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1988 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1989 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1990 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1991 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1992 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1993 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1994 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1995 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1996 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1997 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1998 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1999 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2000 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2001 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2002 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2003 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2004 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2005 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2006 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2007 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2008 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2009 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2010 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2011 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2012 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2013 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2014 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2015 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2016 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2017 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2018 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2019 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2020 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2021 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2022 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2023 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2024 | 8B | 1964 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1965 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1966 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1967 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1968 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1969 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1970 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1971 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1972 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1973 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1974 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1975 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1976 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1977 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1978 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1979 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1980 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1981 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1982 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1983 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1984 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 5045/14890 bytes (33.88%) 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·May·15,·2026\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··May·15,·2026······················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·May·15,·2026\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·2026.05.15:0640 |
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 1160, 20 lines modified | Offset 1160, 19 lines modified | ||
1160 | /Encoding·256·array | 1160 | /Encoding·256·array |
1161 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1161 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1162 | dup·44·/comma·put | 1162 | dup·44·/comma·put |
1163 | dup·48·/zero·put | 1163 | dup·48·/zero·put |
1164 | dup·49·/one·put | 1164 | dup·49·/one·put |
1165 | dup·50·/two·put | 1165 | dup·50·/two·put |
1166 | dup·53·/five·put | 1166 | dup·53·/five·put |
1167 | dup·54·/six·put | ||
1167 | dup·58·/colon·put | 1168 | dup·58·/colon·put |
1168 | dup· | 1169 | dup·77·/M·put |
1170 | dup·97·/a·put | ||
1169 | dup·105·/i·put | ||
1170 | dup·108·/l·put | ||
1171 | dup·1 | 1171 | dup·121·/y·put |
1172 | dup·114·/r·put | ||
1173 | readonly·def | 1172 | readonly·def |
1174 | currentdict·end | 1173 | currentdict·end |
1175 | currentfile·eexec | 1174 | currentfile·eexec |
1176 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1175 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1177 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1176 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1178 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1177 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1179 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1178 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1354, 75 lines modified | Offset 1353, 75 lines modified | ||
1354 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1353 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1355 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1354 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1356 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1355 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1357 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1356 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1358 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1357 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1359 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1358 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1360 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1359 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1361 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1360 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1362 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1363 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1364 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1365 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1366 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1367 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1368 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1369 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1370 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1371 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1372 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1373 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1374 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1375 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1376 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1377 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1378 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1379 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1380 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1381 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1382 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1383 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1384 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1385 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1386 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1387 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1388 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1389 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1390 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1391 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1392 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1393 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1394 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1395 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1396 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1397 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1398 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1399 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1400 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1401 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1402 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1403 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1404 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1405 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1406 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1407 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1408 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1409 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1410 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1411 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1412 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1413 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1414 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1415 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1416 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1417 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1418 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1419 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1420 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1421 | 8B | 1361 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1362 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1363 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1364 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1365 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1366 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1367 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1368 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1369 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1370 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1371 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1372 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1373 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1374 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1375 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1376 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1377 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1378 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1379 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1380 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1381 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 5385/15233 bytes (35.35%) 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·May·15,·2026\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···May·15,·2026·····················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·May·15,·2026\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·2026.05.15:0640 |
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 1239, 20 lines modified | Offset 1239, 19 lines modified | ||
1239 | /Encoding·256·array | 1239 | /Encoding·256·array |
1240 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1240 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1241 | dup·44·/comma·put | 1241 | dup·44·/comma·put |
1242 | dup·48·/zero·put | 1242 | dup·48·/zero·put |
1243 | dup·49·/one·put | 1243 | dup·49·/one·put |
1244 | dup·50·/two·put | 1244 | dup·50·/two·put |
1245 | dup·53·/five·put | 1245 | dup·53·/five·put |
1246 | dup·54·/six·put | ||
1246 | dup·58·/colon·put | 1247 | dup·58·/colon·put |
1247 | dup· | 1248 | dup·77·/M·put |
1249 | dup·97·/a·put | ||
1248 | dup·105·/i·put | ||
1249 | dup·108·/l·put | ||
1250 | dup·1 | 1250 | dup·121·/y·put |
1251 | dup·114·/r·put | ||
1252 | readonly·def | 1251 | readonly·def |
1253 | currentdict·end | 1252 | currentdict·end |
1254 | currentfile·eexec | 1253 | currentfile·eexec |
1255 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1254 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1256 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1255 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1257 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1256 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1258 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1257 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1433, 75 lines modified | Offset 1432, 75 lines modified | ||
1433 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1432 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1434 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1433 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1435 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1434 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1436 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1435 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1437 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1436 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1438 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1437 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1439 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1438 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1440 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1439 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1441 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1442 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1443 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1444 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1445 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1446 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1447 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1448 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1449 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1450 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1451 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1452 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1453 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1454 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1455 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1456 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1457 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1458 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1459 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1460 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1461 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1462 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1463 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1464 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1465 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1466 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1467 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1468 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1469 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1470 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1471 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1472 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1473 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1474 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1475 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1476 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1477 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1478 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1479 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1480 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1481 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1482 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1483 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1484 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1485 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1486 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1487 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1488 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1489 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1490 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1491 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1492 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1493 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1494 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1495 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1496 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1497 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1498 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1499 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1500 | 8B | 1440 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1441 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1442 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1443 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1444 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1445 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1446 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1447 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1448 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1449 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1450 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1451 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1452 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1453 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1454 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1455 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1456 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1457 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1458 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1459 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1460 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 7888/17732 bytes (44.48%) 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·May·15,·2026\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·····May·15,·2026··························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·May·15,·2026\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··May·15,·2026······················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·May·15,·2026\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·2026.05.15:0640 |
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 1409, 20 lines modified | Offset 1409, 19 lines modified | ||
1409 | /Encoding·256·array | 1409 | /Encoding·256·array |
1410 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1410 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1411 | dup·44·/comma·put | 1411 | dup·44·/comma·put |
1412 | dup·48·/zero·put | 1412 | dup·48·/zero·put |
1413 | dup·49·/one·put | 1413 | dup·49·/one·put |
1414 | dup·50·/two·put | 1414 | dup·50·/two·put |
1415 | dup·53·/five·put | 1415 | dup·53·/five·put |
1416 | dup·54·/six·put | ||
1416 | dup·58·/colon·put | 1417 | dup·58·/colon·put |
1417 | dup· | 1418 | dup·77·/M·put |
1419 | dup·97·/a·put | ||
1418 | dup·105·/i·put | ||
1419 | dup·108·/l·put | ||
1420 | dup·1 | 1420 | dup·121·/y·put |
1421 | dup·114·/r·put | ||
1422 | readonly·def | 1421 | readonly·def |
1423 | currentdict·end | 1422 | currentdict·end |
1424 | currentfile·eexec | 1423 | currentfile·eexec |
1425 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1424 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1426 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1425 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1427 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1426 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1428 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1427 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1603, 75 lines modified | Offset 1602, 75 lines modified | ||
1603 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1602 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1604 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1603 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1605 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1604 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1606 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1605 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1607 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1606 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1608 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1607 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1609 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1608 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1610 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1609 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1611 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1612 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1613 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1614 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1615 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1616 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1617 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1618 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1619 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1620 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1621 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1622 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1623 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1624 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1625 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1626 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1627 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1628 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1629 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1630 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1631 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1632 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1633 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1634 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1635 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1636 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1637 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1638 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1639 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1640 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1641 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1642 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1643 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1644 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1645 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1646 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1647 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1648 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1649 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1650 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1651 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1652 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1653 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1654 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1655 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1656 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1657 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1658 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1659 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1660 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1661 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1662 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1663 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1664 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1665 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1666 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1667 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1668 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1669 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1670 | 8B | 1610 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1611 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1612 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1613 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1614 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1615 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1616 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1617 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1618 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1619 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1620 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1621 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1622 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1623 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1624 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1625 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1626 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1627 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1628 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1629 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1630 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 8565/18409 bytes (46.53%) 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·May·15,·2026\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····May·15,·2026·························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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·2026.05.15:0640 |
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 2353, 20 lines modified | Offset 2353, 19 lines modified | ||
2353 | /Encoding·256·array | 2353 | /Encoding·256·array |
2354 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2354 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2355 | dup·44·/comma·put | 2355 | dup·44·/comma·put |
2356 | dup·48·/zero·put | 2356 | dup·48·/zero·put |
2357 | dup·49·/one·put | 2357 | dup·49·/one·put |
2358 | dup·50·/two·put | 2358 | dup·50·/two·put |
2359 | dup·53·/five·put | 2359 | dup·53·/five·put |
2360 | dup·54·/six·put | ||
2360 | dup·58·/colon·put | 2361 | dup·58·/colon·put |
2361 | dup· | 2362 | dup·77·/M·put |
2363 | dup·97·/a·put | ||
2362 | dup·105·/i·put | ||
2363 | dup·108·/l·put | ||
2364 | dup·1 | 2364 | dup·121·/y·put |
2365 | dup·114·/r·put | ||
2366 | readonly·def | 2365 | readonly·def |
2367 | currentdict·end | 2366 | currentdict·end |
2368 | currentfile·eexec | 2367 | currentfile·eexec |
2369 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2368 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2370 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2369 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2371 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2370 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2372 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2371 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2547, 75 lines modified | Offset 2546, 75 lines modified | ||
2547 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2546 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2548 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2547 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2549 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2548 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2550 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2549 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2551 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2550 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2552 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2551 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2553 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2552 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2554 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2553 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2555 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2556 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2557 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2558 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2559 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2560 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2561 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2562 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2563 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2564 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2565 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2566 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2567 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2568 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2569 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2570 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2571 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2572 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2573 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2574 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2575 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2576 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2577 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2578 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2579 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2580 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2581 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2582 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2583 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2584 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2585 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2586 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2587 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2588 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2589 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2590 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2591 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2592 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2593 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2594 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2595 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2596 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2597 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2598 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2599 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2600 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2601 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2602 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2603 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2604 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2605 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2606 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2607 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2608 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2609 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2610 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2611 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2612 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2613 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2614 | 8B | 2554 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2555 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2556 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2557 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2558 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2559 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2560 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2561 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2562 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2563 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2564 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2565 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2566 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2567 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2568 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2569 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2570 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2571 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2572 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2573 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2574 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 9872/19712 bytes (50.08%) 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·May·15,·2026\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··May·15,·2026························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·May·15,·2026\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··May·15,·2026························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·May·15,·2026\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··May·15,·2026························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·May·15,·2026\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·2026.05.15:0640 |
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 1624, 20 lines modified | Offset 1624, 19 lines modified | ||
1624 | /Encoding·256·array | 1624 | /Encoding·256·array |
1625 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1625 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1626 | dup·44·/comma·put | 1626 | dup·44·/comma·put |
1627 | dup·48·/zero·put | 1627 | dup·48·/zero·put |
1628 | dup·49·/one·put | 1628 | dup·49·/one·put |
1629 | dup·50·/two·put | 1629 | dup·50·/two·put |
1630 | dup·53·/five·put | 1630 | dup·53·/five·put |
1631 | dup·54·/six·put | ||
1631 | dup·58·/colon·put | 1632 | dup·58·/colon·put |
1632 | dup· | 1633 | dup·77·/M·put |
1634 | dup·97·/a·put | ||
1633 | dup·105·/i·put | ||
1634 | dup·108·/l·put | ||
1635 | dup·1 | 1635 | dup·121·/y·put |
1636 | dup·114·/r·put | ||
1637 | readonly·def | 1636 | readonly·def |
1638 | currentdict·end | 1637 | currentdict·end |
1639 | currentfile·eexec | 1638 | currentfile·eexec |
1640 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1639 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1641 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1640 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1642 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1641 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1643 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1642 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1818, 75 lines modified | Offset 1817, 75 lines modified | ||
1818 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1817 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1819 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1818 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1820 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1819 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1821 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1820 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1822 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1821 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1823 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1822 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1824 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1823 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1825 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1824 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1826 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1827 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1828 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1829 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1830 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1831 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1832 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1833 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1834 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1835 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1836 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1837 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1838 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1839 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1840 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1841 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1842 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1843 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1844 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1845 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1846 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1847 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1848 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1849 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1850 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1851 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1852 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1853 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1854 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1855 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1856 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1857 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1858 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1859 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1860 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1861 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1862 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1863 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1864 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1865 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1866 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1867 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1868 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1869 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1870 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1871 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1872 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1873 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1874 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1875 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1876 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1877 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1878 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1879 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1880 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1881 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1882 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1883 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1884 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1885 | 8B | 1825 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1826 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1827 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1828 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1829 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1830 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1831 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1832 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1833 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1834 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1835 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1836 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1837 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1838 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1839 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1840 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1841 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1842 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1843 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1844 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1845 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 10617/20463 bytes (51.88%) 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·May·15,·2026\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····May·15,·2026······························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·May·15,·2026\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··May·15,·2026·························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·May·15,·2026\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··May·15,·2026·························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·May·15,·2026\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·2026.05.15:0640 |
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 1722, 20 lines modified | Offset 1722, 19 lines modified | ||
1722 | /Encoding·256·array | 1722 | /Encoding·256·array |
1723 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1723 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1724 | dup·44·/comma·put | 1724 | dup·44·/comma·put |
1725 | dup·48·/zero·put | 1725 | dup·48·/zero·put |
1726 | dup·49·/one·put | 1726 | dup·49·/one·put |
1727 | dup·50·/two·put | 1727 | dup·50·/two·put |
1728 | dup·53·/five·put | 1728 | dup·53·/five·put |
1729 | dup·54·/six·put | ||
1729 | dup·58·/colon·put | 1730 | dup·58·/colon·put |
1730 | dup· | 1731 | dup·77·/M·put |
1732 | dup·97·/a·put | ||
1731 | dup·105·/i·put | ||
1732 | dup·108·/l·put | ||
1733 | dup·1 | 1733 | dup·121·/y·put |
1734 | dup·114·/r·put | ||
1735 | readonly·def | 1734 | readonly·def |
1736 | currentdict·end | 1735 | currentdict·end |
1737 | currentfile·eexec | 1736 | currentfile·eexec |
1738 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1737 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1739 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1738 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1740 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1739 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1741 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1740 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1916, 75 lines modified | Offset 1915, 75 lines modified | ||
1916 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1915 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1917 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1916 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1918 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1917 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1919 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1918 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1920 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1919 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1921 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1920 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1922 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1921 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1923 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1922 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1924 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1925 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1926 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1927 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1928 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1929 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1930 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1931 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1932 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1933 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1934 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1935 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1936 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1937 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1938 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1939 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1940 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1941 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1942 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1943 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1944 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1945 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1946 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1947 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1948 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1949 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1950 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1951 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1952 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1953 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1954 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1955 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1956 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1957 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1958 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1959 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1960 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1961 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1962 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1963 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1964 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1965 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1966 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1967 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1968 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1969 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1970 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1971 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1972 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1973 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1974 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1975 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1976 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1977 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1978 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1979 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1980 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1981 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1982 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1983 | 8B | 1923 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1924 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1925 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1926 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1927 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1928 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1929 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1930 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1931 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1932 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1933 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1934 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1935 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1936 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1937 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1938 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1939 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1940 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1941 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1942 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1943 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 5176/15019 bytes (34.46%) 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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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·2026.05.15:0640 |
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 1408, 20 lines modified | Offset 1408, 19 lines modified | ||
1408 | /Encoding·256·array | 1408 | /Encoding·256·array |
1409 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1409 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1410 | dup·44·/comma·put | 1410 | dup·44·/comma·put |
1411 | dup·48·/zero·put | 1411 | dup·48·/zero·put |
1412 | dup·49·/one·put | 1412 | dup·49·/one·put |
1413 | dup·50·/two·put | 1413 | dup·50·/two·put |
1414 | dup·53·/five·put | 1414 | dup·53·/five·put |
1415 | dup·54·/six·put | ||
1415 | dup·58·/colon·put | 1416 | dup·58·/colon·put |
1416 | dup· | 1417 | dup·77·/M·put |
1418 | dup·97·/a·put | ||
1417 | dup·105·/i·put | ||
1418 | dup·108·/l·put | ||
1419 | dup·1 | 1419 | dup·121·/y·put |
1420 | dup·114·/r·put | ||
1421 | readonly·def | 1420 | readonly·def |
1422 | currentdict·end | 1421 | currentdict·end |
1423 | currentfile·eexec | 1422 | currentfile·eexec |
1424 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1423 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1425 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1424 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1426 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1425 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1427 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1426 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1602, 75 lines modified | Offset 1601, 75 lines modified | ||
1602 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1601 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1603 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1602 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1604 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1603 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1605 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1604 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1606 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1605 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1607 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1606 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1608 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1607 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1609 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1608 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1610 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1611 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1612 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1613 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1614 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1615 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1616 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1617 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1618 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1619 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1620 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1621 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1622 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1623 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1624 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1625 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1626 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1627 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1628 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1629 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1630 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1631 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1632 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1633 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1634 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1635 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1636 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1637 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1638 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1639 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1640 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1641 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1642 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1643 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1644 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1645 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1646 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1647 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1648 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1649 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1650 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1651 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1652 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1653 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1654 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1655 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1656 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1657 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1658 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1659 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1660 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1661 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1662 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1663 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1664 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1665 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1666 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1667 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1668 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1669 | 8B | 1609 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1610 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1611 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1612 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1613 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1614 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1615 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1616 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1617 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1618 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1619 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1620 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1621 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1622 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1623 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1624 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1625 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1626 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1627 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1628 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1629 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 7490/17334 bytes (43.21%) 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·May·15,·2026\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··May·15,·2026······················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·May·15,·2026\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··May·15,·2026······················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·May·15,·2026\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·2026.05.15:0640 |
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 3608, 20 lines modified | Offset 3608, 19 lines modified | ||
3608 | /Encoding·256·array | 3608 | /Encoding·256·array |
3609 | 0·1·255·{1·index·exch·/.notdef·put}·for | 3609 | 0·1·255·{1·index·exch·/.notdef·put}·for |
3610 | dup·44·/comma·put | 3610 | dup·44·/comma·put |
3611 | dup·48·/zero·put | 3611 | dup·48·/zero·put |
3612 | dup·49·/one·put | 3612 | dup·49·/one·put |
3613 | dup·50·/two·put | 3613 | dup·50·/two·put |
3614 | dup·53·/five·put | 3614 | dup·53·/five·put |
3615 | dup·54·/six·put | ||
3615 | dup·58·/colon·put | 3616 | dup·58·/colon·put |
3616 | dup· | 3617 | dup·77·/M·put |
3618 | dup·97·/a·put | ||
3617 | dup·105·/i·put | ||
3618 | dup·108·/l·put | ||
3619 | dup·1 | 3619 | dup·121·/y·put |
3620 | dup·114·/r·put | ||
3621 | readonly·def | 3620 | readonly·def |
3622 | currentdict·end | 3621 | currentdict·end |
3623 | currentfile·eexec | 3622 | currentfile·eexec |
3624 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 3623 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
3625 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 3624 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
3626 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 3625 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
3627 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 3626 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 3802, 75 lines modified | Offset 3801, 75 lines modified | ||
3802 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 3801 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
3803 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 3802 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
3804 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 3803 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
3805 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 3804 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
3806 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 3805 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
3807 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 3806 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
3808 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 3807 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
3809 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 3808 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
3810 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
3811 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
3812 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
3813 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
3814 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
3815 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
3816 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
3817 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
3818 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
3819 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
3820 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
3821 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
3822 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
3823 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
3824 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
3825 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
3826 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
3827 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
3828 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
3829 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
3830 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
3831 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
3832 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
3833 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
3834 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
3835 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
3836 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
3837 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
3838 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
3839 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
3840 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
3841 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
3842 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
3843 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
3844 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
3845 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
3846 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
3847 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
3848 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
3849 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
3850 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
3851 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
3852 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
3853 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
3854 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
3855 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
3856 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
3857 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
3858 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
3859 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
3860 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
3861 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
3862 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
3863 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
3864 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
3865 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
3866 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
3867 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
3868 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
3869 | 8B | 3809 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
3810 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
3811 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
3812 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
3813 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
3814 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
3815 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
3816 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
3817 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
3818 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
3819 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
3820 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
3821 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
3822 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
3823 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
3824 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
3825 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
3826 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
3827 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
3828 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
3829 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 55233/65076 bytes (84.87%) 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·May·15,·2026\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·····May·15,·2026····························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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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·······May·15,·2026······························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; 30201/41325 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·2026.05.15:0640 |
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 1597, 20 lines modified | Offset 1597, 19 lines modified | ||
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·49·/one·put | 1601 | dup·49·/one·put |
1602 | dup·50·/two·put | 1602 | dup·50·/two·put |
1603 | dup·53·/five·put | 1603 | dup·53·/five·put |
1604 | dup·54·/six·put | ||
1604 | dup·58·/colon·put | 1605 | dup·58·/colon·put |
1605 | dup· | 1606 | dup·77·/M·put |
1607 | dup·97·/a·put | ||
1606 | dup·105·/i·put | ||
1607 | dup·108·/l·put | ||
1608 | dup·1 | 1608 | dup·121·/y·put |
1609 | dup·114·/r·put | ||
1610 | readonly·def | 1609 | readonly·def |
1611 | currentdict·end | 1610 | currentdict·end |
1612 | currentfile·eexec | 1611 | currentfile·eexec |
1613 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1612 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1614 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1613 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1615 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1614 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1616 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1615 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1791, 75 lines modified | Offset 1790, 75 lines modified | ||
1791 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1790 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1792 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1791 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1793 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1792 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1794 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1793 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1795 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1794 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1796 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1795 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1797 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1796 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1798 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1797 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1799 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1800 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1801 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1802 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1803 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1804 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1805 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1806 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1807 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1808 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1809 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1810 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1811 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1812 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1813 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1814 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1815 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1816 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1817 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1818 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1819 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1820 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1821 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1822 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1823 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1824 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1825 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1826 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1827 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1828 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1829 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1830 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1831 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1832 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1833 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1834 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1835 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1836 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1837 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1838 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1839 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1840 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1841 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1842 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1843 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1844 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1845 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1846 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1847 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1848 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1849 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1850 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1851 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1852 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1853 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1854 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1855 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1856 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1857 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1858 | 8B | 1798 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1799 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1800 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1801 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1802 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1803 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1804 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1805 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1806 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1807 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1808 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1809 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1810 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1811 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1812 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1813 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1814 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1815 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1816 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1817 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1818 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 67173/77016 bytes (87.22%) 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 | ·····························································May·15,·2026\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, 15 lines modified | Offset 55, 15 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 | ··································SPOOLES·2.2·Wrapper·Objects·:··· | 62 | ··································SPOOLES·2.2·Wrapper·Objects·:···May·15,·2026················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 | ················For·each·of·the·three·environments·—·serial,·multithreaded·and·MPI·—·the·SPOOLES·solver·has\xd | 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 |
Offset 91, 15 lines modified | Offset 91, 15 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 | ··································SPOOLES·2.2·Wrapper·Objects·:··· | 98 | ··································SPOOLES·2.2·Wrapper·Objects·:···May·15,·2026················5\xd |
99 | ················•·int·msglvl·:·message·level·for·output.·When·0,·no·output,·When·1,·just·statistics·and·cpu·times.\xd | 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 | ················•·FILE·*msgFile·:·message·file·for·output.·When·msglvl·>·0,·msgFile·must·not·be·NULL.\xd | 101 | ················•·FILE·*msgFile·:·message·file·for·output.·When·msglvl·>·0,·msgFile·must·not·be·NULL.\xd |
102 | ·············2.2····Prototypes·and·descriptions·of·Bridge·methods\xd | 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 | ····························InpMtx·*A,·InpMtx·*B,·int·*pseed,·int·*pmsglvl,·FILE·*msgFile·)·;\xd | 105 | ····························InpMtx·*A,·InpMtx·*B,·int·*pseed,·int·*pmsglvl,·FILE·*msgFile·)·;\xd |
Offset 131, 15 lines modified | Offset 131, 15 lines modified | ||
131 | ·····················The·frontETree·object·is·produced·and·placed·into·the·bridge·object.\xd | 131 | ·····················The·frontETree·object·is·produced·and·placed·into·the·bridge·object.\xd |
132 | ····················•·Old-to-new·and·new-to-old·permutations·are·extracted·from·the·front·tree·and·loaded·into·the\xd | 132 | ····················•·Old-to-new·and·new-to-old·permutations·are·extracted·from·the·front·tree·and·loaded·into·the\xd |
133 | ·····················Bridge·object.\xd | 133 | ·····················Bridge·object.\xd |
134 | ····················•·The·vertices·in·the·front·tree·are·permuted,·as·well·as·the·entries·in·A·and·B.·Entries·in·the·lower\xd | 134 | ····················•·The·vertices·in·the·front·tree·are·permuted,·as·well·as·the·entries·in·A·and·B.·Entries·in·the·lower\xd |
135 | ·····················triangle·of·A·and·B·are·mapped·into·the·upper·triangle,·and·the·storage·modes·of·A·and·B·are\xd | 135 | ·····················triangle·of·A·and·B·are·mapped·into·the·upper·triangle,·and·the·storage·modes·of·A·and·B·are\xd |
136 | ·····················changed·to·chevrons·and·vectors,·in·preparation·for·the·first·factorization.\xd | 136 | ·····················changed·to·chevrons·and·vectors,·in·preparation·for·the·first·factorization.\xd |
137 | ····················•·The·symbolic·factorization·is·then·computed·and·loaded·in·the·Bridge·object.\xd | 137 | ····················•·The·symbolic·factorization·is·then·computed·and·loaded·in·the·Bridge·object.\xd |
138 | ············································SPOOLES·2.2·Wrapper·Objects·:············ | 138 | ············································SPOOLES·2.2·Wrapper·Objects·:············May·15,·2026························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·2.2·Wrapper·Objects·:········· | 180 | ··········································SPOOLES·2.2·Wrapper·Objects·:··········May·15,·2026······················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 | ··································SPOOLES·2.2·Wrapper·Objects·:··· | 214 | ··································SPOOLES·2.2·Wrapper·Objects·:···May·15,·2026················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 |
250 | ··································SPOOLES·2.2·Wrapper·Objects·:·· | 250 | ··································SPOOLES·2.2·Wrapper·Objects·:···May·15,·2026···············10\xd |
251 | ················•·IV·*newToOldIV·:·object·that·stores·new-to-old·permutation·vector.\xd | 251 | ················•·IV·*newToOldIV·:·object·that·stores·new-to-old·permutation·vector.\xd |
252 | ················•·DenseMtx·*X·:·dense·matrix·object·that·is·used·during·the·matrix·multiples·and·solves.\xd | 252 | ················•·DenseMtx·*X·:·dense·matrix·object·that·is·used·during·the·matrix·multiples·and·solves.\xd |
253 | ················•·DenseMtx·*Y·:·dense·matrix·object·that·is·used·during·the·matrix·multiples·and·solves.\xd | 253 | ················•·DenseMtx·*Y·:·dense·matrix·object·that·is·used·during·the·matrix·multiples·and·solves.\xd |
254 | ················•·IV·*ownersIV·:·object·that·maps·fronts·to·owning·threads·for·the·factorization·and·matrix-multiplies.\xd | 254 | ················•·IV·*ownersIV·:·object·that·maps·fronts·to·owning·threads·for·the·factorization·and·matrix-multiplies.\xd |
255 | ················•·SolveMap·*solvemap·:·object·that·maps·factor·submatrices·to·owning·threads·for·the·solve.\xd | 255 | ················•·SolveMap·*solvemap·:·object·that·maps·factor·submatrices·to·owning·threads·for·the·solve.\xd |
256 | ················•·int·msglvl·:·message·level·for·output.·When·0,·no·output,·When·1,·just·statistics·and·cpu·times.\xd | 256 | ················•·int·msglvl·:·message·level·for·output.·When·0,·no·output,·When·1,·just·statistics·and·cpu·times.\xd |
257 | ·················When·greater·than·1,·more·and·more·output.\xd | 257 | ·················When·greater·than·1,·more·and·more·output.\xd |
Offset 281, 15 lines modified | Offset 281, 15 lines modified | ||
281 | ····················•·FILE·*pmsglvl—·msgFileis·the·message·file·for·the·bridge·methods·and·the·SPOOLES·meth-\xd | 281 | ····················•·FILE·*pmsglvl—·msgFileis·the·message·file·for·the·bridge·methods·and·the·SPOOLES·meth-\xd |
282 | ·····················ods·they·call.\xd | 282 | ·····················ods·they·call.\xd |
283 | ·················This·method·must·be·called·in·the·driver·program·prior·to·invoking·the·eigensolver·via·a·call·to\xd | 283 | ·················This·method·must·be·called·in·the·driver·program·prior·to·invoking·the·eigensolver·via·a·call·to\xd |
284 | ·················lanczos·run().·It·then·follows·this·sequence·of·action.\xd | 284 | ·················lanczos·run().·It·then·follows·this·sequence·of·action.\xd |
285 | ····················•·The·method·begins·by·checking·all·the·input·data,·and·setting·the·appropriate·fields·of·the\xd | 285 | ····················•·The·method·begins·by·checking·all·the·input·data,·and·setting·the·appropriate·fields·of·the\xd |
286 | ·····················BridgeMT·object.\xd | 286 | ·····················BridgeMT·object.\xd |
287 | ····················•·The·pencil·object·is·initialized·with·A·and·B.\xd | 287 | ····················•·The·pencil·object·is·initialized·with·A·and·B.\xd |
288 | ···········································SPOOLES·2.2·Wrapper·Objects·: | 288 | ············································SPOOLES·2.2·Wrapper·Objects·:···········May·15,·2026························11\xd |
289 | ·························•·A·and·B·are·converted·to·storage·by·rows·and·vector·mode.\xd | 289 | ·························•·A·and·B·are·converted·to·storage·by·rows·and·vector·mode.\xd |
290 | ·························•·A·Graph·object·is·created·that·contains·the·sparsity·pattern·of·the·union·of·A·and·B.\xd | 290 | ·························•·A·Graph·object·is·created·that·contains·the·sparsity·pattern·of·the·union·of·A·and·B.\xd |
291 | ·························•·The·graph·is·ordered·by·first·finding·a·recursive·dissection·partition,·and·then·evaluating·the\xd | 291 | ·························•·The·graph·is·ordered·by·first·finding·a·recursive·dissection·partition,·and·then·evaluating·the\xd |
292 | ···························orderings·produced·by·nested·dissection·and·multisection,·and·choosing·the·better·of·the·two.\xd | 292 | ···························orderings·produced·by·nested·dissection·and·multisection,·and·choosing·the·better·of·the·two.\xd |
293 | ···························The·frontETree·object·is·produced·and·placed·into·the·bridge·object.\xd | 293 | ···························The·frontETree·object·is·produced·and·placed·into·the·bridge·object.\xd |
294 | ·························•·Old-to-new·and·new-to-old·permutations·are·extracted·from·the·front·tree·and·loaded·into·the\xd | 294 | ·························•·Old-to-new·and·new-to-old·permutations·are·extracted·from·the·front·tree·and·loaded·into·the\xd |
295 | ···························BridgeMT·object.\xd | 295 | ···························BridgeMT·object.\xd |
Offset 326, 15 lines modified | Offset 326, 15 lines modified | ||
326 | ···························by·1/(∗ppvttol).\xd | 326 | ···························by·1/(∗ppvttol).\xd |
327 | ·························•·void·*data·—·a·pointer·to·the·BridgeMT·object.\xd | 327 | ·························•·void·*data·—·a·pointer·to·the·BridgeMT·object.\xd |
Max diff block lines reached; 27551/39944 bytes (68.97%) 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·2026.05.15:0640 |
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 1761, 20 lines modified | Offset 1761, 19 lines modified | ||
1761 | /Encoding·256·array | 1761 | /Encoding·256·array |
1762 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1762 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1763 | dup·44·/comma·put | 1763 | dup·44·/comma·put |
1764 | dup·48·/zero·put | 1764 | dup·48·/zero·put |
1765 | dup·49·/one·put | 1765 | dup·49·/one·put |
1766 | dup·50·/two·put | 1766 | dup·50·/two·put |
1767 | dup·53·/five·put | 1767 | dup·53·/five·put |
1768 | dup·54·/six·put | ||
1768 | dup·58·/colon·put | 1769 | dup·58·/colon·put |
1769 | dup· | 1770 | dup·77·/M·put |
1771 | dup·97·/a·put | ||
1770 | dup·105·/i·put | ||
1771 | dup·108·/l·put | ||
1772 | dup·1 | 1772 | dup·121·/y·put |
1773 | dup·114·/r·put | ||
1774 | readonly·def | 1773 | readonly·def |
1775 | currentdict·end | 1774 | currentdict·end |
1776 | currentfile·eexec | 1775 | currentfile·eexec |
1777 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1776 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1778 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1777 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1779 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1778 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1780 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1779 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1955, 75 lines modified | Offset 1954, 75 lines modified | ||
1955 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1954 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1956 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1955 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1957 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1956 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1958 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1957 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1959 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1958 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1960 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1959 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1961 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1960 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1962 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1961 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1963 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1964 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1965 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1966 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1967 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1968 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1969 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1970 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1971 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1972 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1973 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1974 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1975 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1976 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1977 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1978 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1979 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1980 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1981 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1982 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1983 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1984 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1985 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1986 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1987 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1988 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1989 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1990 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1991 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1992 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1993 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1994 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1995 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1996 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1997 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1998 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1999 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2000 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2001 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2002 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2003 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2004 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2005 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2006 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2007 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2008 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2009 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2010 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2011 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2012 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2013 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2014 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2015 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2016 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2017 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2018 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2019 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2020 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2021 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2022 | 8B | 1962 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1963 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1964 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1965 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1966 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1967 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1968 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1969 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1970 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1971 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1972 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1973 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1974 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1975 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1976 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1977 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1978 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1979 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1980 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1981 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1982 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 29949/39795 bytes (75.26%) 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·May·15,·2026\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···May·15,·2026·····················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·May·15,·2026\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···May·15,·2026·····················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·May·15,·2026\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···May·15,·2026·····················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·May·15,·2026\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···May·15,·2026·····················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; 19938/31193 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·2026.05.15:0640 |
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 3347, 30 lines modified | Offset 3347, 30 lines modified | ||
3347 | /Encoding·256·array | 3347 | /Encoding·256·array |
3348 | 0·1·255·{1·index·exch·/.notdef·put}·for | 3348 | 0·1·255·{1·index·exch·/.notdef·put}·for |
3349 | dup·44·/comma·put | 3349 | dup·44·/comma·put |
3350 | dup·48·/zero·put | 3350 | dup·48·/zero·put |
3351 | dup·49·/one·put | 3351 | dup·49·/one·put |
3352 | dup·50·/two·put | 3352 | dup·50·/two·put |
3353 | dup·53·/five·put | 3353 | dup·53·/five·put |
3354 | dup· | 3354 | dup·54·/six·put |
3355 | dup·70·/F·put | 3355 | dup·70·/F·put |
3356 | dup·77·/M·put | ||
3356 | dup·79·/O·put | 3357 | dup·79·/O·put |
3357 | dup·84·/T·put | 3358 | dup·84·/T·put |
3358 | dup·97·/a·put | 3359 | dup·97·/a·put |
3359 | dup·100·/d·put | 3360 | dup·100·/d·put |
3360 | dup·101·/e·put | 3361 | dup·101·/e·put |
3361 | dup·103·/g·put | 3362 | dup·103·/g·put |
3362 | dup·105·/i·put | 3363 | dup·105·/i·put |
3363 | dup·108·/l·put | ||
3364 | dup·110·/n·put | 3364 | dup·110·/n·put |
3365 | dup·111·/o·put | 3365 | dup·111·/o·put |
3366 | dup·112·/p·put | ||
3367 | dup·114·/r·put | 3366 | dup·114·/r·put |
3368 | dup·115·/s·put | 3367 | dup·115·/s·put |
3369 | dup·116·/t·put | 3368 | dup·116·/t·put |
3369 | dup·121·/y·put | ||
3370 | readonly·def | 3370 | readonly·def |
3371 | currentdict·end | 3371 | currentdict·end |
3372 | currentfile·eexec | 3372 | currentfile·eexec |
3373 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 3373 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
3374 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 3374 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
3375 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 3375 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
3376 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 3376 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 3572, 111 lines modified | Offset 3572, 115 lines modified | ||
3572 | 1DA779C965AD668C8C5FFCBD07A47E02070040A5885DF629FFD3A7E76D5F0AFB | 3572 | 1DA779C965AD668C8C5FFCBD07A47E02070040A5885DF629FFD3A7E76D5F0AFB |
3573 | 91FCB562AEEE089461296646262D0CA53DCCDEDE9A12AAFAC679D6F7DC8B56D0 | 3573 | 91FCB562AEEE089461296646262D0CA53DCCDEDE9A12AAFAC679D6F7DC8B56D0 |
3574 | 5BE898AE5E7B0CAD8627C449551A9482896F0A75D6329F11AC0936ED25638A94 | 3574 | 5BE898AE5E7B0CAD8627C449551A9482896F0A75D6329F11AC0936ED25638A94 |
3575 | DF47760F13DEBEA5A2DFF0403F5AC6B146DD50C1A01821E8CFB0D4111B28BAA4 | 3575 | DF47760F13DEBEA5A2DFF0403F5AC6B146DD50C1A01821E8CFB0D4111B28BAA4 |
3576 | 374D9BF83C8FBA323F33672425C90A5953B273F8155890AC3D1975B19A78EC5E | 3576 | 374D9BF83C8FBA323F33672425C90A5953B273F8155890AC3D1975B19A78EC5E |
3577 | 53A64F6A76CC3CFFF8ECF9A5FE88628411D3B7D38A9ED260FECEE13F0A44E749 | 3577 | 53A64F6A76CC3CFFF8ECF9A5FE88628411D3B7D38A9ED260FECEE13F0A44E749 |
3578 | 756243095CB7BD5F06F2A501E50CA836641E4C8739AB78EB71F6A9A132F159DA | 3578 | 756243095CB7BD5F06F2A501E50CA836641E4C8739AB78EB71F6A9A132F159DA |
3579 | A6A5E936F0D3226DE9FDE9FFCD7C7C03A65503A9DC20679C824A307FDF5269B4 | ||
3580 | 4DAA08B1B0C7FB96A1DBA884FBDE10BA7273A067CF31462069E84D07683E6602 | ||
3581 | 909595F79F97FE346AAFD31687732CEA3D93EA0DBA642394E0912A210D9414D3 | ||
3582 | EF6DC9DA5A39973748FDB5A555B4A6CAA8233A2926397EB6EB4139E745FAD575 | ||
3583 | AEF21D2CE70CFFA69DA75D5188D69F386562216E0C5D807E2B51C4368948AFA5 | ||
3584 | 9EB9BCFA94FEFDB62CC1A28C5F5F3E24D568CB58F3DF78EA4B79578BCBCE528B | ||
3585 | 36D5462CAAE11F75EBCFAE14005AEC62459332A2C7C724F2722FE40AD36207C2 | ||
3586 | BD8C4DDDEB0E2EBFBF22EE26DA128A72F7A1B275D78C0675EC3F4A56F07F8440 | ||
3587 | DAD3124F162C4DA8CA95C393A4BB66F40FD286D9D18B1614426F0B0FF0644101 | ||
3588 | 4F2B2934F673813972E1195A105C0DB706D5921C763A492577181F207C76A7F5 | ||
3589 | 0915FAA1F05AD5AE4AD27F11F2676F53AF83717EC6A43025416328D751A1140D | ||
3590 | F647AABB7AD5597AB8B2BE6DA2F3A362149071EF8BBAE48808CEAB9A16EEF858 | ||
3591 | FA8F0572D225130704BCD240BBEAE260D139F734AD522160527FE35339F56999 | ||
3592 | 06C9C6038A9897782CEFFBDAEA004C43002C61DE4A117B9233727C2A3793414F | ||
3593 | 26C5797EC86F2E06055B5AC0367ACF7ADA72C6937B2E94565CD869B1117334A4 | ||
3594 | 45669E583B5ACBB2BE30672E9E310BC8F6DD379A7F9F17574CFAE7E3B1E36BA8 | ||
3595 | EE5C3EFD5D3A4C0EEAC3649672F2AD42C811C6941BB8DDEFE50EFEDB079C8132 | ||
3596 | D14795E8E0FFA4E4A48C30F73A054B4BC5410A3BE12855143BDCEFDF98123786 | ||
3597 | ED353A0D031B03CACD352582C16E69D93D9923D0BA7292D07D2DCF2ACBC10947 | ||
3598 | 5692C76625BDFAF01E14E78404CE2E06C400D73059EF403A1D8EE1F23851494F | ||
3599 | D8AC16BE80B39C6126827B714BDB2CC96210DAE42208644F2FA4619C08543DF2 | ||
3600 | E4ECC4BD492732371EA2D8FECA71A112F69126A8DFBE2E661A3A1EF7BC3B53EB | ||
3601 | 158581B88439AD52EE69822A46FBBEE058E48495CD35F33D048DF04128F86348 | ||
3602 | FB551C01C20A8AB1473EB7DB60751F1348FF5F7D15131BEB5D98575587A1F43C | ||
3603 | 08EB5CF2D6062F1B002BEA065E62A83F74E9B3804401E80B6DA81AAC31C7439D | ||
3604 | B084067CE0AF5FB18EAC7B171B59C7EB92BB531A6F0C015BA53E9474A05284E9 | ||
3605 | ED07EAD23312813A0042E8C8E54249B2D354D414E9C4137203AA4D6836279BF7 | ||
3606 | 99BDAB950F2D114B5CB609940E6C7FD4548CC643349212B61CDAFB29F847D6D2 | ||
3607 | 160ED0ECB849528FB3D111E134E11976051F9B519AC275F03053A16189D7F0ED | ||
3608 | 0A8FE0348CBE40519DA22A5A9F0AF66B81BC59597CE5FE3452E3AA6B38BEEFD2 | ||
3609 | 901FA8047D509D26C305F06028A78D55257E58C63C428F0F5614A1AABE935992 | ||
3610 | 5604F09516BA36E0A4FBFAED1EF7583377F823A2C27472F8DBCBA20393C6AA1F | ||
3611 | FB44AF7A6AB37EC3A1408E16DA0BA6DAD1806A7ADAF35C6BB329F9D4C6F656AD | ||
3612 | BB1671DC319D7507CBB0F3E556015DE6D6B22B4B9329332B31A0F12898BAFBEF | ||
3613 | A50C7CBDE7869C4FE7F1BBEE8E3D70F5E73BE56AFA665992F6C125C39BE158BA | ||
3614 | 36757C517E953B07B991B03FC7832FCF48E0516C6FA719555E24F45CF5B8D153 | ||
3615 | 05513F300BA09CE34B8CDE4037CDC8F3D642AB724994B870AAAD736678328696 | ||
3616 | CF09E3EEA9CF45531B44A94BD14497ECB3A0A22AECD7982DF568E17A5DB4F1E9 | ||
3617 | B9870F56A55010E8A21489A0B22A5CF7408F7E2D69048768FB0D8B06BA6B3CC4 | ||
3618 | 848C28AA1F9E87FA4BDB073E6D81B3B5716F15F56247B14B479EA63CCC96F471 | ||
3619 | 91525BB63E86467BF0735B2AD7A229DD0AD375AB1C04F2169D27159327FB10D4 | ||
3620 | C8F913C999884024DCA8D6F715E051F2018FAF2E8CF3D8B6DE130027C8E28FE0 | ||
3621 | C1A116A427E4DB55B658A360A05EDB3F31D145C8E994AC839DB23DA772C98F5F | ||
3622 | DB0B4A17CE5F738E074E2A0235B71FCA5E929AC84A6603A7D737030ADBC295DC | ||
3623 | 2C8419DF5F7944E05AD10F4E2424D492C9C59A772FF2E422EB50A5AE39096BF9 | ||
3624 | 4531136976251032C7EB955788CEF4AD047DD14F480B5081BF27117C49253DA6 | ||
3625 | F27E70814E4E384616B974C77AB68663656B338C91B2707D015AD3D64C3D54B2 | ||
3626 | CFBEAAF1EC1EA49A42CD1F35B61CCC766D24B692C5A12CAFCCFC6372C8316E21 | ||
3627 | 57960A6C1CF559C515EF228F473B18BA9ADFC94AA827EC26CF384F38983565CD | ||
3628 | 385BC431EB2AE10251A3E16EB15C451C8955FBA53280AE42B88927FA894A63A3 | ||
3629 | 9B0D2F7D90BAD90C1239077F715D59B483F43447E4F75573F8D5A545653A6C9A | ||
3630 | C9E670005B24FADD41032F60669EF7438F23E0E8E4077A864FE10006717B000F | ||
3631 | D298AB9B4330C7A179275FB7EBF72B511FC99D553112B5DBD13A9F5F036DF8E0 | ||
3632 | 84331DDAE47E194B55C98287A8859FBEEAB4C75EB7B3A707A673B24170A02667 | ||
3633 | B57E6B8F70F5BE58CCC17822D74BA0E85DD0B3A689C0E71933D5E896F31AF75A | ||
3634 | 2537AF23C41ECA477080035508597CC8EC62E785084D736364B44F197338D569 | ||
3635 | 4D218B580BB982F69451B7AC276AFAA32419F4A2809DF482C44E47884E0C2BFE | ||
3636 | CA05DEF4434396D4FF481BAF79BF7AC7BD55DDC6EE09972BEAA321E38315D4E5 | ||
3637 | EED406BCD88DD228EEDF6A3FF44EF41CC7239D2BD80BB10433BAA2CF21FE9B65 | ||
3638 | C63BFAC6A53EBA12829EB9E74A92838A3D3256EF8C6272FCB9C0F0399EE4B196 | ||
3639 | 1BF9031910EBFAD5FD70D7445EED6EAA967E212D4127607B531BAC601C7E333E | ||
3640 | D6107D97D2CF9F00CAAF4EA539826CEA55DD5F56F5BC521E37CF86CF3CCD85F2 | ||
3641 | 9E4A4F05282EE4343114E8F1BE1A2D32DD28C3EAEF1D005E29A266A3D57C12AE | ||
3642 | 9619EB309B1F5BECE9115F90535CAA131781311200D538BC034E6BB8D13A24F2 | ||
3643 | 15869484E87D6772F4988B0F0AA6E59CDEF6739459F676D84DF4AC9AA5F110FA | ||
3644 | DA6D17383C82F84EA32B48F3B3EF634C63081E19F19B2C2AA6758D3CBEA551EF | ||
3645 | BDE8E7D45752356F6C8B6D454F58EA016A586610F6FF9046F008884F7653CAF0 | ||
3646 | C4E02E8FC9E569CD791B31148E126302A2945B1836CAB05642B94BA4CA86D474 | ||
3647 | 49001093A11A37D5804940D2C2422263071333165D47C2497D05831AC4F4C387 | ||
3648 | 74D8E09E743290AD3D1AF5B78F041A2F3E27074A6AB644B4E60C5A3DEEBCAE1A | ||
3649 | 3ADA92060E114C62B260CB91C49ED9945047BC68B648E2F41B6D0CA2DF5EDDC2 | ||
Max diff block lines reached; 51717/66747 bytes (77.48%) 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 | ·····························································May·15,·2026\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·············································May·15,·2026\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 | ·················May·15,·2026·························································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············································May·15,·2026\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 | ················May·15,·2026·······················································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··············································May·15,·2026\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 | ·····························May·15,·2026················································································································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············································May·15,·2026\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; 15060/28089 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·2026.05.15:0640 |
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 1791, 20 lines modified | Offset 1791, 19 lines modified | ||
1791 | /Encoding·256·array | 1791 | /Encoding·256·array |
1792 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1792 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1793 | dup·44·/comma·put | 1793 | dup·44·/comma·put |
1794 | dup·48·/zero·put | 1794 | dup·48·/zero·put |
1795 | dup·49·/one·put | 1795 | dup·49·/one·put |
1796 | dup·50·/two·put | 1796 | dup·50·/two·put |
1797 | dup·53·/five·put | 1797 | dup·53·/five·put |
1798 | dup·54·/six·put | ||
1798 | dup·58·/colon·put | 1799 | dup·58·/colon·put |
1799 | dup· | 1800 | dup·77·/M·put |
1801 | dup·97·/a·put | ||
1800 | dup·105·/i·put | ||
1801 | dup·108·/l·put | ||
1802 | dup·1 | 1802 | dup·121·/y·put |
1803 | dup·114·/r·put | ||
1804 | readonly·def | 1803 | readonly·def |
1805 | currentdict·end | 1804 | currentdict·end |
1806 | currentfile·eexec | 1805 | currentfile·eexec |
1807 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1806 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1808 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1807 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1809 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1808 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1810 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1809 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1985, 75 lines modified | Offset 1984, 75 lines modified | ||
1985 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1984 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1986 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1985 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1987 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1986 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1988 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1987 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1989 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1988 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1990 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1989 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1991 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1990 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1992 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1991 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1993 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1994 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1995 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1996 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1997 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1998 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1999 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2000 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2001 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2002 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2003 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2004 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2005 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2006 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2007 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2008 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2009 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2010 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2011 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2012 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2013 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2014 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2015 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2016 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2017 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2018 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2019 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2020 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2021 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2022 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2023 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2024 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2025 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2026 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2027 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2028 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2029 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2030 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2031 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2032 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2033 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2034 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2035 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2036 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2037 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2038 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2039 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2040 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2041 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2042 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2043 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2044 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2045 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2046 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2047 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2048 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2049 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2050 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2051 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2052 | 8B | 1992 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1993 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1994 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1995 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1996 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1997 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1998 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1999 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2000 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2001 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2002 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2003 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2004 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2005 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2006 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2007 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2008 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2009 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2010 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2011 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2012 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 17589/27432 bytes (64.12%) 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·May·15,·2026\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·····May·15,·2026····························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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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; 6475/17498 bytes (37.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·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·2026.05.15:0640 |
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, 20 lines modified | Offset 1205, 19 lines modified | ||
1205 | /Encoding·256·array | 1205 | /Encoding·256·array |
1206 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1206 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1207 | dup·44·/comma·put | 1207 | dup·44·/comma·put |
1208 | dup·48·/zero·put | 1208 | dup·48·/zero·put |
1209 | dup·49·/one·put | 1209 | dup·49·/one·put |
1210 | dup·50·/two·put | 1210 | dup·50·/two·put |
1211 | dup·53·/five·put | 1211 | dup·53·/five·put |
1212 | dup·54·/six·put | ||
1212 | dup·58·/colon·put | 1213 | dup·58·/colon·put |
1213 | dup· | 1214 | dup·77·/M·put |
1215 | dup·97·/a·put | ||
1214 | dup·105·/i·put | ||
1215 | dup·108·/l·put | ||
1216 | dup·1 | 1216 | dup·121·/y·put |
1217 | dup·114·/r·put | ||
1218 | readonly·def | 1217 | readonly·def |
1219 | currentdict·end | 1218 | currentdict·end |
1220 | currentfile·eexec | 1219 | currentfile·eexec |
1221 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1220 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1222 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1221 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1223 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1222 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1224 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1223 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1399, 75 lines modified | Offset 1398, 75 lines modified | ||
1399 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1398 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1400 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1399 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1401 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1400 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1402 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1401 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1403 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1402 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1404 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1403 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1405 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1404 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1406 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1405 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1407 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1408 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1409 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1410 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1411 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1412 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1413 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1414 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1415 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1416 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1417 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1418 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1419 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1420 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1421 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1422 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1423 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1424 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1425 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1426 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1427 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1428 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1429 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1430 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1431 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1432 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1433 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1434 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1435 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1436 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1437 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1438 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1439 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1440 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1441 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1442 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1443 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1444 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1445 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1446 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1447 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1448 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1449 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1450 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1451 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1452 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1453 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1454 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1455 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1456 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1457 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1458 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1459 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1460 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1461 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1462 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1463 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1464 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1465 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1466 | 8B | 1406 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1407 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1408 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1409 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1410 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1411 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1412 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1413 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1414 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1415 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1416 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1417 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1418 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1419 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1420 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1421 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1422 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1423 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1424 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1425 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1426 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 17150/26993 bytes (63.53%) 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·May·15,·2026\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·······May·15,·2026······························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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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·····May·15,·2026···························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; 4211/15719 bytes (26.79%) 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·2026.05.15:0640 |
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 2426, 20 lines modified | Offset 2426, 19 lines modified | ||
2426 | /Encoding·256·array | 2426 | /Encoding·256·array |
2427 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2427 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2428 | dup·44·/comma·put | 2428 | dup·44·/comma·put |
2429 | dup·48·/zero·put | 2429 | dup·48·/zero·put |
2430 | dup·49·/one·put | 2430 | dup·49·/one·put |
2431 | dup·50·/two·put | 2431 | dup·50·/two·put |
2432 | dup·53·/five·put | 2432 | dup·53·/five·put |
2433 | dup·54·/six·put | ||
2433 | dup·58·/colon·put | 2434 | dup·58·/colon·put |
2434 | dup· | 2435 | dup·77·/M·put |
2436 | dup·97·/a·put | ||
2435 | dup·105·/i·put | ||
2436 | dup·108·/l·put | ||
2437 | dup·1 | 2437 | dup·121·/y·put |
2438 | dup·114·/r·put | ||
2439 | readonly·def | 2438 | readonly·def |
2440 | currentdict·end | 2439 | currentdict·end |
2441 | currentfile·eexec | 2440 | currentfile·eexec |
2442 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2441 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2443 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2442 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2444 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2443 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2445 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2444 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2620, 75 lines modified | Offset 2619, 75 lines modified | ||
2620 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2619 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2621 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2620 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2622 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2621 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2623 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2622 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2624 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2623 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2625 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2624 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2626 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2625 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2627 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2626 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2628 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2629 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2630 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2631 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2632 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2633 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2634 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2635 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2636 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2637 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2638 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2639 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2640 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2641 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2642 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2643 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2644 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2645 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2646 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2647 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2648 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2649 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2650 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2651 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2652 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2653 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2654 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2655 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2656 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2657 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2658 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2659 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2660 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2661 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2662 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2663 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2664 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2665 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2666 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2667 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2668 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2669 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2670 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2671 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2672 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2673 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2674 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2675 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2676 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2677 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2678 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2679 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2680 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2681 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2682 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2683 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2684 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2685 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2686 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2687 | 8B | 2627 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2628 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2629 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2630 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2631 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2632 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2633 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2634 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2635 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2636 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2637 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2638 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2639 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2640 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2641 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2642 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2643 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2644 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2645 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2646 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2647 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 5746/15591 bytes (36.85%) 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·May·15,·2026\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········May·15,·2026······························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·May·15,·2026\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·2026.05.15:0640 |
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 1279, 20 lines modified | Offset 1279, 19 lines modified | ||
1279 | /Encoding·256·array | 1279 | /Encoding·256·array |
1280 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1280 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1281 | dup·44·/comma·put | 1281 | dup·44·/comma·put |
1282 | dup·48·/zero·put | 1282 | dup·48·/zero·put |
1283 | dup·49·/one·put | 1283 | dup·49·/one·put |
1284 | dup·50·/two·put | 1284 | dup·50·/two·put |
1285 | dup·53·/five·put | 1285 | dup·53·/five·put |
1286 | dup·54·/six·put | ||
1286 | dup·58·/colon·put | 1287 | dup·58·/colon·put |
1287 | dup· | 1288 | dup·77·/M·put |
1289 | dup·97·/a·put | ||
1288 | dup·105·/i·put | ||
1289 | dup·108·/l·put | ||
1290 | dup·1 | 1290 | dup·121·/y·put |
1291 | dup·114·/r·put | ||
1292 | readonly·def | 1291 | readonly·def |
1293 | currentdict·end | 1292 | currentdict·end |
1294 | currentfile·eexec | 1293 | currentfile·eexec |
1295 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1294 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1296 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1295 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1297 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1296 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1298 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1297 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1473, 75 lines modified | Offset 1472, 75 lines modified | ||
1473 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1472 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1474 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1473 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1475 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1474 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1476 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1475 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1477 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1476 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1478 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1477 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1479 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1478 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1480 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1479 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1481 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1482 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1483 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1484 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1485 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1486 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1487 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1488 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1489 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1490 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1491 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1492 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1493 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1494 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1495 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1496 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1497 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1498 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1499 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1500 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1501 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1502 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1503 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1504 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1505 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1506 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1507 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1508 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1509 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1510 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1511 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1512 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1513 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1514 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1515 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1516 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1517 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1518 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1519 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1520 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1521 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1522 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1523 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1524 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1525 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1526 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1527 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1528 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1529 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1530 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1531 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1532 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1533 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1534 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1535 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1536 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1537 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1538 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1539 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1540 | 8B | 1480 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1481 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1482 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1483 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1484 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1485 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1486 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1487 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1488 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1489 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1490 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1491 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1492 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1493 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1494 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1495 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1496 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1497 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1498 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1499 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1500 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 3866/13710 bytes (28.20%) 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·May·15,·2026\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··May·15,·2026······················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·2026.05.15:0640 |
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 1611, 20 lines modified | Offset 1611, 19 lines modified | ||
1611 | /Encoding·256·array | 1611 | /Encoding·256·array |
1612 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1612 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1613 | dup·44·/comma·put | 1613 | dup·44·/comma·put |
1614 | dup·48·/zero·put | 1614 | dup·48·/zero·put |
1615 | dup·49·/one·put | 1615 | dup·49·/one·put |
1616 | dup·50·/two·put | 1616 | dup·50·/two·put |
1617 | dup·53·/five·put | 1617 | dup·53·/five·put |
1618 | dup·54·/six·put | ||
1618 | dup·58·/colon·put | 1619 | dup·58·/colon·put |
1619 | dup· | 1620 | dup·77·/M·put |
1621 | dup·97·/a·put | ||
1620 | dup·105·/i·put | ||
1621 | dup·108·/l·put | ||
1622 | dup·1 | 1622 | dup·121·/y·put |
1623 | dup·114·/r·put | ||
1624 | readonly·def | 1623 | readonly·def |
1625 | currentdict·end | 1624 | currentdict·end |
1626 | currentfile·eexec | 1625 | currentfile·eexec |
1627 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1626 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1628 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1627 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1629 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1628 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1630 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1629 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1805, 75 lines modified | Offset 1804, 75 lines modified | ||
1805 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1804 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1806 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1805 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1807 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1806 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1808 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1807 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1809 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1808 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1810 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1809 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1811 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1810 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1812 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1811 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1813 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1814 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1815 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1816 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1817 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1818 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1819 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1820 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1821 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1822 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1823 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1824 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1825 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1826 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1827 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1828 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1829 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1830 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1831 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1832 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1833 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1834 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1835 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1836 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1837 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1838 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1839 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1840 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1841 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1842 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1843 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1844 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1845 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1846 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1847 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1848 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1849 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1850 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1851 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1852 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1853 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1854 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1855 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1856 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1857 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1858 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1859 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1860 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1861 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1862 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1863 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1864 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1865 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1866 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1867 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1868 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1869 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1870 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1871 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1872 | 8B | 1812 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1813 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1814 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1815 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1816 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1817 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1818 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1819 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1820 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1821 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1822 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1823 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1824 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1825 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1826 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1827 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1828 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1829 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1830 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1831 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1832 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 11269/21109 bytes (53.38%) 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·May·15,·2026\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··May·15,·2026························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·May·15,·2026\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··May·15,·2026························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·May·15,·2026\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··May·15,·2026························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·May·15,·2026\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··May·15,·2026························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/10843 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·2026.05.15:0640 |
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 1858, 20 lines modified | Offset 1858, 19 lines modified | ||
1858 | /Encoding·256·array | 1858 | /Encoding·256·array |
1859 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1859 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1860 | dup·44·/comma·put | 1860 | dup·44·/comma·put |
1861 | dup·48·/zero·put | 1861 | dup·48·/zero·put |
1862 | dup·49·/one·put | 1862 | dup·49·/one·put |
1863 | dup·50·/two·put | 1863 | dup·50·/two·put |
1864 | dup·53·/five·put | 1864 | dup·53·/five·put |
1865 | dup·54·/six·put | ||
1865 | dup·58·/colon·put | 1866 | dup·58·/colon·put |
1866 | dup· | 1867 | dup·77·/M·put |
1868 | dup·97·/a·put | ||
1867 | dup·105·/i·put | ||
1868 | dup·108·/l·put | ||
1869 | dup·1 | 1869 | dup·121·/y·put |
1870 | dup·114·/r·put | ||
1871 | readonly·def | 1870 | readonly·def |
1872 | currentdict·end | 1871 | currentdict·end |
1873 | currentfile·eexec | 1872 | currentfile·eexec |
1874 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1873 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1875 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1874 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1876 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1875 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1877 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1876 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2052, 75 lines modified | Offset 2051, 75 lines modified | ||
2052 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2051 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2053 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2052 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2054 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2053 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2055 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2054 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2056 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2055 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2057 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2056 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2058 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2057 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2059 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2058 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2060 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2061 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2062 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2063 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2064 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2065 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2066 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2067 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2068 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2069 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2070 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2071 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2072 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2073 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2074 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2075 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2076 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2077 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2078 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2079 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2080 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2081 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2082 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2083 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2084 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2085 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2086 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2087 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2088 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2089 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2090 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2091 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2092 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2093 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2094 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2095 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2096 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2097 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2098 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2099 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2100 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2101 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2102 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2103 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2104 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2105 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2106 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2107 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2108 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2109 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2110 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2111 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2112 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2113 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2114 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2115 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2116 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2117 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2118 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2119 | 8B | 2059 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2060 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2061 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2062 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2063 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2064 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2065 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2066 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2067 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2068 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2069 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2070 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2071 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2072 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2073 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2074 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2075 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2076 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2077 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2078 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2079 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 12188/22029 bytes (55.33%) 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·May·15,·2026\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··May·15,·2026·······················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·May·15,·2026\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··May·15,·2026·······················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·May·15,·2026\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··May·15,·2026·······················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·May·15,·2026\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·····May·15,·2026·····························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; 1316/12049 bytes (10.92%) 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·2026.05.15:0640 |
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 1258, 20 lines modified | Offset 1258, 19 lines modified | ||
1258 | /Encoding·256·array | 1258 | /Encoding·256·array |
1259 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1259 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1260 | dup·44·/comma·put | 1260 | dup·44·/comma·put |
1261 | dup·48·/zero·put | 1261 | dup·48·/zero·put |
1262 | dup·49·/one·put | 1262 | dup·49·/one·put |
1263 | dup·50·/two·put | 1263 | dup·50·/two·put |
1264 | dup·53·/five·put | 1264 | dup·53·/five·put |
1265 | dup·54·/six·put | ||
1265 | dup·58·/colon·put | 1266 | dup·58·/colon·put |
1266 | dup· | 1267 | dup·77·/M·put |
1268 | dup·97·/a·put | ||
1267 | dup·105·/i·put | ||
1268 | dup·108·/l·put | ||
1269 | dup·1 | 1269 | dup·121·/y·put |
1270 | dup·114·/r·put | ||
1271 | readonly·def | 1270 | readonly·def |
1272 | currentdict·end | 1271 | currentdict·end |
1273 | currentfile·eexec | 1272 | currentfile·eexec |
1274 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1273 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1275 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1274 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1276 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1275 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1277 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1276 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1452, 75 lines modified | Offset 1451, 75 lines modified | ||
1452 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1451 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1453 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1452 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1454 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1453 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1455 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1454 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1456 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1455 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1457 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1456 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1458 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1457 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1459 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1458 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1460 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1461 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1462 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1463 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1464 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1465 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1466 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1467 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1468 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1469 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1470 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1471 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1472 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1473 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1474 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1475 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1476 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1477 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1478 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1479 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1480 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1481 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1482 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1483 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1484 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1485 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1486 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1487 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1488 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1489 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1490 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1491 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1492 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1493 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1494 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1495 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1496 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1497 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1498 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1499 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1500 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1501 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1502 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1503 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1504 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1505 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1506 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1507 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1508 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1509 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1510 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1511 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1512 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1513 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1514 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1515 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1516 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1517 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1518 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1519 | 8B | 1459 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1460 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1461 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1462 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1463 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1464 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1465 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1466 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1467 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1468 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1469 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1470 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1471 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1472 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1473 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1474 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1475 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1476 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1477 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1478 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1479 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 5016/14858 bytes (33.76%) 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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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·2026.05.15:0640 |
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 2765, 20 lines modified | Offset 2765, 19 lines modified | ||
2765 | /Encoding·256·array | 2765 | /Encoding·256·array |
2766 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2766 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2767 | dup·44·/comma·put | 2767 | dup·44·/comma·put |
2768 | dup·48·/zero·put | 2768 | dup·48·/zero·put |
2769 | dup·49·/one·put | 2769 | dup·49·/one·put |
2770 | dup·50·/two·put | 2770 | dup·50·/two·put |
2771 | dup·53·/five·put | 2771 | dup·53·/five·put |
2772 | dup·54·/six·put | ||
2772 | dup·58·/colon·put | 2773 | dup·58·/colon·put |
2773 | dup· | 2774 | dup·77·/M·put |
2775 | dup·97·/a·put | ||
2774 | dup·105·/i·put | ||
2775 | dup·108·/l·put | ||
2776 | dup·1 | 2776 | dup·121·/y·put |
2777 | dup·114·/r·put | ||
2778 | readonly·def | 2777 | readonly·def |
2779 | currentdict·end | 2778 | currentdict·end |
2780 | currentfile·eexec | 2779 | currentfile·eexec |
2781 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2780 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2782 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2781 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2783 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2782 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2784 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2783 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2959, 75 lines modified | Offset 2958, 75 lines modified | ||
2959 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2958 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2960 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2959 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2961 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2960 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2962 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2961 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2963 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2962 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2964 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2963 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2965 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2964 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2966 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2965 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2967 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2968 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2969 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2970 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2971 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2972 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2973 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2974 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2975 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2976 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2977 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2978 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2979 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2980 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2981 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2982 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2983 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2984 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2985 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2986 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2987 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2988 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2989 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2990 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2991 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2992 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2993 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2994 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2995 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2996 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2997 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2998 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2999 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
3000 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
3001 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
3002 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
3003 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
3004 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
3005 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
3006 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
3007 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
3008 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
3009 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
3010 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
3011 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
3012 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
3013 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
3014 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
3015 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
3016 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
3017 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
3018 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
3019 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
3020 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
3021 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
3022 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
3023 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
3024 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
3025 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
3026 | 8B | 2966 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2967 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2968 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2969 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2970 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2971 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2972 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2973 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2974 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2975 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2976 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2977 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2978 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2979 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2980 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2981 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2982 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2983 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2984 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2985 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2986 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 29728/39572 bytes (75.12%) 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·May·15,·2026\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··May·15,·2026··························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·May·15,·2026\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··May·15,·2026··························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·May·15,·2026\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··May·15,·2026··························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·May·15,·2026\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····May·15,·2026···························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; 22714/34076 bytes (66.66%) 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·2026.05.15:0640 |
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 2993, 20 lines modified | Offset 2993, 19 lines modified | ||
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·49·/one·put | 2997 | dup·49·/one·put |
2998 | dup·50·/two·put | 2998 | dup·50·/two·put |
2999 | dup·53·/five·put | 2999 | dup·53·/five·put |
3000 | dup·54·/six·put | ||
3000 | dup·58·/colon·put | 3001 | dup·58·/colon·put |
3001 | dup· | 3002 | dup·77·/M·put |
3003 | dup·97·/a·put | ||
3002 | dup·105·/i·put | ||
3003 | dup·108·/l·put | ||
3004 | dup·1 | 3004 | dup·121·/y·put |
3005 | dup·114·/r·put | ||
3006 | readonly·def | 3005 | readonly·def |
3007 | currentdict·end | 3006 | currentdict·end |
3008 | currentfile·eexec | 3007 | currentfile·eexec |
3009 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 3008 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
3010 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 3009 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
3011 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 3010 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
3012 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 3011 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 3187, 75 lines modified | Offset 3186, 75 lines modified | ||
3187 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 3186 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
3188 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 3187 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
3189 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 3188 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
3190 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 3189 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
3191 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 3190 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
3192 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 3191 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
3193 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 3192 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
3194 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 3193 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
3195 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
3196 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
3197 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
3198 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
3199 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
3200 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
3201 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
3202 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
3203 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
3204 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
3205 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
3206 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
3207 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
3208 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
3209 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
3210 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
3211 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
3212 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
3213 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
3214 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
3215 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
3216 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
3217 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
3218 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
3219 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
3220 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
3221 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
3222 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
3223 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
3224 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
3225 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
3226 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
3227 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
3228 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
3229 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
3230 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
3231 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
3232 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
3233 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
3234 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
3235 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
3236 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
3237 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
3238 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
3239 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
3240 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
3241 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
3242 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
3243 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
3244 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
3245 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
3246 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
3247 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
3248 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
3249 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
3250 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
3251 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
3252 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
3253 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
3254 | 8B | 3194 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
3195 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
3196 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
3197 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
3198 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
3199 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
3200 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
3201 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
3202 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
3203 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
3204 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
3205 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
3206 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
3207 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
3208 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
3209 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
3210 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
3211 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
3212 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
3213 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
3214 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 86349/96193 bytes (89.77%) 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 | ··························································May·15,·2026\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·2.2·Wrapper·Objects·:·················· | 58 | ···················································SPOOLES·2.2·Wrapper·Objects·:··················May·15,·2026······························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, 15 lines modified | Offset 104, 15 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 | ··································SPOOLES·2.2·Wrapper·Objects·:··· | 111 | ··································SPOOLES·2.2·Wrapper·Objects·:···May·15,·2026················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 | ················ThewrappermethodsdescribedinthispaperdonotexerciseallthefunctionalityoftheMPIenvironment.\xd | 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 | ················•·generate·a·graph·of·the·matrix,\xd | 118 | ················•·generate·a·graph·of·the·matrix,\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·2.2·Wrapper·Objects·: | 157 | ········································SPOOLES·2.2·Wrapper·Objects·:·······May·15,·2026·····················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·2.2·Wrapper·Objects·:···· | 199 | ····································SPOOLES·2.2·Wrapper·Objects·:····May·15,·2026·················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, 15 lines modified | Offset 238, 15 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 | ··································SPOOLES·2.2·Wrapper·Objects·:··· | 245 | ··································SPOOLES·2.2·Wrapper·Objects·:···May·15,·2026················8\xd |
246 | ·····················entries[count]·=·-1.0·;\xd | 246 | ·····················entries[count]·=·-1.0·;\xd |
247 | ·····················count++·;\xd | 247 | ·····················count++·;\xd |
248 | ···················}\xd | 248 | ···················}\xd |
249 | ···················InpMtx_inputRealRow(mtxA,·ij,·count,·indices,·entries)·;\xd | 249 | ···················InpMtx_inputRealRow(mtxA,·ij,·count,·indices,·entries)·;\xd |
250 | ················}\xd | 250 | ················}\xd |
251 | ·············}\xd | 251 | ·············}\xd |
252 | ·············InpMtx_changeStorageMode(mtxA,·INPMTX_BY_VECTORS)·;\xd | 252 | ·············InpMtx_changeStorageMode(mtxA,·INPMTX_BY_VECTORS)·;\xd |
Offset 279, 15 lines modified | Offset 279, 15 lines modified | ||
279 | ·············0,1,...,ncol−1.·The·entries·are·not·initialized.·Zero·the·entries·with·a·call·to·DenseMtx·zero().·(This·is\xd | 279 | ·············0,1,...,ncol−1.·The·entries·are·not·initialized.·Zero·the·entries·with·a·call·to·DenseMtx·zero().·(This·is\xd |
280 | ·············crucial·when·loading·a·sparse·right·hand·side·into·the·DenseMtx·object.)\xd | 280 | ·············crucial·when·loading·a·sparse·right·hand·side·into·the·DenseMtx·object.)\xd |
281 | ················Once·we·have·the·DenseMtx·object·initialized,·we·want·to·be·able·to·access·the·row·indices,·the·column\xd | 281 | ················Once·we·have·the·DenseMtx·object·initialized,·we·want·to·be·able·to·access·the·row·indices,·the·column\xd |
282 | ·············indices·and·the·entries.·We·do·this·through·instance·methods.\xd | 282 | ·············indices·and·the·entries.·We·do·this·through·instance·methods.\xd |
283 | ·············void·DenseMtx_rowIndices·(·DenseMtx·*mtx,·int·*pnrow,·int·*prowind·)·;\xd | 283 | ·············void·DenseMtx_rowIndices·(·DenseMtx·*mtx,·int·*pnrow,·int·*prowind·)·;\xd |
284 | ·············void·DenseMtx_columnIndices·(·DenseMtx·*mtx,·int·*pncol,·int·*pcolind·)·;\xd | 284 | ·············void·DenseMtx_columnIndices·(·DenseMtx·*mtx,·int·*pncol,·int·*pcolind·)·;\xd |
285 | ·············double·*·DenseMtx_entries·(·DenseMtx·*mtx·)·;\xd | 285 | ·············double·*·DenseMtx_entries·(·DenseMtx·*mtx·)·;\xd |
286 | ··································SPOOLES·2.2·Wrapper·Objects·:··· | 286 | ··································SPOOLES·2.2·Wrapper·Objects·:···May·15,·2026················9\xd |
287 | ·············Wewould·use·them·as·follows.\xd | 287 | ·············Wewould·use·them·as·follows.\xd |
288 | ·············double··*entries·;\xd | 288 | ·············double··*entries·;\xd |
289 | ·············int·····ncol,·nrow,·*colind,·*rowind·;\xd | 289 | ·············int·····ncol,·nrow,·*colind,·*rowind·;\xd |
290 | ·············DenseMtx_rowIndices(mtx,·&nrow,·&rowind)·;\xd | 290 | ·············DenseMtx_rowIndices(mtx,·&nrow,·&rowind)·;\xd |
291 | ·············DenseMtx_columnIndices(mtx,·&ncol,·&colind)·;\xd | 291 | ·············DenseMtx_columnIndices(mtx,·&ncol,·&colind)·;\xd |
292 | ·············entries·=·DenseMtx_entries(mtx)·;\xd | 292 | ·············entries·=·DenseMtx_entries(mtx)·;\xd |
293 | ·············We·can·now·fill·the·indices·or·the·entries.·The·location·of·the·(irow,jcol)·entry·is·found·at·offset·=\xd | 293 | ·············We·can·now·fill·the·indices·or·the·entries.·The·location·of·the·(irow,jcol)·entry·is·found·at·offset·=\xd |
Offset 317, 15 lines modified | Offset 317, 15 lines modified | ||
317 | ·············The·three·driver·programs·that·we·describe·in·the·next·sections·read·A·and·Y·from·files·and·write·X·to·a\xd | 317 | ·············The·three·driver·programs·that·we·describe·in·the·next·sections·read·A·and·Y·from·files·and·write·X·to·a\xd |
318 | ·············file.·So·the·first·thing·we·know·is·that·the·InpMtx·and·DenseMtx·objects·can·read·and·write·themselves·from\xd | 318 | ·············file.·So·the·first·thing·we·know·is·that·the·InpMtx·and·DenseMtx·objects·can·read·and·write·themselves·from\xd |
319 | ·············and·to·files.·This·convention·is·supported·by·most·of·the·objects·in·the·SPOOLES·library.·In·fact,·there\xd | 319 | ·············and·to·files.·This·convention·is·supported·by·most·of·the·objects·in·the·SPOOLES·library.·In·fact,·there\xd |
320 | ·············is·a·common·protocol·that·is·followed.·Let·us·take·a·look·at·the·common·IO·methods·for·the·InpMtx.\xd | 320 | ·············is·a·common·protocol·that·is·followed.·Let·us·take·a·look·at·the·common·IO·methods·for·the·InpMtx.\xd |
321 | ················•·int·InpMtx·readFromFile·(·InpMtx·*obj,·char·*filename·)·;\xd | 321 | ················•·int·InpMtx·readFromFile·(·InpMtx·*obj,·char·*filename·)·;\xd |
322 | ················•·int·InpMtx·readFromFormattedFile·(·InpMtx·*obj,·FILE·*fp·)·;\xd | 322 | ················•·int·InpMtx·readFromFormattedFile·(·InpMtx·*obj,·FILE·*fp·)·;\xd |
323 | ················•·int·InpMtx·readFromBinaryFile·(·InpMtx·*obj,·FILE·*fp·)·;\xd | 323 | ················•·int·InpMtx·readFromBinaryFile·(·InpMtx·*obj,·FILE·*fp·)·;\xd |
324 | ··································SPOOLES·2.2·Wrapper·Objects·:·· | 324 | ··································SPOOLES·2.2·Wrapper·Objects·:···May·15,·2026···············10\xd |
325 | ················•·int·InpMtx·writeToFile·(·InpMtx·*obj,·char·*filename·)·;\xd | 325 | ················•·int·InpMtx·writeToFile·(·InpMtx·*obj,·char·*filename·)·;\xd |
326 | ················•·int·InpMtx·writeToFormattedFile·(·InpMtx·*obj,·FILE·*fp·)·;\xd | 326 | ················•·int·InpMtx·writeToFormattedFile·(·InpMtx·*obj,·FILE·*fp·)·;\xd |
327 | ················•·int·InpMtx·writeToBinaryFile·(·InpMtx·*obj,·FILE·*fp·)·;\xd | 327 | ················•·int·InpMtx·writeToBinaryFile·(·InpMtx·*obj,·FILE·*fp·)·;\xd |
328 | ················•·int·InpMtx·writeForHumanEye·(·InpMtx·*obj,·FILE·*fp·)·;\xd | 328 | ················•·int·InpMtx·writeForHumanEye·(·InpMtx·*obj,·FILE·*fp·)·;\xd |
329 | ·············There·are·corresponding·methods·for·the·DenseMtx·object,·just·replace·“Inp”·by·“Dense”·in·the·above\xd | 329 | ·············There·are·corresponding·methods·for·the·DenseMtx·object,·just·replace·“Inp”·by·“Dense”·in·the·above\xd |
330 | ·············prototypes.\xd | 330 | ·············prototypes.\xd |
331 | ················Two·methods·take·as·input·char·*·file·names.·Each·object·can·be·archived·in·its·own·file·with·a\xd | 331 | ················Two·methods·take·as·input·char·*·file·names.·Each·object·can·be·archived·in·its·own·file·with·a\xd |
Offset 375, 15 lines modified | Offset 375, 15 lines modified | ||
375 | ···········ordering,·factor·and·solve·processes.\xd | 375 | ···········ordering,·factor·and·solve·processes.\xd |
Max diff block lines reached; 48321/60436 bytes (79.95%) of diff not shown. |
Offset 10, 15 lines modified | Offset 10, 15 lines modified | ||
10 | %%EndComments | 10 | %%EndComments |
11 | %%BeginDefaults | 11 | %%BeginDefaults |
12 | %%ViewingOrientation:·1·0·0·1 | 12 | %%ViewingOrientation:·1·0·0·1 |
13 | %%EndDefaults | 13 | %%EndDefaults |
14 | %DVIPSWebPage:·(www.radicaleye.com) | 14 | %DVIPSWebPage:·(www.radicaleye.com) |
15 | %DVIPSCommandLine:·dvips·main·-o·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·2026.05.15:0640 |
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 1516, 20 lines modified | Offset 1516, 19 lines modified | ||
1516 | /Encoding·256·array | 1516 | /Encoding·256·array |
1517 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1517 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1518 | dup·44·/comma·put | 1518 | dup·44·/comma·put |
1519 | dup·48·/zero·put | 1519 | dup·48·/zero·put |
1520 | dup·49·/one·put | 1520 | dup·49·/one·put |
1521 | dup·50·/two·put | 1521 | dup·50·/two·put |
1522 | dup·53·/five·put | 1522 | dup·53·/five·put |
1523 | dup·54·/six·put | ||
1523 | dup·58·/colon·put | 1524 | dup·58·/colon·put |
1524 | dup· | 1525 | dup·77·/M·put |
1526 | dup·97·/a·put | ||
1525 | dup·105·/i·put | ||
1526 | dup·108·/l·put | ||
1527 | dup·1 | 1527 | dup·121·/y·put |
1528 | dup·114·/r·put | ||
1529 | readonly·def | 1528 | readonly·def |
1530 | currentdict·end | 1529 | currentdict·end |
1531 | currentfile·eexec | 1530 | currentfile·eexec |
1532 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1531 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1533 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1532 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1534 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1533 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1535 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1534 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1710, 75 lines modified | Offset 1709, 75 lines modified | ||
1710 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1709 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1711 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1710 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1712 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1711 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1713 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1712 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1714 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1713 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1715 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1714 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1716 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1715 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1717 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1716 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1718 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1719 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1720 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1721 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1722 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1723 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1724 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1725 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1726 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1727 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1728 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1729 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1730 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1731 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1732 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1733 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1734 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1735 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1736 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1737 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1738 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1739 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1740 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1741 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1742 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1743 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1744 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1745 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1746 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1747 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1748 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1749 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1750 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1751 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1752 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1753 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1754 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1755 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1756 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1757 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1758 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1759 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1760 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1761 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1762 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1763 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1764 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1765 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1766 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1767 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1768 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1769 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1770 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1771 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1772 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1773 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1774 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1775 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1776 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1777 | 8B | 1717 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1718 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1719 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1720 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1721 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1722 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1723 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1724 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1725 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1726 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1727 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1728 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1729 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1730 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1731 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1732 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1733 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1734 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1735 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1736 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1737 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 3714/13556 bytes (27.40%) 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·May·15,·2026\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···May·15,·2026······················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·2026.05.15:0640 |
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 1207, 20 lines modified | Offset 1207, 19 lines modified | ||
1207 | /Encoding·256·array | 1207 | /Encoding·256·array |
1208 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1208 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1209 | dup·44·/comma·put | 1209 | dup·44·/comma·put |
1210 | dup·48·/zero·put | 1210 | dup·48·/zero·put |
1211 | dup·49·/one·put | 1211 | dup·49·/one·put |
1212 | dup·50·/two·put | 1212 | dup·50·/two·put |
1213 | dup·53·/five·put | 1213 | dup·53·/five·put |
1214 | dup·54·/six·put | ||
1214 | dup·58·/colon·put | 1215 | dup·58·/colon·put |
1215 | dup· | 1216 | dup·77·/M·put |
1217 | dup·97·/a·put | ||
1216 | dup·105·/i·put | ||
1217 | dup·108·/l·put | ||
1218 | dup·1 | 1218 | dup·121·/y·put |
1219 | dup·114·/r·put | ||
1220 | readonly·def | 1219 | readonly·def |
1221 | currentdict·end | 1220 | currentdict·end |
1222 | currentfile·eexec | 1221 | currentfile·eexec |
1223 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1222 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1224 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1223 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1225 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1224 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1226 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1225 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1401, 75 lines modified | Offset 1400, 75 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 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1409 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1410 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1411 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1412 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1413 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1414 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1415 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1416 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1417 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1418 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1419 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1420 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1421 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1422 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1423 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1424 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1425 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1426 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1427 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1428 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1429 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1430 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1431 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1432 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1433 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1434 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1435 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1436 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1437 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1438 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1439 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1440 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1441 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1442 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1443 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1444 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1445 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1446 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1447 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1448 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1449 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1450 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1451 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1452 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1453 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1454 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1455 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1456 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1457 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1458 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1459 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1460 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1461 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1462 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1463 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1464 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1465 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1466 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1467 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1468 | 8B | 1408 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1409 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1410 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1411 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1412 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1413 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1414 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1415 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1416 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1417 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1418 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1419 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1420 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1421 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1422 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1423 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1424 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1425 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1426 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1427 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1428 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 24184/34025 bytes (71.08%) 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·May·15,·2026\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···May·15,·2026···························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·May·15,·2026\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······May·15,·2026······································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·May·15,·2026\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···May·15,·2026···························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·May·15,·2026\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···May·15,·2026···························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; 16623/29166 bytes (56.99%) 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·2026.05.15:0640 |
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 1230, 20 lines modified | Offset 1230, 19 lines modified | ||
1230 | /Encoding·256·array | 1230 | /Encoding·256·array |
1231 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1231 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1232 | dup·44·/comma·put | 1232 | dup·44·/comma·put |
1233 | dup·48·/zero·put | 1233 | dup·48·/zero·put |
1234 | dup·49·/one·put | 1234 | dup·49·/one·put |
1235 | dup·50·/two·put | 1235 | dup·50·/two·put |
1236 | dup·53·/five·put | 1236 | dup·53·/five·put |
1237 | dup·54·/six·put | ||
1237 | dup·58·/colon·put | 1238 | dup·58·/colon·put |
1238 | dup· | 1239 | dup·77·/M·put |
1240 | dup·97·/a·put | ||
1239 | dup·105·/i·put | ||
1240 | dup·108·/l·put | ||
1241 | dup·1 | 1241 | dup·121·/y·put |
1242 | dup·114·/r·put | ||
1243 | readonly·def | 1242 | readonly·def |
1244 | currentdict·end | 1243 | currentdict·end |
1245 | currentfile·eexec | 1244 | currentfile·eexec |
1246 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1245 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1247 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1246 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1248 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1247 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1249 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1248 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1424, 75 lines modified | Offset 1423, 75 lines modified | ||
1424 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1423 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1425 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1424 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1426 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1425 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1427 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1426 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1428 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1427 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1429 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1428 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1430 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1429 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1431 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1430 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1432 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1433 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1434 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1435 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1436 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1437 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1438 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1439 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1440 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1441 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1442 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1443 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1444 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1445 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1446 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1447 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1448 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1449 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1450 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1451 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1452 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1453 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1454 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1455 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1456 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1457 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1458 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1459 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1460 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1461 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1462 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1463 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1464 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1465 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1466 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1467 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1468 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1469 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1470 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1471 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1472 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1473 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1474 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1475 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1476 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1477 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1478 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1479 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1480 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1481 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1482 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1483 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1484 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1485 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1486 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1487 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1488 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1489 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1490 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1491 | 8B | 1431 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1432 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1433 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1434 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1435 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1436 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1437 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1438 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1439 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1440 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1441 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1442 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1443 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1444 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1445 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1446 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1447 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1448 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1449 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1450 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1451 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 14548/24390 bytes (59.65%) 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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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; 4047/15036 bytes (26.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·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·2026.05.15:0640 |
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 1602, 20 lines modified | Offset 1602, 19 lines modified | ||
1602 | /Encoding·256·array | 1602 | /Encoding·256·array |
1603 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1603 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1604 | dup·44·/comma·put | 1604 | dup·44·/comma·put |
1605 | dup·48·/zero·put | 1605 | dup·48·/zero·put |
1606 | dup·49·/one·put | 1606 | dup·49·/one·put |
1607 | dup·50·/two·put | 1607 | dup·50·/two·put |
1608 | dup·53·/five·put | 1608 | dup·53·/five·put |
1609 | dup·54·/six·put | ||
1609 | dup·58·/colon·put | 1610 | dup·58·/colon·put |
1610 | dup· | 1611 | dup·77·/M·put |
1612 | dup·97·/a·put | ||
1611 | dup·105·/i·put | ||
1612 | dup·108·/l·put | ||
1613 | dup·1 | 1613 | dup·121·/y·put |
1614 | dup·114·/r·put | ||
1615 | readonly·def | 1614 | readonly·def |
1616 | currentdict·end | 1615 | currentdict·end |
1617 | currentfile·eexec | 1616 | currentfile·eexec |
1618 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1617 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1619 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1618 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1620 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1619 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1621 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1620 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1796, 75 lines modified | Offset 1795, 75 lines modified | ||
1796 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1795 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1797 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1796 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1798 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1797 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1799 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1798 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1800 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1799 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1801 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1800 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1802 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1801 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1803 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1802 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1804 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1805 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1806 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1807 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1808 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1809 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1810 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1811 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1812 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1813 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1814 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1815 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1816 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1817 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1818 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1819 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1820 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1821 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1822 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1823 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1824 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1825 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1826 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1827 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1828 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1829 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1830 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1831 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1832 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1833 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1834 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1835 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1836 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1837 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1838 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1839 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1840 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1841 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1842 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1843 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1844 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1845 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1846 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1847 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1848 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1849 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1850 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1851 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1852 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1853 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1854 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1855 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1856 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1857 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1858 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1859 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1860 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1861 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1862 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1863 | 8B | 1803 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1804 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1805 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1806 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1807 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1808 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1809 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1810 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1811 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1812 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1813 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1814 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1815 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1816 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1817 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1818 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1819 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1820 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1821 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1822 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1823 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 15536/25376 bytes (61.22%) 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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026························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·May·15,·2026\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···May·15,·2026························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·May·15,·2026\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········May·15,·2026·····························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; 1304/13559 bytes (9.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·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·2026.05.15:0640 |
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 1544, 20 lines modified | Offset 1544, 19 lines modified | ||
1544 | /Encoding·256·array | 1544 | /Encoding·256·array |
1545 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1545 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1546 | dup·44·/comma·put | 1546 | dup·44·/comma·put |
1547 | dup·48·/zero·put | 1547 | dup·48·/zero·put |
1548 | dup·49·/one·put | 1548 | dup·49·/one·put |
1549 | dup·50·/two·put | 1549 | dup·50·/two·put |
1550 | dup·53·/five·put | 1550 | dup·53·/five·put |
1551 | dup·54·/six·put | ||
1551 | dup·58·/colon·put | 1552 | dup·58·/colon·put |
1552 | dup· | 1553 | dup·77·/M·put |
1554 | dup·97·/a·put | ||
1553 | dup·105·/i·put | ||
1554 | dup·108·/l·put | ||
1555 | dup·1 | 1555 | dup·121·/y·put |
1556 | dup·114·/r·put | ||
1557 | readonly·def | 1556 | readonly·def |
1558 | currentdict·end | 1557 | currentdict·end |
1559 | currentfile·eexec | 1558 | currentfile·eexec |
1560 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1559 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1561 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1560 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1562 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1561 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1563 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1562 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1738, 75 lines modified | Offset 1737, 75 lines modified | ||
1738 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1737 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1739 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1738 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1740 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1739 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1741 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1740 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1742 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1741 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1743 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1742 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1744 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1743 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1745 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1744 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1746 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1747 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1748 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1749 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1750 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1751 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1752 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1753 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1754 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1755 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1756 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1757 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1758 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1759 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1760 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1761 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1762 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1763 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1764 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1765 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1766 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1767 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1768 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1769 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1770 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1771 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1772 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1773 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1774 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1775 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1776 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1777 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1778 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1779 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1780 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1781 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1782 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1783 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1784 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1785 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1786 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1787 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1788 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1789 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1790 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1791 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1792 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1793 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1794 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1795 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1796 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1797 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1798 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1799 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1800 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1801 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1802 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1803 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1804 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1805 | 8B | 1745 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1746 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1747 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1748 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1749 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1750 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1751 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1752 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1753 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1754 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1755 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1756 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1757 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1758 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1759 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1760 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1761 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1762 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1763 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1764 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1765 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 7430/17275 bytes (43.01%) 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·May·15,·2026\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··May·15,·2026·····················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·May·15,·2026\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··May·15,·2026·····················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·May·15,·2026\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·2026.05.15:0640 |
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 2042, 20 lines modified | Offset 2042, 19 lines modified | ||
2042 | /Encoding·256·array | 2042 | /Encoding·256·array |
2043 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2043 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2044 | dup·44·/comma·put | 2044 | dup·44·/comma·put |
2045 | dup·48·/zero·put | 2045 | dup·48·/zero·put |
2046 | dup·49·/one·put | 2046 | dup·49·/one·put |
2047 | dup·50·/two·put | 2047 | dup·50·/two·put |
2048 | dup·53·/five·put | 2048 | dup·53·/five·put |
2049 | dup·54·/six·put | ||
2049 | dup·58·/colon·put | 2050 | dup·58·/colon·put |
2050 | dup· | 2051 | dup·77·/M·put |
2052 | dup·97·/a·put | ||
2051 | dup·105·/i·put | ||
2052 | dup·108·/l·put | ||
2053 | dup·1 | 2053 | dup·121·/y·put |
2054 | dup·114·/r·put | ||
2055 | readonly·def | 2054 | readonly·def |
2056 | currentdict·end | 2055 | currentdict·end |
2057 | currentfile·eexec | 2056 | currentfile·eexec |
2058 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2057 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2059 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2058 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2060 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2059 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2061 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2060 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2236, 75 lines modified | Offset 2235, 75 lines modified | ||
2236 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2235 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2237 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2236 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2238 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2237 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2239 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2238 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2240 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2239 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2241 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2240 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2242 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2241 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2243 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2242 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2244 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2245 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2246 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2247 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2248 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2249 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2250 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2251 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2252 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2253 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2254 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2255 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2256 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2257 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2258 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2259 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2260 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2261 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2262 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2263 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2264 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2265 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2266 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2267 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2268 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2269 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2270 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2271 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2272 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2273 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2274 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2275 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2276 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2277 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2278 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2279 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2280 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2281 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2282 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2283 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2284 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2285 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2286 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2287 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2288 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2289 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2290 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2291 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2292 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2293 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2294 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2295 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2296 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2297 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2298 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2299 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2300 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2301 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2302 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2303 | 8B | 2243 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2244 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2245 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2246 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2247 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2248 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2249 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2250 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2251 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2252 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2253 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2254 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2255 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2256 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2257 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2258 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2259 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2260 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2261 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2262 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2263 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 4654/14506 bytes (32.08%) 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·May·15,·2026\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··May·15,·2026··················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·2026.05.15:0640 |
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 1883, 20 lines modified | Offset 1883, 19 lines modified | ||
1883 | /Encoding·256·array | 1883 | /Encoding·256·array |
1884 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1884 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1885 | dup·44·/comma·put | 1885 | dup·44·/comma·put |
1886 | dup·48·/zero·put | 1886 | dup·48·/zero·put |
1887 | dup·49·/one·put | 1887 | dup·49·/one·put |
1888 | dup·50·/two·put | 1888 | dup·50·/two·put |
1889 | dup·53·/five·put | 1889 | dup·53·/five·put |
1890 | dup·54·/six·put | ||
1890 | dup·58·/colon·put | 1891 | dup·58·/colon·put |
1891 | dup· | 1892 | dup·77·/M·put |
1893 | dup·97·/a·put | ||
1892 | dup·105·/i·put | ||
1893 | dup·108·/l·put | ||
1894 | dup·1 | 1894 | dup·121·/y·put |
1895 | dup·114·/r·put | ||
1896 | readonly·def | 1895 | readonly·def |
1897 | currentdict·end | 1896 | currentdict·end |
1898 | currentfile·eexec | 1897 | currentfile·eexec |
1899 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1898 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1900 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1899 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1901 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1900 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1902 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1901 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2077, 75 lines modified | Offset 2076, 75 lines modified | ||
2077 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2076 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2078 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2077 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2079 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2078 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2080 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2079 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2081 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2080 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2082 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2081 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2083 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2082 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2084 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2083 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2085 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2086 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2087 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2088 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2089 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2090 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2091 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2092 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2093 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2094 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2095 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2096 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2097 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2098 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2099 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2100 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2101 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2102 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2103 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2104 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2105 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2106 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2107 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2108 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2109 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2110 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2111 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2112 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2113 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2114 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2115 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2116 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2117 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2118 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2119 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2120 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2121 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2122 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2123 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2124 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2125 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2126 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2127 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2128 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2129 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2130 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2131 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2132 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2133 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2134 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2135 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2136 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2137 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2138 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2139 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2140 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2141 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2142 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2143 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2144 | 8B | 2084 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2085 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2086 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2087 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2088 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2089 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2090 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2091 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2092 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2093 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2094 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2095 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2096 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2097 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2098 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2099 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2100 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2101 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2102 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2103 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2104 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 5295/15139 bytes (34.98%) 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·May·15,·2026\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····May·15,·2026·····························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·May·15,·2026\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·2026.05.15:0640 |
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 1017, 20 lines modified | Offset 1017, 19 lines modified | ||
1017 | /Encoding·256·array | 1017 | /Encoding·256·array |
1018 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1018 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1019 | dup·44·/comma·put | 1019 | dup·44·/comma·put |
1020 | dup·48·/zero·put | 1020 | dup·48·/zero·put |
1021 | dup·49·/one·put | 1021 | dup·49·/one·put |
1022 | dup·50·/two·put | 1022 | dup·50·/two·put |
1023 | dup·53·/five·put | 1023 | dup·53·/five·put |
1024 | dup·54·/six·put | ||
1024 | dup·58·/colon·put | 1025 | dup·58·/colon·put |
1025 | dup· | 1026 | dup·77·/M·put |
1027 | dup·97·/a·put | ||
1026 | dup·105·/i·put | ||
1027 | dup·108·/l·put | ||
1028 | dup·1 | 1028 | dup·121·/y·put |
1029 | dup·114·/r·put | ||
1030 | readonly·def | 1029 | readonly·def |
1031 | currentdict·end | 1030 | currentdict·end |
1032 | currentfile·eexec | 1031 | currentfile·eexec |
1033 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1032 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1034 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1033 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1035 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1034 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1036 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1035 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1211, 75 lines modified | Offset 1210, 75 lines modified | ||
1211 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1210 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1212 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1211 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1213 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1212 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1214 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1213 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1215 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1214 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1216 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1215 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1217 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1216 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1218 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1217 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1219 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1220 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1221 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1222 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1223 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1224 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1225 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1226 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1227 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1228 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1229 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1230 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1231 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1232 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1233 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1234 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1235 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1236 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1237 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1238 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1239 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1240 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1241 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1242 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1243 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1244 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1245 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1246 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1247 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1248 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1249 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1250 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1251 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1252 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1253 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1254 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1255 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1256 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1257 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1258 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1259 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1260 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1261 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1262 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1263 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1264 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1265 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1266 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1267 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1268 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1269 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1270 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1271 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1272 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1273 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1274 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1275 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1276 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1277 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1278 | 8B | 1218 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1219 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1220 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1221 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1222 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1223 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1224 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1225 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1226 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1227 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1228 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1229 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1230 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1231 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1232 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1233 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1234 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1235 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1236 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1237 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1238 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 6409/16251 bytes (39.44%) 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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·2026.05.15:0640 |
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 4809, 20 lines modified | Offset 4809, 19 lines modified | ||
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·49·/one·put | 4813 | dup·49·/one·put |
4814 | dup·50·/two·put | 4814 | dup·50·/two·put |
4815 | dup·53·/five·put | 4815 | dup·53·/five·put |
4816 | dup·54·/six·put | ||
4816 | dup·58·/colon·put | 4817 | dup·58·/colon·put |
4817 | dup· | 4818 | dup·77·/M·put |
4819 | dup·97·/a·put | ||
4818 | dup·105·/i·put | ||
4819 | dup·108·/l·put | ||
4820 | dup·1 | 4820 | dup·121·/y·put |
4821 | dup·114·/r·put | ||
4822 | readonly·def | 4821 | readonly·def |
4823 | currentdict·end | 4822 | currentdict·end |
4824 | currentfile·eexec | 4823 | currentfile·eexec |
4825 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 4824 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
4826 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 4825 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
4827 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 4826 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
4828 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 4827 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 5003, 75 lines modified | Offset 5002, 75 lines modified | ||
5003 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 5002 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
5004 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 5003 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
5005 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 5004 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
5006 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 5005 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
5007 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 5006 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
5008 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 5007 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
5009 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 5008 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
5010 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 5009 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
5011 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
5012 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
5013 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
5014 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
5015 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
5016 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
5017 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
5018 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
5019 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
5020 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
5021 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
5022 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
5023 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
5024 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
5025 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
5026 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
5027 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
5028 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
5029 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
5030 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
5031 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
5032 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
5033 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
5034 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
5035 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
5036 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
5037 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
5038 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
5039 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
5040 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
5041 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
5042 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
5043 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
5044 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
5045 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
5046 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
5047 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
5048 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
5049 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
5050 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
5051 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
5052 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
5053 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
5054 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
5055 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
5056 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
5057 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
5058 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
5059 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
5060 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
5061 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
5062 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
5063 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
5064 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
5065 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
5066 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
5067 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
5068 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
5069 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
5070 | 8B | 5010 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
5011 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
5012 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
5013 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
5014 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
5015 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
5016 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
5017 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
5018 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
5019 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
5020 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
5021 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
5022 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
5023 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
5024 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
5025 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
5026 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
5027 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
5028 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
5029 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
5030 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 44020/53873 bytes (81.71%) 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 | ·····························································May·15,·2026\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·2.2·: | 75 | ·······························································SPOOLES·2.2·:··········May15,·2026···········································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···········································SPOOLES·2.2:· | 116 | ···················4············································SPOOLES·2.2:·May·15,·2026\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·2.2·:········· | 156 | ··························································SPOOLES·2.2·:·········May15,·2026······································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····································SPOOLES·2.2:· | 193 | ················6····································SPOOLES·2.2:·May·15,·2026\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·2.2·:········ | 233 | ······················································SPOOLES·2.2·:········May15,·2026···································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····································SPOOLES·2.2:· | 271 | ················8····································SPOOLES·2.2:·May·15,·2026\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·2.2·:······ | 310 | ····················································SPOOLES·2.2·:·······May15,·2026·································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; 7847/24274 bytes (32.33%) 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·2026.05.15:0640 |
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 1202, 20 lines modified | Offset 1202, 19 lines modified | ||
1202 | /Encoding·256·array | 1202 | /Encoding·256·array |
1203 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1203 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1204 | dup·44·/comma·put | 1204 | dup·44·/comma·put |
1205 | dup·48·/zero·put | 1205 | dup·48·/zero·put |
1206 | dup·49·/one·put | 1206 | dup·49·/one·put |
1207 | dup·50·/two·put | 1207 | dup·50·/two·put |
1208 | dup·53·/five·put | 1208 | dup·53·/five·put |
1209 | dup·54·/six·put | ||
1209 | dup·58·/colon·put | 1210 | dup·58·/colon·put |
1210 | dup· | 1211 | dup·77·/M·put |
1212 | dup·97·/a·put | ||
1211 | dup·105·/i·put | ||
1212 | dup·108·/l·put | ||
1213 | dup·1 | 1213 | dup·121·/y·put |
1214 | dup·114·/r·put | ||
1215 | readonly·def | 1214 | readonly·def |
1216 | currentdict·end | 1215 | currentdict·end |
1217 | currentfile·eexec | 1216 | currentfile·eexec |
1218 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1217 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1219 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1218 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1220 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1219 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1221 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1220 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1396, 75 lines modified | Offset 1395, 75 lines modified | ||
1396 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1395 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1397 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1396 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1398 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1397 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1399 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1398 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1400 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1399 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1401 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1400 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1402 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1401 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1403 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1402 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1404 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1405 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1406 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1407 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1408 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1409 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1410 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1411 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1412 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1413 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1414 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1415 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1416 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1417 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1418 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1419 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1420 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1421 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1422 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1423 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1424 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1425 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1426 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1427 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1428 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1429 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1430 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1431 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1432 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1433 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1434 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1435 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1436 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1437 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1438 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1439 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1440 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1441 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1442 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1443 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1444 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1445 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1446 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1447 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1448 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1449 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1450 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1451 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1452 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1453 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1454 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1455 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1456 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1457 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1458 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1459 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1460 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1461 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1462 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1463 | 8B | 1403 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1404 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1405 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1406 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1407 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1408 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1409 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1410 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1411 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1412 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1413 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1414 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1415 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1416 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1417 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1418 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1419 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1420 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1421 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1422 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1423 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 6624/16473 bytes (40.21%) 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·May·15,·2026\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·······May·15,·2026······························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·May·15,·2026\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··May·15,·2026·······················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·2026.05.15:0640 |
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 1441, 20 lines modified | Offset 1441, 19 lines modified | ||
1441 | /Encoding·256·array | 1441 | /Encoding·256·array |
1442 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1442 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1443 | dup·44·/comma·put | 1443 | dup·44·/comma·put |
1444 | dup·48·/zero·put | 1444 | dup·48·/zero·put |
1445 | dup·49·/one·put | 1445 | dup·49·/one·put |
1446 | dup·50·/two·put | 1446 | dup·50·/two·put |
1447 | dup·53·/five·put | 1447 | dup·53·/five·put |
1448 | dup·54·/six·put | ||
1448 | dup·58·/colon·put | 1449 | dup·58·/colon·put |
1449 | dup· | 1450 | dup·77·/M·put |
1451 | dup·97·/a·put | ||
1450 | dup·105·/i·put | ||
1451 | dup·108·/l·put | ||
1452 | dup·1 | 1452 | dup·121·/y·put |
1453 | dup·114·/r·put | ||
1454 | readonly·def | 1453 | readonly·def |
1455 | currentdict·end | 1454 | currentdict·end |
1456 | currentfile·eexec | 1455 | currentfile·eexec |
1457 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1456 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1458 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1457 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1459 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1458 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1460 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1459 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1635, 75 lines modified | Offset 1634, 75 lines modified | ||
1635 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1634 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1636 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1635 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1637 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1636 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1638 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1637 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1639 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1638 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1640 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1639 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1641 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1640 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1642 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1641 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1643 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1644 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1645 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1646 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1647 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1648 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1649 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1650 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1651 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1652 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1653 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1654 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1655 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1656 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1657 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1658 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1659 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1660 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1661 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1662 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1663 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1664 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1665 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1666 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1667 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1668 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1669 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1670 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1671 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1672 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1673 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1674 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1675 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1676 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1677 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1678 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1679 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1680 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1681 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1682 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1683 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1684 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1685 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1686 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1687 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1688 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1689 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1690 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1691 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1692 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1693 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1694 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1695 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1696 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1697 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1698 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1699 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1700 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1701 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1702 | 8B | 1642 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1643 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1644 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1645 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1646 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1647 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1648 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1649 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1650 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1651 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1652 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1653 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1654 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1655 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1656 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1657 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1658 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1659 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1660 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1661 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1662 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 11015/20861 bytes (52.80%) 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·May·15,·2026\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···May·15,·2026····················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·May·15,·2026\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·······May·15,·2026·····························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·May·15,·2026\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···May·15,·2026····················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·2026.05.15:0640 |
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 2121, 20 lines modified | Offset 2121, 19 lines modified | ||
2121 | /Encoding·256·array | 2121 | /Encoding·256·array |
2122 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2122 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2123 | dup·44·/comma·put | 2123 | dup·44·/comma·put |
2124 | dup·48·/zero·put | 2124 | dup·48·/zero·put |
2125 | dup·49·/one·put | 2125 | dup·49·/one·put |
2126 | dup·50·/two·put | 2126 | dup·50·/two·put |
2127 | dup·53·/five·put | 2127 | dup·53·/five·put |
2128 | dup·54·/six·put | ||
2128 | dup·58·/colon·put | 2129 | dup·58·/colon·put |
2129 | dup· | 2130 | dup·77·/M·put |
2131 | dup·97·/a·put | ||
2130 | dup·105·/i·put | ||
2131 | dup·108·/l·put | ||
2132 | dup·1 | 2132 | dup·121·/y·put |
2133 | dup·114·/r·put | ||
2134 | readonly·def | 2133 | readonly·def |
2135 | currentdict·end | 2134 | currentdict·end |
2136 | currentfile·eexec | 2135 | currentfile·eexec |
2137 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2136 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2138 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2137 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2139 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2138 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2140 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2139 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2315, 75 lines modified | Offset 2314, 75 lines modified | ||
2315 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2314 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2316 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2315 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2317 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2316 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2318 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2317 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2319 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2318 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2320 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2319 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2321 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2320 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2322 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2321 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2323 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2324 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2325 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2326 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2327 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2328 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2329 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2330 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2331 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2332 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2333 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2334 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2335 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2336 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2337 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2338 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2339 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2340 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2341 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2342 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2343 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2344 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2345 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2346 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2347 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2348 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2349 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2350 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2351 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2352 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2353 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2354 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2355 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2356 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2357 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2358 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2359 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2360 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2361 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2362 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2363 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2364 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2365 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2366 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2367 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2368 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2369 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2370 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2371 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2372 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2373 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2374 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2375 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2376 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2377 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2378 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2379 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2380 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2381 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2382 | 8B | 2322 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2323 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2324 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2325 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2326 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2327 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2328 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2329 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2330 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2331 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2332 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2333 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2334 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2335 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2336 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2337 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2338 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2339 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2340 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2341 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2342 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 25950/35794 bytes (72.50%) 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·May·15,·2026\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··May·15,·2026······················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·May·15,·2026\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··May·15,·2026······················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·May·15,·2026\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······May·15,·2026···························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·May·15,·2026\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··May·15,·2026······················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; 12200/22976 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·2026.05.15:0640 |
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 1779, 20 lines modified | Offset 1779, 19 lines modified | ||
1779 | /Encoding·256·array | 1779 | /Encoding·256·array |
1780 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1780 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1781 | dup·44·/comma·put | 1781 | dup·44·/comma·put |
1782 | dup·48·/zero·put | 1782 | dup·48·/zero·put |
1783 | dup·49·/one·put | 1783 | dup·49·/one·put |
1784 | dup·50·/two·put | 1784 | dup·50·/two·put |
1785 | dup·53·/five·put | 1785 | dup·53·/five·put |
1786 | dup·54·/six·put | ||
1786 | dup·58·/colon·put | 1787 | dup·58·/colon·put |
1787 | dup· | 1788 | dup·77·/M·put |
1789 | dup·97·/a·put | ||
1788 | dup·105·/i·put | ||
1789 | dup·108·/l·put | ||
1790 | dup·1 | 1790 | dup·121·/y·put |
1791 | dup·114·/r·put | ||
1792 | readonly·def | 1791 | readonly·def |
1793 | currentdict·end | 1792 | currentdict·end |
1794 | currentfile·eexec | 1793 | currentfile·eexec |
1795 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1794 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1796 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1795 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1797 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1796 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1798 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1797 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1973, 75 lines modified | Offset 1972, 75 lines modified | ||
1973 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1972 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1974 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1973 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1975 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1974 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1976 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1975 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1977 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1976 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1978 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1977 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1979 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1978 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1980 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1979 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1981 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1982 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1983 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1984 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1985 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1986 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1987 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1988 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1989 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1990 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1991 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1992 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1993 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1994 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1995 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1996 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1997 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1998 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1999 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2000 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2001 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2002 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2003 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2004 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2005 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2006 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2007 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2008 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2009 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2010 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2011 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2012 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2013 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2014 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2015 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2016 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2017 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2018 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2019 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2020 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2021 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2022 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2023 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2024 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2025 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2026 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2027 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2028 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2029 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2030 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2031 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2032 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2033 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2034 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2035 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2036 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2037 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2038 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2039 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2040 | 8B | 1980 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1981 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1982 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1983 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1984 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1985 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1986 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1987 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1988 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1989 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1990 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1991 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1992 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1993 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1994 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1995 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1996 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1997 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1998 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1999 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2000 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 5036/14884 bytes (33.83%) 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·May·15,·2026\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···May·15,·2026····················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·May·15,·2026\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·2026.05.15:0640 |
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 1422, 20 lines modified | Offset 1422, 19 lines modified | ||
1422 | /Encoding·256·array | 1422 | /Encoding·256·array |
1423 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1423 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1424 | dup·44·/comma·put | 1424 | dup·44·/comma·put |
1425 | dup·48·/zero·put | 1425 | dup·48·/zero·put |
1426 | dup·49·/one·put | 1426 | dup·49·/one·put |
1427 | dup·50·/two·put | 1427 | dup·50·/two·put |
1428 | dup·53·/five·put | 1428 | dup·53·/five·put |
1429 | dup·54·/six·put | ||
1429 | dup·58·/colon·put | 1430 | dup·58·/colon·put |
1430 | dup· | 1431 | dup·77·/M·put |
1432 | dup·97·/a·put | ||
1431 | dup·105·/i·put | ||
1432 | dup·108·/l·put | ||
1433 | dup·1 | 1433 | dup·121·/y·put |
1434 | dup·114·/r·put | ||
1435 | readonly·def | 1434 | readonly·def |
1436 | currentdict·end | 1435 | currentdict·end |
1437 | currentfile·eexec | 1436 | currentfile·eexec |
1438 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1437 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1439 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1438 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1440 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1439 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1441 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1440 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1616, 75 lines modified | Offset 1615, 75 lines modified | ||
1616 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1615 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1617 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1616 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1618 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1617 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1619 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1618 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1620 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1619 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1621 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1620 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1622 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1621 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1623 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1622 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1624 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1625 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1626 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1627 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1628 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1629 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1630 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1631 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1632 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1633 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1634 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1635 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1636 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1637 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1638 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1639 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1640 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1641 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1642 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1643 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1644 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1645 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1646 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1647 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1648 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1649 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1650 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1651 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1652 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1653 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1654 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1655 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1656 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1657 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1658 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1659 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1660 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1661 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1662 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1663 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1664 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1665 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1666 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1667 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1668 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1669 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1670 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1671 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1672 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1673 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1674 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1675 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1676 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1677 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1678 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1679 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1680 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1681 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1682 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1683 | 8B | 1623 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1624 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1625 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1626 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1627 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1628 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1629 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1630 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1631 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1632 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1633 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1634 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1635 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1636 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1637 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1638 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1639 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1640 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1641 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1642 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1643 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 5479/15330 bytes (35.74%) 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·May·15,·2026\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···May·15,·2026··················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·May·15,·2026\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·2026.05.15:0640 |
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 1009, 20 lines modified | Offset 1009, 19 lines modified | ||
1009 | /Encoding·256·array | 1009 | /Encoding·256·array |
1010 | 0·1·255·{1·index·exch·/.notdef·put}·for | 1010 | 0·1·255·{1·index·exch·/.notdef·put}·for |
1011 | dup·44·/comma·put | 1011 | dup·44·/comma·put |
1012 | dup·48·/zero·put | 1012 | dup·48·/zero·put |
1013 | dup·49·/one·put | 1013 | dup·49·/one·put |
1014 | dup·50·/two·put | 1014 | dup·50·/two·put |
1015 | dup·53·/five·put | 1015 | dup·53·/five·put |
1016 | dup·54·/six·put | ||
1016 | dup·58·/colon·put | 1017 | dup·58·/colon·put |
1017 | dup· | 1018 | dup·77·/M·put |
1019 | dup·97·/a·put | ||
1018 | dup·105·/i·put | ||
1019 | dup·108·/l·put | ||
1020 | dup·1 | 1020 | dup·121·/y·put |
1021 | dup·114·/r·put | ||
1022 | readonly·def | 1021 | readonly·def |
1023 | currentdict·end | 1022 | currentdict·end |
1024 | currentfile·eexec | 1023 | currentfile·eexec |
1025 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 1024 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
1026 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 1025 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
1027 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 1026 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
1028 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 1027 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 1203, 75 lines modified | Offset 1202, 75 lines modified | ||
1203 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 1202 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
1204 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 1203 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
1205 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 1204 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
1206 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 1205 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
1207 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 1206 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
1208 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 1207 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
1209 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 1208 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
1210 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 1209 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
1211 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
1212 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
1213 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
1214 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
1215 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
1216 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
1217 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
1218 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
1219 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
1220 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
1221 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
1222 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
1223 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
1224 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
1225 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
1226 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
1227 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
1228 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
1229 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
1230 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
1231 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
1232 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
1233 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
1234 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
1235 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
1236 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
1237 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
1238 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
1239 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
1240 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
1241 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
1242 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
1243 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
1244 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
1245 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
1246 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
1247 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
1248 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
1249 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
1250 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
1251 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
1252 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
1253 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
1254 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
1255 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
1256 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
1257 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
1258 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
1259 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
1260 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
1261 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
1262 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
1263 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
1264 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
1265 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
1266 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
1267 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
1268 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
1269 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
1270 | 8B | 1210 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
1211 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
1212 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
1213 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
1214 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
1215 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
1216 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
1217 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
1218 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
1219 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
1220 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
1221 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
1222 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
1223 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
1224 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
1225 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
1226 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
1227 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
1228 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
1229 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
1230 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 7154/16999 bytes (42.08%) 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·May·15,·2026\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···········May·15,·2026·····································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·May·15,·2026\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·2026.05.15:0640 |
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 2230, 20 lines modified | Offset 2230, 19 lines modified | ||
2230 | /Encoding·256·array | 2230 | /Encoding·256·array |
2231 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2231 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2232 | dup·44·/comma·put | 2232 | dup·44·/comma·put |
2233 | dup·48·/zero·put | 2233 | dup·48·/zero·put |
2234 | dup·49·/one·put | 2234 | dup·49·/one·put |
2235 | dup·50·/two·put | 2235 | dup·50·/two·put |
2236 | dup·53·/five·put | 2236 | dup·53·/five·put |
2237 | dup·54·/six·put | ||
2237 | dup·58·/colon·put | 2238 | dup·58·/colon·put |
2238 | dup· | 2239 | dup·77·/M·put |
2240 | dup·97·/a·put | ||
2239 | dup·105·/i·put | ||
2240 | dup·108·/l·put | ||
2241 | dup·1 | 2241 | dup·121·/y·put |
2242 | dup·114·/r·put | ||
2243 | readonly·def | 2242 | readonly·def |
2244 | currentdict·end | 2243 | currentdict·end |
2245 | currentfile·eexec | 2244 | currentfile·eexec |
2246 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2245 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2247 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2246 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2248 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2247 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2249 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2248 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2424, 75 lines modified | Offset 2423, 75 lines modified | ||
2424 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2423 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2425 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2424 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2426 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2425 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2427 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2426 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2428 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2427 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2429 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2428 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2430 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2429 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2431 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2430 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2432 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2433 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2434 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2435 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2436 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2437 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2438 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2439 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2440 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2441 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2442 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2443 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2444 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2445 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2446 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2447 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2448 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2449 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2450 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2451 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2452 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2453 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2454 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2455 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2456 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2457 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2458 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2459 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2460 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2461 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2462 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2463 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2464 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2465 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2466 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2467 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2468 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2469 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2470 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2471 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2472 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2473 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2474 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2475 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2476 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2477 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2478 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2479 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2480 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2481 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2482 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2483 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2484 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2485 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2486 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2487 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2488 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2489 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2490 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2491 | 8B | 2431 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2432 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2433 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2434 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2435 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2436 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2437 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2438 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2439 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2440 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2441 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2442 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2443 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2444 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2445 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2446 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2447 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2448 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2449 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2450 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2451 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 15013/24855 bytes (60.40%) 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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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·······May·15,·2026·································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·May·15,·2026\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···May·15,·2026······················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; 4968/15711 bytes (31.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·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·2026.05.15:0640 |
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 3360, 20 lines modified | Offset 3360, 19 lines modified | ||
3360 | /Encoding·256·array | 3360 | /Encoding·256·array |
3361 | 0·1·255·{1·index·exch·/.notdef·put}·for | 3361 | 0·1·255·{1·index·exch·/.notdef·put}·for |
3362 | dup·44·/comma·put | 3362 | dup·44·/comma·put |
3363 | dup·48·/zero·put | 3363 | dup·48·/zero·put |
3364 | dup·49·/one·put | 3364 | dup·49·/one·put |
3365 | dup·50·/two·put | 3365 | dup·50·/two·put |
3366 | dup·53·/five·put | 3366 | dup·53·/five·put |
3367 | dup·54·/six·put | ||
3367 | dup·58·/colon·put | 3368 | dup·58·/colon·put |
3368 | dup· | 3369 | dup·77·/M·put |
3370 | dup·97·/a·put | ||
3369 | dup·105·/i·put | ||
3370 | dup·108·/l·put | ||
3371 | dup·1 | 3371 | dup·121·/y·put |
3372 | dup·114·/r·put | ||
3373 | readonly·def | 3372 | readonly·def |
3374 | currentdict·end | 3373 | currentdict·end |
3375 | currentfile·eexec | 3374 | currentfile·eexec |
3376 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 3375 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
3377 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 3376 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
3378 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 3377 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
3379 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 3378 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 3554, 75 lines modified | Offset 3553, 75 lines modified | ||
3554 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 3553 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
3555 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 3554 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
3556 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 3555 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
3557 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 3556 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
3558 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 3557 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
3559 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 3558 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
3560 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 3559 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
3561 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 3560 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
3562 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
3563 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
3564 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
3565 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
3566 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
3567 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
3568 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
3569 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
3570 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
3571 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
3572 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
3573 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
3574 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
3575 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
3576 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
3577 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
3578 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
3579 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
3580 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
3581 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
3582 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
3583 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
3584 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
3585 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
3586 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
3587 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
3588 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
3589 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
3590 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
3591 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
3592 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
3593 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
3594 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
3595 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
3596 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
3597 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
3598 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
3599 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
3600 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
3601 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
3602 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
3603 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
3604 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
3605 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
3606 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
3607 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
3608 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
3609 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
3610 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
3611 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
3612 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
3613 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
3614 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
3615 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
3616 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
3617 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
3618 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
3619 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
3620 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
3621 | 8B | 3561 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
3562 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
3563 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
3564 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
3565 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
3566 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
3567 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
3568 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
3569 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
3570 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
3571 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
3572 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
3573 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
3574 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
3575 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
3576 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
3577 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
3578 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
3579 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
3580 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
3581 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 37624/47471 bytes (79.26%) 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·May·15,·2026\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··May·15,·2026····················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·May·15,·2026\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····May·15,·2026·······················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·May·15,·2026\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··May·15,·2026····················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·May·15,·2026\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··May·15,·2026····················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; 28022/38122 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·2026.05.15:0640 |
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 2353, 20 lines modified | Offset 2353, 19 lines modified | ||
2353 | /Encoding·256·array | 2353 | /Encoding·256·array |
2354 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2354 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2355 | dup·44·/comma·put | 2355 | dup·44·/comma·put |
2356 | dup·48·/zero·put | 2356 | dup·48·/zero·put |
2357 | dup·49·/one·put | 2357 | dup·49·/one·put |
2358 | dup·50·/two·put | 2358 | dup·50·/two·put |
2359 | dup·53·/five·put | 2359 | dup·53·/five·put |
2360 | dup·54·/six·put | ||
2360 | dup·58·/colon·put | 2361 | dup·58·/colon·put |
2361 | dup· | 2362 | dup·77·/M·put |
2363 | dup·97·/a·put | ||
2362 | dup·105·/i·put | ||
2363 | dup·108·/l·put | ||
2364 | dup·1 | 2364 | dup·121·/y·put |
2365 | dup·114·/r·put | ||
2366 | readonly·def | 2365 | readonly·def |
2367 | currentdict·end | 2366 | currentdict·end |
2368 | currentfile·eexec | 2367 | currentfile·eexec |
2369 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2368 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2370 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2369 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2371 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2370 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2372 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2371 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2547, 75 lines modified | Offset 2546, 75 lines modified | ||
2547 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2546 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2548 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2547 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2549 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2548 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2550 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2549 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2551 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2550 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2552 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2551 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2553 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2552 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2554 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2553 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2555 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2556 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2557 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2558 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2559 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2560 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2561 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2562 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2563 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2564 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2565 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2566 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2567 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2568 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2569 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2570 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2571 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2572 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2573 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2574 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2575 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2576 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2577 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2578 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2579 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2580 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2581 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2582 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2583 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2584 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2585 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2586 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2587 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2588 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2589 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2590 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2591 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2592 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2593 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2594 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2595 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2596 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2597 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2598 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2599 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2600 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2601 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2602 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2603 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2604 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2605 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2606 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2607 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2608 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2609 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2610 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2611 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2612 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2613 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2614 | 8B | 2554 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2555 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2556 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2557 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2558 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2559 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2560 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2561 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2562 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2563 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2564 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2565 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2566 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2567 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2568 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2569 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2570 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2571 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2572 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2573 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2574 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 9772/19612 bytes (49.83%) 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·May·15,·2026\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··May·15,·2026························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·May·15,·2026\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··May·15,·2026························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·May·15,·2026\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··May·15,·2026························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·May·15,·2026\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·2026.05.15:0640 |
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 2253, 20 lines modified | Offset 2253, 19 lines modified | ||
2253 | /Encoding·256·array | 2253 | /Encoding·256·array |
2254 | 0·1·255·{1·index·exch·/.notdef·put}·for | 2254 | 0·1·255·{1·index·exch·/.notdef·put}·for |
2255 | dup·44·/comma·put | 2255 | dup·44·/comma·put |
2256 | dup·48·/zero·put | 2256 | dup·48·/zero·put |
2257 | dup·49·/one·put | 2257 | dup·49·/one·put |
2258 | dup·50·/two·put | 2258 | dup·50·/two·put |
2259 | dup·53·/five·put | 2259 | dup·53·/five·put |
2260 | dup·54·/six·put | ||
2260 | dup·58·/colon·put | 2261 | dup·58·/colon·put |
2261 | dup· | 2262 | dup·77·/M·put |
2263 | dup·97·/a·put | ||
2262 | dup·105·/i·put | ||
2263 | dup·108·/l·put | ||
2264 | dup·1 | 2264 | dup·121·/y·put |
2265 | dup·114·/r·put | ||
2266 | readonly·def | 2265 | readonly·def |
2267 | currentdict·end | 2266 | currentdict·end |
2268 | currentfile·eexec | 2267 | currentfile·eexec |
2269 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 | 2268 | D9D66F633B846AB284BCF8B0411B772DE5CE32340DC6F28AF40857E4451976E7 |
2270 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 | 2269 | 5182433CF9F333A38BD841C0D4E68BF9E012EB32A8FFB76B5816306B5EDF7C99 |
2271 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 | 2270 | 8B3A16D9B4BC056662E32C7CD0123DFAEB734C7532E64BBFBF5A60336E646716 |
2272 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C | 2271 | EFB852C877F440D329172C71F1E5D59CE9473C26B8AEF7AD68EF0727B6EC2E0C |
Offset 2447, 75 lines modified | Offset 2446, 75 lines modified | ||
2447 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A | 2446 | 7CA1534C4D5B05FC33F83790ECFD7641DF3FB94289E2A1F6E7D29AB1228A867A |
2448 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 | 2447 | 6E1EF0E9C6F899B491DC18401C2C0A05FFFED46A72C245F7529B8EA55A038082 |
2449 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E | 2448 | 8512307217D2A233C37004085BA3AEE379269F9FA7D0ADB4B19A95CC2AFE686E |
2450 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 | 2449 | 55D88E47257C1FE6F235FEA295910569FE6DD5995512562359CC821E85A6C7A5 |
2451 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 | 2450 | 79B470A9E340A6985189FF8B6AF914A6B0ECF93F47903221F95DE894A8F05B05 |
2452 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 | 2451 | B7D99CD533EC5F931B18E6B39BECF67FA2D6DD1AEC76772B068BE06335A94C05 |
2453 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 | 2452 | 7A4DDEE77B66101DA855C17AC312600370B34E31F5EC3A01300A8EB60B4C9767 |
2454 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004 | 2453 | 1B2FA10DF7E91D3BB34A1B1CE7A0015A57C813E0280D873ADB8844004B9BA1CC |
2455 | 77994EE04EC3B4531D6E1888C86A8F0DA6CF1F056F16AB0DD76C862830F89DA4 | ||
2456 | 28923B3AA543E0D6E41D3BD283E600BC11F889315EE92C675C109C81065ED1BC | ||
2457 | 82A5583D1B723D50051B0557A367887F5B263014C6E77288B4883C50889473D3 | ||
2458 | 3787BAD4BEB88BD1353AFA5B73E61814819537E7FF09F53EF94792BB3DD36ED0 | ||
2459 | 002D0E7A6CDAB85A9C17AF5664BCB5A71663B861880F3ECCABC8E7A2FC81A4CC | ||
2460 | AE7A87503FDC1CE0077BA51ECC7B43B60793FED8E9AAD5BBD03ADD6183DCD26D | ||
2461 | 24A74163611C05562437644EF9B8889FD4F9D311911204FEFD35237486F2D2D0 | ||
2462 | B6783A03BF12EA6D19D6D0F87E4D08515F12F9CBF1961CAA71E0D69FE3C4C4D2 | ||
2463 | 7C7FB64ED24F8684C8F00C2BEDEA53EA390CC7E3D05126E0954E3E9F458653B6 | ||
2464 | CAA2880B7240FD875BBA0B98DFD8330EC6551A15B25A34D9D1FA8449B8A7DEF0 | ||
2465 | F4D57B6A6B59CB57CB7B487E6809B27865D1789EB84CDE3D1F1C69ABDC84D06B | ||
2466 | 30EF24EEBD525F9D6FB8413C30390CF5A128DDBA893908373F8FBD37D3BB882B | ||
2467 | 3AE009FD794923121C877B9DB165C79AC6A93042BCEDDBA9590ED53D48014188 | ||
2468 | 24A6CFB3320FB3CCE98037035A23A220D9FA4E1541DA9EE451A39306545DAE42 | ||
2469 | BAA1821F8D70EB698494819936924603065FC9332C9A6DA556CCFB0540A30CC5 | ||
2470 | ABA86F3107EB767408B993A374931A1572A1083B79D107A3CAC8C9063DF72E7A | ||
2471 | 18D3EA91D29A35290C44D2843DF86240FD4579411A9485DA25716360224C789E | ||
2472 | D0084AEE6DBB63EA402B0F4FAEB68F555F61B9E6C486699BAC9B2C77778A9133 | ||
2473 | 538F1A91C012ABAB567672BA6130F740DAFCC0DDC523AC7C7A55C13FF6C7524E | ||
2474 | E55393019E3326250366B0DA2DD8F482CD6DF36A78D08240EDA969694AD8D2FC | ||
2475 | 0776A04751A288D1C551F8DA36E97F34B8A7F6A0D9AA964A963E92F06C8F6DD5 | ||
2476 | C2DCA9341FF9E5BA03048F71D11590C1878C51CF1B429F23BF77F0C9045AC31E | ||
2477 | D90F720C5A4F2F45A7A9B98953C89F79020C72B3659BACB67E622EC35D3859B8 | ||
2478 | 484E995A6BFC1468CABC16CC376F410A0F041B6E55117601BD6309F671A49DBF | ||
2479 | 9F18492FD5F06FDB0A812FBF276826497F3EECD78152610067E7109D19B2EFEA | ||
2480 | F295152E3434D85329E87E8997601838C93D526CFD6EDB08674679A39E22B388 | ||
2481 | 6F389499E4F71635C33705CE8F2235E383A9E4E93E51A6F799DA1B233527991A | ||
2482 | C2574AD798ABE0A28C3F8095EBDD187D714B1F1457810300729338AAABB93A49 | ||
2483 | 9C627C6F2F6D1E04FB6028FF5D0CB5057EEA71ADA6C58D5E6514C6F411113E32 | ||
2484 | 8BA451B72A7ADCC20B25ACF5503B2B13760A842F3EDCE82DBE52BE13DB3E3BDB | ||
2485 | F85A82A7BE214C08A08462015AFEFE8E808C8ABE2E95898B719C5D96E6F6001A | ||
2486 | 94388A9B0A22870EC64E91B590256D2D14ABFEA0777A232BF454297F5111F380 | ||
2487 | 2490EB1868C78FC235E2E2177741AF083AE547BE9EBAE74D26798B1D2C83C755 | ||
2488 | 868F9A7D23F2A1517A742136161F2ED2FACD6826D39A4FFD321268ACF349EC04 | ||
2489 | 4A8C700C4945B631B1384D21ADD3724A177E806C8A2CD968BE1C5333D2C76594 | ||
2490 | 2890FB36C36B7F1E864A647083488657A62DA18752531DDE324CE0F00D081B49 | ||
2491 | 284213D604C015C2191FFAADAF1A8164F08B39B761AFD658E011C84AEBCD9206 | ||
2492 | 84F3EFE383564ED9763D33717A9A7E03935D4DC92EC1055802E9331A409F245E | ||
2493 | 5CB1163339AE731D99443D2E010C5418C1352E412570947BED7313B89D733EB1 | ||
2494 | 3541D3B13C98DE16AF50814441A4BDF07D889B595192F08E6AA4740C9039F970 | ||
2495 | 4F808648F9E8F505D5DBD7BB4557F6CA6AA75B0BFBBC41A706955B56B4A89165 | ||
2496 | DE831A6CE747246BB7143AB0145E89FE4954BFB3B0FBA6D9F4CE5EE3EE0C3042 | ||
2497 | 7B1DB4027E6F2552F16B8C2389F4EEECEF0F6CF7DF95D1CAB0EA4F0197B99981 | ||
2498 | 6D15F3143CCCA437C05D7A256CAB4E06811757450A4471B75C0CE22DE56BE09D | ||
2499 | C7496911B791AF565AA78A65583379AA8AD48006D99A8A4E41FD9740AE1746A2 | ||
2500 | F16C5DE11EB6753A89A6FB5D3D52A4C0FFDAB98FFF8C23CC5862BE0EFEFF5AE7 | ||
2501 | 2A97292B92458E1B6C2BEB4B862698AAF3292533BA718537EA1F66BA0A224E8A | ||
2502 | 83B6FC06F2C475814BACB86373B93479C669AD1FE7D086DB7D679ACDDB8F060C | ||
2503 | 3C351A794C1876CF3AC088322F07A2912EC3EA497B9AA43748AA99C0C5A7189E | ||
2504 | 4BC27F4FE673A839CFA6F044CDCB7034011F81933B19A303123B918674DF5386 | ||
2505 | C9D7512E35E08A1785EA722C4E439E933B05D7F3E5033FE95BFE671D34142F4C | ||
2506 | 465F94DC9A9AF42CDDE4E1EA2EBE42E33928062EA90F4789A9F909D065B39E77 | ||
2507 | 1BBC38F34E51DE4590217100723A93036E77841925D3D509BD3204FB6E286945 | ||
2508 | C513BD615BF4D92A669B2E0988D1A493770D325560C3251164E007E20AD6BD49 | ||
2509 | 8CB5CDC64AE9408E4487CD895CADF9744E99D92B0351F147D5BD8A250F432E8A | ||
2510 | 7DFEDD6060A220F04219FFBD016AAC9025AC7D48AD587615D16DF49FC2EECEEE | ||
2511 | 9256A23C153D6055E45DA866F85F3E08A6C8ECE9A273F234EFDF99BFADD5E59B | ||
2512 | 59ECC5C7C20F204CF85034F182EF922488522321E7DA432A96DA8EA38113328F | ||
2513 | E64891B80AC5822CB1914BF9840423AEBCAE8A69D660FF6038B024B1A47157E4 | ||
2514 | 8B | 2454 | 580D3C6BDA4DC1B80B4365F1C80512453FC5316EC2D928FB731C3D6403E3C18B |
2455 | E8424D644DF5E9A2134229C5C91CA68DB8E85BA2BB40F538F585DA6FA4037718 | ||
2456 | B8053EBBA1E765346BCD5BDAA6C38115D31611D8A87A2238C145F2DA2F92E4DF | ||
2457 | 3987BD9C4D2A3D460E8941A68B125BCD9EE4F9FD262C4C8A71F47A2C81975635 | ||
2458 | F1B981C274C53FA2ACCDE4C9D0A7C62D6C1EFF91CFC6712CA6A9F333C9564FCB | ||
2459 | 2A70F0AD715A79B10A08AB069E2A3C93BC0AED19D0CA10134B8DDDE8AF548DB2 | ||
2460 | 3A4AAA9C29682CF135BB767DAA16169A127EB50A7EECEB6480CF56A7D0F8AC56 | ||
2461 | 4A5090B3D75A790372886AF568D94C8165975A05BFBFDF1FFBA45F70700BB9E0 | ||
2462 | 57F3249EF9E9C8AD9CBCF6E4FD592DC4CDD2CC7C0BC3130C1059096C657BE453 | ||
2463 | A2CBACE93420210E27AF56CA229BD6D982FB68B3FDC6D44478B922C4231C47EE | ||
2464 | E500232F6C11D92DEB955F66DF52B92B22E7352790CC2DCBAC53965D57AC2920 | ||
2465 | 68B7D520DE25047146EFEB06B9AD4E2A94243C7E5239F0BC2FC312B16051D52C | ||
2466 | 0B92C217B6B42997321AE4F8BB066754B7AA3F15069EF59224E8A442CE471AA7 | ||
2467 | E8049A3DD9EDA09CCEE4998998661CF7DB35E952F6C65DAEB3013951C59F3E09 | ||
2468 | 157F313B0237876E1C0190F0473819570B8C0205AADF05D787CC00979CFB327A | ||
2469 | 289382B22DDA6F12804ED0ED5B179E36A995A2A59E1B66E75130DBE9109C813B | ||
2470 | 94403E0DEA8314A1E9DB474D7FA83C0BAFD08033E6A6215844C1D26BE15F1251 | ||
2471 | A1605E8DF9A9C601ED37379530BC1C82BE5463C6C711C5652BFD6262485AA9CA | ||
2472 | B8C4A117593001D08D980041E2A83C190DCE8E6CD3D33282D062ADFF319C3668 | ||
2473 | A71EA6E3A5D5BA33CAC5E79F56D368A0A21D4790A49F8FB02448F4F82676FA7B | ||
2474 | 9A12F772CB5211B3C10839406CEE781D607CB1D9641B23BC53436C9C441D6E79 | ||
Max diff block lines reached; 18035/27877 bytes (64.69%) 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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················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·May·15,·2026\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···May·15,·2026······················9\xd |
301 | ··········································Figure·1.1:·R2D100\xd | 301 | ··········································Figure·1.1:·R2D100\xd |
302 | ············· | 302 | ·············10·····························Misc·:·DRAFT·May·15,·2026\xd |
303 | ······························· | 303 | ·······························Figure·1.2:·R2D100:·fishnet·domain·decomposition\xd |
304 | ······························· | 304 | ·······························3····3····3·····3····3····3·····3····0····0·····5\xd |
305 | ········································ | 305 | ········································3\xd |
306 | ······························· | 306 | ·······························3················3····3·······0·················0\xd |
307 | ····················································· | 307 | ·····················································3·3\xd |
Max diff block lines reached; 5431/21706 bytes (25.02%) of diff not shown. |