diff --git a/cosserat-continuum.cc b/cosserat-continuum.cc index 943be144bfc104a377124bb22f9a0ad288b53dbf..c25cefeb24025844442e7be3e19c1fb7551e41e5 100644 --- a/cosserat-continuum.cc +++ b/cosserat-continuum.cc @@ -53,8 +53,9 @@ void dirichletValues(const FieldVector<double,dim>& in, FieldVector<double,3>& o for (int i=0; i<dim; i++) out[i] = in[i]; - if (out[1] > 1-1e-3) - out[0] += homotopy; +// if (out[1] > 1-1e-3) + if (out[1] > 0.18-1e-4) + out[0] += 0.003*homotopy; } #endif #if 0 @@ -188,7 +189,7 @@ int main (int argc, char *argv[]) try #if 1 // Boundary conditions for the shearing/wrinkling example if (vIt->geometry().corner(0)[1] < 1e-4 or vIt->geometry().corner(0)[1] > upper[1]-1e-4 ) { // Only translation dofs are Dirichlet - for (int j=0; j<3; j++) + for (int j=0; j<5; j++) dirichletNodes[grid->leafIndexSet().index(*vIt)][j] = true; } #endif @@ -234,6 +235,7 @@ int main (int argc, char *argv[]) try for (int i=0; i<dim; i++) x[idx].r[i] = vIt->geometry().corner(0)[i]; + x[idx].r[2] = 0.002*std::cos(1e4*vIt->geometry().corner(0)[0]); // x[idx].q is the identity, set by the default constructor }