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

A program for the computation of the Alexander-Whitney diagonal for cubical complexes, using Serre's formula. More...

#include "chaincon/stringhash.h"
#include "chaincon/pair.h"
#include "chomp/system/config.h"
#include "chomp/struct/hashsets.h"
#include "chaincon/cubcell.h"
#include "chaincon/emptycell.h"
#include "chaincon/wrapping.h"
#include "chaincon/awdiagcub.h"
#include "awdiag2dmain.h"

Go to the source code of this file.

Macros

#define SPACE_WRAPPING
 

Functions

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 the computation of the Alexander-Whitney diagonal for cubical complexes, using Serre's formula.

Definition in file awdiag2dcub.cpp.

Macro Definition Documentation

◆ SPACE_WRAPPING

#define SPACE_WRAPPING

Definition at line 42 of file awdiag2dcub.cpp.

Function Documentation

◆ 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 88 of file awdiag2dcub.cpp.

References helpinfo, and title.

Variable Documentation

◆ helpinfo

const char* helpinfo
Initial value:
= "\
This program computes the Alexander-Whitney diagonal for 2-dimensional\n\
homology generators, and represents the result in terms of 1-dimensional\n\
homology genrators. In other words, this program decomposes cavities\n\
into products of cycles.\n\
The ring of coefficients is set to Z_2, the integers modulo 2.\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 homology;\n\
-ddiag - display the A-W diagonal of each 2D homology generator,\n\
-aN - homology algorithm: 0 = old (very slow), 1 = new without additional\n\
\toptimization (relatively fast), 2 = new (default), 3 = using the SNF.\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\
--verify - do additional verification of the computed A-W diagonal,\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 57 of file awdiag2dcub.cpp.

Referenced by main().

◆ title

const char* title
Initial value:
= "\
Alexander-Whitney diagonal for cubical complexes (Serre's formula).\n\
Version 0.02 (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 51 of file awdiag2dcub.cpp.

Referenced by main().