Skip to content

Enhancements in AbstractKernel #339

Open
@vickysharma0812

Description

@vickysharma0812

Loads

  • Point load
  • Line load
  • Handle Normal traction
  • Handle Tangential traction

Boundary conditions

  • Fixed boundary
  • Roller boundary
  • XYZ boundary
  • XY, YZ, and XZ boundary
  • X, Y, Z boundary
  • Nitsche boundary condition
  • Contact boundary condition

Others

  • Implement SetMeshData when domain is not common.
MODULE PROCEDURE obj_SetMeshData
CHARACTER(*), PARAMETER :: myName = \"obj_SetMeshData\"
#ifdef DEBUG_VER
CALL e%RaiseInformation(modName//'::'//myName//' - '// &
  & '[START] ')
#endif DEBUG_VER

IF (ASSOCIATED(obj%dom)) THEN
  CALL obj%dom%InitiateNodeToElements()
  CALL obj%dom%InitiateNodeToNodes()
  CALL obj%dom%InitiateFacetElements()
ELSE
  CALL e%RaiseError(modName//'::'//myName//' - '// &
    & '[POINTER ERROR] :: AbstractKernel_::obj%dom is not associated.')
END IF

IF (ALLOCATED(obj%domains)) THEN
  CALL e%RaiseError(modName//'::'//myName//' - '// &
    & '[WIP] :: AbstractKernel_::obj%domains  case todo.')
  RETURN
END IF
! TODO: Implement SetMeshData when isCommonDomain is false.

#ifdef DEBUG_VER
CALL e%RaiseInformation(modName//'::'//myName//' - '// &
  & '[END] ')
#endif DEBUG_VER

END PROCEDURE obj_SetMeshData

Set global element shape data in space:

  • Implement following method in AbstractKernel_Class@SetMethods
MODULE PROCEDURE obj_SetGlobalElemShapeDataInSpace
CHARACTER(*), PARAMETER :: myName = " obj_SetGlobalElemShapeDataInSpace()"
CALL e%RaiseError(modName//'::'//myName//' - '// &
  & '[WIP ERROR] :: This routine has not been implemented yet.')
END PROCEDURE obj_SetGlobalElemShapeDataInSpace

Time it

  • Add TimeIt feature in kernel.

Get the execution time of each step of the kernel.

  • Add a field called showTime in AbstractKernel
  • If showTime is true then we create a CSV file, we open the CSV file
  • When showTime is true we print time taken by methods of kernel
  • Add SetShowTime method to change the stat.
  • When deallocating the kernel, close the file.

Post processing

  • Add postProcessOpt
  • Stress, Strain to VTU
  • option for creating PVD file
  • option to set frequency of output

Read body source term from toml

  • Read body source term from toml

Save state:

  • Save state of kernel before starting the simulations.
  • Save state of kernel during the computations.
  • Convert the state into graphics.

Metadata

Metadata

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions