zhaoyuanjuns/moonbit_extractor/domain does not have a README file
pub(all) suberror ExtractionError {
InvalidFraction(name~ : String, value~ : Double)
InvalidFlow(name~ : String, value~ : Double)
InvalidCoefficient(name~ : String, value~ : Double)
InvalidComposition(total~ : Double)
InsufficientData(required~ : Int, actual~ : Int)
UnsortedData(index~ : Int)
DuplicateCoordinate(value~ : Double)
OutOfRange(name~ : String, value~ : Double, lower~ : Double, upper~ : Double)
SingularBalance(context~ : String)
ConvergenceFailure(iterations~ : Int, residual~ : Double)
InvalidArgument(message~ : String)
} derive(Eq, Debug)pub(all) struct PhaseSplit {
raffinate_amount : Double
extract_amount : Double
raffinate : TernaryComposition
extract : TernaryComposition
residual : Double
} derive(Eq, ToJson, Debug)fn TernaryComposition::component(self : TernaryComposition, index : Int) -> Double raise ExtractionErrorfn TernaryComposition::distance_squared(self : TernaryComposition, other : TernaryComposition) -> Doublefn TernaryComposition::from_amounts(carrier~ : Double, solute~ : Double, solvent~ : Double) -> TernaryComposition raise ExtractionErrorfn TernaryComposition::mix(self : TernaryComposition, other : TernaryComposition, self_amount~ : Double, other_amount~ : Double) -> TernaryComposition raise ExtractionErrorfn TernaryComposition::new(carrier~ : Double, solute~ : Double, solvent~ : Double, tolerance? : Double) -> TernaryComposition raise ExtractionErrorpub(all) struct TieLine {
raffinate : TernaryComposition
extract : TernaryComposition
} derive(Eq, ToJson, Debug)fn TieLine::new(raffinate~ : TernaryComposition, extract~ : TernaryComposition) -> TieLine raise ExtractionErrorpub(all) struct ValidationSummary {
checked : Int
passed : Int
issues : Array[ValidationIssue]
valid : Bool
completeness : Double
} derive(Eq, ToJson, Debug)fn approximately_equal(left : Double, right : Double, tolerance? : Double) -> Boolfn check_close(field : String, value : Double, reference : Double, tolerance : Double) -> ValidationIssue?fn denormalize_from_range(normalized : Double, lower : Double, upper : Double) -> Double raise ExtractionErrorfn merge_validation_summaries(first : ValidationSummary, second : ValidationSummary) -> ValidationSummaryfn normalize_to_range(value : Double, lower : Double, upper : Double) -> Double raise ExtractionErrorfn validate_vector(field_prefix : String, values : ArrayView[Double], lower : Double, upper : Double) -> ValidationSummaryfn validation_issue(field : String, code : String, message : String, value : Double, blocking : Bool) -> ValidationIssuefn weighted_average(values : ArrayView[Double], weights : ArrayView[Double]) -> Double raise ExtractionErrorfn weighted_variance(values : ArrayView[Double], weights : ArrayView[Double]) -> Double raise ExtractionErrorInstall
Download zipExtraction process calculation toolkit for liquid-liquid extraction and solid-liquid leaching