SysML4Mathematica: Example 08a: Humidification: Drying lumber with air: required volumetric air flow rate

Gallery
Tutorial
Click on the image to view it full size

The '@' prefix in some of the ConstraintBlocks and OpaqueBehaviors indicate that they are (typically trivial) maths operations that aren't represented by dedicated functions in the Webel Psy Mathematica code library:

The inclusion of such fine-grained @dw for w2-w1 in the example diagrams here is purely for demonstration of that naming policy; one could instead simply pass w1 and w2 to the dryingAirMassRate calculation (with more concise model diagrams).

At the top we see a SysML Parametric Diagram representing a network of equations for the psychrometric properties obtained from low-level CoolProp wrappers for Mathematica, and some ConstraintBlock usages for calculating the volumetric humid air flow rate for achieving a desired degree of drying of another object.

In the middle and bottom Activity Diagrams we see how the problem can be setup instead using Webel MPsy objects, which encapsulate the lower level CoolProp calls. Together, they represent this Mathematica invocation:


ex8$psy1 = newPsy[asDegF[80.6], $opt$psy$r -> 0.8];
ex8$psy2 = newPsy[asDegF[140], $opt$psy$twb -> asDegF[125.6]];

psy$humidification$vfr$via$waterMassRate[
 ex8$psy1,
 ex8$psy2,
 5.68 unitPoundPerHour,
 $opt$psy$doShowAsIP -> True
 ]

1058.7950696434616 ft^3/hr

Here unitPoundPerHour is a pre-built Mathematica Quantity[1.0, ("Pounds")/("Hours")]:

And the units utility function asDegF[magF_Real] similarly creates a Quantity for °F.

Note that:

Up next
Notes
Snippets (quotes/extracts)
Visit also
Visit also (backlinks)
Related slides (includes other tutorials)
Related slides (backlinks, includes other tutorials)