Boundary Value Problem and FullSimplifyI failed to solve a set of one-dimension fluid mechanics PDEs with NDSolveDSolve gives complex function although the solution is a real oneNumerical solution of coupled ODEs with boundary conditionsNDSolve and strange “nonlinear coefficients problem”Reaction-diffusion PDE with NDSolve: either very slow or very inaccurateSolution of nonlinear system with boundary conditionsDSolve, NDSolve with WhenEvent Give Incorrect Solution for Simple ODEInhomogeneous Neumann boundary conditions for diffusion equationAnalyitic and numerical solutions plots of PDE are different!Not sure how to set up the Laplacian/Poisson Equation

Is there a way to get `mathscr' with lower case letters in pdfLaTeX?

Extract more than nine arguments that occur periodically in a sentence to use in macros in order to typset

It grows, but water kills it

Why is the "ls" command showing permissions of files in a FAT32 partition?

Does Doodling or Improvising on the Piano Have Any Benefits?

Electoral considerations aside, what are potential benefits, for the US, of policy changes proposed by the tweet recognizing Golan annexation?

Non-trope happy ending?

Why "had" in "[something] we would have made had we used [something]"?

Do the primes contain an infinite almost arithmetic progression?

What are the advantages of simplicial model categories over non-simplicial ones?

How should I respond when I lied about my education and the company finds out through background check?

Yosemite Fire Rings - What to Expect?

Why does AES have exactly 10 rounds for a 128-bit key, 12 for 192 bits and 14 for a 256-bit key size?

Open a doc from terminal, but not by its name

Is aluminum electrical wire used on aircraft?

How could a planet have erratic days?

Limits and Infinite Integration by Parts

Keeping a ball lost forever

Pre-mixing cryogenic fuels and using only one fuel tank

creating a ":KeepCursor" command

Recommended PCB layout understanding - ADM2572 datasheet

Quoting Keynes in a lecture

How do you respond to a colleague from another team when they're wrongly expecting that you'll help them?

Plot of a tornado-shaped surface



Boundary Value Problem and FullSimplify


I failed to solve a set of one-dimension fluid mechanics PDEs with NDSolveDSolve gives complex function although the solution is a real oneNumerical solution of coupled ODEs with boundary conditionsNDSolve and strange “nonlinear coefficients problem”Reaction-diffusion PDE with NDSolve: either very slow or very inaccurateSolution of nonlinear system with boundary conditionsDSolve, NDSolve with WhenEvent Give Incorrect Solution for Simple ODEInhomogeneous Neumann boundary conditions for diffusion equationAnalyitic and numerical solutions plots of PDE are different!Not sure how to set up the Laplacian/Poisson Equation













3












$begingroup$


I'm confused about the output Mathematica is giving me when solving a boundary value problem of the form:



eq = ϵ y''[t] + 2 y'[t] + 2 y[t] == 0;
bc1 = y[0] == 0;
bc2 = y[1] == 1;

aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t][[1]][[1]]


This yields the correct answer, and produces plots like this for ep=1, ep=0.1, and ep=0.01.



Plot[
aSol /. ϵ -> 1,
aSol /. ϵ -> 0.1,
aSol /. ϵ -> 0.01,
t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]


enter image description here



So far, so good!



However, if I simply ask Mathematica to FullSimplify[aSol], the resulting solution is no longer correct, and it does not satisfy one of the boundary conditions:



aSolSimpl = FullSimplify[aSol]

Plot[
aSol /. ϵ -> 0.05,
aSolSimpl /. ϵ -> 0.05
, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]


enter image description here



What's going wrong here?










share|improve this question











$endgroup$











  • $begingroup$
    i think because you assign Epsilon different values. i used Full Simplify and it was fine with me use it as follow to check aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t] /. [Epsilon] -> 1 aSolSimpl = FullSimplify[aSol] /. [Epsilon] -> 1 Plot[aSol, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"] Plot[aSolSimpl, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]
    $endgroup$
    – Alrubaie
    yesterday







  • 1




    $begingroup$
    @dpholmes Plotting Plot3D[Evaluate[aSol, FullSimplify[aSol, [Epsilon] > 0]], t, 0, 1, [Epsilon], 0, 1] reveals that it might be a precision problem.
    $endgroup$
    – Henrik Schumacher
    yesterday















3












$begingroup$


I'm confused about the output Mathematica is giving me when solving a boundary value problem of the form:



eq = ϵ y''[t] + 2 y'[t] + 2 y[t] == 0;
bc1 = y[0] == 0;
bc2 = y[1] == 1;

aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t][[1]][[1]]


This yields the correct answer, and produces plots like this for ep=1, ep=0.1, and ep=0.01.



Plot[
aSol /. ϵ -> 1,
aSol /. ϵ -> 0.1,
aSol /. ϵ -> 0.01,
t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]


enter image description here



So far, so good!



However, if I simply ask Mathematica to FullSimplify[aSol], the resulting solution is no longer correct, and it does not satisfy one of the boundary conditions:



aSolSimpl = FullSimplify[aSol]

Plot[
aSol /. ϵ -> 0.05,
aSolSimpl /. ϵ -> 0.05
, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]


enter image description here



What's going wrong here?










share|improve this question











$endgroup$











  • $begingroup$
    i think because you assign Epsilon different values. i used Full Simplify and it was fine with me use it as follow to check aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t] /. [Epsilon] -> 1 aSolSimpl = FullSimplify[aSol] /. [Epsilon] -> 1 Plot[aSol, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"] Plot[aSolSimpl, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]
    $endgroup$
    – Alrubaie
    yesterday







  • 1




    $begingroup$
    @dpholmes Plotting Plot3D[Evaluate[aSol, FullSimplify[aSol, [Epsilon] > 0]], t, 0, 1, [Epsilon], 0, 1] reveals that it might be a precision problem.
    $endgroup$
    – Henrik Schumacher
    yesterday













3












3








3





$begingroup$


I'm confused about the output Mathematica is giving me when solving a boundary value problem of the form:



eq = ϵ y''[t] + 2 y'[t] + 2 y[t] == 0;
bc1 = y[0] == 0;
bc2 = y[1] == 1;

aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t][[1]][[1]]


This yields the correct answer, and produces plots like this for ep=1, ep=0.1, and ep=0.01.



Plot[
aSol /. ϵ -> 1,
aSol /. ϵ -> 0.1,
aSol /. ϵ -> 0.01,
t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]


enter image description here



So far, so good!



However, if I simply ask Mathematica to FullSimplify[aSol], the resulting solution is no longer correct, and it does not satisfy one of the boundary conditions:



aSolSimpl = FullSimplify[aSol]

Plot[
aSol /. ϵ -> 0.05,
aSolSimpl /. ϵ -> 0.05
, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]


enter image description here



What's going wrong here?










share|improve this question











$endgroup$




I'm confused about the output Mathematica is giving me when solving a boundary value problem of the form:



eq = ϵ y''[t] + 2 y'[t] + 2 y[t] == 0;
bc1 = y[0] == 0;
bc2 = y[1] == 1;

aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t][[1]][[1]]


This yields the correct answer, and produces plots like this for ep=1, ep=0.1, and ep=0.01.



Plot[
aSol /. ϵ -> 1,
aSol /. ϵ -> 0.1,
aSol /. ϵ -> 0.01,
t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]


enter image description here



So far, so good!



However, if I simply ask Mathematica to FullSimplify[aSol], the resulting solution is no longer correct, and it does not satisfy one of the boundary conditions:



aSolSimpl = FullSimplify[aSol]

Plot[
aSol /. ϵ -> 0.05,
aSolSimpl /. ϵ -> 0.05
, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]


enter image description here



What's going wrong here?







differential-equations simplifying-expressions






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited yesterday









MarcoB

37.9k556114




37.9k556114










asked yesterday









dpholmesdpholmes

345111




345111











  • $begingroup$
    i think because you assign Epsilon different values. i used Full Simplify and it was fine with me use it as follow to check aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t] /. [Epsilon] -> 1 aSolSimpl = FullSimplify[aSol] /. [Epsilon] -> 1 Plot[aSol, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"] Plot[aSolSimpl, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]
    $endgroup$
    – Alrubaie
    yesterday







  • 1




    $begingroup$
    @dpholmes Plotting Plot3D[Evaluate[aSol, FullSimplify[aSol, [Epsilon] > 0]], t, 0, 1, [Epsilon], 0, 1] reveals that it might be a precision problem.
    $endgroup$
    – Henrik Schumacher
    yesterday
















  • $begingroup$
    i think because you assign Epsilon different values. i used Full Simplify and it was fine with me use it as follow to check aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t] /. [Epsilon] -> 1 aSolSimpl = FullSimplify[aSol] /. [Epsilon] -> 1 Plot[aSol, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"] Plot[aSolSimpl, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]
    $endgroup$
    – Alrubaie
    yesterday







  • 1




    $begingroup$
    @dpholmes Plotting Plot3D[Evaluate[aSol, FullSimplify[aSol, [Epsilon] > 0]], t, 0, 1, [Epsilon], 0, 1] reveals that it might be a precision problem.
    $endgroup$
    – Henrik Schumacher
    yesterday















$begingroup$
i think because you assign Epsilon different values. i used Full Simplify and it was fine with me use it as follow to check aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t] /. [Epsilon] -> 1 aSolSimpl = FullSimplify[aSol] /. [Epsilon] -> 1 Plot[aSol, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"] Plot[aSolSimpl, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]
$endgroup$
– Alrubaie
yesterday





$begingroup$
i think because you assign Epsilon different values. i used Full Simplify and it was fine with me use it as follow to check aSol = y[t] /. DSolve[eq, bc1, bc2, y[t], t] /. [Epsilon] -> 1 aSolSimpl = FullSimplify[aSol] /. [Epsilon] -> 1 Plot[aSol, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"] Plot[aSolSimpl, t, 0, 1, Frame -> True, FrameLabel -> "t", "y(t)"]
$endgroup$
– Alrubaie
yesterday





1




1




$begingroup$
@dpholmes Plotting Plot3D[Evaluate[aSol, FullSimplify[aSol, [Epsilon] > 0]], t, 0, 1, [Epsilon], 0, 1] reveals that it might be a precision problem.
$endgroup$
– Henrik Schumacher
yesterday




$begingroup$
@dpholmes Plotting Plot3D[Evaluate[aSol, FullSimplify[aSol, [Epsilon] > 0]], t, 0, 1, [Epsilon], 0, 1] reveals that it might be a precision problem.
$endgroup$
– Henrik Schumacher
yesterday










1 Answer
1






active

oldest

votes


















5












$begingroup$

This behavior seems due to precision problems, as Henrik suggested in comments:



aSol = DSolveValue[eq, bc1, bc2, y[t], t];
aSolSimpl = FullSimplify[aSol];

Plot[Evaluate[aSol /. ϵ -> 1, 1/10, 1/100], t, 0, 1]

Plot[
Evaluate[aSolSimpl /. ϵ -> 1, 1/10, 1/100], t, 0, 1,
WorkingPrecision -> $MachinePrecision
]


Mathematica graphics






share|improve this answer









$endgroup$












    Your Answer





    StackExchange.ifUsing("editor", function ()
    return StackExchange.using("mathjaxEditing", function ()
    StackExchange.MarkdownEditor.creationCallbacks.add(function (editor, postfix)
    StackExchange.mathjaxEditing.prepareWmdForMathJax(editor, postfix, [["$", "$"], ["\\(","\\)"]]);
    );
    );
    , "mathjax-editing");

    StackExchange.ready(function()
    var channelOptions =
    tags: "".split(" "),
    id: "387"
    ;
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function()
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled)
    StackExchange.using("snippets", function()
    createEditor();
    );

    else
    createEditor();

    );

    function createEditor()
    StackExchange.prepareEditor(
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: false,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: null,
    bindNavPrevention: true,
    postfix: "",
    imageUploader:
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    ,
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    );



    );













    draft saved

    draft discarded


















    StackExchange.ready(
    function ()
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f193714%2fboundary-value-problem-and-fullsimplify%23new-answer', 'question_page');

    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    5












    $begingroup$

    This behavior seems due to precision problems, as Henrik suggested in comments:



    aSol = DSolveValue[eq, bc1, bc2, y[t], t];
    aSolSimpl = FullSimplify[aSol];

    Plot[Evaluate[aSol /. ϵ -> 1, 1/10, 1/100], t, 0, 1]

    Plot[
    Evaluate[aSolSimpl /. ϵ -> 1, 1/10, 1/100], t, 0, 1,
    WorkingPrecision -> $MachinePrecision
    ]


    Mathematica graphics






    share|improve this answer









    $endgroup$

















      5












      $begingroup$

      This behavior seems due to precision problems, as Henrik suggested in comments:



      aSol = DSolveValue[eq, bc1, bc2, y[t], t];
      aSolSimpl = FullSimplify[aSol];

      Plot[Evaluate[aSol /. ϵ -> 1, 1/10, 1/100], t, 0, 1]

      Plot[
      Evaluate[aSolSimpl /. ϵ -> 1, 1/10, 1/100], t, 0, 1,
      WorkingPrecision -> $MachinePrecision
      ]


      Mathematica graphics






      share|improve this answer









      $endgroup$















        5












        5








        5





        $begingroup$

        This behavior seems due to precision problems, as Henrik suggested in comments:



        aSol = DSolveValue[eq, bc1, bc2, y[t], t];
        aSolSimpl = FullSimplify[aSol];

        Plot[Evaluate[aSol /. ϵ -> 1, 1/10, 1/100], t, 0, 1]

        Plot[
        Evaluate[aSolSimpl /. ϵ -> 1, 1/10, 1/100], t, 0, 1,
        WorkingPrecision -> $MachinePrecision
        ]


        Mathematica graphics






        share|improve this answer









        $endgroup$



        This behavior seems due to precision problems, as Henrik suggested in comments:



        aSol = DSolveValue[eq, bc1, bc2, y[t], t];
        aSolSimpl = FullSimplify[aSol];

        Plot[Evaluate[aSol /. ϵ -> 1, 1/10, 1/100], t, 0, 1]

        Plot[
        Evaluate[aSolSimpl /. ϵ -> 1, 1/10, 1/100], t, 0, 1,
        WorkingPrecision -> $MachinePrecision
        ]


        Mathematica graphics







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered yesterday









        MarcoBMarcoB

        37.9k556114




        37.9k556114



























            draft saved

            draft discarded
















































            Thanks for contributing an answer to Mathematica Stack Exchange!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid


            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.

            Use MathJax to format equations. MathJax reference.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function ()
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fmathematica.stackexchange.com%2fquestions%2f193714%2fboundary-value-problem-and-fullsimplify%23new-answer', 'question_page');

            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            getting Checkpoint VPN SSL Network Extender working in the command lineHow to connect to CheckPoint VPN on Ubuntu 18.04LTS?Will the Linux ( red-hat ) Open VPNC Client connect to checkpoint or nortel VPN gateways?VPN client for linux machine + support checkpoint gatewayVPN SSL Network Extender in FirefoxLinux Checkpoint SNX tool configuration issuesCheck Point - Connect under Linux - snx + OTPSNX VPN Ububuntu 18.XXUsing Checkpoint VPN SSL Network Extender CLI with certificateVPN with network manager (nm-applet) is not workingWill the Linux ( red-hat ) Open VPNC Client connect to checkpoint or nortel VPN gateways?VPN client for linux machine + support checkpoint gatewayImport VPN config files to NetworkManager from command lineTrouble connecting to VPN using network-manager, while command line worksStart a VPN connection with PPTP protocol on command linestarting a docker service daemon breaks the vpn networkCan't connect to vpn with Network-managerVPN SSL Network Extender in FirefoxUsing Checkpoint VPN SSL Network Extender CLI with certificate

            Cannot Extend partition with GParted The 2019 Stack Overflow Developer Survey Results Are In Announcing the arrival of Valued Associate #679: Cesar Manara Planned maintenance scheduled April 17/18, 2019 at 00:00UTC (8:00pm US/Eastern) 2019 Community Moderator Election ResultsCan't increase partition size with GParted?GParted doesn't recognize the unallocated space after my current partitionWhat is the best way to add unallocated space located before to Ubuntu 12.04 partition with GParted live?I can't figure out how to extend my Arch home partition into free spaceGparted Linux Mint 18.1 issueTrying to extend but swap partition is showing as Unknown in Gparted, shows proper from fdiskRearrange partitions in gparted to extend a partitionUnable to extend partition even though unallocated space is next to it using GPartedAllocate free space to root partitiongparted: how to merge unallocated space with a partition

            Marilyn Monroe Ny fiainany manokana | Jereo koa | Meny fitetezanafanitarana azy.