Eric Favre
COMSOL Employee
Please login with a confirmed email address before reporting spam
Posted:
1 decade ago
2013年10月3日 GMT-4 05:43
See the documentation :
COMSOL Multiphysics > Equation-Based Modeling > Modeling with PDEs > Introduction to the Weak Form
It explains how to derive div(Gamma)=0 : in short multipy by a test function and integrate by parts.
you'll end-up with integrals over the domain and contributions in boundaries in which you let your boundary conditions apply.
The test functions notation is test(u) if u is the unknown.
If you want to see how COMSOL transforms a physical equation into a weak form :
try this out on 1D case. Define a geometry.
Select for instance a diffusion equation (diluted species).
In preferences, check the "view equation" so that you can see the weak form behind the scene.
Expand the node "convection and diffusion" and you'll find the equation view (possibly refresh this view). The weak form appears, the following lines should be added :
-d(c,t)*test(c)-D*cx*test(cx)
f*test(c)
in strong form : dc/dt + div(D*grad(c)) = f
The structural mechanics equations with COMSOL are derived from energy considerations directly : it helps to extend to the cases where you loose linearity.
Of course you can solve div(sigma)=forces if sigma is your stress tensor using the general form above. It should work in cases where, for instance, Young's modulus is temperature dependent. But it will be hard if not impossible to apply to large deformations, hyperelasticity,... by keeping this framework div(Gamma)=something. Switching to the energy form is then necessary and it helps a lot to start with the physical form that COMSOL provides : it's not only a matter of defining the equation and boundary condition itself, but as well all post-processing variables, that might take some time to derive correctly.
Eric
See the documentation :
COMSOL Multiphysics > Equation-Based Modeling > Modeling with PDEs > Introduction to the Weak Form
It explains how to derive div(Gamma)=0 : in short multipy by a test function and integrate by parts.
you'll end-up with integrals over the domain and contributions in boundaries in which you let your boundary conditions apply.
The test functions notation is test(u) if u is the unknown.
If you want to see how COMSOL transforms a physical equation into a weak form :
try this out on 1D case. Define a geometry.
Select for instance a diffusion equation (diluted species).
In preferences, check the "view equation" so that you can see the weak form behind the scene.
Expand the node "convection and diffusion" and you'll find the equation view (possibly refresh this view). The weak form appears, the following lines should be added :
-d(c,t)*test(c)-D*cx*test(cx)
f*test(c)
in strong form : dc/dt + div(D*grad(c)) = f
The structural mechanics equations with COMSOL are derived from energy considerations directly : it helps to extend to the cases where you loose linearity.
Of course you can solve div(sigma)=forces if sigma is your stress tensor using the general form above. It should work in cases where, for instance, Young's modulus is temperature dependent. But it will be hard if not impossible to apply to large deformations, hyperelasticity,... by keeping this framework div(Gamma)=something. Switching to the energy form is then necessary and it helps a lot to start with the physical form that COMSOL provides : it's not only a matter of defining the equation and boundary condition itself, but as well all post-processing variables, that might take some time to derive correctly.
Eric