Note: This discussion is about an older version of the COMSOL Multiphysics® software. The information provided may be out of date.

Discussion Closed This discussion was created more than 6 months ago and has been closed. To start a new discussion with a link back to this one, click here.

calculation of surface curvature, surface tension

Please login with a confirmed email address before reporting spam

Hello every body,

I've a 2-D model in Comsol 4.2a where I use PDE and a moving mesh interface. I need to calculate the surface curvature on a boundary. I don't know how to do this accurately in Comsol. I've find out that you have access to the boundary normal which are the variable c.nx and c.ny for example for coefficient form pde.

But for the surface curvature I need to calculate div(n) so I need to have the derivatives. I read that I don't have access to those. So I try using divergence theorem and weak expressions. If I write divergence theorem in weak form on my boundary i have:

integral(test(phi)*div(n))= - integral(test(Grad(phi))*n)+[nx*test(phi)]+[ny*test(phi)]

I can evaluate the integral on the right side using weak contributions. What can I do to evaluate the expressions between [ ]?
In the documentation and in this forum I read several time that it's possible to calculate surface curvature using weak expressions but I don't succeed. Do someone know exactly what I should do to get the surface curvature on the boundaries? Thanks for your answers!

Karl

7 Replies Last Post Jul 27, 2017, 11:09 a.m. EDT
Daniel Smith COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jul 27, 2012, 9:11 a.m. EDT
In 3D, add a 'Weak Form Boundary PDE' interface (under the Mathematics branch) with 3 dependent variables, say u, v and w. In the Weak Expressions section enter:

test(u)*(u-nx)
test(v)*(v-ny)
test(w)*(w-nz)

Now solve the model. The Gaussian curvature is then given by uTx+vTy+wTz. I think the mean curvature would be half of this.

You can also refer to the attached (V4.2a) model.
In 3D, add a 'Weak Form Boundary PDE' interface (under the Mathematics branch) with 3 dependent variables, say u, v and w. In the Weak Expressions section enter: test(u)*(u-nx) test(v)*(v-ny) test(w)*(w-nz) Now solve the model. The Gaussian curvature is then given by uTx+vTy+wTz. I think the mean curvature would be half of this. You can also refer to the attached (V4.2a) model.


Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jul 27, 2012, 10:11 p.m. EDT
Hello,

Thanks for your answer. Can you explain to me why you solve this to obtain the Gaussian curvature? According to wikidedia the Gaussian curvature is the product of the principal curvatures K=k1*k2.
But I need the mean curvature, that's k1+k2. In 2-D maybe both are the same, but now you talked about 3-D.

For me what you do is finding the vector u so that div(u-n)=0. But I still miss something because when I apply divergence theorem now in 3-D for general answer:

Vintegral(phi*div(u-n))= - Vintegral(Grad(phi)*(u-n))+Sintegral(phi*(u-n))

You're only calculating the second integral on the right side, why? Am I right with what I say here?
If yes in 3-D I'm able to solve this by adding a weak expression in the volume and another at the boundary. Do I need to do that?
Hello, Thanks for your answer. Can you explain to me why you solve this to obtain the Gaussian curvature? According to wikidedia the Gaussian curvature is the product of the principal curvatures K=k1*k2. But I need the mean curvature, that's k1+k2. In 2-D maybe both are the same, but now you talked about 3-D. For me what you do is finding the vector u so that div(u-n)=0. But I still miss something because when I apply divergence theorem now in 3-D for general answer: Vintegral(phi*div(u-n))= - Vintegral(Grad(phi)*(u-n))+Sintegral(phi*(u-n)) You're only calculating the second integral on the right side, why? Am I right with what I say here? If yes in 3-D I'm able to solve this by adding a weak expression in the volume and another at the boundary. Do I need to do that?

Nagi Elabbasi Facebook Reality Labs

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jul 28, 2012, 11:43 p.m. EDT
Hi Karl,

Why are you applying the divergence theorem? The equations that Daniel provided apply only on the surface to elegantly calculate the curvature. That curvature is actually the mean curvature though not the Gaussian curvature.

Nagi Elabbasi
Veryst Engineering
Hi Karl, Why are you applying the divergence theorem? The equations that Daniel provided apply only on the surface to elegantly calculate the curvature. That curvature is actually the mean curvature though not the Gaussian curvature. Nagi Elabbasi Veryst Engineering

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jul 29, 2012, 12:05 a.m. EDT
Because I want to understand why this calculation gives the surface curvature. Can you explain this for me?
Because I want to understand why this calculation gives the surface curvature. Can you explain this for me?

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Jul 30, 2012, 12:58 a.m. EDT
Ok, I've understand.
First step: calculate n in weak form
second step: calculate div(n).
I don't need divergence theorem.
Mr. Smith can you post the curvature file for Comsol 4.2 only please? I don't have 4.2a, only 4.2. I was wrong.
Thank you!
Ok, I've understand. First step: calculate n in weak form second step: calculate div(n). I don't need divergence theorem. Mr. Smith can you post the curvature file for Comsol 4.2 only please? I don't have 4.2a, only 4.2. I was wrong. Thank you!

José Mauricio Urbano Caguasango

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago Oct 16, 2012, 8:08 a.m. EDT
Hi Daniel, I find very interesting the way you calculate the surface curvature. I have a similar problem:

- I am simulating an sphere shell with pressure from the inside, which makes the sphere expand.
- I am using the Structural Mechanics Module
- The expanded surface presents some irregularities in the topography of the surface, which I want to evaluate by measuring the curvature.
- I want to calculate the curvature in a different manner. I want to make cuts that pass through the center, and evaluate the curvature of the resulting x,y plane. This means that i want only to consider the curvature on the radial direction of the sphere.

Could you help me to build the Weak Form PDE? I appreciate your help!!

José

Hi Daniel, I find very interesting the way you calculate the surface curvature. I have a similar problem: - I am simulating an sphere shell with pressure from the inside, which makes the sphere expand. - I am using the Structural Mechanics Module - The expanded surface presents some irregularities in the topography of the surface, which I want to evaluate by measuring the curvature. - I want to calculate the curvature in a different manner. I want to make cuts that pass through the center, and evaluate the curvature of the resulting x,y plane. This means that i want only to consider the curvature on the radial direction of the sphere. Could you help me to build the Weak Form PDE? I appreciate your help!! José

Please login with a confirmed email address before reporting spam

Posted: 7 years ago Jul 27, 2017, 11:09 a.m. EDT
Hello Mr. Smith,

I know that this converstation came long ago but hopefuly I can bring it back to life again.

I was trying your expression for the calculation of the curvature. As expected, it works really good. Then, I tried to use the value to model a surface diffusion process and then problems started.

In my model (deformed geometry) I define the normal displacement of a surface as a function of its curvature. The problem is, that the values of the curvature have small oscillations (likely due to the discretization of the geometry in finite elements). You can see those oscillations also in your moder (for example by ploting the curvature of the smallest cicumference of 0,75m which should be aroung 1.33 1/m). Those oscillations lead to small differences on the displacements of the points of the surface, which leads to huge differences on the curvature of the new surface. You can guess that after a few time steps the model collapses.

My question is: Can I by any means reduce the oscillations anyhow by somekind of smoothing?

I would also appreciate some enlightment about the relation between the uTx vTy and the geometry and gradient of the variables. I cannot find them defined in the equation view!

Thank you.

--
M. Sc. Oscar Banos
Hello Mr. Smith, I know that this converstation came long ago but hopefuly I can bring it back to life again. I was trying your expression for the calculation of the curvature. As expected, it works really good. Then, I tried to use the value to model a surface diffusion process and then problems started. In my model (deformed geometry) I define the normal displacement of a surface as a function of its curvature. The problem is, that the values of the curvature have small oscillations (likely due to the discretization of the geometry in finite elements). You can see those oscillations also in your moder (for example by ploting the curvature of the smallest cicumference of 0,75m which should be aroung 1.33 1/m). Those oscillations lead to small differences on the displacements of the points of the surface, which leads to huge differences on the curvature of the new surface. You can guess that after a few time steps the model collapses. My question is: Can I by any means reduce the oscillations anyhow by somekind of smoothing? I would also appreciate some enlightment about the relation between the uTx vTy and the geometry and gradient of the variables. I cannot find them defined in the equation view! Thank you. -- M. Sc. Oscar Banos

Note that while COMSOL employees may participate in the discussion forum, COMSOL® software users who are on-subscription should submit their questions via the Support Center for a more comprehensive response from the Technical Support team.