File: catalyst_pipeline.py

package info (click to toggle)
paraview 5.11.0%2Bdfsg-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 497,236 kB
  • sloc: cpp: 3,171,290; ansic: 1,315,072; python: 134,290; xml: 103,324; sql: 65,887; sh: 5,286; javascript: 4,901; yacc: 4,383; java: 3,977; perl: 2,363; lex: 1,909; f90: 1,255; objc: 143; makefile: 119; 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()