I'm not familiar with step-44, I'm afraid, so am not really sure what
you are trying to achieve.
It seems to me at first glance that you want to add a Function to the
Material_Compressible_Neo_Hook_Three_Field<dim> class, and make the
constructor initialise it as the function from the parameter file (by
including it as an argument in the constructor etc). Then the class will
"know" about the material function and when you want the material data
at a point you can just call the function internally.
However I admit I haven't looked at step 44 and don't know what you are
trying to achieve - I would recommend a second opinion!
John
On 08/05/12 19:38, Hadi Rahemi wrote:
Thanks John,
This helps very much. I have limited knowledge of C++. I need to know
how can I change the PointHistory class to include the material
constants in each quadrature point?
For example how should I change the following line of code,
"
material =new Material_Compressible_Neo_Hook_Three_Field<dim>(parameters.mu
<http://parameters.mu>,
parameters.nu <http://parameters.nu>);
"
could I loop through quadrature points and interpolate parsed function
in that points and call Neo-Hokean material for interpolated?
or may be I am wrong and have to change the setup_qph class!!
Thanks
Hadi
On Thu, May 3, 2012 at 12:04 AM, John Chapman
<[email protected] <mailto:[email protected]>> wrote:
Hi Rahemi,
It sounds like you want the Functions::ParsedFunction and
FunctionParser classes. This allows you to write functions in a
parameter file which can then be evaluated at run time, for
example at the quadrature points. This can handle vector valued
functions too.
The use is covered in step-34
http://www.dealii.org/developer/doxygen/deal.II/step_34.html
and the classes
http://www.dealii.org/developer/doxygen/deal.II/classFunctionParser.html
http://www.dealii.org/developer/doxygen/deal.II/classFunctions_1_1ParsedFunction.html
John
On 01/05/12 22:12, Hadi Rahemi wrote:
Hi,
I am using step-44 as base for my elasticity problem and I need
define material constants (using a class or template) as a
function of global position. Is there anyway to use
ParameterHandler to use interpolated value of these constants
(i.e at each quadrature point) during the run-time? In other
words I want the elasticity tensor to have different values in
each quadrature point.
Hadi Rahemi
--
Ph.D. Candidate,
Department of Biomedical Physiology and Kinesiology,
Simon Fraser Unniversity, 8888 University Drive,
Burnaby, BC, V5A 1S6.
_______________________________________________
dealii mailing listhttp://poisson.dealii.org/mailman/listinfo/dealii
--
Ph.D. Candidate,
Department of Biomedical Physiology and Kinesiology,
Simon Fraser Unniversity, 8888 University Drive,
Burnaby, BC, V5A 1S6.
_______________________________________________
dealii mailing list http://poisson.dealii.org/mailman/listinfo/dealii