TAGGED: applyload, nodeselection


July 10, 2024 at 1:36 pmMehdi BaghaeeBbp_participant
I want to apply displacement derivative dependent force (dw(x,y,z)/dx) on tons of nodes located on specific area using DERIV command in APDL. Since the number of nodes is big, I can not allocate this force one by one for each node. how is it possible in apdl?

July 12, 2024 at 2:18 pmdloomanAnsys Employee
The DERIV command is a timehistory postprocessor (POST26) command and couldn't be used to apply forces. The damping in a spring (COMBI14) could be used to apply a force proportional to the derivative of displacement. It would probably require a macro to create the springs at tons of nodes though.

July 13, 2024 at 2:49 ammjmiddleAnsys Employee
When we say "derivative of displacement" in a transient analysis, I would expect the derivative with respect to time, which would be velocity, But dw(x,y,z)/dx shows it is with respect to a spatial variable. So what is your "w" equation? Is this force? So this is the rate the force changes with x you want to apply to each node? This seems strange to me. Or are you just asking how to set a spatially varying force? We can do this by equation. Or if you don't have an equation, and you just have a data file of forces at locations, we can map them to the nodes. Can you clarify what you want?

July 13, 2024 at 4:56 amMehdi BaghaeeBbp_participant
Thanks dlooman and mjmiddle.
In my problem the load is both proportional to the derivative of displacement with respect to time and coordinate x, concurrently (F=dW(x,y,z,t)/dx+dW(x,y,z,t)/dt),where W(x,y,z,t) is the displacement of nodes in z direction in current time t.
It seems to me that COMBIN14 can be used for second term of my force (dW(x,y,z,t)/dt), but since in the first term the derivative is done with respect to coodinate x, using the chain rule :
dW/dx=(dW/dt)*(dt/dx)=dw/dt*(1/v)
which v is the velocity calculated in the previous substep. So I need to define the damping coefficient given by 1/v.
Is it true?

July 13, 2024 at 3:19 pmdloomanAnsys Employee
I don't understand your loading description completely, but it's definitely not a standard one and would require a very complicated APDL script to accomplish. If the analysis was divided into many small time steps, the current velocity vector of each node could be computed after each load step based on the current displacement increments divided by the time step. Your function W(x,y,z) could probably also be evaluated at each time step and included in the force calculation. This would require quite a lot of skill with Ansys APDL, but it's possible.

July 14, 2024 at 10:52 amMehdi BaghaeeBbp_participant
The load formulation (P=dW(x,y,z,t)/dx+dW(x,y,z,t)/dt), is a well know aerodynamic piston theory used for modeling supersonic air flows on plates (panel flutter).
Let me know if anybody could help to model it through ANSYS APDL.🙏

July 16, 2024 at 8:09 pmmjmiddleAnsys Employee
It seems like you would need to make some APDL commands to loop over the result sets and compute:
1. Change in total deformation divided by change in x deformation at node
2. Change in total deformation divided by change in time at same nodeAdd 1 and 2

July 19, 2024 at 5:02 amMehdi BaghaeeBbp_participant
Since I am doing transient analysis, I am looking for the simplest way (commands) in apdl to apply the load formulation (P=dW(x,y,z,t)/dx+dW(x,y,z,t)/dt) on a node!
For example the node 11 in the following cantilevered beam.
/BATCH
/input,menust,tmp,''
WPSTYLE,,,,,,,,0
/BATCH
/input,menust,tmp,''
WPSTYLE,,,,,,,,0
/NOPR
KEYW,PR_SET,1
KEYW,PR_STRUC,1
KEYW,PR_THERM,0
KEYW,PR_FLUID,0
KEYW,PR_ELMAG,0
KEYW,MAGNOD,0
KEYW,MAGEDG,0
KEYW,MAGHFE,0
KEYW,MAGELC,0
KEYW,PR_MULTI,0
/GO
/PREP7
ET,1,BEAM188
KEYOPT,1,1,0
KEYOPT,1,2,0
KEYOPT,1,3,0
KEYOPT,1,4,0
KEYOPT,1,6,0
KEYOPT,1,7,0
KEYOPT,1,9,0
KEYOPT,1,11,0
KEYOPT,1,12,0
KEYOPT,1,15,0
MPTEMP,,,,,,,,
MPTEMP,1,0
MPDATA,EX,1,,1e9
MPDATA,PRXY,1,,0.3
MPTEMP,,,,,,,,
MPTEMP,1,0
MPDATA,DENS,1,,2000
SECTYPE, 1, BEAM, RECT, , 0
SECOFFSET, CENT
SECDATA,0.01,0.01,0,0,0,0,0,0,0,0,0,0
N,1,0,0,0,,,,
N,2,0.1,0,0,,,,
N,3,0.2,0,0,,,,
N,4,0.3,0,0,,,,
N,5,0.4,0,0,,,,
N,6,0.5,0,0,,,,
N,7,0.6,0,0,,,,
N,8,0.7,0,0,,,,
N,9,0.8,0,0,,,,
N,10,0.9,0,0,,,,
N,11,1,0,0,,,,
TYPE, 1
MAT, 1
REAL,
ESYS, 0
SECNUM, 1
TSHAP,LINE
FLST,2,2,1
FITEM,2,1
FITEM,2,2
E,P51X
FLST,2,2,1
FITEM,2,2
FITEM,2,3
E,P51X
FLST,2,2,1
FITEM,2,3
FITEM,2,4
E,P51X
FLST,2,2,1
FITEM,2,4
FITEM,2,5
E,P51X
FLST,2,2,1
FITEM,2,5
FITEM,2,6
E,P51X
FLST,2,2,1
FITEM,2,6
FITEM,2,7
E,P51X
FLST,2,2,1
FITEM,2,7
FITEM,2,8
E,P51X
FLST,2,2,1
FITEM,2,8
FITEM,2,9
E,P51X
FLST,2,2,1
FITEM,2,9
FITEM,2,10
E,P51X
FLST,2,2,1
FITEM,2,10
FITEM,2,11
E,P51X
FLST,2,1,1,ORDE,1
FITEM,2,1
/GO
D,P51X,ALL, , , , , , , , , ,
FINISH
/SOL
ANTYPE,4
TRNOPT,FULL
LUMPM,0
DELTIM,0.01,0,0
OUTRES,ERASE
OUTRES,ALL,1
TIME,1
FLST,2,1,1,ORDE,1
FITEM,2,11
FLST,2,1,1,ORDE,1
FITEM,2,10
IC,P51X,UZ,0.1,0.2,
SOLVE
FINISH 
July 24, 2024 at 4:02 pmdloomanAnsys Employee
Here's how APDL commands could update the force on node 11 based on it's current velocity:
/solu
antyp,trans
uz_11_prev=0
F,11,FZ,1 ! Initial force on node 11
*do,III,1,10,1
time,iii*0.01
solve
uz_11_new=uz(11)
delta_uz_11=uz_11_newuz_11_prev
uz_11_prev=uz_11_new
v_11=uz(11)
f,11,fz,10*v_11
*enddo

July 25, 2024 at 9:18 amMehdi BaghaeeBbp_participant
I could not understand the following lines in your code:
v_11=uz(11)
f,11,fz,10*v_11

July 25, 2024 at 4:48 pmdloomanAnsys Employee
UZ() is what we call a "get function." It gets the current value of the displacement at a node, in this case node 11. But it's a mistake in my input. It should be v_11 = delta_uz_11/0.01 , the change in uz at node 11 divided by the time step.

July 26, 2024 at 1:23 amMehdi BaghaeeBbp_participant
Thanks for your help.
instead of using delta_uz_11/dt (dW(x,y,z,t)/dt), why don't use VZ(11)?
And also can use TAN(ROTX(11)) instead of delta_uz_11/delta_ux_11 for dW(x,y,z,t)/dx?
Note W(x,y,z,t) is the displacement of nodes in z direction in current time t.

July 26, 2024 at 1:06 pmdloomanAnsys Employee
I never used VZ(), but the Ansys Parametric Design Language Guide says it's just for fluid velocity. ROTY(11) return the tip rotation in radians which would be the slope dW/dx. You wouldn't need to take the tangent of it.

August 9, 2024 at 11:04 pmMehdi BaghaeeBbp_participant
Dont need ANTYPE,,rest and rescontrol,,all,1, options since the solve command is located within the DO loop?

 You must be logged in to reply to this topic.

416

187

168

156

140
© 2024 Copyright ANSYS, Inc. All rights reserved.