Empirical – A library of tools for scientific software development
- Authors:
Charles Ofria, Emily Dolson, Alex Lalejini, Jacob Fenton, Matthew Andres Moreno
- GitHub:
Empirical is a library of tools for scientific software development with an emphasis on being able to build web interfaces using Mozilla’s Emscripten compiler. The project goal is to improve the accessibility and reproducibility of the computational research.
Empirical is a C++ project though it uses Python for development infrastructure.
The developer documentation is for contributing to the Empirical project and the user documentation is for those wanting to incorporate the Empirical library into their own projects.
Contents:
- General Purpose Debugging Tools
- Bits
- API
- BitArray.hpp
- BitMatrix.hpp
- BitSet.hpp
- BitVector.hpp
- Bits.hpp
- Bits_Data.hpp
- bitset_utils.hpp
bits_field_t
NumBitFields()
BitFieldToString()
BitFieldsToString()
UIntMaskFirst()
UIntMaskFirst()
count_bits()
find_bit()
find_last_bit()
pop_bit()
MaskLow()
MaskHigh()
MaskUsed()
ReverseBits()
RotateBitsLeft()
RotateBitsLeft()
RotateBitsRight()
RotateBitsRight()
CountBits()
NUM_FIELD_BITS
ByteCount
- API
- Compiler
- Config
- Control
- Data Collection and Recording Tools
- Data Tools API
- AnnotatedType.hpp
- DataFile.hpp
- DataInterface.hpp
- DataLayout.hpp
- DataLog.hpp
- DataManager.hpp
- DataMap.hpp
- DataNode.hpp
- Datum.hpp
- MemoryImage.hpp
- SimpleParser.hpp
SimpleParser
SimpleParser::PhonyNameDueToError::map_t
SimpleParser::PhonyNameDueToError::arg_t
SimpleParser::PhonyNameDueToError::fun_t
SimpleParser::PhonyNameDueToError::value_t
SimpleParser::PhonyNameDueToError::SymbolTable()
SimpleParser::PhonyNameDueToError::MakeDatumAccessor()
SimpleParser::PhonyNameDueToError::AsFunction()
SimpleParser::PhonyNameDueToError::layout
- Trait.hpp
- VarMap.hpp
- Data Tools API
- Data structures
- API
- BloomFilter.hpp
- Bool.hpp
- Cache.hpp
- DynamicString.hpp
- Graph.hpp
- IndexMap.hpp
- IndexSet.hpp
- QueueCache.hpp
- SmallFifoMap.hpp
- SmallVector.hpp
- StringMap.hpp
- TimeQueue.hpp
- TypeMap.hpp
- UnorderedIndexMap.hpp
- graph_utils.hpp
- hash_utils.hpp
- map_utils.hpp
- ra_map.hpp
- ra_set.hpp
- reference_vector.hpp
- set_utils.hpp
- span_utils.hpp
- tuple_struct.hpp
- tuple_utils.hpp
- valsort_map.hpp
- vector_utils.hpp
PopFront()
InsertAt()
Append()
Concat()
ToVector()
ToVector()
ToMap()
ToUMap()
FindValue()
RemoveValue()
RemoveAt()
RemoveAt()
RemoveDuplicates()
Has()
Count()
Print()
FindEval()
FindIndex()
FindMinIndex()
FindMaxIndex()
FindMin()
FindMax()
FindIntersect()
Sum()
Product()
Sort()
Scale()
Slice()
Flatten()
Transpose()
NRange()
BuildRange()
tree_left()
tree_right()
tree_parent()
Heapify()
Heapify()
HeapExtract()
HeapInsert()
- API
- Debug
- Evolution tools
- Phylotracklib (Systematics Manager)
- API
- NK.hpp
- NK-const.hpp
- OEE.hpp
- OrgInterface.hpp
- Resource.hpp
- StateGrid.hpp
- Systematics.hpp
- SystematicsAnalysis.hpp
- World.hpp
- World_iterator.hpp
- World_output.hpp
- World_reflect.hpp
- World_select.hpp
EliteSelect()
RandomSelect()
TournamentSelect()
LocalTournamentSelect()
RouletteSelect()
EMPCall_TriggerOnLexicaseSelect()
EMPCall_TriggerOnLexicaseSelect()
TriggerOnLexicaseSelect()
LexicaseSelect()
OptimizedLexicaseSelect()
EcoSelect()
EcoSelect()
ignore_semicolon_to_follow_TriggerOnLexicaseSelect
World
- World_structure.hpp
- Functional
- Games
- Geometry
- Hardware
- In_progress
- IO
- Matching
- API
- MatchBin.hpp
- MatchDepository.hpp
- matchbin_metrics.hpp
StreakMetric
ExactStreakDistribution_ConstructOnFirstUse()
BaseMetric
HammingMetric
HashMetric
AbsDiffMetric
NextUpMetric
AsymmetricWrapMetric
AsymmetricNoWrapMetric
SymmetricWrapMetric
SymmetricNoWrapMetric
HammingCumuMetric
ApproxSingleStreakMetric
ApproxDualStreakMetric
ExactStreakDistribution
ExactDualStreakMetric
ExactSingleStreakMetric
CacheMod
SlideMod
HardStartMod
AntiMod
PowMod
LogMod
UnifMod
MeanDimMod
EuclideanDimMod
MinDimMod
HarmonicDimMod
FlatMod
- matchbin_regulators.hpp
- matchbin_selectors.hpp
- matchbin_utils.hpp
- API
- Math
- API
- CombinedBinomialDistribution.hpp
- Distribution.hpp
- DistributionSet.hpp
- Fraction.hpp
- Random.hpp
- Range.hpp
- RangeSet.hpp
- combos.hpp
- constants.hpp
- distances.hpp
- info_theory.hpp
- math.hpp
Mod()
Mod()
Sgn()
Abs()
FloorDivide()
RoundedDivide()
RoundedDivide()
UnbiasedDivide()
UnbiasedDivide()
ToRange()
Min()
Min()
Max()
Max()
MinRef()
MinRef()
MaxRef()
MaxRef()
Log2()
Log()
Ln()
Log10()
Square()
Pow2()
IntPow()
Pow()
Exp()
IntLog2()
Min()
Min()
Max()
NextPowerOf2()
IsPowerOf2()
Factorial()
Toggle()
AllTrue()
AllTrue()
AnyTrue()
AnyTrue()
GCD()
LCM()
- random_utils.hpp
- sequence_utils.hpp
- spatial_stats.hpp
- stats.hpp
- API
- Meta
- API
- ConceptWrapper.hpp
- FunInfo.hpp
- TypeID.hpp
- TypePack.hpp
- ValPack.hpp
- macro_math.hpp
- macros.hpp
- meta.hpp
first_type
second_type
third_type
fourth_type
pack_id
last_type
sfinae_decoy
type_decoy
decoy_t
bool_decoy
int_decoy
AdaptTemplate
AdaptTemplate_Arg1
DoNothing()
BuildObjVector1()
BuildObjVector2()
BuildObjVector3()
BuildObjVector4()
BuildObjVector1()
BuildObjVector2()
BuildObjVector3()
BuildObjVector4()
BuildObjVector()
has_type()
count_type()
get_type_index()
has_unique_first_type()
has_unique_types()
test_type_exist()
test_type_value()
test_type()
TruncateCall()
GetSize()
run_and_ignore
type_index
type_index
type_index
type_index
type_index
type_index
ShowType
dependent_false
PlaceholderType
AdaptFunction
tIntMath
tIntMath
- reflection.hpp
- type_traits.hpp
IsIterable
remove_std_function_t
element_t
is_pointer
remove_ptr_type_t
remove_pointer_t
uint_bit_count_t
int_bit_count_t
match_const_t
variadic_concat_t
variadic_filter_t
variadic_remove_duplicates_t
variadic_union_t
variadic_intersection_t
is_ptr_type_v()
is_ptr_type_v()
remove_ptr_value()
variadic_contains_v
variadic_index_of_v
Ptr
vector
HasToString
HasToString
HasToDouble
HasToDouble
is_std_function
is_std_function
remove_std_function_type
remove_std_function_type
element_type
element_type
is_emp_vector
is_emp_vector
is_span
is_span
is_ptr_type
is_ptr_type
is_ptr_type
is_ptr_type
remove_ptr_type
remove_ptr_type
remove_ptr_type
remove_ptr_type
uint_bit_count
uint_bit_count
uint_bit_count
uint_bit_count
uint_bit_count
int_bit_count
int_bit_count
int_bit_count
int_bit_count
int_bit_count
match_const
match_const
ptr_pair
ptr_pair
ptr_pair
ptr_pair
is_invocable
variadic_contains
variadic_contains
variadic_concat
variadic_concat
variadic_filter
variadic_filter
variadic_remove_duplicates
variadic_remove_duplicates
variadic_union
variadic_union
variadic_union
variadic_intersection
variadic_intersection
variadic_intersection
variadic_index_of
variadic_index_of
- API
- Polyfill
- Prefab
- Scholar
- Testing
- Text
- Other Tools
- API
- MemoryFactory.hpp
- SolveState.hpp
- StaticString.hpp
- String.hpp
MakeString()
MakeString()
MakeEscaped()
MakeEscaped()
MakeCSVSafe()
MakeWebSafe()
MakeLiteral()
MakeLiteral()
MakeLiteral()
MakeFromLiteral_Char()
MakeFromLiteral_String()
MakeFromLiteral()
MakeUpper()
MakeLower()
MakeTitleCase()
MakeCount()
MakeRoman()
MakeEnglishList()
MakeFormatted()
MakeRepeat()
MakeTrimFront()
MakeTrimBack()
MakeTrimmed()
MakeCompressed()
MakeRemoveChars()
MakeSlugify()
Join()
MakeCount()
MakeFormatted()
String
hash
- TypeTracker.hpp
- attrs.hpp
- char_utils.hpp
CharSet
CharSetRange()
WhitespaceCharSet()
UpperCharSet()
LowerCharSet()
LetterCharSet()
DigitCharSet()
AlphanumericCharSet()
IDCharSet()
PunctuationCharSet()
EscapeCodeCharSet()
is_whitespace()
is_upper_letter()
is_lower_letter()
is_letter()
is_digit()
is_alphanumeric()
is_idchar()
is_punctuation()
is_escape_code()
is_one_of()
is_valid()
is_valid()
ToEscapeChar()
CharSetBase
- hash_namify.hpp
- keyname_utils.hpp
- string_utils.hpp
string_vec_t
empty_string()
count()
is_literal_char()
is_literal_string()
diagnose_literal_string()
is_composed_of()
has_whitespace()
has_nonwhitespace()
has_upper_letter()
has_lower_letter()
has_letter()
has_digit()
has_alphanumeric()
has_char_at()
has_one_of_at()
has_digit_at()
has_letter_at()
is_lower()
is_upper()
is_digits()
is_number()
is_alphanumeric()
is_whitespace()
is_identifier()
has_one_of()
is_valid()
has_prefix()
find_quote_match()
find_paren_match()
find()
find_all()
find_all()
find_any_of_from()
find_any_of()
find_id()
find_non_whitespace()
to_escaped_string()
to_escaped_string()
to_web_safe_string()
url_encode()
url_decode()
to_literal()
to_literal()
to_literal()
from_literal_char()
from_literal_string()
to_upper()
to_lower()
to_titlecase()
to_roman_numeral()
trim_whitespace()
compress_whitespace()
remove_whitespace()
remove_punctuation()
remove_chars()
slugify()
combine_strings()
to_english_list()
transform_strings()
quote_strings()
quote_strings()
to_quoted_list()
string_pop_if_char()
string_pop_fixed()
string_get_range()
string_pop()
string_get()
string_pop()
string_get()
string_pop_to()
string_get_to()
string_pop_word()
string_get_word()
string_pop_line()
string_get_line()
string_pop_quote()
string_uint_size()
string_pop_uint()
string_get_uint()
left_justify()
right_justify()
justify()
replace_vars()
replace_macro()
view_string()
view_string()
view_string()
view_string_front()
view_string_back()
view_string_range()
view_string_to()
pad_front()
pad_back()
repeat()
slice()
slice()
view_slices()
view_slices()
slice_assign()
ViewCSV()
ViewNestedBlock()
ToString()
ToString()
to_string()
to_string()
from_string()
from_string()
from_strings()
from_string()
join()
ANSI_ESC()
ANSI_Reset()
ANSI_Bold()
ANSI_Faint()
ANSI_Italic()
ANSI_Underline()
ANSI_SlowBlink()
ANSI_Blink()
ANSI_Reverse()
ANSI_Strike()
ANSI_NoBold()
ANSI_NoItalic()
ANSI_NoUnderline()
ANSI_NoBlink()
ANSI_NoReverse()
ANSI_Black()
ANSI_Red()
ANSI_Green()
ANSI_Yellow()
ANSI_Blue()
ANSI_Magenta()
ANSI_Cyan()
ANSI_White()
ANSI_DefaultColor()
ANSI_BlackBG()
ANSI_RedBG()
ANSI_GreenBG()
ANSI_YellowBG()
ANSI_BlueBG()
ANSI_MagentaBG()
ANSI_CyanBG()
ANSI_WhiteBG()
ANSI_DefaultBGColor()
ANSI_BrightBlack()
ANSI_BrightRed()
ANSI_BrightGreen()
ANSI_BrightYellow()
ANSI_BrightBlue()
ANSI_BrightMagenta()
ANSI_BrightCyan()
ANSI_BrightWhite()
ANSI_BrightBlackBG()
ANSI_BrightRedBG()
ANSI_BrightGreenBG()
ANSI_BrightYellowBG()
ANSI_BrightBlueBG()
ANSI_BrightMagentaBG()
ANSI_BrightCyanBG()
ANSI_BrightWhiteBG()
to_ansi_bold()
to_ansi_italic()
to_ansi_underline()
to_ansi_blink()
to_ansi_reverse()
next_pos()
- timing.hpp
- unique.hpp
- value_utils.hpp
- API
- Web Tools (for use with Emscripten)
- D3 Data Visualization Tools
- API
- Animate.hpp
- Attributes.hpp
- Button.hpp
- Canvas.hpp
- CanvasAction.hpp
- CanvasShape.hpp
- Div.hpp
- DocuExtras.hpp
- Document.hpp
- Element.hpp
- FileInput.hpp
- Font.hpp
- Image.hpp
- Input.hpp
- JSWrap.hpp
- KeypressManager.hpp
- Listeners.hpp
- NodeDomShim.hpp
- RawImage.hpp
- Selector.hpp
- Style.hpp
- Table.hpp
- Text.hpp
- TextArea.hpp
- TextFeed.hpp
- Tween.hpp
- UrlParams.hpp
- Widget.hpp
- WidgetExtras.hpp
- canvas_utils.hpp
- color_map.hpp
- commands.hpp
- emfunctions.hpp
- events.hpp
- init.hpp
- js_utils.hpp
- web.hpp