Based on your comments, I've discovered a bug in the code. Using sets for loads, the contributions assembled even when the element was not activated.
A simple "if ( !element->isActivated(tStep) ) continue;" was missing.
It's pushed to github.com/Micket/oofem
But this would really only have a very minor effect on the results (though, still, should be corrected).
This is still what happens when you activate an element:
1. When an element gets activated, it uses the current displacements of it's nodes as the "initial displacement" that subtracted when computing strains.
epsilon = B * (displacements - initial_displacements)
where "initial_displacements" is stored per each element.
That's it. It's very simple, and it's the *only* thing you can, and should, do.
We don't have any support for "initial stresses". I don't even think the concept is well defined.
Displacements control the strain
The strain controls the stress.
You can only control the displacements, the rest, whatever it ends up being, is implied.
Do you mean initial stress/strain will not affect the stiffness matrix in elastic-solving step when a nonlinear material is used? Of course I can use "activityltf" to do it, but I don't know what the solvers do when new elements with old ones work together.
I don't really know how to answer this.
The stiffness matrix is just a tool to solve the Newton iterations. If you are using so large steps that the initial guess strongly determines which solution you obtain.. then you are using to large timestep. Lower them until the point where the initial *guess* does not matter anymore.
And ActivityLTF is a completely unrelated concept, which has nothing at all to do with the initial guess.
To be perfectly clear: you absolutely *must* use activityltf, no matter what. CG solver, initial guesses/conditions are all just techniques for obtaining equilibrium.. but it doesn't matter.
CG you can use with IML solver or PETSc matrix+solver (you have to compile PETSc for this). Using petsc, specify the flag during runtime
These concepts define the problem:
Equilibrium + ActivityLTF (and by it, the implied initial displacements) + Material model
These concepts define how to solve the given problem:
CG solver, dynamic Dirichlet BCs on loose nodes, Newton iterations, initial guesses on the solution
They should always reach the exact same answer. If the residual = 0, then the problem above is solved, no matter how you did it.