Thinfilm change log

From Micro and Nano Mechanics Group
Revision as of 20:44, 16 September 2011 by Wcash (talk | contribs) (added the rest of the common c files)
Jump to navigation Jump to search

Force.h

  • Used to be a part of ParadisProto.h in previous versions of the code.
  • Added thinfilm variables to function definitions.

Home.h

  • Identical to original code. However, it is needed in the thinfilm Include directory for the code to compile correctly.

Node.h

  • Declared THINFILM_SURFACE_NODE = 6

Param.h

  • Added thinfilm variable declarations.
  • Added _STACKINGFAULT variable.

ParadisProto.h

  • Added thinfilm variables to function definitions.
  • Included TF.h.
  • Added SemiInfiniteSegSegForce2 because of the differences between the SemiInfiniteSegSegForce in v2.3.5 cylinder code and the bulk code for v2.5.1

Topology.h

  • Added thinfilm variables to function definitions.

Util.h

  • Added cellIndex[3] to LocateCell() definition if _THINFILM
  • Added WRITE_NODE_FORCE() if _THINFILM


AllSegmentStress.c

  • No longer contained in src in v2.5.1.
  • The organization of FMlayer struct has changed. Code to get FMMcell should be:
cellID = EncodeFMCellIndex(layer->lDim, cellIndex[0], cellIndex[1], cellIndex[2])
FMMcell = LookupFMCell(layer->cellTable, cellID)

AllYoffeStress.c

  • added Sylvie's virtual segment changes.

Collision.c

  • This code is now a calling function for PredictiveCollision.c or ProximityCollision.c
  • Force collison to occur on surface
  • Change SURFACE_NODE to THINFILM_SURFACE_NODE

CrossSlip.c

  • Now a handler function for CrossSlipBCC.c and CrossSlipFCC.c
  • Passed thinfilm variables

CrossSlipBCC.c & CrossSlipFCC.c

  • THESE FUNCTIONS HAVE DRASTICALLY CHANGED IN v2.5.1. THE SECOND LOOP SHOULD PROBABLY BE UPDATED AT SOME POINT.
  • Added second loop for surface nodes.
  • Declared variables burg[], glidedir[][], and fnode[] because they are no longer part of src in v2.5.1
  • Added nodepinned2().
  • Need to be passed the thinfilm variables in order to give them to SetOneNodeForce().

DeltaPlasticStrain

  • Needs to be passed thinfilm variables to give them to DeltaPlasticStrain_BCC.c or DeltaPlasticStrain_FCC.c

DeltaPlasticStrain_BCC.c & DeltaPlasticStrain_BCC.c

  • Added modifications for _BENDING.

ForwardEulerIntegrator.c

  • Passed thinfilm variables.

Initialize.c

  • Added modifications for _STACKINGFAULT.
  • Suppressed warnings about free surfaces when using thinfilm.
  • Added simVol calculation for thinfilm.

InputSanity.c

  • Disabled failure if there are free surfaces and not using FMM with thinfilm.

LocalSegForces.c

  • Added modifications for _STACKINGFAULT.
  • Added modifications for _BENDING.
  • Added Sylvie's virtual segment treatment.
  • Passed thinfilm variables.
  • When using FULL_N2_FORCES added thinfilm remote forces.
  • Added remote stress contribution from the thinfilm regardless of whether FMM is enabled

MobilityLaw_BCC_0b.c

  • Constrained thinfilm surface node velocity in the z-direction to be zero.

MobilityLaw_BCC_0.c

  • Added correction to BTotal for a surface node, because it is simply linked.

MobilityLaw_BCC_glide.c

  • Added correction to BTotal for a surface node, because it is simply linked.
  • Added correction for a thinfilm's normal constraint.

MobilityLaw_FCC_0.c

  • Constrained thinfilm surface node velocity in the z-direction to be zero.
  • Tried to add Laboratory coordinate system rotation (may need checked)

MobilityLaw_Relax.c

  • This code was significantly changed from v2.3.5 to v2.5.1 in the src (may need checked)
  • Constrained thinfilm surface node velocity in the z-direction to be zero.

NodeForce.c

  • Added modifications for _STACKINGFAULT.
  • Added modifications for _BENDING.
  • Added Sylvie's virtual segment treatment.
  • Included TF.h.
  • Passed thinfilm variables.
  • Added WRITE_NODE_FORCE statements.
  • Called InitSegSigbRem()
  • Computed thinfilm's contribution to sigbRem.
  • Added a call to LocalVirtualSegForces()
  • When FULL_N2_FORCES, Added hook to zero sigbRem for adding in Yoffe stress. This is already done in the bulk code, but only with FEM.
  • When FULL_N2_FORCES, added remote stress calculation for thinfilm in SetOneNodeForce().
  • When NOT FULL_N2, added a hook to zero sigbRem for adding in Yoffe stress. This is already done in the bulk code, but only with FEM. This one was vectorized in the bulk code.
  • Calculate PK force if _THINFILM, even if FMM is not enabled. This is done in the bulk code, but for FEM.
  • Added thinfilm image stress to the segment's sigb.

ParadisStep.c

  • Added thinfilm variables to function definitions.

Param.c

  • Added modifications for _STACKINGFAULT.
  • Initialized thinfilm variables.

Plot.c

  • Included Param.h and TF.h.
  • Added plotting for thinfilm.

Remesh.c

  • Included TF.h
  • Passed thinfilm variables.
  • Added call to Thinfilm_Remesh().

RemeshRule_2.c

  • prevented thinfilm surface node from being removed.

Topology.c

  • Added modifications for _STACKINGFAULT.
  • Included TF.h.
  • Passed thinfilm variables.
  • Handled combining pinned multinodes at the surface.
  • Handled the splitting of surface nodes.
  • Changed to THINFILM_SURFACE_NODE

TrapezoidIntegrator.c

  • Passed thinfilm variables.
  • changed the print statement for thinfilm

SemiInfiniteSegSegForce.c

  • v2.5.1 now has this within the bulk code, but there appears to be some differences from the thinfilm code in v2.3.5.
  • v2.5.1 bulk code currently only computes forces on fp3 and fp4. It zeros out forces on fp1 and does not compute fp2. v2.3.5 computed all four.
  • Currently call the 2.3.5 functions SemiInfiniteSegSegForce2 and SpecialSemiInfiniteSegSegForce2.

Compute.c

  • Changed to SemiInfiniteSegSegForce2.

Util.c

  • LocateCell() has stopped retuning cellindex in v2.5.1 and calculates the results in a different way. I have temporarily made it calculated the old way for _THINFILM.
  • Added function WRITE_NODE_FORCE.
  • Changing LocateCell necessitates adding Util.h to the thinfilm libraries.



ABCoeff.c

  • Unique to thinfilm
  • Added Sylvie's virtual segment treatment.


Fourier_transforms.c

  • Unique to thinfilm
  • Added Sylvie's virtual segment treatment.

TF_Main.c

  • Unique to thinfilm
  • Added Sylvie's virtual segment treatment.

TF_Util.c

  • Unique to thinfilm
  • Added Sylvie's virtual segment treatment.