CNCHECK
CNCHECK,
Option
, RID1
,
RID2
, RINC
,
InterType
, TRlevel
,
Val1
, Val2
,
Val3
Provides and/or adjusts the initial status of contact pairs.
Option
Option to be performed. The remaining arguments depend on the value of
Option
. Possible options are:DETAIL
—
List all contact pair properties (default).
TRlevel
,Val1
,Val2
, andVal3
are ignored. See Command specification forOption
= DETAIL.SUMMARY
—
List only the open/closed status for each contact pair. See Command specification for
Option
= SUMMARY.POST
—
Execute a partial solution to write the initial contact configuration to the Jobname.rcn file. See Command specification for
Option
= POST.RESET
—
Reset target element and contact element key options and real constants to their default values. This option is not valid for general contact. See Command specification for
Option
= RESET.AUTO
—
Automatically sets certain real constants and key options to recommended values or settings in order to achieve better convergence based on overall contact pair behaviors. This option is not valid for general contact. See Command specification for
Option
= AUTO.TRIM
—
Trim contact pair (remove certain contact and target elements). See Command specification for
Option
= TRIM .ADJUST
—
Physically move contact nodes to the target to close a gap or reduce penetration. The initial adjustment is converted to structural displacement values (UX, UY, UZ) and stored in the Jobname.rcn file. This option is not valid for general contact. file. See Command specification for
Option
= ADJUST or MORPH.MORPH
—
Initial adjustment of contact nodes and repositioning of solid element nodes due to mesh morphing are converted to structural displacement values (UX, UY, UZ) and stored in the Jobname.rcn file. This option is not valid for general contact. See Command specification for
Option
= ADJUST or MORPH.TADJUST
—
Physically move target body to the contact surface in order to close a gap or reduce penetration. The initial adjustment is converted to structural displacement values (UX, UY, UZ) and stored in the Jobname.rcn file. This option is not valid for general contact. See Command specification for
Option
= TADJUST.SPLIT
—
Split base (original) contact pairs into smaller sub-pairs at the preprocessing (/PREP7) level. The main intent of this option is to achieve better scalability in a distributed-memory parallel (DMP) run. The splitting operation may create additional overlapping contact elements at the split boundaries. Contact pairs can only be split once. Repeated use of this option results in no further splitting for those contact pairs already split. This option is not valid for general contact. See Command specification for
Option
= SPLIT.DMP
—
This option is similar to the SPLIT, but it is more automatic and contact pair-splitting is done at the solution level (SOLVE) of the first load step, not at the preprocessing level. This option is activated only in a distributed-memory parallel (DMP) run. This option is not valid for general contact. See Command specification for
Option
= DMP.MERGE
—
Merge all contact sub-pairs that were previously split (by prior CNCHECK,SPLIT or CNCHECK,DMP operations) back to their original pairs. Any contact and target elements deleted due to the trim logic of the splitting operation cannot be recovered by the MERGE operation. All other arguments are ignored. This option is not valid for general contact.
The command CNCHECK ,MERGE can be used to merge the sub-pairs together again, which is useful for postprocessing the contact results based on the original contact pair geometry. However, caution must be taken when a downstream analysis is performed since the MERGE operation may alter the database. See Command specification for
Option
= MERGE.OVER
—
When a rigid beam or a weld joint connects to a rigid surface constraint or a rigid body, automatically convert the rigid beam elements (MPC184) to rigid target or contact elements. This option is not valid for general contact. See Command specification for
Option
= OVER.RID1
,RID2
,RINC
,InterType
,TRlevel
,Val1
,Val2
,Val3
The remaining arguments semantic labels and description depend on the value of
Option
as listed in the following specification tables.
Command specification for Option
=
DETAIL
- CNCHECK, DETAIL,
RID1
,RID2
,RINC
,InterType
,--
,--
,--
,--
Table 104: Semantic label definitions when
Option
= DETAILArgument Description RID1
For
InterType
= blank—
Start real ID
GCN
—
Start section ID
RID2
For
InterType
= blank—
End real ID
For
InterType
= GCN—
End section ID
RINC
For
InterType
= blank—
Real ID increment
For
InterType
= GCN—
End section ID
InterType
Blank (default)
—
Include pair-based contact definitions.
GCN
—
Include general contact definitions.
--
Unused fields.
Command specification for Option
=
SUMMARY
- CNCHECK, SUMMARY,
RID1
,RID2
,RINC
,InterType
,--
,--
,--
,--
Table 105: Semantic label definitions when
Option
= SUMMARYArgument Description RID1
For
InterType
= blank—
Start real ID
For
InterType
= GCN—
Start section ID
RID2
For
InterType
= blank—
End real ID
For
InterType
= GCN—
End section ID
RINC
For
InterType
= blank—
Real ID increment
For
InterType
= GCN—
End section ID
InterType
blank
—
Include pair-based contact definitions.
GCN
—
Include general contact definitions.
--
Unused fields.
Command specification for Option
=
POST
- CNCHECK, POST,
RID1
,RID2
,RINC
,InterType
,--
,--
,--
,--
Table 106: Semantic label definitions when
Option
= POSTArgument Description RID1
For
InterType
= blank—
Start real ID
For
InterType
= GCN—
Start section ID
RID2
For
InterType
= blank—
End real ID
For
InterType
= GCN—
End section ID
RINC
For
InterType
= blank—
Real ID increment
For
InterType
= GCN—
End section ID
InterType
blank
—
The program follows settings of KEYOPT(9) of contact element type for every contact pair to report numerical penetration/gap.
1
—
The program ignores settings of KEYOPT(9) of contact element type for every contact pair to report geometrical penetration/gap.
GCN
—
General contact
--
Unused fields.
CNCHECK,POST is an action command that solves the initial contact configuration in one substep. The PrepPost (PP) license is incompatable with CNCHECK,POST because it forces a solve operation. After issuing this command, you can postprocess the contact result items as you would for any other converged load step. However, only the contact status, contact penetration or gap, and contact pressure will have meaningful values. Other contact quantities (friction stress, sliding distance, chattering) are available but meaningless.
Initial contact results obtained and listed from CNCHECK,DETAIL, CNCHECK,POST, and the actual solution may not always be consistent with each other. The discrepancy is mainly due to applied boundary conditions and solution options. Contact results from CNCHECK,POST are, in general, closer to what the solution provides than those from CNCHECK,DETAIL.
To inspect the real geometric penetration and gap, specify
InterType
=1. The program will set KEYOPT(9) = 0 internally during the execution of CNCHECK,POST.If CNCHECK,POST is issued within the solution processor, the SOLVE command that solves the first load step of your analysis should appear in a different step, as shown in the following example:
/SOLU CNCHECK,POST FINISH . . . /SOLU SOLVE FINISH . . .
CNCHECK,POST writes initial contact results to a file named Jobname.rcn. The command should be issued before defining analysis type, solution options, and boundary conditions. If the command is issued later, a segmentation violation error may occur. To postprocess the initial contact state, you must read results from the .rnc file using the FILE and SET,FIRST commands in POST1 to properly read the corresponding contact data. Failure to do so may result in improper reading of the results. The following example shows a valid command sequence for plotting the initial contact gap:
/SOLU CNCHECK,POST !write initial contact results to Jobname.rcn FINISH /POST1 FILE,Jobname,RCN !specify the file where results are found SET,FIRST !read the first data set in Jobname.rcn PLNSOL,CONT,GAP,0,1 FINISH . . .
Command specification for Option
=
RESET
- CNCHECK, RESET,
RID1
,RID2
,RINC
,InterType
,--
,--
,--
,--
Table 107: Semantic label definitions when
Option
= RESETArgument Description RID1
Start real ID RID2
End real ID RINC
Real ID increment --
Unused fields.
The CNCHECK,RESET command resets all but a few key options and real constants (listed in the following table) associated with the specified contact pairs (
RID1
,RID2
,RINC
) to their default values. This option is only valid for pair-based contact definitions.Table 108: Key options and real constants that are not modified by CNCHECK,RESET
Command specification for Option
=
AUTO
- CNCHECK, AUTO,
RID1
,RID2
,RINC
,InterType
,--
,--
,--
,--
Table 109: Semantic label definitions when
Option
= AUTOArgument Description RID1
Start real ID RID2
End real ID RINC
Real ID increment InterType
Possible values for InterType
are:ANY (default)
—
All types
MPC
—
MPC-based contact pairs (KEYOPT(2) = 2)
BOND
—
Bonded contact pairs (KEYOPT(12) = 3, 5, 6)
NOSP
—
No separation contact pairs (KEYOPT(12) = 2, 4)
SMAL
—
Small sliding contact pairs (KEYOPT(18) = 1)
SELF
—
Self contact pairs (target surface completely overlaps contact surface)
INAC
—
Inactive contact pairs (symmetric contact pairs for MPC contact or KEYOPT(8) = 2)
--
Unused fields.
The CNCHECK,AUTO command automatically changes certain default or undefined key options and real constants to optimized settings or values. The changes are based on overall contact pair behaviors. In general, this command improves convergence for nonlinear contact analysis. This option is only valid for pair-based contact definitions.
The tables below list typical KEYOPT and real constant settings implemented by issuing the CNCHECK,AUTO command. The actual settings implemented for your specific model may vary from what is described here. You should always verify the modified settings by issuing CNCHECK,DETAIL to list current contact pair properties.
CNCHECK,AUTO also sets PRED,OFF for the case of a force-distributed constraint defined via MPC contact.
Table 110: KEYOPT Settings Implemented by CNCHECK,AUTO
KEYOPT | Description | Default | Settings implemented by CNCHECK,AUTO | |||
1 | Selects DOF set | Structural DOFs | Automatic selection based on DOFs of underlying elements. | |||
2 | Contact algorithm | Augmented Lagrange |
| |||
4 | Location of contact detection point | Gauss point |
| |||
5 | CNOF/ICONT adjustment | No adjustment |
| |||
6 | Contact stiffness variation | Use default range | ||||
7 | Element level time increment control | No control |
| |||
8 | Assymetric contact selection | No action |
| |||
9 | Effect of initial penetration or gap | Include all |
| |||
10 | Contact stiffness update | Between load steps |
|
Table 111: Real Constant Settings Implemented by CNCHECK,AUTO
Real Constants | Description | Default | CNCHECK,AUTO | |
No. | Name | |||
3 | FKN | Normal penalty stiffness factor | 1 | Set to 5 if KEYOPT(9) = 2 (ramp initial penetration) and KEYOPT(10) > 0. |
6 | PINB | Pinball radius | see [a] | Cut in half if spurious contact is detected or contact searching is slow. |
14 | TCC | Thermal contact conductance | 0 | Calculated as a function of highest conductivity of underlying element and overall model size. |
19 | ECC | Electric contact conductance | 0 | Calculated as a function of highest permitivity or lowest resistivity of underlying element and overall model size. |
26 | MCC | Magnetic contact permeance | 0 | Calculated as a function of highest emissivity of underlying element and overall model size. |
37 | PCC | Pore fluid contact permeability coefficient | 0 | Calculated as a function of highest permitivity of underlying element and overall model size. |
[a] PINB default depends on contact behavior (rigid vs. flexible target), NLGEOM,ON or OFF, KEYOPT(9) setting, KEYOPT(12) setting, and the value of real constant CNOF (see: Defining the Pinball Region (PINB) in the Contact Technology Guide.
Command specification for Option
= TRIM
- CNCHECK, TRIM,
RID1
,RID2
,RINC
,InterType
,TRlevel
,--
,GPIN
,--
Table 112: Semantic label definitions when
Option
= TRIMArgument Description RID1
For
InterType
= blank—
start real ID
For
InterType
= GCN—
start section ID
RID2
For
InterType
= blank—
end real ID
For
InterType
= GCN—
end section ID
RINC
For
InterType
= blank or any other label except GNC—
Real ID increment
For
InterType
= GCN—
End section ID
InterType
Possible values for InterType
:Blank or ANY (default)
—
All types
MPC
—
MPC-based contact pairs (KEYOPT(2) = 2)
BOND
—
Bonded contact pairs (KEYOPT(12) = 3, 5, 6)
NOSP
—
No separation contact pairs (KEYOPT(12) = 2, 4)
SMAL
—
Small sliding contact pairs (KEYOPT(18) = 1)
SELF
—
Self contact pairs (target surface completely overlaps contact surface)
INAC
—
Inactive contact pairs (symmetric contact pairs for MPC contact or KEYOPT(8) = 2)
GCN
—
General contact
TRlevel
Blank (default)
—
Normal trimming (default): remove contact and target elements which are in far-field
AGGRE
—
Aggressive trimming: remove contact and target elements in far-field, and certain elements in near-field
--
Unused field. GPIN
Global pinball radius Input a positive number
—
to be used as the global pinball radius for the contact pairs
Blank or 0 (default)
—
no action
--
Unused field. Example 5: Trim all the contact pairs for all the contact types using normal trim level and set global pinball radius to be 0.1:
CNCHECK,TRIM,,,,,,,0.1
Command specification for Option
=
ADJUST or MORPH
- CNCHECK, ADJUST,
RID1
,RID2
,RINC
,--
,--
,CGAP
,CPEN
,IOFF
, CNCHECK, MORPH,RID1
,RID2
,RINC
,--
,--
,CGAP
,CPEN
,IOFF
Table 113: Semantic label definitions when
Option
= ADJUST or MORPHArgument Description RID1
Start section ID RID2
End section ID RINC
Real ID increment --
Unused fields. CGAP
Control parameter for opening gap. Specify a positive number
—
to close an opening gap if the absolute value of the gap is less than
CGAP
.Input a tiny value to approximate a near-zero gap.
Blank (default)
—
CGAP
defaults to 0.25*PINB (pinball radius) for bonded and no-separation contact.For other contact definitions,
CGAP
defaults to the value of real constant ICONT.CPEN
Control parameter for initial penetration. Specify a positive number
—
to close the initial penetration if the absolute value of the penetration is less than
CPEN
.For bonded or standard contact, input a tiny value for near zero penetration.
Blank (default)
—
CPEN
defaults to 0.25*PINB (pinball radius) for any type of interface behavior.IOFF
Control parameter for initial adjustment. Input a positive number
—
to adjust the contact nodes toward the target surface with a constant interference distance equal to
IOFF
.Input a negative value
—
to adjust the contact nodes toward the target surface with a uniform gap distance equal to the absolute value of
IOFF
.Example 6: Adjust all contact pairs nodes in the range of 0.2 of gap to 0.01 of penetration, meanwhile move those node by 0.002 unit towards target
CNCHECK,ADJUST,,,,0.2,0.01,0.002
Example 7: Morph contact pair nodes in the gap penetration range = 0.2 - 0.01 and relocate them 0.002 units closer to the target.
CNCHECK,MORPH,,,,0.2,0.01,0.002 ! morph contact pair nodes within the gap ! penetration range of 0.2 to 0.01 and ! relocate them 0.02 towards the tartget.
For more information and examples, see Physically Moving Contact Nodes Toward the Target Surface in the Contact Technology Guide.
Issue CNCHECK,ADJUST to physically move contact nodes to the target surface. Alternatively, you can issue CNCHECK,MORPH to physically move contact nodes to the target surface and then morph the underlying mesh to improve the mesh quality. See Physically Moving Contact Nodes Toward the Target Surface in the Contact Technology Guide for more information. Similar to the POST option, if CNCHECK,ADJUST or CNCHECK,MORPH is issued within the solution processor, the SOLVE command that solves the first load step of your analysis should appear in a different step:
/SOLU CNCHECK,ADJUST ! move contact nodes to the target surface ! or CHCHECK,MORPH to move and then improve mesh quality via morphing FINISH . . . /SOLU SOLVE FINISH . . .
After issuing the CNCHECK,ADJUST or CNCHECK,MORPH command, the initial adjustment is converted to structural displacement values (UX, UY, UZ) and stored in a file named Jobname.rcn. You can use this file to plot or list nodal adjustment vectors or create a contour plot of the adjustment magnitudes via the displacements. When postprocessing the nodal adjustment values, you must explicitly read results from the Jobname.rcn file using the FILE and SET,FIRST commands in POST1 to properly read the corresponding contact data. Otherwise, the results may be read improperly.
Command specification for Option
=
TADJUST
- CNCHECK, TADJUST,
RID1
,RID2
,RINC
,--
,--
,PMAX
,PMIN
,--
Table 114: Semantic label definitions when
Option
= TADJUSTArgument Description RID1
Start real ID - can be an positive integer or the name of a table RID2
End real ID RINC
Real ID increment --
Unused fields. PMAX
Upper limit of initial allowable penetration[a] PMIN
Lower limit of initial allowable penetration[a] --
Unused field. Example 8: Adjust target nodes in pair-3 to have maximum penetration of 0.002 (<=0.002)
CNCH,TADJ,3,,,,,-0.002
For more information and an example demonstrating a tabular input for
RID1
example, see Physically Moving Contact Nodes Toward the Target Surface in the Contact Technology Guide.[a] You can specify either a positive or negative value for
PMIN
andPMAX
. The program interprets a positive value as a scaling factor and a negative value as the absolute value.
Issue the CNCHECK,TADJUST comand to physically move the target body to the contact surface. This command tries to establish initial contact with penetration in a range specified by
PMAX
andPMIN
. Similar to the ADJUST and MORPH options, the initial adjustment is converted to structural displacement values (UX, UY, UZ) and stored in the jobname.rcn file. The CNCHECK,TADJUST command accepts tabular input in theRID1
field.
Command specification for Option
=
SPLIT
- CNCHECK, SPLIT,
RID1
,RID2
,RINC
,InterType
,TRlevel
,--
,--
,--
Table 115: Semantic label definitions when
Option
= SPLITArgument Description RID1
Start real ID RID2
End real ID RINC
Real ID increment InterType
Type of contact pairs to be split. Possible values are: Blank (default)
—
All types
MPC
—
MPC-based contact pairs (KEYOPT(2) = 2)
BOND
—
Bonded contact pairs (KEYOPT(12) = 3, 5, 6)
NOSP
—
No separation contact pairs (KEYOPT(12) = 2, 4)
SMAL
—
Small sliding contact pairs (KEYOPT(18) = 1)
TRlevel
Number of sub-pairs used for contact splitting --
Unused fields Example 9: To let the program decide how many splts are optimal for the current run
CHCH,Split ! default
For more information and examples, see Solving Large Contact Models in a Distributed-Memory Parallel Environment in the Contact Technology Guide.
The
SPLIT
option is intended for use in a distributed-memory parallel (DMP) run. Use the command CNCHECK,SPLIT
to split large contact pairs into smaller sub-pairs so that the smaller contact pairs can be distributed to different cores, thereby improving performance. This functionality is not the same as manually splitting contact pairs during the modeling process. The program splitting logic performs the necessary exchange of data on the boundaries between the split contact pairs to ensure that the results with and without splitting are essentially identical.
Command specification for Option
=
DMP
- CNCHECK, DMP,
RID1
,RID2
,RINC
,InterType
,TRlevel
,--
,GPIN
,--
Table 116: Semantic label definitions when
Option
= DMPArgument Description RID1
Start real ID RID2
End real ID RINC
Real ID increment InterType
Type of contact pairs to be split. Possible values are: ANY (default)
—
All types
MPC
—
MPC-based contact pairs (KEYOPT(2) = 2)
BOND
—
Bonded contact pairs (KEYOPT(12) = 3, 5, 6)
NOSP
—
No separation contact pairs (KEYOPT(12) = 2, 4)
SMAL
—
Small sliding contact pairs (KEYOPT(18) = 1)
SELF
—
Self contact pairs (target surface completely overlaps contact surface)
INAC
—
Inactive contact pairs (symmetric contact pairs for MPC contact or KEYOPT(8) = 2)
GCN
—
General contact
TRlevel
Blank (default)
—
Normal trimming. Remove contact and target elements which are in far-field.
AGGRE
—
Trim elements aggressively by removing far-field contact and target elements, as well as certain near-field elements.
--
Unused field GPIN
Global pinball radius used for the contact pairs. If 0 or blank no action occurs. --
Unused field Example 10: Program decides optimal number of splts and trims in a DMP analysis
CHCH,DMP,,,,,,TRIM,3 ! The program determines the optimal number of contact splits ! and performs trimming using 3 as the global pinball radius.
For more information and examples, see Solving Large Contact Models in a Distributed-Memory Parallel Environment in the Contact Technology Guide.
The DMP option is intended for use in a distributed-memory parallel (DMP) run. Use the CNCHECK,DMP command to split large contact pairs into smaller sub-pairs so that the smaller contact pairs can be distributed to different cores, thereby improving performance. This functionality is not the same as manually splitting contact pairs during the modeling process. The program splitting logic performs the necessary exchange of data on the boundaries between the split contact pairs to ensure that the results with and without splitting are essentially identical. CNCHECK,DMP also performs trimming for bonded and small-sliding contacts and removes inactive pairs from auto-asymmetric contacts before splitting to improve the load balance ratio of DMP runs.
Command specification for Option
=
MERGE
- CNCHECK, MERGE,
--
,--
,--
,--
,--
,--
,--
,--
The CNCHECK,MERGE command restores split contact sub-pairs from a previous CNCHECK,SPLIT or CNCHECK,DMP command, enabling postprocessing of a distributed-memory parallel (DMP) solution based on the original pair geometry. It is imperative to exercise caution when a downstream analysis is performed, as the MERGE operation may modify the database.
For more information and examples, see Solving Large Contact Models in a Distributed-Memory Parallel Environment in the Contact Technology Guide.
Command specification for Option
=
OVER
- CNCHECK, OVER,
RID1
,RID2
,RINC
,--
,--
,ACTION
,--
,--
Table 117: Semantic label and definitions when
Option
= OVERArgument Description RID1
Start real ID RID2
End real ID RINC
Real ID increment --
Unused fields ACTION
Possible values are: Blank (default)
—
When a rigid beam or a weld joint connects to a rigid surface constraint or a rigid body, automatically convert the rigid beam elements (MPC184) to rigid target or contact elements.
1
—
In addition to the default action, when a Lagrange multiplier-based joint element connects to a rigid body or surface constraint, switch to the penalty method (KEYOPT(2) = 1 of MPC184).
--
Unused fields Example 11: Set
ACTION
= 1 on CNCHECK,OVERCHCHECK,OVER,,,,,,1 ! If a rigid beam or weld joint connects to a rigid body or ! surface constraint, convert them to rigid target or contact ! elements. Also, when a Lagrange multiplier-based joint connects ! to a rigid surface or body, switch to the penalty method.
Notes
The CNCHECK command provides information for surface-to-surface,
node-to-surface, and line-to-line contact pairs (element types
TARGE169, TARGE170,
CONTA172, CONTA174,
CONTA175, CONTA177). All contact and
target elements of interest, along with the solid elements and nodes attached to them, must be
selected for the command to function properly. For performance reasons, the program uses a subset
of nodes and elements based on the specified contact regions (RID1
,
RID2
, RINC
) when executing the
CNCHECK command.
CNCHECK is available in both the PREP7 and SOLUTION processors, but only before the first solve operation (that is, only before the first load step or the first substep).
If the contact and target elements were generated through mesh commands (AMESH, LMESH, etc.) instead of the ESURF command, you must issue MODMSH,DETACH before CNCHECK. Otherwise, CNCHECK will not work correctly.