teqp 0.22.0
Loading...
Searching...
No Matches
multifluid.hpp File Reference
#include "nlohmann/json.hpp"
#include <Eigen/Dense>
#include <string>
#include <cmath>
#include <optional>
#include <variant>
#include "teqp/types.hpp"
#include "teqp/constants.hpp"
#include "teqp/filesystem.hpp"
#include "teqp/json_tools.hpp"
#include "teqp/exceptions.hpp"
#include "RPinterop/interop.hpp"
#include "multifluid_eosterms.hpp"
#include "multifluid_reducing.hpp"
#include "multifluid_gas_constant.hpp"
#include <boost/algorithm/string/join.hpp>

Go to the source code of this file.

Classes

class  teqp::CorrespondingStatesContribution< EOSCollection >
 
class  teqp::DepartureContribution< FCollection, DepartureFunctionCollection >
 
class  teqp::MultiFluid< CorrespondingTerm, DepartureTerm >
 

Namespaces

namespace  teqp
 

Functions

auto teqp::get_departure_json (const std::string &name, const std::string &path)
 
auto teqp::build_departure_function (const nlohmann::json &j)
 
auto teqp::get_departure_function_matrix (const nlohmann::json &depcollection, const nlohmann::json &BIPcollection, const std::vector< std::string > &components, const nlohmann::json &flags)
 
auto teqp::get_EOS_terms (const nlohmann::json &j)
 
auto teqp::get_EOSs (const std::vector< nlohmann::json > &pureJSON)
 
auto teqp::collect_component_json (const std::vector< std::string > &components, const std::string &root)
 
auto teqp::collect_identifiers (const std::vector< nlohmann::json > &pureJSON)
 
template<typename mapvecstring >
auto teqp::select_identifier (const nlohmann::json &BIPcollection, const mapvecstring &identifierset, const nlohmann::json &flags)
 Iterate over the possible options for identifiers to determine which one will satisfy all the binary pairs.
 
auto teqp::build_alias_map (const std::string &root)
 Build a reverse-lookup map for finding a fluid JSON structure given a backup identifier.
 
auto teqp::_build_multifluid_model (const std::vector< nlohmann::json > &pureJSON, const nlohmann::json &BIPcollection, const nlohmann::json &depcollection, const nlohmann::json &flags={})
 Internal method for actually constructing the model with the provided JSON data structures.
 
auto teqp::build_multifluid_JSONstr (const std::vector< std::string > &componentJSON, const std::string &BIPJSON, const std::string &departureJSON, const nlohmann::json &flags={})
 A builder function where the JSON-formatted strings are provided explicitly rather than file paths.
 
auto teqp::make_pure_components_JSON (const nlohmann::json &components, const std::optional< std::string > &root=std::nullopt)
 
auto teqp::build_multifluid_model (const std::vector< std::string > &components, const std::string &root, const std::string &BIPcollectionpath={}, const nlohmann::json &flags={}, const std::string &departurepath={})
 
auto teqp::multifluidfactory (const nlohmann::json &spec)
 Load a model from a JSON data structure.
 
auto teqp::multifluidfactory (const std::string &specstring)
 An overload of multifluidfactory that takes in a string.