Skip to main content

DPF Framework 2026 R1

result:read cms_rbd file

Last update: 31.07.2026

Version: 0.0.0

Description

Read the invariant terms and the model data from a cms_rbd file

Inputs

This table lists the input pins for this operator. Input pins define the data that the operator requires to perform its operation. Some inputs are required, while others are optional and provide additional configuration. Each parameter is detailed in the sections that follow the table.

Pin number Name Status Expected type(s)
0 in_cms_rbd_file_path Required string

in_cms_rbd_file_path (Pin 0)

  • Required: Yes
  • Expected type(s): string

file name with cms_rbd extension where to read the input cms_rbd file.

Outputs

This table lists the output pins for this operator. Output pins provide the results of the operator's computation and can be connected to inputs of other operators or retrieved for further processing. Each output is detailed in the sections that follow the table.

Pin number Name Expected type(s)
0 model_data property_field
1 center_of_mass field
2 inertia_relief field
3 model_size property_field
4 master_node_coordinates vector<double>
5 v_trsf vector<double>
6 k_mat field
7 mass_mat field
8 c_mat field
9 rhs field
10 dn vector<double>
11 dr_cross_n vector<double>
12 drn vector<double>
13 dn_cross_n vector<double>
14 dnx_y vector<double>
15 dny_y vector<double>
16 dnz_y vector<double>
17 dyx_n vector<double>
18 dyy_n vector<double>
19 dyz_n vector<double>
20 dnxn vector<double>
21 dnyn vector<double>
22 dnzn vector<double>

model_data (Pin 0)

data describing the finite element model

center_of_mass (Pin 1)

  • Expected type(s): field

center of mass of the body

inertia_relief (Pin 2)

  • Expected type(s): field

inertia matrix

model_size (Pin 3)

master_node_coordinates (Pin 4)

v_trsf (Pin 5)

translational and rotational shape functions

k_mat (Pin 6)

  • Expected type(s): field

mass_mat (Pin 7)

  • Expected type(s): field

c_mat (Pin 8)

  • Expected type(s): field

rhs (Pin 9)

  • Expected type(s): field

dn (Pin 10)

dr_cross_n (Pin 11)

drn (Pin 12)

dn_cross_n (Pin 13)

dnx_y (Pin 14)

dny_y (Pin 15)

dnz_y (Pin 16)

dyx_n (Pin 17)

dyy_n (Pin 18)

dyz_n (Pin 19)

dnxn (Pin 20)

dnyn (Pin 21)

dnzn (Pin 22)

Configurations

This operator supports configuration options that modify its behavior.

mutex

  • Expected type(s): bool
  • Default value: false

If this option is set to true, the shared memory is prevented from being simultaneously accessed by multiple threads.

Scripting

This operator can be accessed through scripting interfaces using these identifiers.

Category: result

Plugin: core

Scripting name: read_cms_rbd_file

Full name: result.read_cms_rbd_file

Internal name: read_cms_rbd_file

License: None

Examples

These examples demonstrate how to use this operator in different programming environments. Each example shows how to instantiate the operator, connect the required inputs, and retrieve the output.

C++
#include "dpf_api.h"

ansys::dpf::Operator op("read_cms_rbd_file"); // operator instantiation
op.connect(0, my_in_cms_rbd_file_path);
ansys::dpf::PropertyField my_model_data = op.getOutput<ansys::dpf::PropertyField>(0);
ansys::dpf::Field my_center_of_mass = op.getOutput<ansys::dpf::Field>(1);
ansys::dpf::Field my_inertia_relief = op.getOutput<ansys::dpf::Field>(2);
ansys::dpf::PropertyField my_model_size = op.getOutput<ansys::dpf::PropertyField>(3);
std::vector<double> my_master_node_coordinates = op.getOutput<std::vector<double>>(4);
std::vector<double> my_v_trsf = op.getOutput<std::vector<double>>(5);
ansys::dpf::Field my_k_mat = op.getOutput<ansys::dpf::Field>(6);
ansys::dpf::Field my_mass_mat = op.getOutput<ansys::dpf::Field>(7);
ansys::dpf::Field my_c_mat = op.getOutput<ansys::dpf::Field>(8);
ansys::dpf::Field my_rhs = op.getOutput<ansys::dpf::Field>(9);
std::vector<double> my_dn = op.getOutput<std::vector<double>>(10);
std::vector<double> my_dr_cross_n = op.getOutput<std::vector<double>>(11);
std::vector<double> my_drn = op.getOutput<std::vector<double>>(12);
std::vector<double> my_dn_cross_n = op.getOutput<std::vector<double>>(13);
std::vector<double> my_dnx_y = op.getOutput<std::vector<double>>(14);
std::vector<double> my_dny_y = op.getOutput<std::vector<double>>(15);
std::vector<double> my_dnz_y = op.getOutput<std::vector<double>>(16);
std::vector<double> my_dyx_n = op.getOutput<std::vector<double>>(17);
std::vector<double> my_dyy_n = op.getOutput<std::vector<double>>(18);
std::vector<double> my_dyz_n = op.getOutput<std::vector<double>>(19);
std::vector<double> my_dnxn = op.getOutput<std::vector<double>>(20);
std::vector<double> my_dnyn = op.getOutput<std::vector<double>>(21);
std::vector<double> my_dnzn = op.getOutput<std::vector<double>>(22);
CPython
import ansys.dpf.core as dpf

op = dpf.operators.result.read_cms_rbd_file() # operator instantiation
op.inputs.in_cms_rbd_file_path.connect(my_in_cms_rbd_file_path)
my_model_data = op.outputs.model_data()
my_center_of_mass = op.outputs.center_of_mass()
my_inertia_relief = op.outputs.inertia_relief()
my_model_size = op.outputs.model_size()
my_master_node_coordinates = op.outputs.master_node_coordinates()
my_v_trsf = op.outputs.v_trsf()
my_k_mat = op.outputs.k_mat()
my_mass_mat = op.outputs.mass_mat()
my_c_mat = op.outputs.c_mat()
my_rhs = op.outputs.rhs()
my_dn = op.outputs.dn()
my_dr_cross_n = op.outputs.dr_cross_n()
my_drn = op.outputs.drn()
my_dn_cross_n = op.outputs.dn_cross_n()
my_dnx_y = op.outputs.dnx_y()
my_dny_y = op.outputs.dny_y()
my_dnz_y = op.outputs.dnz_y()
my_dyx_n = op.outputs.dyx_n()
my_dyy_n = op.outputs.dyy_n()
my_dyz_n = op.outputs.dyz_n()
my_dnxn = op.outputs.dnxn()
my_dnyn = op.outputs.dnyn()
my_dnzn = op.outputs.dnzn()
IPython
import mech_dpf
import Ans.DataProcessing as dpf

op = dpf.operators.result.read_cms_rbd_file() # operator instantiation
op.inputs.in_cms_rbd_file_path.Connect(my_in_cms_rbd_file_path)
my_model_data = op.outputs.model_data.GetData()
my_center_of_mass = op.outputs.center_of_mass.GetData()
my_inertia_relief = op.outputs.inertia_relief.GetData()
my_model_size = op.outputs.model_size.GetData()
my_master_node_coordinates = op.outputs.master_node_coordinates.GetData()
my_v_trsf = op.outputs.v_trsf.GetData()
my_k_mat = op.outputs.k_mat.GetData()
my_mass_mat = op.outputs.mass_mat.GetData()
my_c_mat = op.outputs.c_mat.GetData()
my_rhs = op.outputs.rhs.GetData()
my_dn = op.outputs.dn.GetData()
my_dr_cross_n = op.outputs.dr_cross_n.GetData()
my_drn = op.outputs.drn.GetData()
my_dn_cross_n = op.outputs.dn_cross_n.GetData()
my_dnx_y = op.outputs.dnx_y.GetData()
my_dny_y = op.outputs.dny_y.GetData()
my_dnz_y = op.outputs.dnz_y.GetData()
my_dyx_n = op.outputs.dyx_n.GetData()
my_dyy_n = op.outputs.dyy_n.GetData()
my_dyz_n = op.outputs.dyz_n.GetData()
my_dnxn = op.outputs.dnxn.GetData()
my_dnyn = op.outputs.dnyn.GetData()
my_dnzn = op.outputs.dnzn.GetData()

Changelog

  • Version 0.0.0: Initial release.

Connect with Ansys