### Example FIRep Input Source: https://rivet.readthedocs.io/en/latest/inputdata.html This example demonstrates the required format for FIRep input, including data specifications and flags. Ensure flags are compatible with bigrade orientations. ```bash --datatype firep --xlabel parameter 1 --ylabel parameter 2 # data 2 3 3 1 0 ; 0 1 2 0 1 ; 0 1 2 0 0 ; 1 2 0 0 ; 0 2 0 0 ; 0 1 ``` -------------------------------- ### Bifiltration Data Input Example Source: https://rivet.readthedocs.io/en/latest/inputdata.html This example demonstrates the format for specifying a bifiltration, including vertex definitions and their appearance bigrades. Ensure the `--datatype bifiltration` flag is used. ```bash --datatype bifiltration --xlabel time of appearance --ylabel network distance #data 0 ; 0 0 1 ; 0 0 2 ; 0 0 3 ; 0 0 0 1 ; 0 0 0 2 ; 0 0 1 2 ; 0 0 0 1 2 ; 0 1 1 0 1 3 ; 1 1 2 3 ; 1 1 ``` -------------------------------- ### Install RIVET Dependencies on Ubuntu Source: https://rivet.readthedocs.io/en/latest/installing.html Installs CMake, Qt5, and Boost libraries required for building RIVET on Ubuntu systems. ```bash sudo apt-get update sudo apt-get install cmake qt5-default qt5-qmake qtbase5-dev-tools libboost-all-dev ``` -------------------------------- ### Install RIVET Dependencies on Mac OS X Source: https://rivet.readthedocs.io/en/latest/installing.html Installs CMake, Qt5, and Boost using Homebrew on Mac OS X. ```bash brew install cmake qt5 boost ``` -------------------------------- ### Install Xcode Command Line Tools Source: https://rivet.readthedocs.io/en/latest/installing.html Installs the Xcode Command Line Tools necessary for development on Mac OS X. This is a prerequisite for building RIVET. ```bash # only needed if you've never run it before, (running it again doesn't hurt anything) # installs XCode Command Line Tools xcode-select --install ``` -------------------------------- ### Minimal Presentation Output Format Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html This example illustrates the expected output format when computing a minimal presentation. It includes x- and y-grades, row and column bigrades, and a sparse matrix representation. ```text x-grades 3 7/2 4 y-grades 0 1 2 MINIMAL PRESENTATION: Number of rows:2 Row bigrades: | (1,0) (0,1) | Number of columns:3 Column bigrades: | (1,1) (2,1) (1,2) | 0 1 1 0 ``` ```text 1 0 1 1 1 0 ``` -------------------------------- ### Configure Qt Base Path for RIVET Build on Mac Source: https://rivet.readthedocs.io/en/latest/installing.html Sets the QT_BASE environment variable to the installation path of Qt5, which is needed for qmake to find the correct Qt version. ```bash export QT_BASE=`brew info qt5 | grep Cellar | cut -d' ' -f1` ``` -------------------------------- ### Compute Module Invariants File with Options Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html Example of computing a module invariants file using specific options. Use --datatype to specify input format, --homology for degree, and --xbins/--ybins for Betti number grid resolution. ```bash rivet_console input.txt output.rivet --datatype metric --homology 1 --xbins 100 --ybins 100 ``` -------------------------------- ### Hilbert Function and Bigraded Betti Numbers Output Format Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html This example shows the output structure for Hilbert function and bigraded Betti numbers. It includes x- and y-grades, non-zero Hilbert function points (x-index, y-index, value), and non-zero Betti number points for each Betti number. ```text x-grades 3 7/2 4 y-grades 0 1 2 Dimensions > 0: (0, 1, 1) (0, 2, 1) (1, 0, 1) (1, 1, 1) (1, 1, 1) (2, 0, 1) Betti numbers: xi_0: (1, 0, 1) (0, 1, 1) xi_1: (1, 1, 1) (1, 2, 1) (2, 1, 1) xi_2: (2, 2, 1) ``` -------------------------------- ### Metric Space with Function Data Type Example Source: https://rivet.readthedocs.io/en/latest/inputdata.html This example demonstrates the file format for the 'metric_fn' data type, including required and optional flags, function values, and the distance matrix. It's used when points in a metric space have associated function values. ```bash #required flag: --datatype metric_fn #optional flags: --xlabel birth time --ylabel geodesic distance #function values 1,1.1,-2 # distance matrix, given in upper triangular format 2,3.2 1.25 ``` -------------------------------- ### Install Homebrew Package Manager Source: https://rivet.readthedocs.io/en/latest/installing.html Installs the Homebrew package manager on Mac OS X, used for installing development tools like CMake, Qt5, and Boost. ```bash /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" ``` -------------------------------- ### Install RIVET Dependencies on WSL Source: https://rivet.readthedocs.io/en/latest/installing.html Installs essential build tools and libraries for RIVET on a Linux distribution within WSL. Run this command in your Linux console. ```bash sudo apt-get update sudo apt-get install cmake build-essential qt5-default qt5-qmake qtbase5-dev-tools libboost-all-dev ``` -------------------------------- ### Example CSV Point Cloud Data Source: https://rivet.readthedocs.io/en/latest/gettingstarted.html This snippet shows the first five lines of a CSV file representing a point cloud in R2. Each line contains two comma-separated coordinates for a point. ```csv 1.57,2.40 1.21,2.70 0.79,-2.44 -2.44,-2.24 -2.54,-1.25 ``` -------------------------------- ### Sample Line File Format Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html This file specifies a list of affine lines in R2R2 with non-negative slope. Each line is defined by its angle (degrees, 0-90) and offset (signed distance from origin). Lines starting with '#' and blank lines are ignored. ```plaintext #A line that starts with a # character will be ignored, as will blank lines 23 -0.22 67 1.88 10 0.92 #100 0.92 <-- will error if uncommented, 100 > 90 ``` -------------------------------- ### Sample Barcode Output Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html The output provides barcode information for each specified line. It includes the query parameters (angle and offset) followed by barcode data, which is a multiset of intervals. For example, '88.1838 inf x1' represents a single interval [88.1838, infinity). ```plaintext 23 -0.22: 88.1838 inf x1, 88.1838 91.2549 x5, 88.1838 89.7194 x12 67 0.88: 23.3613 inf x1 10 0.92: 11.9947 inf x1, 11.9947 19.9461 x2, 11.9947 16.4909 x1, 11.9947 13.0357 x4 ``` -------------------------------- ### Troubleshoot qmake SDK Path Error on Mac Source: https://rivet.readthedocs.io/en/latest/installing.html Resolves the 'Project ERROR: Could not resolve SDK Path for 'macosx'' error by setting the Xcode SDK path. ```bash sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer ``` -------------------------------- ### Access RIVET Console Help Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html Use this command to display the help information for the rivet_console executable, which includes syntax and technical details. ```bash rivet_console (-h | --help) ``` -------------------------------- ### Accept Xcode License Source: https://rivet.readthedocs.io/en/latest/installing.html Accepts the Xcode license agreement from the command line, which is required before using Xcode tools. ```bash sudo xcodebuild -license ``` -------------------------------- ### Compute Hilbert Function and Betti Numbers with rivet_console Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html Execute this command to compute both the Hilbert function and bigraded Betti numbers for a bipersistence module. Use the `--betti` flag with the input file. Note that these cannot be printed separately or combined with the minimal presentation in the current version. ```bash rivet_console --betti [command-line flags] ``` -------------------------------- ### Basic rivet_console Syntax Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html This is the general syntax for using the rivet_console command. Specify input and output files, and optional flags to control the computation. ```bash rivet_console [options] ``` -------------------------------- ### Build RIVET on Ubuntu Source: https://rivet.readthedocs.io/en/latest/installing.html Compiles RIVET using CMake and Make after cloning the repository. Includes steps to create executables and symlink the console. ```bash cd $RIVET_DIR mkdir build cd build cmake .. make cd .. qmake make ``` ```bash ln -s build/rivet_console ``` -------------------------------- ### Configure RIVET Project File for Boost on Mac Source: https://rivet.readthedocs.io/en/latest/installing.html Modifies the RIVET.pro file to specify Boost library paths and include directories, ensuring qmake can locate Boost during the build process. ```qmake CONFIG += c++11 QMAKE_CFLAGS += -std=c++11 -stdlib=libc++ -mmacosx-version-min=10.9 QMAKE_CXXFLAGS += -std=c++11 -stdlib=libc++ -mmacosx-version-min=10.9 LIBS += -L"/usr/local/Cellar/boost/1.63.0/lib" INCLUDEPATH += "/usr/local/Cellar/boost/1.63.0/include" LIBS += -L"/usr/local/Cellar/boost/1.63.0/lib" -lboost_random ``` -------------------------------- ### Compute Minimal Presentation with rivet_console Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html Use this command to compute and print the minimal presentation of a bipersistence module. Specify the input file and use the `--minpres` flag. Additional command-line flags can be appended. ```bash rivet_console --minpres [command-line flags] ``` -------------------------------- ### Build RIVET on Mac OS X Source: https://rivet.readthedocs.io/en/latest/installing.html Compiles RIVET using CMake and Make, utilizing the specified Qt5 path. Includes steps to create executables and symlink the console. ```bash cd $RIVET_DIR mkdir build cd build cmake .. make cd .. $QT_BASE/bin/qmake make ``` ```bash cd rivet_GUI.app/Contents/MacOS ln -s ../../../build/rivet_console ``` -------------------------------- ### Format C++ Source Code Source: https://rivet.readthedocs.io/en/latest/about.html Format all .cpp and .h files in the RIVET project using clang-format. Ensure this is run before submitting code for review. ```shell clang-format -i **/*.cpp **/*.h ``` -------------------------------- ### Compute Barcodes with rivet_console Source: https://rivet.readthedocs.io/en/latest/rivetconsole.html Use this command to compute barcodes for 1-D slices. Specify the input module invariants file and a file containing the lines for which to compute barcodes. ```bash rivet_console --barcodes ``` -------------------------------- ### Set DISPLAY Environment Variable for RIVET Viewer Source: https://rivet.readthedocs.io/en/latest/installing.html Sets the DISPLAY environment variable to enable the RIVET viewer to connect to an X server. This is necessary when running graphical applications from within WSL. ```bash export DISPLAY=:0 ``` -------------------------------- ### Point Cloud with Function Data Format for RIVET Source: https://rivet.readthedocs.io/en/latest/inputdata.html Use this format when providing points in Euclidean n-space along with a function defined on these points. RIVET constructs a function-Rips bifiltration by default. The first line lists function values, followed by point coordinates. ```plaintext #required flag (can be given instead on the command line) --datatype points_fn #optional flags --xlabel birth time --xreverse #function 3,0.5,4 #data 0,0 1.1,2 -2,3 ``` -------------------------------- ### Point Cloud Data Format for RIVET Source: https://rivet.readthedocs.io/en/latest/inputdata.html Use this format for specifying a set of points in Euclidean n-space. RIVET constructs a degree-Rips bifiltration by default. Ensure points are listed with coordinates separated by whitespace or commas. ```plaintext #the following flag is optional, because "points" is the default value of datatype #however, it is not a bad idea to include the flag for readability --datatype points #optional flags --maxdist 0.5 #data 0,0 1.1,2 -2,3 ``` -------------------------------- ### Metric Space Data: Full Matrix Format Source: https://rivet.readthedocs.io/en/latest/inputdata.html Provides a 3x3 symmetric distance matrix with zeros on the diagonal. This format is explicitly provided, one row per line, with numbers separated by whitespace or commas. Use the `--datatype metric` flag. ```plaintext #required flag: --datatype metric #optional flags: --xlabel birth time --ylabel geodesic distance # distance matrix (symmetric matrix, with zeros on the diagonal) 0,2,3.2 2,0,1.25 3.2,1.25,0 ``` -------------------------------- ### RIVET BibTex Citation Source: https://rivet.readthedocs.io/en/latest/about.html Use this BibTex entry to cite the RIVET software in your publications. Ensure the version and year are up-to-date. ```bibtex @software{rivet, author = {{The RIVET Developers}}, title = {RIVET}, url = {https://github.com/rivetTDA/rivet/}, version = {1.1.0}, year = {2020} } ``` -------------------------------- ### Metric Space Data: Upper Triangular Format Source: https://rivet.readthedocs.io/en/latest/inputdata.html Provides the same 3x3 distance data in an upper triangular format. This format specifies only the entries above the diagonal, reducing the amount of data required. Use the `--datatype metric` flag. ```plaintext # distance matrix (upper triangular format) 2,3.2 1.25 ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.