spheres_and_cylinders#

spheres_and_cylinders = {'pore.diameter': {'model': <function product>, 'props': ['pore.max_size', 'pore.seed']}, 'pore.max_size': {'iters': 10, 'model': <function largest_sphere>}, 'pore.seed': {'element': 'pore', 'model': <function random>, 'num_range': [0.2, 0.7], 'seed': None}, 'pore.volume': {'model': <function sphere>, 'pore_diameter': 'pore.diameter'}, 'throat.cross_sectional_area': {'model': <function cylinder>, 'throat_diameter': 'throat.diameter'}, 'throat.diameter': {'factor': 0.5, 'model': <function scaled>, 'prop': 'throat.max_size'}, 'throat.diffusive_size_factors': {'model': <function spheres_and_cylinders>, 'pore_diameter': 'pore.diameter', 'throat_diameter': 'throat.diameter'}, 'throat.hydraulic_size_factors': {'model': <function spheres_and_cylinders>, 'pore_diameter': 'pore.diameter', 'throat_diameter': 'throat.diameter'}, 'throat.length': {'model': <function spheres_and_cylinders>, 'pore_diameter': 'pore.diameter', 'throat_diameter': 'throat.diameter'}, 'throat.lens_volume': {'model': <function lens>, 'pore_diameter': 'pore.diameter', 'throat_diameter': 'throat.diameter'}, 'throat.max_size': {'mode': 'min', 'model': <function from_neighbor_pores>, 'prop': 'pore.diameter'}, 'throat.total_volume': {'model': <function cylinder>, 'throat_diameter': 'throat.diameter', 'throat_length': 'throat.length'}, 'throat.volume': {'model': <function difference>, 'props': ['throat.total_volume', 'throat.lens_volume']}}#