svcco package¶
Subpackages¶
- svcco.branch_addition package
- Submodules
- svcco.branch_addition.add_bifurcation module
- svcco.branch_addition.add_branches module
- svcco.branch_addition.add_branches_v2 module
- svcco.branch_addition.add_branches_v3 module
- svcco.branch_addition.add_depths module
- svcco.branch_addition.add_edge module
- svcco.branch_addition.add_flow module
- svcco.branch_addition.add_geodesic_path module
- svcco.branch_addition.basis module
- svcco.branch_addition.calculate_length module
- svcco.branch_addition.calculate_radii module
- svcco.branch_addition.check module
- svcco.branch_addition.close module
- svcco.branch_addition.finite_difference module
- svcco.branch_addition.geodesic module
- svcco.branch_addition.get_path module
- svcco.branch_addition.get_point module
- svcco.branch_addition.local_func_v5 module
- svcco.branch_addition.local_func_v6 module
- svcco.branch_addition.local_func_v7 module
- svcco.branch_addition.sample_triad module
- svcco.branch_addition.set_root module
- svcco.branch_addition.set_root_homogeneous_nonconvex module
- svcco.branch_addition.triangle module
- svcco.branch_addition.update module
- svcco.branch_addition.update_geodesic module
- Module contents
- svcco.collision package
- svcco.forest_utils package
- svcco.implicit package
- Subpackages
- Submodules
- svcco.implicit.derivative module
- svcco.implicit.implicit module
generate()
marching_cubes()
marching_cubes_pv()
patch
properties()
surface
surface.add()
surface.build()
surface.build_individual()
surface.export_polydata()
surface.load()
surface.mesh()
surface.parallel_build()
surface.patch_constructor_no_progress()
surface.patch_constructor_progress()
surface.path()
surface.pick()
surface.pick_in_cell()
surface.set_data()
surface.solve()
surface.subtract()
surface.within()
surface.within_mesh()
- svcco.implicit.load module
- svcco.implicit.sampling module
- svcco.implicit.weingarten_map module
- Module contents
- svcco.sv_interface package
- Subpackages
- svcco.sv_interface.ROM package
- Submodules
- svcco.sv_interface.ROM.centerlines module
- svcco.sv_interface.ROM.generate_1d_mesh module
- svcco.sv_interface.ROM.io_0d module
- svcco.sv_interface.ROM.io_1d module
- svcco.sv_interface.ROM.io_headers module
- svcco.sv_interface.ROM.manage module
- svcco.sv_interface.ROM.mesh module
- svcco.sv_interface.ROM.models module
- svcco.sv_interface.ROM.parameters module
- svcco.sv_interface.ROM.utils module
- Module contents
- svcco.sv_interface.ROM package
- Submodules
- svcco.sv_interface.build_0d_run_script module
- svcco.sv_interface.build_files module
- svcco.sv_interface.build_results module
- svcco.sv_interface.centerline module
- svcco.sv_interface.contour module
- svcco.sv_interface.export_3d_only module
- svcco.sv_interface.flow module
- svcco.sv_interface.geometry module
- svcco.sv_interface.get_sv_data module
contour_check()
contour_check_all()
contour_collision()
get_alternate_path()
get_branches()
get_interpolated_sv_data()
get_longest_path()
get_normals()
get_normals_v1()
get_points()
get_points_v1()
get_radii()
get_radii_v1()
get_sv_data()
get_truncated_interpolated_sv_data()
optimize_contour()
pathpatch_2d_to_3d()
pathpatch_translate()
plot_branches()
plot_frames()
plot_interp_vessels()
plot_path_contours()
plot_sv_data()
rotation_matrix()
sv_data()
swap_contour()
swap_worst_contour()
truncate()
- svcco.sv_interface.locate module
- svcco.sv_interface.loft module
- svcco.sv_interface.mesh module
- svcco.sv_interface.options module
- svcco.sv_interface.paths module
- svcco.sv_interface.presolver module
- svcco.sv_interface.rom module
- svcco.sv_interface.setup module
- svcco.sv_interface.solid module
- svcco.sv_interface.solver module
- svcco.sv_interface.sv_install_function module
- svcco.sv_interface.view_0d_result_plots module
- svcco.sv_interface.waveform module
- Module contents
- Subpackages
- svcco.utils package
Submodules¶
svcco.test_rotation module¶
svcco.tree module¶
- class svcco.tree.forest(boundary=None, number_of_networks=1, trees_per_network=[2], scale=None, start_points=None, directions=None, root_lengths_high=None, root_lengths_low=None, convex=False, compete=False)[source]¶
Bases:
object
- connect(network_id=-1, buffer=None, curve_sample_size_min=5, curve_sample_size_max=11, curve_degree=3)[source]¶
- export(make=False, spline=False, write_splines=False, spline_sample_points=100, steady=True, apply_distal_resistance=False, gui=False)[source]¶
- class svcco.tree.tree[source]¶
Bases:
object
Data structure:
index: 0:2 -> proximal node coordinates
index: 3:5 -> distal node coordinates
index: 6:8 -> unit basis U (all)
index: 9:11 -> unit basis V (all)
index: 12:14 -> unit basis W (axial direction) (all)
index: 15,16 -> children (-1 means no child)
index: 17 -> parent (NA)
index: 18 -> proximal node index (only real edges)
index: 19 -> distal node index (only real edges)
index: 20 -> length (path length)
index: 21 -> radius (what are the units?)
index: 22 -> flow (NA)
index: 23 -> left bifurcation (NA)
index: 24 -> right bifurcation (NA)
index: 25 -> reduced resistance (NA)
index: 26 -> depth (NA)
index: 27 -> reduced downstream length (NA)
index: 28 -> root radius scaling factor (same as edge for intermediate)
index: 29 -> edge that subedge belongs to (if actual edge; self pointer)
index: 30 -> self identifying index (-1 if intermediate)
- export(steady=True, apply_distal_resistance=True, gui=True, cylinders=False, make=True, global_edge_size=None, splines=False, splines_file_path='', spline_sample_points=100)[source]¶
- export_0d_simulation(steady=True, outdir=None, folder='0d_tmp', number_cardiac_cycles=1, number_time_pts_per_cycle=5, density=1.06, viscosity=0.04, material='olufsen', olufsen={'k1': 0.0, 'k2': -22.5267, 'k3': 10000000.0, 'material exponent': 1.0, 'material pressure': 0.0}, linear={'material ehr': 10000000.0, 'material pressure': 0.0}, path_to_0d_solver=None, viscosity_model='constant', vivo=True)[source]¶
This script builds the 0D input file for running 0D simulation. Parameters: ----------- steady: bool, optional, [default=True] outdir: str, optional, [default=None] folder: str, optional, [default="tmp"] number_cardiac_cycles: int, optional, [default=1]
- export_1d_simulation(steady=True, outdir=None, folder='1d_tmp', number_cariac_cycles=1, num_points=100)[source]¶
- export_truncated(steady=True, radius=None, indicies=None, apply_distal_resistance=True, gui=True, cylinders=False, make=True)[source]¶
- set_root(low=-1, high=0, start=None, direction=None, limit_high=None, limit_low=None, niter=200)[source]¶
Module contents¶
# Automated Vascularization & Fluid Simulation for Engineered Tissues
svcco falls under the open-source SimVascular project which seeks to understand and quantify hemodynamics in health and disease. This python module creates synthetic microvascular networks for given perfusion territories, a common problem when creating engineered tissues.
## Installing SVCCO
Conda install
`bash
# Best practice to use an environment rather than installing at the base
# By default we will specify the python environment to 3.7
# however 3.8 and 3.9 are valid
conda create -n svcco-env python=3.7
conda activate svcco-env
# becuase conda allows pip installing
pip install svcco
`
pip install
`bash
pip install svcco
`