/usr/share/gap/pkg/AtlasRep/doc/chap4.html is in gap-atlasrep 1.5.1-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 | <?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
<title>GAP (AtlasRep) - Chapter 4: Customizations of the AtlasRep Package</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
<meta name="generator" content="GAPDoc2HTML" />
<link rel="stylesheet" type="text/css" href="manual.css" />
<script src="manual.js" type="text/javascript"></script>
<script type="text/javascript">overwriteStyle();</script>
</head>
<body class="chap4" onload="jscontent()">
<div class="chlinktop"><span class="chlink1">Goto Chapter: </span><a href="chap0.html">Top</a> <a href="chap1.html">1</a> <a href="chap2.html">2</a> <a href="chap3.html">3</a> <a href="chap4.html">4</a> <a href="chap5.html">5</a> <a href="chap6.html">6</a> <a href="chap7.html">7</a> <a href="chapBib.html">Bib</a> <a href="chapInd.html">Ind</a> </div>
<div class="chlinkprevnexttop"> <a href="chap0.html">[Top of Book]</a> <a href="chap0.html#contents">[Contents]</a> <a href="chap3.html">[Previous Chapter]</a> <a href="chap5.html">[Next Chapter]</a> </div>
<p><a id="X7DBC1D157F0EE283" name="X7DBC1D157F0EE283"></a></p>
<div class="ChapSects"><a href="chap4.html#X7DBC1D157F0EE283">4 <span class="Heading">Customizations of the <strong class="pkg">AtlasRep</strong> Package</span></a>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X8104B09D80CAA41A">4.1 <span class="Heading">Installing the <strong class="pkg">AtlasRep</strong> Package</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X7A40921B84F27E68">4.2 <span class="Heading">Maintaining the Local Data of the <strong class="pkg">AtlasRep</strong>
Package</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7AC3EA317EDBDA0E">4.2-1 ReloadAtlasTableOfContents</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7E3E52D380C20363">4.2-2 StoreAtlasTableOfContents</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X847A5AFD7B5D8570">4.2-3 ReplaceAtlasTableOfContents</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7E04B1C57C38DCB2">4.2-4 AtlasOfGroupRepresentationsTestTableOfContentsRemoteUpdates</a></span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X81358A377CC2C463">4.3 <span class="Heading">User Parameters for the <strong class="pkg">AtlasRep</strong> Package</span></a>
</span>
<div class="ContSSBlock">
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7E1934D2780D108F">4.3-1 <span class="Heading">Local or Remote Access</span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X826B8F128277032E">4.3-2 <span class="Heading">Adding and Removing Servers</span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7D58635A79A666DB">4.3-3 <span class="Heading">Accessing Data Files with the <strong class="pkg">GAP</strong> Package <strong class="pkg">IO</strong>
or with <code class="file">wget</code></span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7E0AC1127B4363E7">4.3-4 <span class="Heading">Compressed or Uncompressed Data Files</span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7DAC8E1E7A419360">4.3-5 <span class="Heading">Customizing <code class="code">DisplayAtlasInfo</code></span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7FA485E479F6C3A0">4.3-6 <span class="Heading">Customizing the Access to Data Files</span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X866E1476853E42C2">4.3-7 <span class="Heading">Reading Large Matrices over Finite Fields</span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X828B39E6853F357A">4.3-8 AtlasOfGroupRepresentationsUserParameters</a></span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7F6F45758688CBC7">4.3-9 <span class="Heading">User preference <code class="code">AtlasRepDataDirectory</code></span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X83BCD08D7CA64406">4.3-10 <span class="Heading">User preference <code class="code">WriteMeatAxeFilesOfMode2</code></span></a>
</span>
<span class="ContSS"><br /><span class="nocss"> </span><a href="chap4.html#X7FFD07D784899045">4.3-11 <span class="Heading">User preference <code class="code">BaseOfMeatAxePermutation</code></span></a>
</span>
</div></div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X876E8147820EABAF">4.4 <span class="Heading">Web Services for the <strong class="pkg">AtlasRep</strong> Package</span></a>
</span>
</div>
<div class="ContSect"><span class="tocline"><span class="nocss"> </span><a href="chap4.html#X80C7729A8404F682">4.5 <span class="Heading">Extending the <strong class="pkg">ATLAS</strong> Database</span></a>
</span>
</div>
</div>
<h3>4 <span class="Heading">Customizations of the <strong class="pkg">AtlasRep</strong> Package</span></h3>
<p><a id="X8104B09D80CAA41A" name="X8104B09D80CAA41A"></a></p>
<h4>4.1 <span class="Heading">Installing the <strong class="pkg">AtlasRep</strong> Package</span></h4>
<p>To install the package, unpack the archive file in a directory in the <code class="file">pkg</code> directory of your local copy of <strong class="pkg">GAP</strong> 4. This might be the <code class="file">pkg</code> directory of the <strong class="pkg">GAP</strong> 4 root directory, see <a href="../../../doc/ref/chap76.html#X82473E4B8756C6CD"><span class="RefLink">Reference: Installing a GAP Package</span></a> for details. It is however also possible to keep an additional <code class="file">pkg</code> directory in your private directories, see Section <a href="../../../doc/ref/chap9.html#X7A4973627A5DB27D"><span class="RefLink">Reference: GAP Root Directories</span></a>. The latter possibility <em>must</em> be chosen if you do not have write access to the <strong class="pkg">GAP</strong> root directory.</p>
<p>Data files that are available from an earlier version of the package are in principle kept; see <code class="func">AtlasOfGroupRepresentationsTestTableOfContentsRemoteUpdates</code> (<a href="chap4.html#X7E04B1C57C38DCB2"><span class="RefLink">4.2-4</span></a>) for necessary updates.</p>
<p>If it is likely that one will work offline, it makes sense to install the "starter archive" that can be downloaded from the package's homepage.</p>
<p>The package consists entirely of <strong class="pkg">GAP</strong> code, no external binaries need to be compiled for the package itself. However, if the <strong class="pkg">GAP</strong> package <strong class="pkg">IO</strong> <a href="chapBib.html#biBIO">[Neu14]</a> is used to access remote data files (see Section <a href="chap4.html#X7D58635A79A666DB"><span class="RefLink">4.3-3</span></a>) then its external binary must be available.</p>
<p>After unpacking the package archive, the write permissions for those directories should be checked into which users will download files. Every user can customize these paths via a user preference, see Section <a href="chap4.html#X7F6F45758688CBC7"><span class="RefLink">4.3-9</span></a>, the defaults are the subdirectories <code class="file">datagens</code> and <code class="file">dataword</code> of the package directory. The recommended permissions under UNIX for the default directories are set as follows.</p>
<div class="example"><pre>
you@unix> chmod 1777 atlasrep/data*
you@unix> ls -ld atlasrep/data*
drwxrwxrwt 3 you you 1024 Oct 31 12:34 datagens
drwxrwxrwt 3 you you 1024 Oct 31 12:34 dataword
</pre></div>
<p>For checking the installation of the package, you should start <strong class="pkg">GAP</strong> and call</p>
<div class="example"><pre>
<span class="GAPprompt">gap></span> <span class="GAPinput">ReadPackage( "atlasrep", "tst/testinst.g" );</span>
</pre></div>
<p>If the installation is o.k. then the <strong class="pkg">GAP</strong> prompt appears without anything else being printed; otherwise the output lines tell you what should be changed.</p>
<p>More test files are available in the <code class="file">tst</code> directory of the package, see Section <a href="chap7.html#X7D42612882656B32"><span class="RefLink">7.8</span></a> for details.</p>
<p>PDF, HTML, and text versions of the package manual are available in the <code class="file">doc</code> directory of the package.</p>
<p><a id="X7A40921B84F27E68" name="X7A40921B84F27E68"></a></p>
<h4>4.2 <span class="Heading">Maintaining the Local Data of the <strong class="pkg">AtlasRep</strong>
Package</span></h4>
<p><a id="sect:maintain"/> The current <em>table of contents</em> of the database is contained in the file <code class="file">gap/atlasprm.g</code> of the <strong class="pkg">AtlasRep</strong> package. This file is read by default when the package is loaded. It may happen that new data files have been added to the servers since the last release of the <strong class="pkg">AtlasRep</strong> package, thus it is useful to update the table of contents of the package from time to time.</p>
<p>For that, one can fetch the most recent version of the file <code class="file">gap/atlasprm.g</code> from the home page of the package (see Section <a href="chap4.html#X876E8147820EABAF"><span class="RefLink">4.4</span></a>), either by calling <code class="func">ReloadAtlasTableOfContents</code> (<a href="chap4.html#X7AC3EA317EDBDA0E"><span class="RefLink">4.2-1</span></a>) in a <strong class="pkg">GAP</strong> session or "by hand". In the latter case, the new file can then be read into the <strong class="pkg">GAP</strong> session via <code class="func">ReplaceAtlasTableOfContents</code> (<a href="chap4.html#X847A5AFD7B5D8570"><span class="RefLink">4.2-3</span></a>). Alternatively, one can add a line to the user's <code class="file">gaprc</code> file (see <a href="../../../doc/ref/chap3.html#X7FD66F977A3B02DF"><span class="RefLink">Reference: The gap.ini and gaprc files</span></a>), which assigns the filename of the current <code class="file">gap/atlasprm.g</code> file (as an absolute path or relative to the user's home directory, cf. <code class="func">Directory</code> (<a href="../../../doc/ref/chap9.html#X86A71E927EEC7EAD"><span class="RefLink">Reference: Directory</span></a>)) to the global variable <code class="code">ATLASREP_TOCFILE</code>; in this case, this file is read instead of the one from the package distribution when the package is loaded.</p>
<p>Users who have write access to the directory where the <strong class="pkg">AtlasRep</strong> package is installed can alternatively use the <code class="file">maketoc</code> script in the <code class="file">etc</code> directory of the package for regularly updating the file <code class="file">gap/atlasprm.g</code>. Users without this write access can store the new file in a different place, and read it with <code class="func">ReplaceAtlasTableOfContents</code> (<a href="chap4.html#X847A5AFD7B5D8570"><span class="RefLink">4.2-3</span></a>).</p>
<p><a id="X7AC3EA317EDBDA0E" name="X7AC3EA317EDBDA0E"></a></p>
<h5>4.2-1 ReloadAtlasTableOfContents</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ ReloadAtlasTableOfContents</code>( <var class="Arg">dirname</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: <code class="keyw">fail</code> if the required table of contents could not be reloaded, otherwise <code class="keyw">true</code>.</p>
<p>Let <var class="Arg">dirname</var> be a string, which must be one of <code class="code">"remote"</code>, <code class="code">"local"</code>, or the name of a private data directory (see Chapter <a href="chap5.html#X7B33345C7B304697"><span class="RefLink">5</span></a>).</p>
<p>In the case of <code class="code">"remote"</code>, the file <code class="file">atlasprm.g</code> is fetched from the package's home page, and then read into <strong class="pkg">GAP</strong>. In the case of <code class="code">"local"</code>, the subset of the data listed in the <code class="code">"remote"</code> table of contents is considered that are actually available in the local data directories. In the case of a private directory, its contents is inspected, and the table of contents for <var class="Arg">dirname</var> is replaced by the one obtained from inspecting the actual contents of the data directories (see Section <a href="chap7.html#X7AD2556F87F1D40D"><span class="RefLink">7.7</span></a>).</p>
<p><a id="X7E3E52D380C20363" name="X7E3E52D380C20363"></a></p>
<h5>4.2-2 StoreAtlasTableOfContents</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ StoreAtlasTableOfContents</code>( <var class="Arg">filename</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Let <var class="Arg">filename</var> be a string. This function prints the loaded table of contents of the servers to the file with name <var class="Arg">filename</var>.</p>
<p><a id="X847A5AFD7B5D8570" name="X847A5AFD7B5D8570"></a></p>
<h5>4.2-3 ReplaceAtlasTableOfContents</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ ReplaceAtlasTableOfContents</code>( <var class="Arg">filename</var> )</td><td class="tdright">( function )</td></tr></table></div>
<p>Let <var class="Arg">filename</var> be the name of a file that has been created with <code class="func">StoreAtlasTableOfContents</code> (<a href="chap4.html#X7E3E52D380C20363"><span class="RefLink">4.2-2</span></a>).</p>
<p><code class="func">ReplaceAtlasTableOfContents</code> first removes the information that <strong class="pkg">GAP</strong> has stored about the table of contents of the servers, and then reads the file with name <var class="Arg">filename</var>, thus replacing the previous information by the stored one.</p>
<p><a id="X7E04B1C57C38DCB2" name="X7E04B1C57C38DCB2"></a></p>
<h5>4.2-4 AtlasOfGroupRepresentationsTestTableOfContentsRemoteUpdates</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ AtlasOfGroupRepresentationsTestTableOfContentsRemoteUpdates</code>( )</td><td class="tdright">( function )</td></tr></table></div>
<p>Returns: the list of names of all locally available data files that should be removed.</p>
<p>This function fetches the file <code class="file">changes.html</code> from the package's home page, extracts the times of changes for the data files in question, and compares them with the times of the last changes of the local data files. For that, the <strong class="pkg">GAP</strong> package <strong class="pkg">IO</strong> <a href="chapBib.html#biBIO">[Neu14]</a> is needed; if it is not available then an error message is printed, and <code class="keyw">fail</code> is returned.</p>
<p>If the time of the last modification of a server file is later than that of the local copy then the local file must be updated. (This means that <code class="code">touch</code>ing files in the local directories will cheat this function.)</p>
<p>It is useful that a system administrator (i. e., someone who has the permission to remove files from the data directories) runs this function from time to time, and afterwards removes the files in the list that is returned. This way, new versions of these files will be fetched automatically from the servers when a user asks for their data.</p>
<p><a id="X81358A377CC2C463" name="X81358A377CC2C463"></a></p>
<h4>4.3 <span class="Heading">User Parameters for the <strong class="pkg">AtlasRep</strong> Package</span></h4>
<p>This section lists global parameters for which it might make sense to change their defaults by assignments to global variables (see <code class="func">AtlasOfGroupRepresentationsUserParameters</code> (<a href="chap4.html#X828B39E6853F357A"><span class="RefLink">4.3-8</span></a>) for an overview of these parameters) or using <strong class="pkg">GAP</strong>'s user preferences (see <a href="../../../doc/ref/chap3.html#X7B0AD104839B6C3C"><span class="RefLink">Reference: Configuring User preferences</span></a>).</p>
<p><a id="X7E1934D2780D108F" name="X7E1934D2780D108F"></a></p>
<h5>4.3-1 <span class="Heading">Local or Remote Access</span></h5>
<p>There are two possibilities to use the <strong class="pkg">AtlasRep</strong> package.</p>
<dl>
<dt><strong class="Mark"><em>Local access only (offline)</em></strong></dt>
<dd><p>You can restrict the access to the data that are actually stored in the local installation of <strong class="pkg">GAP</strong>.</p>
</dd>
<dt><strong class="Mark"><em>Remote access (online)</em></strong></dt>
<dd><p>If your computer is connected to a network that provides access to the <strong class="pkg">ATLAS</strong> data (for example the internet) then the functions of the package may fetch the requested data automatically from remote servers when they are required for the first time; these data are then by default stored in the local copy, so later access to them needs no network transfer.</p>
</dd>
</dl>
<p>The latter possibility is presently not used by other <strong class="pkg">GAP</strong> packages, so it may be regarded as an important feature of the <strong class="pkg">AtlasRep</strong> package. Anyhow it requires a few words of explanation.</p>
<p>The possibility of online access reflects in particular the fact that the <strong class="pkg">ATLAS</strong> of Group Representations is designed as an <em>open database</em>, it is expected to grow. As soon as the developers of the <strong class="pkg">ATLAS</strong> of Group Representations add new information to the servers, these data become available in <strong class="pkg">GAP</strong> when remote access is enabled, after one has updated the corresponding table of contents (see Section <a href="chap4.html#X7A40921B84F27E68"><span class="RefLink">4.2</span></a>).</p>
<p>Remote access is enabled if and only if the value of the <code class="code">remote</code> component of the global variable <code class="func">AtlasOfGroupRepresentationsInfo</code> (<a href="chap7.html#X7BEC94A6781E126E"><span class="RefLink">7.1-6</span></a>) is <code class="keyw">true</code>. If one wants to work offline, i.e., if one does <em>not</em> want <strong class="pkg">GAP</strong> to attempt accessing remote data then this value must be set to <code class="keyw">false</code>.</p>
<p>Conversely, if the default value of the <code class="code">remote</code> component in your <strong class="pkg">GAP</strong> installation is <code class="keyw">false</code> then changing this value to <code class="keyw">true</code> may be not successful. First, it might be the case that no server is reachable. And second, if one can in principle <em>download</em> files from a server then it might be impossible to actually <em>store</em> these files in the data directories of the installed package; in this case, it is advisable to install the whole package or just its data directories in a private directory, see <a href="../../../doc/ref/chap9.html#X7A4973627A5DB27D"><span class="RefLink">Reference: GAP Root Directories</span></a> for details.</p>
<p><a id="X826B8F128277032E" name="X826B8F128277032E"></a></p>
<h5>4.3-2 <span class="Heading">Adding and Removing Servers</span></h5>
<p>When access to remote data is enabled (see Section <a href="chap4.html#X7E1934D2780D108F"><span class="RefLink">4.3-1</span></a>) then the available servers are given by the <code class="code">servers</code> component of the global variable <code class="func">AtlasOfGroupRepresentationsInfo</code> (<a href="chap7.html#X7BEC94A6781E126E"><span class="RefLink">7.1-6</span></a>).</p>
<p><em>Removing</em> entries from this list means to disable access to the corresponding servers, <em>adding</em> entries makes the corresponding servers available. Of course the latter makes sense only if the new servers really exist, for example in a local network.</p>
<p>Currently there is just one remote server. As soon as other servers become available, or a server name is changed which makes it necessary to adjust the <code class="code">servers</code> component, this will be announced in the <strong class="pkg">GAP</strong> Forum, cf. <a href="../../../doc/tut/chap1.html#X7B488D2E8492AB6A"><span class="RefLink">Tutorial: Further Information about GAP</span></a>. The same holds when upgrades of the package become available.</p>
<p><a id="X7D58635A79A666DB" name="X7D58635A79A666DB"></a></p>
<h5>4.3-3 <span class="Heading">Accessing Data Files with the <strong class="pkg">GAP</strong> Package <strong class="pkg">IO</strong>
or with <code class="file">wget</code></span></h5>
<p>When access to remote data is enabled (see Section <a href="chap4.html#X7E1934D2780D108F"><span class="RefLink">4.3-1</span></a>) then one needs either the <strong class="pkg">GAP</strong> package <strong class="pkg">IO</strong> <a href="chapBib.html#biBIO">[Neu14]</a> or the external program <code class="file">wget</code> for accessing data files.</p>
<p>The chosen alternative is given by the value of the <code class="code">wget</code> component of the global variable <code class="func">AtlasOfGroupRepresentationsInfo</code> (<a href="chap7.html#X7BEC94A6781E126E"><span class="RefLink">7.1-6</span></a>).</p>
<p>If this component has the value <code class="keyw">true</code> then only <code class="file">wget</code> is tried, if the value is <code class="keyw">false</code> then only the <strong class="pkg">IO</strong> package is used. If this component is not bound or bound to another value than <code class="keyw">true</code> or <code class="keyw">false</code> (this is also the default) then the <strong class="pkg">IO</strong> package is preferred to <code class="file">wget</code> if this package is available, and otherwise <code class="file">wget</code> is tried.</p>
<p>Note that the system program <code class="file">wget</code> may be not available, and that it may require some work to install it; hints for that can be found on the home page of the <strong class="pkg">AtlasRep</strong> package (see Section <a href="chap4.html#X876E8147820EABAF"><span class="RefLink">4.4</span></a>).</p>
<p><a id="X7E0AC1127B4363E7" name="X7E0AC1127B4363E7"></a></p>
<h5>4.3-4 <span class="Heading">Compressed or Uncompressed Data Files</span></h5>
<p>When used with UNIX, <strong class="pkg">GAP</strong> can read <code class="file">gzip</code>ped files, see <a href="../../../doc/ref/chap3.html#X7CB282757ACB1C09"><span class="RefLink">Reference: Saving and Loading a Workspace</span></a>. If the component <code class="code">compress</code> of <code class="func">AtlasOfGroupRepresentationsInfo</code> (<a href="chap7.html#X7BEC94A6781E126E"><span class="RefLink">7.1-6</span></a>) has the value <code class="keyw">true</code> then each <strong class="pkg">MeatAxe</strong> format file that is fetched from a remote server is afterwards compressed with <code class="file">gzip</code>. This saves a lot of space if many <strong class="pkg">MeatAxe</strong> format files are accessed. (Note that data files in other formats are very small.) For example, at the time of the release of version 1.5.1 there were about <span class="SimpleMath">8400</span> data files in <strong class="pkg">MeatAxe</strong> format, which needed about <span class="SimpleMath">1400</span> MB in uncompressed text format and about <span class="SimpleMath">275</span> MB in compressed text format. The default value for the component <code class="code">compress</code> is <code class="keyw">false</code>.</p>
<p><a id="X7DAC8E1E7A419360" name="X7DAC8E1E7A419360"></a></p>
<h5>4.3-5 <span class="Heading">Customizing <code class="code">DisplayAtlasInfo</code></span></h5>
<p>The way how <code class="func">DisplayAtlasInfo</code> (<a href="chap3.html#X79DACFFA7E2D1A99"><span class="RefLink">3.5-1</span></a>) shows the requested overview is controlled by the component <code class="code">displayFunction</code> of <code class="func">AtlasOfGroupRepresentationsInfo</code> (<a href="chap7.html#X7BEC94A6781E126E"><span class="RefLink">7.1-6</span></a>). The default value is <code class="func">Print</code> (<a href="../../../doc/ref/chap6.html#X7AFA64D97A1F39A3"><span class="RefLink">Reference: Print</span></a>), other useful values are <code class="func">PrintFormattedString</code> (<a href="../../../pkg/GAPDoc/doc/chap6.html#X812A8326844BC910"><span class="RefLink">GAPDoc: PrintFormattedString</span></a>) and <code class="code">AGR.Pager</code>; the latter calls <code class="func">Pager</code> (<a href="../../../doc/ref/chap2.html#X7ED03E41792C3840"><span class="RefLink">Reference: Pager</span></a>) with the <code class="code">formatted</code> option, which is necessary for switching off <strong class="pkg">GAP</strong>'s automatic line breaking.</p>
<p><a id="X7FA485E479F6C3A0" name="X7FA485E479F6C3A0"></a></p>
<h5>4.3-6 <span class="Heading">Customizing the Access to Data Files</span></h5>
<p>By default, local data files are stored in the subdirectories <code class="file">datagens</code> and <code class="file">dataword</code> of the directory given by the user preference <code class="code">AtlasRepDataDirectory</code> (see Section <a href="chap4.html#X7F6F45758688CBC7"><span class="RefLink">4.3-9</span></a>), and the files are exactly the text files provided on the servers. However, a more flexible approach may be useful.</p>
<p>First, one may want to use <em>different file formats</em>, for example the <strong class="pkg">MeatAxe</strong> binary files that are provided by the servers parallel to the <strong class="pkg">MeatAxe</strong> text files. Second, one may want to use <em>a different directory structure</em>, for example the same structure as used on the servers –this makes sense for example if a local mirror of a server is available, because then one can read the server files directly, without transferring/copying them to another directory.</p>
<p>As a consequence, one would like to customize the meaning of the following three access steps.</p>
<dl>
<dt><strong class="Mark">Are the required files locally available?</strong></dt>
<dd><p>The required files may have a different name or a different path, and the data can be available in one file or can be distributed to several files.</p>
</dd>
<dt><strong class="Mark">How can a file be made locally available?</strong></dt>
<dd><p>A different server file may be fetched or some postprocessing may be required.</p>
</dd>
<dt><strong class="Mark">How is the data of a file accessed by <strong class="pkg">GAP</strong>?</strong></dt>
<dd><p>A different function may be needed to read the file.</p>
</dd>
</dl>
<p>Details how to achieve these customizations can be found in Section <a href="chap7.html#X81C5B5E78215169D"><span class="RefLink">7.2</span></a>.</p>
<p><a id="X866E1476853E42C2" name="X866E1476853E42C2"></a></p>
<h5>4.3-7 <span class="Heading">Reading Large Matrices over Finite Fields</span></h5>
<p>Matrices over finite fields in <strong class="pkg">GAP</strong> can be represented in a compressed format that needs less space than the corresponding text file. Such a <strong class="pkg">MeatAxe</strong> format text file can be read by <code class="func">ScanMeatAxeFile</code> (<a href="chap7.html#X83D5103780E1238F"><span class="RefLink">7.3-1</span></a>) either line by line (which is the default) or as a whole; the latter is faster but needs more space than the former. For example, a <span class="SimpleMath">4370</span> by <span class="SimpleMath">4370</span> matrix over the field with two elements (as occurs for an irreducible representation of the Baby Monster) requires less than <span class="SimpleMath">3</span> MB space in <strong class="pkg">GAP</strong> but the corresponding <strong class="pkg">MeatAxe</strong> format text file is more than <span class="SimpleMath">19</span> MB large, which means that when one reads the file with the fast variant, <strong class="pkg">GAP</strong> will temporarily grow by more than this value. One can change the mode by setting the global variable <code class="func">CMeatAxe.FastRead</code> (<a href="chap7.html#X85B6010C85A06CB6"><span class="RefLink">7.1-4</span></a>) to <code class="keyw">true</code> or <code class="keyw">false</code>, respectively.</p>
<p>Note that this parameter is meaningful only when <code class="func">ScanMeatAxeFile</code> (<a href="chap7.html#X83D5103780E1238F"><span class="RefLink">7.3-1</span></a>) is used. It has no effect for example if <strong class="pkg">MeatAxe</strong> binary files are read, cf. <code class="func">FFMatOrPermCMtxBinary</code> (<a href="chap7.html#X872FA00C7F791FBB"><span class="RefLink">7.3-5</span></a>).</p>
<p><a id="X828B39E6853F357A" name="X828B39E6853F357A"></a></p>
<h5>4.3-8 AtlasOfGroupRepresentationsUserParameters</h5>
<div class="func"><table class="func" width="100%"><tr><td class="tdleft"><code class="func">‣ AtlasOfGroupRepresentationsUserParameters</code>( )</td><td class="tdright">( function )</td></tr></table></div>
<p>This function returns a string that describes an overview of the current values of the user parameters introduced in this section. One can use <code class="func">Print</code> (<a href="../../../doc/ref/chap6.html#X7AFA64D97A1F39A3"><span class="RefLink">Reference: Print</span></a>) or <code class="func">Pager</code> (<a href="../../../doc/ref/chap2.html#X7ED03E41792C3840"><span class="RefLink">Reference: Pager</span></a>) for showing the overview.</p>
<p><a id="X7F6F45758688CBC7" name="X7F6F45758688CBC7"></a></p>
<h5>4.3-9 <span class="Heading">User preference <code class="code">AtlasRepDataDirectory</code></span></h5>
<p>The value must be a string that is the filename of a directory (in the sense of <code class="func">IsDirectoryPath</code> (<a href="../../../doc/ref/chap9.html#X7D1BE00F83C4EEE8"><span class="RefLink">Reference: IsDirectoryPath</span></a>)) that contains the directories <code class="file">datagens</code> and <code class="file">dataword</code> in which downloaded data will be stored. The default is the installation path of the <strong class="pkg">AtlasRep</strong> package (including a trailing slash symbol).</p>
<p><a id="X83BCD08D7CA64406" name="X83BCD08D7CA64406"></a></p>
<h5>4.3-10 <span class="Heading">User preference <code class="code">WriteMeatAxeFilesOfMode2</code></span></h5>
<p>The value <code class="keyw">true</code> means that the function <code class="func">MeatAxeString</code> (<a href="chap7.html#X7DDD09BE87063052"><span class="RefLink">7.3-2</span></a>) will encode permutation matrices via mode 2 descriptions, that is, the first entry in the header line is 2, and the following lines contain the positions of the nonzero entries. If the value is <code class="keyw">false</code> (the default) then <code class="func">MeatAxeString</code> (<a href="chap7.html#X7DDD09BE87063052"><span class="RefLink">7.3-2</span></a>) encodes permutation matrices via mode 1 or mode 6 descriptions, that is, the lines contain the matrix entries.</p>
<p><a id="X7FFD07D784899045" name="X7FFD07D784899045"></a></p>
<h5>4.3-11 <span class="Heading">User preference <code class="code">BaseOfMeatAxePermutation</code></span></h5>
<p>The value <span class="SimpleMath">0</span> means that the function <code class="func">CMtxBinaryFFMatOrPerm</code> (<a href="chap7.html#X8477AA668733255C"><span class="RefLink">7.3-4</span></a>) writes zero-based permutations, that is, permutations acting on the points from <span class="SimpleMath">0</span> to the degree minus one; this is achieved by shifting down all images of the <strong class="pkg">GAP</strong> permutation by one. The value <span class="SimpleMath">1</span> (the default) means that the permutation stored in the binary file acts on the points from <span class="SimpleMath">1</span> to the degree.</p>
<p>Up to version 2.3 of the <code class="code">C</code>-<strong class="pkg">MeatAxe</strong>, permutations in binary files were always one-based. Zero-based permutations were introduced in version 2.4, which still is able to read files containing one-based permutations.</p>
<p><a id="X876E8147820EABAF" name="X876E8147820EABAF"></a></p>
<h4>4.4 <span class="Heading">Web Services for the <strong class="pkg">AtlasRep</strong> Package</span></h4>
<p>The home page of the <strong class="pkg">AtlasRep</strong> package is</p>
<p><span class="URL"><a href="http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep">http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep</a></span>.</p>
<p>Besides package archives and introductory package information, it provides</p>
<ul>
<li><p>the current file with the <em>table of contents</em> (the file <code class="file">gap/atlasprm.g</code> of the package, see <span class="URL"><a href="http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep/atlasprm.g">http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep/atlasprm.g</a></span>), cf. <code class="func">ReloadAtlasTableOfContents</code> (<a href="chap4.html#X7AC3EA317EDBDA0E"><span class="RefLink">4.2-1</span></a>),</p>
</li>
<li><p>a <em>starter archive</em> containing many small representations and programs (see <span class="URL"><a href="http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep/atlasrepdata.tar.gz">http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep/atlasrepdata.tar.gz</a></span>),</p>
</li>
<li><p>the list of <em>changes of server files</em> in HTML format (see <span class="URL"><a href="http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep/htm/data/changes.htm">http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep/htm/data/changes.htm</a></span>), cf. <code class="func">AtlasOfGroupRepresentationsTestTableOfContentsRemoteUpdates</code> (<a href="chap4.html#X7E04B1C57C38DCB2"><span class="RefLink">4.2-4</span></a>), and</p>
</li>
<li><p>an <em>overview of the data</em> available via the <strong class="pkg">GAP</strong> interface to the <strong class="pkg">ATLAS</strong> of Group Representations, in HTML format (see <span class="URL"><a href="http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep/htm/data/overview.htm">http://www.math.rwth-aachen.de/~Thomas.Breuer/atlasrep/htm/data/overview.htm</a></span>); this is similar to the information shown by <code class="func">DisplayAtlasInfo</code> (<a href="chap3.html#X79DACFFA7E2D1A99"><span class="RefLink">3.5-1</span></a>), further information can be found on the home page of the <strong class="pkg">ATLAS</strong>, see <span class="URL"><a href="http://brauer.maths.qmul.ac.uk/Atlas">http://brauer.maths.qmul.ac.uk/Atlas</a></span>.</p>
</li>
</ul>
<p><a id="X80C7729A8404F682" name="X80C7729A8404F682"></a></p>
<h4>4.5 <span class="Heading">Extending the <strong class="pkg">ATLAS</strong> Database</span></h4>
<p>Users who have computed new representations that might be interesting for inclusion into the <strong class="pkg">ATLAS</strong> of Group representations can send the data in question to <span class="URL"><a href="mailto:R.A.Wilson@qmul.ac.uk">R.A.Wilson@qmul.ac.uk</a></span>.</p>
<p>It is also possible to store "private" representations and programs in local directories, and to use them in the same way as the "official" data. See Chapter <a href="chap5.html#X7B33345C7B304697"><span class="RefLink">5</span></a> for details.</p>
<div class="chlinkprevnextbot"> <a href="chap0.html">[Top of Book]</a> <a href="chap0.html#contents">[Contents]</a> <a href="chap3.html">[Previous Chapter]</a> <a href="chap5.html">[Next Chapter]</a> </div>
<div class="chlinkbot"><span class="chlink1">Goto Chapter: </span><a href="chap0.html">Top</a> <a href="chap1.html">1</a> <a href="chap2.html">2</a> <a href="chap3.html">3</a> <a href="chap4.html">4</a> <a href="chap5.html">5</a> <a href="chap6.html">6</a> <a href="chap7.html">7</a> <a href="chapBib.html">Bib</a> <a href="chapInd.html">Ind</a> </div>
<hr />
<p class="foot">generated by <a href="http://www.math.rwth-aachen.de/~Frank.Luebeck/GAPDoc">GAPDoc2HTML</a></p>
</body>
</html>
|