Message Boards Message Boards

Find the symbolic circular integral of a biconic function?

Posted 4 years ago

Hello everyone,

recently I have been struggling to find a satisfying result to an integral that I want to solve. I will first describe the background so you get an idea of what I am trying to achieve and then go on to explain my attempts, thoughts and troubles in solving it.

I want to find a symbolic expression for the volume of a liquid column in a tube. The column is cylindrical in shape, except for the top surface which I want to model as a biconic function. This is my starting point:

z = (cx x^2 + cy y^2)/(1 + Sqrt[1 - (1 + kx) cx^2 x^2 - (1 + ky) cy^2 y^2])

To model the height of the column I add the variable h. For now I am only interested in "circular" curvatures so I set the conic constants in x and y to zero. To make it more easily understandable, I replace the curvatures with radii. My idea to find the volume of the cylindrical column is to calculate a circular integral so I replace x and y with the corresponding polar coordinates.

zint = z + h /. {kx -> 0, ky -> 0, x -> r Cos[\[Phi]], y -> r Sin[\[Phi]], cx -> 1/Rx, cy -> 1/Ry}

The resulting function models the surface shape exactly how I want. I verified this visually with plots and manually by plugging in the numbers to model a half-sphere and then calculating the integral. The result gives the exact numerical value that you would get if you took the geometrical formula for the volume of a sphere.

So now the interesting part begins. I set up a multiple intgral, first integrating over the radius (from zero to the half-diameter of the tube) and then over the angle (zero to 2 pi).

vol = Integrate[(zint*r), {\[Phi], 0, 2 \[Pi]}, {r, 0, dia/2}]

This integral however, takes ages to compute and did not give me a result even after letting it run for two days. So then I researched how to speed up the calculation of symbolic integrals and found this thread suggesting that I calculate the indefinite integral first and find the values in a separate step. This approach did give me an expression for the indefinite integral and I also received expressions when calculating the limits. When plugging in numbers the volume is incorrect, sadly.

indef = Integrate[(zint*r), \[Phi], r]
tmp = Limit[indef, r -> dia/2]
vol = Limit[tmp, \[Phi] -> 2 \[Pi]]

My understanding is that by using this approach I indirectly skipped the continuity check that Integrate uses and which might be the reason that the definite integral takes so long to compute. So did I make some kind of faulty simplification here? Possibly because of the division by zero when either Rx or Ry are equal to zero?

My question now is, is there a way to find a symbolic expression that is valid for all values of Rx and Ry (negative and positive but real)? If no, how can I split the Integral? I am also open to other suggestions how to obtain the desired function (relation between curvatures, height and volume).

I can also upload the notebook if it helps in any way. Thank you for reading

POSTED BY: Dan S
4 Replies
Posted 4 years ago

Sorry for the confusion. I have created some plots to illustrate the situation. A bit more background on the liquid and what I am trying to achieve: The volume of this "capped column" remains constant. It is the volume below/capped by the orange surface, bounded by the blue cylinder on the other sides. The surface radii in X and Y are variable and because of volume conservation the center of the liquid (x=0, y=0, h) will move up and down.

Tubes

I am interested in a symbolic relation beteen the volume, the radii in x and y, and the height of the center point. So my idea was to find V(Rx, Ry, h), assume a constant value for the volume V and solve for h to obtain h(Rx, Ry). The easiest way to find this volume seemed to me to just integrate over a circular region, hence why we are here.

POSTED BY: Dan S

The message usually comes from internal calls Integrate makes to Simplify.Offhand I do not know what causes the conflicts though.

I still am not clear on the surface cap[ping the liquid. Are you are working with a cylinder plus "slant height"? If so, just treat it as a cylinder that stops halfway up the slope.

POSTED BY: Daniel Lichtblau
Posted 4 years ago

Thank you for the advice Daniel.

My apologies, I wasn't aware that this name is not common. It is basically two conic sections, in X and Y respectively. So by varying the conic constant you can have different shapes (paraboloid, hyperboloid, circular, elliptical). For k=0 the shape is circular. Thats the case I would like.

I have tried your suggestion of specifying assumptions for the different cases. So to try it out I want to have the case where both Rx and Ry are negative. I've written the assumptions like this:

volxnyn = Integrate[(zint*r), {\[Phi], 0, 2 \[Pi]}, {r, 0, dia/2}, Assumptions -> {r \[Element] Reals, dia \[Element] Reals, Rx \[Element] Reals, Ry \[Element] Reals, h \[Element] Reals, \[Phi] \[Element] Reals, h > 0, dia > 0, Rx < 0, Ry < 0}]

Its been running since yesterday without a result. Additonally I've gotten a bunch of warnings about contradicting assumptions. I don't see how the assumptions that I specified contradict themselves though.

Refine::cas: Warning: contradictory assumption(s) h>0&&Ry<0&&dia>0&&2 Rx+dia<0&&2 Ry+dia!=0&&((Ry Sqrt[-4 Power[<<2>>]+dia^2])/(Rx Sqrt[4 Power[<<2>>]-Power[<<2>>]])\[NotElement]\[DoubleStruckCapitalR]||(Sqrt[-4 Power[<<2>>]+dia^2]!=0&&Re[(Ry Sqrt[Plus[<<2>>]])/(Rx Sqrt[Plus[<<2>>]])]>=0))&&r\[Element]\[DoubleStruckCapitalR]&&\[Phi]\[Element]\[DoubleStruckCapitalR] encountered.

When and how is this expression produced and could this be the reason that I'm not getting a result? I am also not sure how to read this warning, which of these assumptions contradict themselves?

POSTED BY: Dan S

I do not know what a biconic surface is, but maybe try the definite integration using Assumptions->{h>0,0<Rx,...} and perhaps separately for assuming Rx<0. I suspect splitting into such cases will make the integration more amenable to symbolic computation.

POSTED BY: Daniel Lichtblau
Reply to this discussion
Community posts can be styled and formatted using the Markdown syntax.
Reply Preview
Attachments
Remove
or Discard

Group Abstract Group Abstract