21 "simulation_interval",
27 for element_name
in dir(obj):
28 if element_name
not in ignore:
29 element = getattr(obj, element_name)
30 if element_name.startswith(
"_"):
33 print(f
"- EntryPoint `{prefix}{element_name}`", file=f)
34 elif inspect.isclass(element):
35 print(f
"- class {prefix}{element_name}", file=f)
36 elif inspect.ismodule(element):
37 print(f
"- module {prefix}{element_name}", file=f)
39 elif callable(element):
41 print(f
"- callable `{prefix}{element_name}`: {element.__doc__}", file=f)
45 dims = [
":"] * element.ndim
47 f
"- `{prefix}{element_name}({','.join(dims)})` ({np.asarray(element).dtype})",
52 f
"- `{prefix}{element_name}` ({type(element).__name__})", file=f
56with open(
"comin_python_api.md",
"w")
as f:
57 print(
"# ComIn Python API", file=f)
58 print(
"\n\n## Global ComIn functions, variables and constants", file=f)
60 print(
"\n\n## Members of data type plugin_info", file=f)
62 describe(plugin_info, f, prefix=
"plugin_info.")
63 print(
"\n\n## Global descriptive data", file=f)
66 print(
"\n\n## Members of data type simulation_interval", file=f)
68 describe(simulation_interval, f, prefix=
"simulation_interval.")
69 print(
"\n\n## Descriptive data for domains", file=f)
71 describe(domain, f, prefix=
"domain.")
72 print(
"\n\n## Members of data type domain.cells", file=f)
73 describe(domain.cells, f, prefix=
"domain.cells.")
74 print(
"\n\n## Members of data type domain.edges", file=f)
75 describe(domain.edges, f, prefix=
"domain.edges.")
76 print(
"\n\n## Members of data type domain.verts", file=f)
77 describe(domain.verts, f, prefix=
"domain.verts.")
descrdata_get_simulation_interval()
returns simulation intervals: exp_start, exp_stop, run_start, run_stop
current_get_plugin_info()
returns object describing the current plugin
descrdata_get_domain(jg)
returns descriptive data for a given domain, arguments: jg
descrdata_get_global()
returns global descriptive data object
describe(obj, f, prefix="")