The ChainCon Software (Release 0.03)
ammodsim.cpp
Go to the documentation of this file.
1
/////////////////////////////////////////////////////////////////////////////
2
///
3
/// \file
4
///
5
/// A program for the computation of algebraic minimal models
6
/// for simplicial complexes.
7
///
8
/////////////////////////////////////////////////////////////////////////////
9
10
// Copyright (C) 2009-2016 by Pawel Pilarczyk.
11
//
12
// This file is part of my research software package. This is free software:
13
// you can redistribute it and/or modify it under the terms of the GNU
14
// General Public License as published by the Free Software Foundation,
15
// either version 3 of the License, or (at your option) any later version.
16
//
17
// This software is distributed in the hope that it will be useful,
18
// but WITHOUT ANY WARRANTY; without even the implied warranty of
19
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20
// GNU General Public License for more details.
21
//
22
// You should have received a copy of the GNU General Public License
23
// along with this software; see the file "license.txt". If not,
24
// please, see <http://www.gnu.org/licenses/>.
25
26
// Started on March 24, 2009. Last revision: June 10, 2015.
27
28
29
// include the string hashing definitions (before including "hashsets.h")
30
#include "
chaincon/stringhash.h
"
31
32
// include selected header files from the CHomP library
33
#include "chomp/system/config.h"
34
#include "chomp/struct/hashsets.h"
35
36
// include relevant local header files
37
#include "
chaincon/simplex.h
"
38
#include "
ammodmain.h
"
39
40
41
// --------------------------------------------------
42
// -------------------- OVERTURE --------------------
43
// --------------------------------------------------
44
45
/// The title of the program and licensing information.
46
const
char
*
title
=
"\
47
Simplicial homology computation with a chain contraction.\n\
48
Version 0.04 (Sep 24, 2015). Copyright (C) 1997-2016 by Pawel Pilarczyk.\n\
49
This is free software. No warranty. Consult 'license.txt' for details."
;
50
51
/// Brief help information on the program's usage.
52
const
char
*
helpinfo
=
"\
53
This program computes simplicial homology groups and homology generators.\n\
54
The ring of coefficients is Z or Z_p (the integers modulo prime number p).\n\
55
Call with:\n\
56
filename - the name of a file that contains a list of simplices,\n\
57
Switches and additional arguments:\n\
58
filename2 - the name of an additional file for relative (co)homology;\n\
59
-pN - selection of the coefficients: p=0 for Z, p>1 for Z_p (default: 0);\n\
60
\tnote: one should use p <= 181.\n\
61
-r - compute reduced homology (with the empty set as a cell of dim -1).\n\
62
-b - don't add boundary cells (use -bx and -ba for X and A selectively),\n\
63
-dpi, -dincl, -dphi - display the computed maps: pi, incl, phi,\n\
64
-dd - display the boundary map in the minimal model (the nontrivial part),\n\
65
--verify - do additional verification of the computed maps,\n\
66
--log filename - save the output to a file (without progress indicators),\n\
67
--quiet - suppress data output to the screen (whcih can be still logged),\n\
68
--help - display this brief help information only and exit.\n\
69
For more information please consult the accompanying documentation\n\
70
or ask the program's author at http://www.PawelPilarczyk.com/."
;
71
72
73
// --------------------------------------------------
74
// ---------------------- main ----------------------
75
// --------------------------------------------------
76
77
/// The main procedure of the program.
78
/// Returns: 0 = Ok, -1 = Error, 1 = Help displayed, 2 = Wrong arguments.
79
int
main
(
int
argc,
char
*argv [])
80
{
81
return
algMinModelMain<tSimplex<int_t,SettableEmptyCell> >
82
(argc, argv,
title
,
helpinfo
);
83
}
/* main */
84
helpinfo
const char * helpinfo
Brief help information on the program's usage.
Definition:
ammodsim.cpp:52
main
int main(int argc, char *argv [])
The main procedure of the program.
Definition:
ammodsim.cpp:79
ammodmain.h
The main function of a program for computing the minimal model of a cellular complex of a given type...
stringhash.h
Hashing keys for std::string.
simplex.h
A simplex class with arbitrary vertices.
title
const char * title
The title of the program and licensing information.
Definition:
ammodsim.cpp:46
Generated on Tue Jan 16 2018 22:49:02 for The ChainCon Software (Release 0.03) by
1.8.13