Ansys Assistant will be unavailable on the Learning Forum starting January 30. An upgraded version is coming soon. We apologize for any inconvenience and appreciate your patience. Stay tuned for updates.
General Mechanical

General Mechanical

Topics related to Mechanical Enterprise, Motion, Additive Print and more.

How to use simulation results (temperatur) to control birth and death elements

    • 2281935340
      Subscriber

      Hello everyone,

      I am new to Ansys. And i am currently simulating laser additive manufacturing via Ansys Workbench (transient thermal coupled with static structural). In the simulation I need to use birth and death elements. In Ansys Workbench it is possible to control the birth and death of a element by the step. But i would like to know how to control the birth and death of the elements by the simulation results (temperature). It would be nice to have some examples.

      Thanks in advance!

      Ky

    • dlooman
      Ansys Employee
      This is possible in principle with APDL scripting, but might not be a good thing to try as a new user. If you want to try it anyway, make a very small cube model to test it on. The APDL outline is as follows:
      /solu
      *do,time_val,0,1,1e-3
      !!! Apply load
      solve
      nsel,s,temp,,0,1000 ! select nodes below 1000 degC
      esln ! select attached elements
      ealive,all
      allsel
      *enddo
      fini

    • 2281935340
      Subscriber
      Hello dlooman There are a few more things I would like to ask you about your APDL command.
      In the command "!!!! Apply load" means here I need to add the load (laser) as a command stream?
      Don't I need to kill the birth and dead elements first when using your command stream to control them?
      For example:
      /solu
      *do,time_val,0,1,1e-3
      ekill, element1
      ekill, element2
      ekill, element3
      (Elements 1 to 3 are the elements of birth and death that I have named myself by "Create Named Selection".)
      !!! Apply load (laser)
      solve
      nsel,s,temp,,0,1000 ! select nodes below 1000 degC
      esln ! select attached elements
      ealive,all
      allsel
      *enddo
      fini

      Thanks in advance!
      Ky
    • 2281935340
      Subscriber

      I added your APDL command to try but it failed. I was hoping the elements would be dead at first. When the elements are heated to a certain temperature by the laser they come back to life. I tried to modify on your command also tried to write the command like the information on the internet. But unfortunately both attempts failed. In the simulation, the previously set dead elements stayed dead. I verified the command of my laser. The command for the laser was correct. I would like to ask you if you have any other ideas on this issue?
      Modifications based on your command:
      ekill,s1
      ekill,s2
      ekill,s3
      ekill,s4
      ekill,s5
      ekill,s6
      ekill,s7
      ekill,s8
      ekill,s9
      ekill,s10
      /solu
      !!!command for laser
      solve
      nsel,s,temp,,500,10000 ! select nodes higher than 500 degC
      esln ! select attached elements
      ealive,all
      allsel
      *enddo
      fini
      Modifications based on the information from Internet:
      ekill,s1
      ekill,s2
      ekill,s3
      ekill,s4
      ekill,s5
      ekill,s6
      ekill,s7
      ekill,s8
      ekill,s9
      ekill,s10
      /solu
      !!!command for laser
      solve
      finish
      !
      /POST1
      set,...
      etable, temper,temp
      esel,s,etab,temper,500
      finish
      !
      /solu
      antype,,rest
      ealive,all
      esel,all
      *enddo
      fini

      Thanks in advance!
      Ky

    • Ollieturpin
      Subscriber
      I have a similar concern in that I am trying have elements deactivated when they exceed a certain strain value, currently my problem is that the code is telling me that when I try to request the stress or strain data to determine which elements are within the range that need to be killed that the data is unavailable. I have attached the code that I am using. Some elements of it are slightly off as I have commented some stuff out resulting in excess endif's.

      /com, #############################################
      /com, ##£
      !*get,myncmls,active,,solu,ncmls ! cumulative number of load steps
      !*if,myncmls,gt,0,then ! if this is after the first
      cmsel,s,Cancellous ! ELEMENT component to be checked
      nsle ! nodes on these elements
      SELTOL,1.0e-12 ! stay within range below
      ! #########
      nsel,R,S,eqv,1E8,1E11 ! re-select nodes with results above a value <<<
      ! #########
      !SELTOL ! selection tolerance back to default
      *get,numnode,node,,count ! how many nodes with result above?
      *if,numnode,gt,0,then
      ESLN,R,1,ALL ! elements with any node selected
      *get,numelem,elem,,count
      *if,numelem,gt,0,then
      NROPT,FULL
      ekill,all
      SHPP,ON
      *endif
      *endif
      allsel
      *else
      ! if first load step, have result written to in-memory database
      fini
      /config,noeldb,0 ! write results into the database
      /solu ! continue with solution
      *endif
      /com, ##£
      /com, #############################################

      If anyone has any advice to solve my problem that would be a lot of help.
Viewing 4 reply threads
  • The topic ‘How to use simulation results (temperatur) to control birth and death elements’ is closed to new replies.
[bingo_chatbox]