Hello Joerg, I want to deal with a thermoelastic problem in a way that the elastic equation and the heat equation are solved alternately. I was wondering if I can define a FESystem<dim> and Extractors as follows :
fe (FE_Q<dim>(degree+1), dim, FE_Q<dim>(degree), 1), const FEValuesExtractors::Vector <https://dealii.org/8.4.1/doxygen/deal.II/structFEValuesExtractors_1_1Vector.html> displacement (0); const FEValuesExtractors::Scalar <https://dealii.org/8.4.1/doxygen/deal.II/structFEValuesExtractors_1_1Scalar.html> temprature (dim); for displacement and temperature fields as done in step 20 or 22 for mixed vector-valued problems but don't solve problem in a monolithic way. I am struggling to combine step 18 and 26 with step 20 to define one mixed FESystem and DOFHandler for elastic and heat equation. For example in step 18 there is a function to compute the strain as follows: template <int dim> inline SymmetricTensor<2,dim> <https://dealii.org/8.4.1/doxygen/deal.II/classSymmetricTensor.html> get_strain (const FEValues<dim> <https://dealii.org/8.4.1/doxygen/deal.II/classFEValues.html> &fe_values, const unsigned int shape_func, const unsigned int q_point) { SymmetricTensor<2,dim> <https://dealii.org/8.4.1/doxygen/deal.II/classSymmetricTensor.html> tmp; for (unsigned int i=0; i<dim; ++i) tmp[i][i] = fe_values.shape_grad_component <https://dealii.org/8.4.1/doxygen/deal.II/classFEValuesBase.html#a836dd15035c0493714a284ee3d0e0a16> (shape_func,q_point,i)[i]; for (unsigned int i=0; i<dim; ++i) for (unsigned int j=i+1; j<dim; ++j) tmp[i][j] = (fe_values.shape_grad_component <https://dealii.org/8.4.1/doxygen/deal.II/classFEValuesBase.html#a836dd15035c0493714a284ee3d0e0a16> (shape_func,q_point,i)[j] + fe_values.shape_grad_component <https://dealii.org/8.4.1/doxygen/deal.II/classFEValuesBase.html#a836dd15035c0493714a284ee3d0e0a16> (shape_func,q_point,j)[i]) / 2; return tmp; } and I don't know if I can change the last lines to something like this: ... = (fe_values[displacement].shape_grad_component <https://dealii.org/8.4.1/doxygen/deal.II/classFEValuesBase.html#a836dd15035c0493714a284ee3d0e0a16> (shape_func,q_point,i)[j] + fe_values[displacement].shape_grad_component <https://dealii.org/8.4.1/doxygen/deal.II/classFEValuesBase.html#a836dd15035c0493714a284ee3d0e0a16> (shape_func,q_point,j)[i]) / 2; Thanks for your time, Hamed On Wednesday, August 27, 2014 at 5:06:40 AM UTC-5, deal.II-MailingList wrote: Hello Lisa, I suppose that it depends on how you want to solve your thermoelastic problem. Do you want to assemble one big system which contains one block for the elastic equation, another block for the heat equation and coupling blocks? Then you could solve that system in a monolithic way. Therefore you should have a look at step 20, 21 and 22. If you want to solve the elastic equation and the heat equation alternately a look to step 18 and 26 might be enough. step 18 shows an example for how to solve an elastic equation as a time depend problem. And step 26 gives an example for how to deal with the heat equation. Since I am currently working on a thermoelastic problem let me know if you have further questions. Best, Joerg Am Dienstag, 26. August 2014 15:21:25 UTC+2 schrieb Lisa Collins: Hi, I want to start deal.ii and model a thermoelastic problem in 2D & 3D. Can you please guide me which steps I should study. Which step should be considered as the base of my work and by modifying it I can model a thermoelastic problem? Best regards Lisa -- The deal.II project is located at http://www.dealii.org/ For mailing list/forum options, see https://groups.google.com/d/forum/dealii?hl=en --- You received this message because you are subscribed to the Google Groups "deal.II User Group" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
