Source Documentation¶
-
class
BadConfigurationError
: public pFIREExpectedError¶ - #include <exceptions.hpp>
-
class
BaseLoader
¶ - #include <baseloader.hpp>
Subclassed by DCMLoader, OIIOLoader, ShIRTLoader
Public Types
-
using
loader_creator
= std::function<BaseLoader_unique(const std::string &filename, MPI_Comm comm)>¶
-
using
loader_map
= std::map<std::string, loader_creator>¶
Public Functions
-
virtual
~BaseLoader
()¶
Public Static Functions
-
static const loader_map &
loaders
()¶
-
bool
register_loader
(const std::string &name, loader_creator loader)¶
-
BaseLoader_unique
find_loader
(const std::string &name, MPI_Comm comm = PETSC_COMM_WORLD)¶
Private Static Attributes
-
std::unique_ptr<BaseLoader::loader_map>
_loaders
= std::make_unique<BaseLoader::loader_map>()¶
-
using
-
class
BaseWriter
¶ - #include <basewriter.hpp>
Subclassed by HDFWriter, OIIOWriter
Public Types
-
using
writer_creator
= std::function<BaseWriter_unique(const std::string &path, MPI_Comm comm)>¶
-
using
creator_map
= std::map<std::string, writer_creator>¶
Public Functions
-
virtual
~BaseWriter
()¶
Public Static Functions
-
template<typename
WriterClass
>
static BaseWriter_uniquecreate_writer
(const std::string &path, MPI_Comm comm)¶
-
template<typename
WriterClass
>
boolregister_writer
()¶
-
BaseWriter_unique
get_writer_by_name
(const std::string &name, const std::string &filename, MPI_Comm comm = PETSC_COMM_WORLD)¶
-
BaseWriter_unique
get_writer_for_filename
(const std::string &filename, MPI_Comm comm = PETSC_COMM_WORLD)¶
-
BaseWriter::string_pair
split_filespec
(std::string input)¶
Public Static Attributes
Private Static Attributes
-
std::unique_ptr<BaseWriter::creator_map>
_creators
= std::make_unique<BaseWriter::creator_map>()¶
-
std::unique_ptr<BaseWriter::extension_map>
_extension_handlers
= std::make_unique<BaseWriter::extension_map>()¶
-
using
-
class
ConfigurationBase
¶ - #include <baseconfiguration.hpp>
Subclassed by IniConfig, ShirtConfig
Public Functions
-
template<typename
T
>
std::enable_if<std::is_same<T, bool>::value, T>::typegrab
(const std::string key) const¶
-
template<typename
T
>
std::enable_if<std::is_integral<T>::value && !std::is_same<T, bool>::value, T>::typegrab
(const std::string key) const¶
-
template<typename
T
>
std::enable_if<std::is_floating_point<T>::value && !std::is_same<T, bool>::value, T>::typegrab
(const std::string key) const¶
-
template<typename
T
>
std::enable_if<std::is_same<T, std::string>::value, T>::typegrab
(std::string key) const¶
-
void
validate_config
()¶
Public Static Attributes
Protected Functions
-
ConfigurationBase
(const int &argc, char const *const *argv)¶
Protected Attributes
-
config_map
config
¶
Protected Static Attributes
-
const config_map ConfigurationBase::arg_options= {{"fixed", ""}, {"moved", ""}, {"nodespacing", ""}, {"registered", "registered.xdmf"}, {"map", "map.xdmf"}, {"lambda", "auto"}, {"mask", ""}, {"registered_h5_path", "/registered"}, {"map_h5_path", "/map"}, {"lambda_mult", "1.0"}, {"intermediate_template", "%name%-intermediate-%s%-%i%%ext%"}, {"intermediate_map_template", "%name%-intermediate-map-%s%-%i%%ext%"}, {"intermediate_directory", "intermediates"}, {"max_iterations", "100"}}
-
const config_map ConfigurationBase::bool_options= { {"verbose", "false"}, {"with_memory", "true"}, {"save_intermediate_frames", "false"}}
-
template<typename
-
class
DCMLoader
: public BaseLoader¶ - #include <dcmloader.hpp>
Public Functions
-
~DCMLoader
()¶
Public Static Functions
-
BaseLoader_unique
Create_Loader
(const std::string &path, MPI_Comm comm)¶
Private Members
-
DcmFileFormat
_datafile
¶
-
-
class
Elastic
¶ - #include <elastic.hpp>
Public Functions
-
Elastic
(const Image &fixed, const Image &moved, const Mask &mask, const floatvector nodespacing, const ConfigurationBase &configuration)¶
-
void
autoregister
()¶
-
floating
approximate_optimum_lambda
(Mat &mat_a, Mat &mat_b, floating lambda_mult, floating initial_guess, floating search_width, uinteger max_iter, floating lambda_min)¶
-
void
calculate_node_spacings
()¶
Public Members
-
MPI_Comm
m_comm
¶
-
const ConfigurationBase &
configuration
¶
-
floatvector2d
m_v_nodespacings
¶
-
floatvector
m_v_final_nodespacing
¶
-
Mat_unique
normmat
¶
-
-
class
FileNotFoundError
: public pFIREExpectedError¶ - #include <exceptions.hpp>
Public Functions
-
class
HDFWriter
: public BaseWriter¶ - #include <hdfwriter.hpp>
Subclassed by XDMFWriter
Public Functions
-
~HDFWriter
()¶
Public Static Attributes
Private Functions
-
void
open_or_create_h5
()¶
Private Members
-
hid_t
_file_h
¶
-
-
class
ImageBase
¶ - #include <imagebase.hpp>
Public Functions
-
MPI_Comm
comm
() const¶
-
uinteger
ndim
() const¶
-
Vec_unique
get_raw_data_row_major
() const¶
-
Vec_unique
get_raw_data_natural
() const¶
-
Vec_unique
gradient
(integer dim)¶
-
void
binarize
()¶
-
Vec_unique
scatter_to_zero
() const¶
Public Static Functions
Protected Functions
-
void
update_local_from_global
()¶
-
void
initialize_dmda
()¶
-
void
initialize_vectors
()¶
Protected Attributes
-
MPI_Comm
m_comm
¶
-
uinteger
m_ndim
¶
-
Vec_shared
m_localvec
¶
-
Vec_shared
m_globalvec
¶
Private Members
-
const size_t
mi_resolution
= 100¶
-
MPI_Comm
-
template<class
T
, classcharT
= char, classtraits
= std::char_traits<charT>>
classinfix_ostream_iterator
: public std::iterator<std::output_iterator_tag, void, void, void, void>¶ - #include <infix_iterator.hpp>
Public Functions
-
infix_ostream_iterator
(ostream_type &s)¶
-
infix_ostream_iterator
(ostream_type &s, charT const *d)¶
-
infix_ostream_iterator<T, charT, traits> &
operator=
(T const &item)¶
-
infix_ostream_iterator<T, charT, traits> &
operator*
()¶
-
infix_ostream_iterator<T, charT, traits> &
operator++
()¶
-
infix_ostream_iterator<T, charT, traits> &
operator++
(int)¶
-
-
class
IniConfig
: public ConfigurationBase¶ - #include <iniconfiguration.hpp>
-
class
InternalError
: public pFIREBaseError¶ - #include <exceptions.hpp>
Public Functions
-
class
InvalidLoaderError
: public pFIREExpectedError¶ - #include <exceptions.hpp>
Public Functions
-
class
InvalidWriterError
: public pFIREExpectedError¶ - #include <exceptions.hpp>
-
class
Map
¶ - #include <map.hpp>
Public Functions
-
Map
(floatvector node_spacing, const Mask &mask)¶
-
Mat *
basis
() const¶
-
Mat *
laplacian
() const¶
-
const floatvector2d
node_locs
() const¶
-
const MPI_Comm &
comm
() const¶
-
uinteger
ndim
() const¶
-
const floatvector &
spacing
() const¶
-
Vec &
displacements
() const¶
-
floatvector
low_corner
() const¶
-
void
update
(const Vec &delta_vec)¶
-
std::unique_ptr<Map>
interpolate
(const floatvector &new_spacing)¶
-
Vec_unique
get_single_dim_natural
(uinteger dim) const¶
-
Vec_unique
get_single_dim_petsc
(uinteger dim) const¶
-
Vec_unique
get_raw_data_row_major
(uinteger dim) const¶
-
void
print_dm_info
()¶
-
void
apply_mask_to_basis
()¶
-
void
alloc_displacements
()¶
-
void
initialize_dmda
() const¶
-
void
calculate_node_info
()¶
-
void
calculate_basis
()¶
-
void
calculate_laplacian
()¶
-
void
calculate_warp_matrix
()¶
-
Vec_unique
calculate_map_mask
(Vec &stacked_mask)¶
Public Members
-
MPI_Comm
m_comm
¶
-
uinteger
m_ndim
¶
-
floatvector
m_v_node_spacing
¶
-
floatvector
m_v_offsets
¶
-
floatvector2d
m_vv_node_locs
¶
-
Mat_unique
m_basis
¶
-
Mat_unique
m_lapl
¶
-
Vec_unique
m_displacements
¶
Public Static Functions
-
intvector
calculate_map_shape
(intvector const &image_shape, floatvector const &nodespacing)¶
-
-
class
OIIOLoader
: public BaseLoader¶ - #include <oiioloader.hpp>
Public Functions
-
~OIIOLoader
()¶
Public Static Functions
-
BaseLoader_unique
Create_Loader
(const std::string &path, MPI_Comm comm)¶
Private Static Attributes
-
ImageCache_unique
cache
¶
-
-
class
OIIOWriter
: public BaseWriter¶ - #include <oiiowriter.hpp>
Public Functions
-
~OIIOWriter
()¶
-
-
class
pFIREBaseError
: public std::runtime_error¶ - #include <exceptions.hpp>
Subclassed by InternalError, pFIREExpectedError
Public Functions
-
const char *
where
()¶
-
const char *
-
class
pFIREExpectedError
: public pFIREBaseError¶ - #include <exceptions.hpp>
Subclassed by BadConfigurationError, FileNotFoundError, InvalidLoaderError, InvalidWriterError, WriterError
-
class
ShirtConfig
: public ConfigurationBase¶ - #include <shirtemulation.hpp>
Protected Functions
-
void
parse_arguments
()¶
-
void
-
class
ShIRTLoader
: public BaseLoader¶ - #include <shirtloader.hpp>
Public Functions
-
~ShIRTLoader
()¶
Public Static Functions
-
BaseLoader_unique
Create_Loader
(const std::string &path, MPI_Comm comm)¶
Private Types
-
using
shirt_header_dtype
= int32_t¶
-
using
image_data_dtype
= float¶
-
using
mask_data_dtype
= int16_t¶
Private Functions
Private Members
-
shirt_file_type
_file_type
¶
Private Static Attributes
-
constexpr MPI_Datatype
image_data_mpi_type
= MPI_FLOAT¶
-
constexpr integer
image_header_bytes
= image_header_length * sizeof(shirt_header_dtype)¶
-
constexpr MPI_Datatype
mask_data_mpi_type
= MPI_SHORT¶
-
constexpr integer
mask_header_bytes
= mask_header_length * sizeof(shirt_header_dtype)¶
-
-
struct
VecScatterDeleter
¶ - #include <types.hpp>
Public Functions
-
void
operator()
(VecScatter *v) const¶
-
void
-
class
WorkSpace
¶ - #include <workspace.hpp>
Public Functions
-
void
scatter_stacked_to_grads
()¶
-
void
scatter_grads_to_stacked
()¶
-
void
duplicate_single_grad_to_stacked
(size_t idx)¶
-
void
scatter_stacked_to_grads_noreorder
()¶
-
void
allocate_persistent_workspace
()¶
-
void
create_reordering_scatterers
()¶
-
void
create_nonreordering_scatterers
()¶
Public Members
-
friend WorkSpace::Elastic
-
friend WorkSpace::Map
-
MPI_Comm
m_comm
¶
-
std::vector<Vec_unique>
m_globaltmps
¶
-
std::vector<VecScatter_unique>
m_r_scatterers
¶
-
std::vector<VecScatter_unique>
m_nr_scatterers
¶
-
Vec_unique
m_stacktmp
¶
-
Vec_unique
m_localtmp
¶
-
Vec_unique
m_delta
¶
-
Vec_unique
m_rhs
¶
-
Mat_unique
m_tmat
¶
-
void
-
class
WriterError
: public pFIREExpectedError¶ - #include <exceptions.hpp>
-
class
XDMFWriter
: public HDFWriter¶ - #include <xdmfwriter.hpp>
Public Functions
-
~XDMFWriter
()¶
Public Static Attributes
Private Functions
-
void
prepopulate_xdmf_ptree
()¶
-
-
namespace
fd
¶ Functions
-
Vec_unique
gradient_to_global_unique
(const DM &dmda, const Vec &localvec, integer dim)¶
-
Vec_unique
-
namespace
std
¶ STL namespace.
-
file
banner.cpp
- #include “banner.hpp”
Variables
-
const std::string kbanner_text_upper= R"( ................................................. ...................... :####################::########::################: :####################: :####################::########::######:"""":#####: :####################: :######:""""""":####: :######: :#####: :#####: :######:""""""":####:..... ......... :#####: """""" :####: :####: :#####: :#####: """""":####...#########: :#####: :####: :####: :#####: :#####::#################: :######:......... :####: :####:....:#####: :######:.........::######:""":######: :###############: :####: :#############: :###############: :#####: :#####: :###############: :####: :####:"""":#####: :###############: :#####: :#####: :######"""""""""" :####: :####: :#####: :######:""""""""" :#####: :#####: :#####: :####: :####: :#####: :#####: :#####: :######: :#####: :####: :####: :#####: :#####: ...... :#####:...:#######::#######: :######: :#####: :#####: :######:......:#####: :################::########: :########::######: :#####::####################: :##############: :########: :########::######: :#####::####################: :######:""""""" """""""""" """""""""""""""""" """"""""""""""""""""""""""""" :#####: :#####::#######: )"
-
const std::string kbanner_text_lower=R"(:#######::#######:""""""""")"
-
-
file
banner.hpp
- #include <string>
Variables
-
file
baseconfiguration.cpp
- #include “baseconfiguration.hpp”#include <sstream>#include “exceptions.hpp”#include “infix_iterator.hpp”
-
file
baseconfiguration.hpp
- #include <iostream>#include <iterator>#include <map>#include <sstream>#include <string>#include <string_view>#include <type_traits>#include <vector>#include <boost/filesystem.hpp>#include “types.hpp”#include “exceptions.hpp”
-
file
baseloader.cpp
- #include “baseloader.hpp”#include “exceptions.hpp”
-
file
baseloader.hpp
- #include <functional>#include <map>#include “types.hpp”
-
file
basewriter.cpp
- #include “basewriter.hpp”#include <string>#include <utility>#include <vector>#include <boost/filesystem.hpp>
-
file
basewriter.hpp
- #include <functional>#include <map>#include <string>#include <type_traits>#include <hdf5.h>#include <mpi.h>#include “types.hpp”#include “exceptions.hpp”
-
file
basis.cpp
- #include “basis.hpp”#include <petscmat.h>#include “debug.hpp”#include “exceptions.hpp”#include “petsc_debug.hpp”#include “indexing.hpp”#include “iterator_routines.hpp”
Functions
-
Mat_unique
build_basis_matrix
(MPI_Comm comm, const intvector &src_shape, const intvector &tgt_shape, const floatvector &scalings, const floatvector &offsets, uinteger ndim, uinteger tile_dim)¶
-
Mat_unique
build_warp_matrix
(MPI_Comm comm, const intvector &img_shape, uinteger ndim, const std::vector<Vec *> &displacements)¶
-
Mat_unique
-
file
basis.hpp
- #include <algorithm>#include <cmath>#include <iterator>#include <numeric>#include <stdexcept>#include “types.hpp”
Functions
-
Mat_unique
build_basis_matrix
(MPI_Comm comm, const intvector &src_shape, const intvector &tgt_shape, const floatvector &scalings, const floatvector &offsets, uinteger ndim, uinteger tile_dim)
-
Mat_unique
build_warp_matrix
(MPI_Comm comm, const intvector &img_shape, uinteger ndim, const std::vector<Vec *> &displacements)
-
Mat_unique
-
file
dcmloader.cpp
- #include “dcmloader.hpp”#include <dcmtk/config/osconfig.h>#include <dcmtk/dcmdata/dctagkey.h>#include <dcmtk/dcmdata/dctk.h>#include <dcmtk/dcmimgle/dcmimage.h>#include “exceptions.hpp”#include “file_utils.hpp”
Functions
-
constexpr unsigned int TG_IMG(0x0028)
-
constexpr unsigned int TE_ROWS(0x0010)
-
constexpr unsigned int TE_COLS(0x0011)
-
constexpr unsigned int TE_FRAMES(0x0008)
Variables
-
constexpr uinteger
METADATA_MAX_BYTES
= 4 * 1024¶
-
-
file
dcmloader.hpp
- #include <dcmtk/config/osconfig.h>#include <dcmtk/dcmdata/dctk.h>#include “baseloader.hpp”#include “types.hpp”
-
file
debug.cpp
- #include “debug.hpp”#include <iomanip>#include <iostream>
-
file
debug.hpp
- #include <string>#include <petscmat.h>#include “types.hpp”
Functions
-
void
matrix_dbg_print
(const MPI_Comm &comm, const Mat &mat, const std::string &name)
-
void
-
file
elastic.cpp
- #include “elastic.hpp”#include <iomanip>#include <sstream>#include <boost/filesystem.hpp>#include <boost/format.hpp>#include “basewriter.hpp”#include “fd_routines.hpp”#include “file_utils.hpp”#include “infix_iterator.hpp”#include “iterator_routines.hpp”#include “math_utils.hpp”#include “petsc_debug.hpp”
-
file
elastic.hpp
- #include <algorithm>#include <iostream>#include <petscdmda.h>#include <petscmat.h>#include “baseconfiguration.hpp”#include “image.hpp”#include “map.hpp”#include “types.hpp”#include “workspace.hpp”
-
file
exceptions.cpp
- #include “exceptions.hpp”#include <chrono>#include <iostream>#include <thread>#include <mpi.h>#include “gitstate.hpp”#include “versioning.hpp”
Functions
-
void
abort_with_unhandled_error
()¶
-
void
sigterm_handler
(int signal)¶
-
void
print_abort_message
()¶
Variables
-
constexpr std::string_view abort_info_pre= R"FATAL(!!! FATAL ERROR !!!:An unhandled exception has occured within the program. This should not have happened and is probably a bug.Help is available through the pFIRE issue tracker on github, but first please ensure:1. You are using the most recent pFIRE release (check https://github.com/INSIGNEO/pFIRE/releases)2. Your input files are not corrupt3. If you are running on HPC please check there are no hardware issuesIf you have checked the above and the bug still occurs please report it via https://github.com/INSIGNEO/pFIRE/issuesYour report should include:- Input configuration file- Details of the images being registered (format, dimensions)- Basic hardware details, operating system and version- The exact pFIRE version: - )FATAL"
-
constexpr std::string_view abort_info_libheader= R"FATAL(- The library versions in use:)FATAL"
-
constexpr std::string_view abort_info_post= R"FATAL()FATAL"
-
void
-
file
exceptions.hpp
- #include <sstream>#include “types.hpp”
Functions
-
void
abort_with_unhandled_error
()
-
void
sigterm_handler
(int signal)
-
void
print_abort_message
()
-
void
-
file
fd_routines.cpp
- #include “fd_routines.hpp”#include “exceptions.hpp”
-
file
fd_routines.hpp
- #include <exception>#include <memory>#include <petscdmda.h>#include <petscvec.h>#include “petsc_helpers.hpp”#include “types.hpp”
-
file
file_utils.cpp
- #include “file_utils.hpp”#include <boost/filesystem.hpp>#include “exceptions.hpp”
-
file
file_utils.hpp
- #include <string>
-
file
gitstate.cpp
- #include “gitstate.hpp”
-
file
gitstate.hpp
- #include <string>
-
file
hdfwriter.cpp
- #include “hdfwriter.hpp”#include <algorithm>#include <sstream>#include “image.hpp”#include “indexing.hpp”#include “infix_iterator.hpp”#include “map.hpp”
-
file
hdfwriter.hpp
- #include <string>#include <hdf5.h>#include <mpi.h>#include “types.hpp”#include “basewriter.hpp”
-
file
image.cpp
- #include “image.hpp”#include <algorithm>#include <memory>#include <string>#include <vector>#include <petscdmda.h>#include <petscvec.h>#include “fd_routines.hpp”#include “indexing.hpp”#include “iterator_routines.hpp”#include “map.hpp”#include “math_utils.hpp”#include “baseloader.hpp”
-
file
image.hpp
- #include <type_traits>#include <mpi.h>#include “imagebase.hpp”#include “types.hpp”
-
file
imagebase.cpp
- #include “image.hpp”#include <algorithm>#include <memory>#include <string>#include <vector>#include <petscdmda.h>#include <petscvec.h>#include “fd_routines.hpp”#include “indexing.hpp”#include “iterator_routines.hpp”#include “map.hpp”#include “math_utils.hpp”#include “exceptions.hpp”#include “baseloader.hpp”
-
file
imagebase.hpp
- #include <petscdmda.h>#include “types.hpp”
-
file
indexing.hpp
- #include <vector>#include “types.hpp”
-
file
infix_iterator.hpp
- #include <iterator>#include <ostream>#include <string>
-
file
iniconfiguration.cpp
- #include “iniconfiguration.hpp”#include <cstdlib>#include <iostream>#include <iterator>#include <sstream>#include <string>#include <vector>#include <boost/algorithm/string/case_conv.hpp>#include <boost/program_options.hpp>#include <boost/property_tree/ini_parser.hpp>#include <boost/property_tree/ptree.hpp>
-
file
iniconfiguration.hpp
- #include <string>#include <vector>#include “baseconfiguration.hpp”#include “types.hpp”
-
file
iterator_routines.hpp
Functions
-
template<typename
Functor
, typenameOutputIterator
, typenameInput1
, typename ...Inputs
>
OutputIteratorn_ary_transform
(Functor f, OutputIterator out, Input1 first1, Input1 last1, Inputs... firsts)¶
-
template<typename
Functor
, typenameInput1
, typename ...Inputs
>
Functorn_ary_for_each
(Functor f, Input1 first1, Input1 last1, Inputs... firsts)¶
-
template<typename
-
file
laplacian.cpp
- #include “laplacian.hpp”#include “indexing.hpp”#include “petsc_debug.hpp”
Functions
-
Mat_unique
build_laplacian_autostride
(MPI_Comm comm, intvector shape, integer ndim)¶
-
Mat_unique
-
file
laplacian.hpp
- #include <numeric>#include <mpi.h>#include <petscmat.h>#include “types.hpp”
Functions
-
Mat_unique
build_laplacian_matrix
(MPI_Comm comm, intvector shape, integer startrow, integer endrow, integer ndim)
-
Mat_unique
build_laplacian_autostride
(MPI_Comm comm, intvector shape)¶
-
Mat_unique
-
file
map.cpp
- #include “map.hpp”#include <petscis.h>#include <petscvec.h>#include “basis.hpp”#include “image.hpp”#include “indexing.hpp”#include “laplacian.hpp”#include “math_utils.hpp”#include “petsc_helpers.hpp”#include “workspace.hpp”#include “iterator_routines.hpp”
-
file
map.hpp
- #include <exception>#include <iostream>#include <numeric>#include <utility>#include “mask.hpp”#include “types.hpp”
-
file
mask.cpp
- #include “mask.hpp”#include “baseloader.hpp”#include “iterator_routines.hpp”#include “exceptions.hpp”
-
file
mask.hpp
- #include “image.hpp”
-
file
math_utils.cpp
- #include “math_utils.hpp”#include <petscdmda.h>
-
file
math_utils.hpp
- #include “types.hpp”#include <numeric>#include “exceptions.hpp”
-
file
oiioloader.cpp
- #include “oiioloader.hpp”#include “exceptions.hpp”#include “file_utils.hpp”
Functions
-
ImageCache_unique
create_unique_imagecache
()¶
-
ImageCache_unique
-
file
oiioloader.hpp
- #include <OpenImageIO/imagecache.h>#include “baseloader.hpp”#include “types.hpp”
Typedefs
-
using
ImageCache_unique
= std::unique_ptr<OIIO::ImageCache, ImageCacheDeleter>¶
-
using
-
file
oiiowriter.cpp
- #include “oiiowriter.hpp”#include <OpenImageIO/imageio.h>#include “image.hpp”#include “exceptions.hpp”
-
file
oiiowriter.hpp
- #include <string>#include “basewriter.hpp”
-
file
petsc_debug.hpp
- #include <cstdint>
-
file
petsc_helpers.cpp
- #include “petsc_helpers.hpp”#include <algorithm>#include <sstream>#include <fenv.h>#include “exceptions.hpp”
-
file
petsc_helpers.hpp
- #include <petscdmda.h>#include <petscvec.h>#include “types.hpp”
Functions
-
floating
diagonal_sum
(const Mat &matrix)
-
bool
vecs_equivalent
(const Vec &vec1, const Vec &vec2)
-
void
repeat_stack
(const Vec &subvec, const Vec &stacked)
-
void
repeat_stack_petsc_to_nat
(const Vec &subvec, const Vec &stacked, const DM &subvec_dmda)
-
void
copy_nth_from_stack_nat_to_petsc
(const Vec &subvec, const Vec &stacked, const DM &subvec_dmda, integer n)
-
floating
-
file
pfire.cpp
- #include <chrono>#include “baseconfiguration.hpp”#include “iniconfiguration.hpp”#include “setup.hpp”#include “shirtemulation.hpp”#include “exceptions.hpp”#include “elastic.hpp”#include “image.hpp”#include “infix_iterator.hpp”#include “laplacian.hpp”#include “map.hpp”#include “types.hpp”#include “math_utils.hpp”#include “xdmfwriter.hpp”
-
file
setup.cpp
- #include “setup.hpp”#include <csignal>#include <petscsys.h>#include <boost/filesystem.hpp>#include “types.hpp”#include “banner.hpp”#include “gitstate.hpp”#include “baseloader.hpp”#include “shirtloader.hpp”#include “exceptions.hpp”#include “basewriter.hpp”#include “hdfwriter.hpp”#include “xdmfwriter.hpp”
-
file
setup.hpp
- #include <string>#include <vector>
-
file
shirtemulation.cpp
- #include “shirtemulation.hpp”#include <cstdlib>#include <iostream>#include <sstream>#include <string>#include <vector>#include <boost/algorithm/string/case_conv.hpp>
-
file
shirtemulation.hpp
- #include <string>#include <vector>#include “baseconfiguration.hpp”#include “types.hpp”
-
file
shirtloader.cpp
- #include “shirtloader.hpp”#include <numeric>#include <sstream>#include “exceptions.hpp”#include “file_utils.hpp”
-
file
shirtloader.hpp
- #include “baseloader.hpp”#include “types.hpp”
-
file
types.hpp
- #include <iostream>#include <memory>#include <set>#include <string>#include <vector>#include <petscdm.h>#include <petscksp.h>#include <petscmat.h>#include <petscsys.h>#include <petscvec.h>#include “petsc_debug.hpp”
Typedefs
-
using
integer
= PetscInt¶
-
using
uinteger = unsigned integer
-
using
floating
= PetscScalar¶
-
using
floatvector2d
= std::vector<floatvector>¶
-
using
BaseLoader_unique
= std::unique_ptr<BaseLoader>¶
-
using
BaseWriter_unique
= std::unique_ptr<BaseWriter>¶
-
using
Vec_unique
= std::unique_ptr<Vec, VecDeleter>¶
-
using
Mat_unique
= std::unique_ptr<Mat, MatDeleter>¶
-
using
VecScatter_unique
= std::unique_ptr<VecScatter, VecScatterDeleter>¶
-
using
KSP_unique
= std::unique_ptr<KSP, KSPDeleter>¶
Functions
-
Vec_unique
create_unique_vec
()¶
-
Mat_unique
create_unique_mat
()¶
-
VecScatter_unique
create_unique_vecscatter
()¶
-
KSP_unique
create_unique_ksp
()¶
-
using
-
file
versioning.cpp
- #include <petscsys.h>#include <boost/version.hpp>#include “types.hpp”
-
file
versioning.hpp
- #include <string>
-
file
workspace.cpp
- #include “workspace.hpp”
-
file
workspace.hpp
- #include “elastic.hpp”#include “image.hpp”#include “types.hpp”
-
file
xdmfwriter.cpp
- #include “xdmfwriter.hpp”#include <algorithm>#include <sstream>#include <boost/filesystem.hpp>#include “image.hpp”#include “indexing.hpp”#include “infix_iterator.hpp”#include “map.hpp”
-
file
xdmfwriter.hpp
- #include <string>#include <hdf5.h>#include <mpi.h>#include <boost/property_tree/ptree.hpp>#include <boost/property_tree/xml_parser.hpp>#include “hdfwriter.hpp”#include “types.hpp”
-
dir
src