The ChainCon Software (Release 0.03)
Macros | Functions | Variables
experiment1.cpp File Reference

A program for experimentation with the formula for the A-W diagonal. More...

#include <istream>
#include <ostream>
#include <string>
#include "chaincon/stringhash.h"
#include "chomp/system/config.h"
#include "chomp/system/textfile.h"
#include "chomp/system/timeused.h"
#include "chomp/system/arg.h"
#include "chomp/struct/hashsets.h"
#include "chaincon/cubcell.h"
#include "chaincon/awdiagcub.h"
#include "chaincon/simplex.h"
#include "chaincon/awdiagsim.h"
#include "chaincon/emptycell.h"
#include "chaincon/chain.h"
#include "chaincon/linmap.h"
#include "chaincon/comblinmap.h"
#include "chaincon/ringzp.h"
#include "chaincon/cellnames.h"
#include "chaincon/awdiag.h"
#include "chaincon/boundary.h"
#include "chaincon/wrapping.h"
#include "atmodcomp.h"

Go to the source code of this file.

Macros

#define CUBES_NOT_SIMPLICES
 
#define SPACE_WRAPPING
 

Functions

template<class SetT , class CellT , class CoefT , class CellNames >
void experiment (const SetT &K, const chomp::homology::hashedset< CellT > &H, const tLinMap< CellT, CellT, CoefT > &pi, const tLinMap< CellT, CellT, CoefT > &incl, const tLinMap< CellT, CellT, CoefT > &phi, CellNames &cellNames)
 Runs the experimental calculations. More...
 
int main (int argc, char *argv [])
 The main procedure of the program. More...
 

Variables

const char * title
 The title of the program and licensing information. More...
 
const char * helpinfo
 Brief help information on the program's usage. More...
 

Detailed Description

A program for experimentation with the formula for the A-W diagonal.

Definition in file experiment1.cpp.

Macro Definition Documentation

◆ CUBES_NOT_SIMPLICES

#define CUBES_NOT_SIMPLICES

Definition at line 29 of file experiment1.cpp.

◆ SPACE_WRAPPING

#define SPACE_WRAPPING

Definition at line 31 of file experiment1.cpp.

Function Documentation

◆ experiment()

template<class SetT , class CellT , class CoefT , class CellNames >
void experiment ( const SetT &  K,
const chomp::homology::hashedset< CellT > &  H,
const tLinMap< CellT, CellT, CoefT > &  pi,
const tLinMap< CellT, CellT, CoefT > &  incl,
const tLinMap< CellT, CellT, CoefT > &  phi,
CellNames &  cellNames 
)
inline

Runs the experimental calculations.

Definition at line 110 of file experiment1.cpp.

References AWdiagonal(), boundary(), and cells2names().

Referenced by main().

◆ main()

int main ( int  argc,
char *  argv[] 
)

The main procedure of the program.

Returns: 0 = Ok, -1 = Error, 1 = Help displayed, 2 = Wrong arguments.

Definition at line 181 of file experiment1.cpp.

References computeAlgTopModel(), experiment(), helpinfo, readFilteredComplexes(), and title.

Variable Documentation

◆ helpinfo

const char* helpinfo
Initial value:
= "\
This program does some computations to experiment with the A-W diagonal.\n\
The ring of coefficients is Z or Z_p (the integers modulo prime number p).\n\
Call with:\n\
filename - the name of a file that contains a list of cubical cells,\n\
Switches and additional arguments:\n\
filename2 - the name of an additional file for relative (co)homology;\n\
-pN - selection of the coefficients: p=0 for Z, p=1 unsupported in this\n\
\tprogram, p > 1 for Z_p (default: p=2); please, use p <= 181,\n\
-r - compute reduced homology (with the empty set as a cell of dim -1),\n\
-b - don't add boundary cells (use -bx and -ba for X and A selectively),\n\
-w N1,..,Nk - set space wrapping, a.k.a. periodic boundary conditions;\n\
\trepeat the n-tuple for each dimension n; use 0 for no wrapping,\n\
-dpi, -dincl, -dphi - display the computed maps: pi, incl, phi,\n\
-drepr - display homology representants (meaningful for -aN with N < 3),\n\
-aN - homology algorithm: 0 = old (very slow), 1 = new without additional\n\
optimization (relatively fast), 2 = new (default), 3,4 = using the SNF,\n\
--verify - do additional verification of the computed maps,\n\
--log filename - save the output to a file (without progress indicators),\n\
--quiet - suppress data output to the screen (whcih can be still logged),\n\
--help - display this brief help information only and exit.\n\
For more information please consult the accompanying documentation\n\
or ask the program's author at http://www.PawelPilarczyk.com/."

Brief help information on the program's usage.

Definition at line 79 of file experiment1.cpp.

Referenced by main().

◆ title

const char* title
Initial value:
= "\
Experimentation with the formula for the A-W diagonal.\n\
Version 0.00 (Sep 24, 2015). Copyright (C) 1997-2016 by Pawel Pilarczyk.\n\
This is free software. No warranty. Consult 'license.txt' for details."

The title of the program and licensing information.

Definition at line 73 of file experiment1.cpp.

Referenced by main().