-
Here is just about everything I know about
inquiry functions. They are similar to *GET
functions
in usage, and have two input
arguments. Here's an example.
a=ndinqr(33,1)
In this case,
1
if it is selected. This is an example of using an
inquiry function to obtain information about a
specific entity, in this case node 33.
An alternative
use of an inquiry function is to find more generic
data about a certain kind of
entities.
The following example illustrates this.
a=ndinqr(0,14)
This will
assign to parameter
first argument is
zero, and the second argument is 14.
Here are the inquiry
functions I am aware of.
ndinqr(node,key) node number or zero,
and key number
elmiqr(elem,key)
kpinqr(keypoint,key)
lsinqr(line,key)
arinqr(area,key)
vlinqr(volume,key)
rlinqr(real,key)
gapiqr(gap element,key)
masiqr(master DOF
,key)
ceinqr(constraint
equation,key)
cpinqr(coupled set,key)
csyiqr(coord system,key)
etyiqr(element type,key)
foriqr(nodal force,key)
All of these work pretty
much the same, with the first argument used as
either an entity ID
number (for data
about a specific node, element, etc.) or a zero if
the information is about a
class of
element (number of selected nodes, etc.)
The key numbers
are defined as follows.
key=1 return select status (for a
specific entity)
key=12
return number of defined entities (KP's, nodes,
etc.)
key=13 return number
of selected entities
key=14
return the highest ID number in use
There a few other inquiry
functions which have a slightly different format.
mpinqr(mat,prop,key) material property
table number
, property
number
, key additional key=3
for number of temps used in a specific
property
dget(node,idof,kcmplx) node
number
, displacement
pointer
, complex key displacement
pointers
are...
1=ux, 2=uy, 3=uz, 4=rotx, 5=roty,
6=rotz, 7=ax, 8=ay 9=az, 10=vx, 11=vy, 12=vz,
19=pres,
20=temp, 21=volt, 22=mag,
23=enke, 24=ends, 25=emf, 26=curr
complex key=0 for real, 1 for imaginary
fget(node,idof,kcomplx) same definition
as dget, but for forces this time.
Posted by John Crawford on 10.28.1997
Additional Inquiry Function
Some time ago I dug out one
additional Key:
NUMS value
for the entity:
ndinqr(0,25)
elmiqr(0,25)
kpinqr(0,25)
lsinqr(0,25)
arinqr(0,25)
vlinqr(0,25)
It is sometimes handy for use in
macros.
Posted by Juha
Tyllinen on 10.28.1999
Inquiry Functions for
Sections
I have looked at
the code and can confirm Tyllinen Juha's
observation. It will work in 5.5, 5.6,
and not likely to change.
where n is the
element number
. At least that is the
way it worked in 5.5.1 with Beam188 and
Beam189.
Other possibilites for element
characteristics
-1,
material number
-2, element
type
-3, real constant
number
-4, Element Section
ID number
-5, coordinate
system number
Posted by
Grama Bhashyam on 10.29.1999
Useful
Inquiry Functions
Nodes
ndinqr(node,key)
node -
node number
, should be 0 for key = 12,
13, 14
key - information
needed
= 1, return
select status:
= 12,
return number of defined nodes
= 13, return number of selected
nodes
= 14, return
highest node number defined
= -2, superelement flag
= -3, master degrees of freedom bit
pattern
= -4, active
degrees of freedom bit pattern
= -5, solid model attachment
= -6, pack nodal line
parametric value
output
arguments:
for key = 1
= 0, node is undefined.
= -1, node is
unselected.
= 1, node is
selected.
Element elmiqr(ielem,key)
ielem - element
number
, should be zero for key = 12,
13, or 14
key -
information flag
= 1,
return select status
=
12, return number of defined elements
= 13, return number of selected
elements
= 14, return
maximum element number used
= -1, material number
= -2, type.
= -3, real.
= 4,
element section ID number
= 5, coordinate system number
= 7, solid model reference
output arguments:
for key = 1
= 0, element is undefined
= -1, element is
unselected
= 1, element
is selected
Keypoints kpinqr(kpid,key)
kpid - keypoint may be 0
for key = 12, 13, 14
key
- information flag.
=
1, select
= 12, number
of defined
= 13, number
of selected
= 14,
highest number defined
= -1, material number
=
-2, type
= -3, real
number
= -4, node
number
, if meshed
= -7, element number
, if
meshed
output arguments:
for key = 1
= -1, unselected
= 0, undefined
= 1, selected
Lines
lsinqr(lsid,key)
lsid -
line segment for inquire may be 0 for key = 12,
13, 14
key - item to be
returned
= 1, select
status
= 2, length (in
model units)
= 12
number of defined
= 13,
number of selected
=
14, highest number defined
= -1, material number
=
-2, type
= -3, real
number
= -4, number of
nodes
= -5, esys number
= -6, number of
elements
= -8, number
of element divs in existing mesh
= -9, keypoint 1
= -10, keypoint 2
= -15, section id
= -16, number of element divs for
next mesh
= -17, 0 =
hard / 1 = soft NDIV
=
-18, 0 = hard / 1 = soft SPACE
Area
arinqr(areaid,key)
areaid
- area for inquiry, may be 0 for key = 12, 13, 14
key - key to information
needed about the areaid
= 1, return select status
= 12, return number of defined
= 13, return number of selected
= 14, return highest
number defined
= -1,
return material
= -2,
return type