File: catalyst_pipeline.py

package info (click to toggle)
paraview 5.13.2%2Bdfsg-3
  • links: PTS, VCS
  • area: main
  • in suites: sid, trixie
  • size: 544,220 kB
  • sloc: cpp: 3,374,605; ansic: 1,332,409; python: 150,381; xml: 122,166; sql: 65,887; sh: 7,317; javascript: 5,262; yacc: 4,417; java: 3,977; perl: 2,363; lex: 1,929; f90: 1,397; makefile: 170; objc: 153; tcl: 59; pascal: 50; fortran: 29
file content (44 lines) | stat: -rw-r--r-- 2,097 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
from paraview.simple import *

# Greeting to ensure that ctest knows this script is being imported
print("executing catalyst_pipeline")

# registrationName must match the channel name used in the
# 'CatalystAdaptor'.
producer = TrivialProducer(registrationName="input")

def catalyst_execute(info):
    global grid, particles
    producer.UpdatePipeline()
    print(producer.GetDataInformation().GetDataAssembly())
    assert producer.GetDataInformation().GetNumberOfDataSets() == 2

    gridInfo = producer.GetSubsetDataInformation(0, "//grid", "Hierarchy");
    particlesInfo = producer.GetSubsetDataInformation(0, "//particles", "Hierarchy");

    print("-----------------------------------")
    print("executing (cycle={}, time={})".format(info.cycle, info.time))
    print("grid:")
    print("  bounds:", gridInfo.GetBounds())
    print("  velocity-range:",
            gridInfo.GetPointDataInformation().GetArrayInformation("velocity").GetComponentRange(0))
    print("  pressure-range:",
            gridInfo.GetCellDataInformation().GetArrayInformation("pressure").GetComponentRange(0))
    print("  author:",
            gridInfo.GetFieldDataInformation().GetArrayInformation("author").GetRangesAsString())
    print("  mesh time:",
            gridInfo.GetFieldDataInformation().GetArrayInformation("mesh time").GetComponentRange(0))
    print("  mesh timestep:",
            gridInfo.GetFieldDataInformation().GetArrayInformation("mesh timestep").GetComponentRange(0))
    print("  mesh external data:",
            gridInfo.GetFieldDataInformation().GetArrayInformation("mesh external data").GetComponentRange(0))

    print("particles:")
    print("  bounds:", particlesInfo.GetBounds())

    # try subsetting using the assembly and confirm it's as exepected.
    gridInfo2 = producer.GetSubsetDataInformation(0, "//Grid", "Assembly")
    assert gridInfo2.GetNumberOfPoints() == gridInfo.GetNumberOfPoints()

    info2 = producer.GetSubsetDataInformation(0, "//SubCollection", "Assembly")
    assert producer.GetDataInformation().GetNumberOfDataSets() == info2.GetNumberOfDataSets()