Adams Basic Package > Adams View > View Command Language > force > force modify direct general_force

force modify direct general_force

Allows you to modify an existing general force.

Format:

 
force modify direct general_force
General_force_name=
existing genforce
new_general_force_name=
new genforce
Adams_id=
geom._id
comments=
string
i_marker_name=
existing marker
j_floating_marker_name=
existing marker
, j_part_name=
existing body
ref_marker_name=
existing marker
x_torque_function=
function
y_torque_function=
function
z_torque_function=
function
user_function=
real
x_force_function =
function
y_force_function =
function
z_force_function =
function

Description:

 
Parameter
Value Type
Description
General_force_name
Existing genforce
Specifies the general force to modify.
new_general_force_name
New genforce
Specifies the name of the new general_force.
Adams_id
integer
Specifies an integer used to identify this element in the Adams data file.
comments
String
Specifies comments for the object being created or modified.
i_marker_name
Existing marker
Specifies the marker at which Adams applies the forces and/or torques.
j_floating_marker_name
Existing marker
 
j_part_name
Existing body
Specifies the part on which Adams View creates a floating marker.
ref_marker_name
Existing marker
Specifies a marker that acts as a coordinate reference for the definition of three orthogonal force and/or torque components. These components make up the force and/or torque being defined.
x_torque_function
Function
Specifies the x component of the rotational torque for this element.
y_torque_function
Function
Specifies the y component of the rotational torque for this element.
z_torque_function
Function
Specifies the y component of the rotational torque for this element.
user_function
Real
Specifies up to 30 values for Adams to pass to a user-written subroutine. See the Adams User's Manual for information on writing user-written subroutines.
X_force_function
Function
Specifies the x component of the translational force for this element. Adams applies this force parallel to the x axis of the reference marker specified in the REF_MARKER_NAME parameter.
Y_force_function
Function
Specifies the y component of the translational force for this element. Adams applies this force parallel to the y axis of the reference marker specified in the REF_MARKER_NAME parameter.
z_force_function
Function
Specifies the z component of the translational force for this element. Adams applies this force parallel to the z axis of the reference marker specified in the REF_MARKER_NAME parameter.

Extended Definition:

1. A GENERAL_FORCE defines a complete force element, consisting of three mutually orthogonal translational force components and three orthogonal torque components. The two resultant vectors formed by the three component forces and the three component torques determines the direction of the force and torque actions, respectively. The user defines these force and torque components along and about the "reference" marker axes. The reactions are equal and opposite to the action. The user may define the GENERAL_FORCE in Adams View through user-specified function expressions or by specifying up to 30 user-defined parameters that are passed to a user-written subroutine (a "GFOSUB") the user links with Adams.
The GENERAL_FORCE corresponds to the Adams GFORCE statement.
A GENERAL_FORCE creates a six component force element that applies the forces between two parts of the system. Here, force means three orthogonal translational components and three orthogonal rotational components. The element applies actions to the part to which the I marker belongs and corresponding reactions to the part to which a "floating_marker" belongs. This "floating marker" is automatically created by Adams View and is positioned to be coincident with the I marker. Subsequently, the GENERAL_FORCE internally establishes the position of the "floating_marker". As the system moves, Adams moves the "floating_marker" on its part to keep the "floating_marker" and I markers always superimposed. Thus, Adams applies the reaction force to the part containing the "floating_marker" marker at the instantaneous position of the I marker. The magnitude of the force depends on expressions or subroutines that the user supplies. The value of the force is the resultant (i.e., the square root of the sum of the squares) of (up to) three mutually orthogonal force components together with the resultant (i.e., the square root of the sum of the squares) of (up to) three mutually orthogonal torque components.
The resultant vector formed by the three user-defined component forces along the reference marker axes defines the direction of the translational force action. The reaction is equal and opposite to the action.
The resultant vector formed by the three component torques determines the direction of the rotational torque action. The user defines these torques about the reference marker axes. The reaction is equal and opposite to the action.
2. You may identify a general force by typing its name or by picking it from the screen.
If the general force is not visible on the screen, you must type the name. You may also find it convenient to type the name even if the general force is displayed.
If you created the general force by reading an Adams data set or graphics file, the general force name is the letters GFO followed by the Adams data set general force ID number. The name of Adams GFORCE/101 is GFO101, for example. If you created the general force during preprocessing, you gave it a name at that time.
If a general force is available by default, you may identify it by entering its name only. If it is not, you must enter its full name. To identify a general force under another model, for instance, you may need to enter the model name as well. For example, you may specify general force 'spring' from the model 'suspension' by entering ".suspension.spring". If you type a "?", Adams View will list the general force available by default.
You must separate multiple general force names by commas.
If the general force is visible in one of your views, you may identify it by picking on any of the graphics associated with it.
You need not separate multiple general force picks by commas.
3. Normally, entity names are composed of alphabetic, numeric, or '_' (underscore) characters, and start with an alphabetic or '_' character. They may be any length. For more information, see Using Extended Names.
By enclosing the name in double quotes, you may use other printable characters, or start the name with a numeral. If a name contains characters, or starts with a numeral, you must always quote the name when entering it.
Note that you can specify the parentage of an entity (e.g. what part "owns" a marker or a geometry element) when you CREATE it by changing the name. If you enter just the entity name, then the default parent will be assigned by Adams View. If you type in the full name, then you may over ride the default parent. In most cases, when creating an entity, Adams View will provide a default name. The default name that Adams View provides will specify the parentage that it has assumed. You may, or course, delete this name and use your own. The form of a full name is:
"...._NAME.GRAND_PARENT_NAME.PARENT_NAME.ENTITY_NAME"
The number of levels used varies from case to case and the parentage must exist before an entity can be assigned to it.
4. When you use the FILE Adams_DATA_SET WRITE command, Adams View writes an Adams data file for your model. Adams requires that each modeling element be identified by a unique integer identifier. If you use this parameter to specify a non-zero identifier, Adams View will use it in the corresponding statement in the Adams data file.
You may also enter zero as an identifier, either explicitly or by default. The next time you write an Adams file, Adams View will replace the zero with a unique, internally-generated identifier. Adams View will permanently store this identifier with the element just as if you had entered it yourself.
Normally, you would let all identifiers default to zero, and Adams View would generate the identifiers for you. You are never required to enter a non-zero identifier. You only need to specify it if, for some reason, you wish to control the Adams file output.
5. The user must ensure that the I marker is a fixed marker and on a different part than the part specified in the J_PART_NAME parameter. Because the I marker is a fixed marker, and the "floating" marker will move around on the j_part to remain coincident with the I marker, Adams always applies the force action at a fixed point on the part containing the I marker. The reaction force is applied to the j_part at a point coincident with the I marker.
The "floating" marker is automatically created by Adams View on the part specified in the J_PART_NAME parameter.
6. Adams subsequently applies the reaction forces and/or torques to this "floating" J marker. The user must ensure that the j_part is a different part than the part containing the I marker. Adams will move the "floating" J marker around on the j_part to keep it superimposed on the I marker, meaning the point of application of the reaction force may move around on the j_part. Reaction forces are not calculated when the "floating" J marker is on the ground part.
7. You may identify a marker by typing its name or by picking it from the screen.
If the marker is not visible on the screen, you must type the name. You may also find it convenient to type the name even if the marker is displayed.
If you created the marker by reading an Adams data set or graphics file, the marker name is the letters MAR followed by the Adams data set marker ID number. The name of Adams MARKER/101 is MAR101, for example. If you created the marker during preprocessing, you gave it a name at that time.
If a marker is available by default, you may identify it by entering its name only. If it is not, you must enter its full name. To identify a marker under a different part, for instance, you may need to enter the model and part names as well. For example, you may specify marker 'pivot' from model 'links', part 'lower_arm' by entering ".links.lower_arm.pivot". If you type a "?", Adams View will list the markers available by default.
You must separate multiple marker names by commas.
If the marker is visible in one of your views, you may identify it by picking on it.
You need not separate multiple marker picks by commas.
8. To enter a function expression you enter a series of quoted strings.
The easiest way to enter a function expression in Adams View is to use the text editor in combination with the function builder. To invoke the text editor for entering a function expression, highlight the function field and then either pick the "EDIT" button at the top of the panel or type a ^t (control-t). The Adams View "function builder" is discussed below.
The syntactical correctness of a function expression can be investigated by using the "VERIFY" button at the upper right of the text editor. If there is a syntax error, a message is printed and the cursor is put near the problem. Proper unit consistency is not checked during function expression verification.
The remainder of this explanation will cover the components of FUNCTION expressions as summarized in the following table.
 
Components
Examples
Numbers
FUNCTION = 1E2 + 3.4 + 6
Operators
FUNCTION = 3*6/2 + 3 - 2**2
System Constants
FUNCTION = PI + 20
System Variables
FUNCTION = AX(1040, 2010)
Arithmetic Ifs
FUNCTION = IF(DX(3, 5): -1, 0, 1)
Fortran-77 Functions
FUNCTION = ABS(NUM) - 6
Blanks
FUNCTION = 1 + 2
Continuation Commas
FUNCTION = 1 + 1 + 1 + 1 + 1 + 1, + 1 + 1 + 1 + 1 + 1 + 1 + 1
Adams Functions
FUNCTION = POLY(0, 0, 6.28)
NUMBERS
FUNCTION expressions can include integers, real numbers, and exponents. In other words, any numbers that are legal in Adams are legal in a FUNCTION expression.
OPERATORS
In a FUNCTION expression, Adams allows any of the operators **, *, /, +, and -. Adams executes these operators according to the following precedence rules:
From greatest to the least, the operators have the following priorities. ** then * / then + -. In other words, Adams executes exponentiation (**) before all other operators and executes multiplication (*) and division (/) before addition (+) and subtraction (-).
When a statement has operators of the same priority, Adams executes them from left to right.
You can use parentheses to alter the precedence of operators. For example, in the equation,
FUNCTION = (1-TIME)*30/PI
Adams subtracts TIME from one before it performs multiplication and division.
SYSTEM CONSTANTS
You can include the following system constants in a FUNCTION expression:
PI Value of pi (to eighteen significant digits)
DTOR Value of pi/180 for converting degrees to radians
RTOD Value of 180/pi for converting radians to degrees
The following example of a FUNCTION with a system constant multiplies the system constant PI by the displacement of marker 10 with respect to marker 14:
FUNCTION = PI*DM(10,14)
BLANKS
A FUNCTION expression can contain any number of blank spaces. Five consecutive blank spaces in an expression do not terminate input of the expression (by indicating that what follows is a comment) as they do in an Adams statement. However, you should remember these two restrictions.
You cannot put a blank space in the middle of a number.
Adams does not accept a blank space between a function and its left bracket. (This is true for both, FORTRAN-77 functions and Adams functions.)
CONTINUATION COMMAS
You can use a comma to continue FUNCTION expressions. You can break the expression anywhere except in the middle of a number, in the middle of a name, or between a function and its left bracket. Put a continuation comma in column one of the following line before the rest of the expression. If you break the expression at a comma that is part of the expression, you must use both, the expression comma and the continuation comma. You may use more than one continuation comma to extend an expression over several lines.
FUNCTION BUILDER
The FUNCTIONS button at the right side of the Adams View text editor provides a means for constructing an Adams function string. These functions are briefly described below. Upon picking the FUNCTIONS button, you will be presented with the list of available functions in the "selection window". After you select the desired function, a panel will appear with fields representing the various parameters for the function. You will have full access to on-line help with this panel just like you have with regular panels. After you have completed the panel and selected the DONE button on the panel, the function string will be constructed and inserted at the current text cursor location in the text edit window.
SYSTEM VARIABLES
A FUNCTION expression may access the current value of a system variable and use the value in computations. These values are accessed through a collection of functions. The accessible system variables include the following: Time, Mode, Displacements (Translational and Rotational), Velocities (Translational and Rotational), Accelerations (Translational and Rotational), Forces (Translational and Rotational), and User-defined variables. Invoke the text edit window and pick the FUNCTIONS button to get a list of functions that can be accessed.
In general, you use a function character string (such as DM, VX, or FZ) and a list of values (e.g. i1, i2, and i3) to access a system variable in an expression. For example, the value i1 may be the name of the marker for which you want to measure a quantity (such as displacement, velocity, acceleration, or force), i2 is the name of the marker with respect to which you want to measure the quantity, and i3 is the name of the marker you want to use to resolve the components of the quantity. If you do not specify marker i3, Adams computes the result in the ground reference frame.
ARITHMETIC IFS
Arithmetic IFs allow you to conditionally define FUNCTION. The format for arithmetic IFs follows.
IF (expression 1: expression 2, expression 3, expression 4)
Adams evaluates expression 1. If expression 1 is less than zero, the arithmetic IF equals expression 2; if expression 1 equals zero, the arithmetic IF equals expression 3; and if expression 1 is greater than zero, the arithmetic IF equals expression 4.
A FUNCTION expression with an arithmetic IF and its four expressions is as given below:
FUNCTION = 6 * IF(VR(10,31): 0 , 0 , 100)
If the radial velocity between markers 10 and 31 is less than or equal to zero, the value of the FUNCTION expression is zero; but if the radial velocity between markers 10 and 31 is greater than zero, the value of the FUNCTION expression is six hundred.
In some ways, you may treat IF as a variable. For example, you can place it anywhere in the expression. In addition, you can nest arithmetic IFs nine levels deep.
FORTRAN-77 FUNCTIONS
You can use the FORTRAN functions ABS, ATAN, ATAN2, COS, EXP, LOG, LOG10, MIN, MAX, SIN, SQRT, and TAN in your expression. For more information about these functions, see a FORTRAN reference manual. Invoke the text edit window and pick the FUNCTIONS button to get a list of functions that can be accessed.
Adams FUNCTIONS
In general, an Adams function evaluates a mathematical equation and returns a value to your FUNCTION expression. The following table lists all the Adams functions and their purposes. Invoke the text edit window and pick the FUNCTIONS button to make a list of functions that can be accessed.
 
Names
Purposes
AKISPL
Accesses the data in a SPLINE statement and uses the Akima cubic method to fit a cubic curve (a spline) to the data.
BISTOP
Evaluates a force restricting displacement of a part in two opposite directions
CHEBY
Evaluates a Chebyshev polynomial
CUBSPL
Accesses the data in a SPLINE statement and uses the traditional cubic method to fit a cubic curve (a spline) to the data.
FORCOS
Evaluates a Fourier cosine series
FORSIN
Evaluates a Fourier sine series
HAVSIN
Evaluates a haversine function
IMPACT
Evaluates a force restricting displacement of a part in one direction.
POLY
Evaluates a polynomial
SHF
Evaluates a simple harmonic function
STEP
Approximates a step function with a cubic polynomial

Cautions:

1. The user must ensure that the reference_marker is fixed on a part (that is, not a "floating" marker). The reference_marker may be the same as the I marker and may be on any part in the model.

Tips:

1. You use the General force name parameter to identify the existing torque _vector to affect with this command.
2. You may use the new general force name later to refer to this general_force. Adams View will not allow you to have two general_forces with the same full name, so you must provide a unique name.
3. Adams applies x_torque_function parallel to the x axis of the reference marker in the sense of the right-hand rule, i.e., a positive torque causes a counterclockwise rotation if you are looking along the axis from positive to negative.
4. Adams applies this y_torque_function parallel to the y axis of the reference marker in the sense of the right-hand rule, i.e., a positive torque causes a counterclockwise rotation if you are looking along the axis from positive to negative.
5. Adams applies this z_torque_function parallel to the z axis of the reference marker in the sense of the right-hand rule, i.e., a positive torque causes a counterclockwise rotation if you are looking along the axis from positive to negative.