4
$\begingroup$

I am trying to compute surface integral $\iint x\ dS$. The surface is given parametrically: $x=3t+1, y=a^3 \sin t, z=a^3 \cos t, a \in [\frac12, 1], t \in [\frac\pi6,\frac\pi4]$.

My code is:

R = ParametricRegion[{3*t + 1, a^3 * Sin[t], 
    a^3*Cos[t]}, {{a, 1/2, 1}, {t, Pi/6, Pi/4}}];
Integrate[x, {x, y, z} \[Element] R ]

However it does not compute the integral. Please tell me what is wrong.

Thanks for your help!

$\endgroup$
4
  • $\begingroup$ Strange because NIntegrate does compute the answer. $\endgroup$
    – Haer'Dalis
    Nov 10, 2017 at 16:27
  • $\begingroup$ In version 11.0.1, even NIntegrate doesn't work for me... $\endgroup$ Nov 10, 2017 at 16:46
  • 1
    $\begingroup$ I see this question more as a "why isn't the functionality working the way it should". Either there is something off about the input, or something off about the program. The integral is doable as Henrik has shown. I don't see anything obvious wrong with the input. Playing around with some test functions makes me believe it has something to do with the inclusion of trig functions. - Possible bug? $\endgroup$
    – Haer'Dalis
    Nov 10, 2017 at 16:47
  • $\begingroup$ I think you should report this. $\endgroup$ Nov 11, 2017 at 0:55

2 Answers 2

6
$\begingroup$

We learnt how to do that by hand in the old days, you know:

Block[{t, a},
 F = {t, a} \[Function] {3*t + 1, a^3*Sin[t], a^3*Cos[t]};
 DF = {t, a} \[Function] Evaluate[D[F[t, a], {{t, a}, 1}]];
 jacobidet = {t, a} \[Function]  Evaluate[Simplify[
   Sqrt[Det[Transpose[DF[t, a]].DF[t, a]]]
 ]];
];
Integrate[F[t, a][[1]] jacobidet[t, a], {a, 1/2, 1}, {t, Pi/6, Pi/4}]
(π (8 + 5 π) (64 Sqrt[10] - Sqrt[577] + 576 ArcCsch[3] - 576 ArcCsch[24]))/12288

Edit

Added also some bullet proofing.

$\endgroup$
10
  • $\begingroup$ Thanks for the answer. It does not what I need, however you should add (3*t+1) factor to jacobidet $\endgroup$
    – Hedgehog
    Nov 10, 2017 at 16:53
  • $\begingroup$ @Hedgehog I have checked this code and it does not work. $\endgroup$ Nov 11, 2017 at 10:04
  • $\begingroup$ @JoséAntonioDíazNavas What's the issue? $\endgroup$ Nov 11, 2017 at 10:12
  • 1
    $\begingroup$ @José, if you want to help people debug their code, you could write something more elaborate than "it does not work". $\endgroup$ Nov 11, 2017 at 10:17
  • 2
    $\begingroup$ @José, as a tip for next time: usually people don't really need the message text; it suffices to just get the message name, which you can get in current versions by clicking the "..." icon to the left of an error message, and then clicking on "Copy Message Name" in the resulting popup menu. In older versions, it's the part with :: before the actual error message (e.g. Power::infy when you try evaluating 1/0). $\endgroup$ Nov 11, 2017 at 10:26
2
$\begingroup$

At least since v13.3, Integrate handles the problem without difficulty:

enter image description here

$\endgroup$
2
  • $\begingroup$ That works in 13.2.1. $\endgroup$ Jun 27, 2023 at 10:50
  • 1
    $\begingroup$ @ВалерийЗаподовников Feel free to edit, it's a community wiki :) . $\endgroup$
    – xzczd
    Jun 27, 2023 at 11:15

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.