C_R

3887 Reputation

21 Badges

6 years, 304 days

MaplePrimes Activity


These are replies submitted by C_R

@dharr 

Well… not really. I didn’t know that a differential equation was named after Bessel, who, much to my shame, was from my hometown. Until now, I had associated Bessel with astronomy, Airy and circular phenomena. 

Now I looked him up and everything fits much better together.

Thank you for mentioning this!

@janhardo

Thank you for providing AI answers. I am an AI laggard and did not recognize it straight away. The summary charts you provided looked like conference posters and are very helpful provided that the content is correct.

For me the AI output is difficult to verify. I have a few questions:

  • an I assume that the summary charts summarize the underlying code exactly?
  • Would it be possible to request code that formats more in a Maple style? A simple Maple command (e.g. plot command) does not need to be put in a procedure (and formatted like a procedure). It would also be nice to have explanatory text formatted as Maple text and not as code comments.
  • Is it possible to produce a tabulated summary chart of the results clearly distinguishing ICBC and heatflux? Even with hidden input I am losing track./li>
  • Which tools are you using?
  • I have noticed in your previous answer that the output does not change if BC4 is not defined. Is that still the case for all the ICBC variants?

@ecterrab 

If ExaktAI can get us to the point where a step by step solution of differential equations can be verified, this would be a huge improvement. Here is an IBVP where verifying an AI solution was not possible for me (in a rasonable ammount of time). The comparision to the human made solution is interesting in itself.

@Rouben Rostamian

Studying your answer was a real joy. The presentation is math centric, not code centric. Steps are not too big. This is in stark contrast to the AI answer, where I lost track quite soon. At least these things contribute to it:

  • The overall solution approach is less well explained
  • No display of intermediate results combined with explanations are provided.
  • Code formatting. Maple commands are unnecessarily formatted like procedures.
  • The AI answer does not profit from Maple’s formatting strength (2D-Math, …)

The AI solution does not change variables. If I had this solution formatted your way I could probably understand pro and cons of the different approaches. In its current state I can’t.

The “educational” in the AI worksheet and the lack of authorship looks to me legally motivated and, by the way, BC4 seems to be dispensable. The worksheet runs without it, which lets me question the validity of the results.

In a nutshell, your answer can be easily followed on a smartphone, the AI answer not.

Thank you for taking the time to provide a Maple solution and to educate me.

@Rouben Rostamian

I am still interested but before you invest time, I would like to recapitulate:

I want to better understand transient axial-symmetric heat/temperature propagation. Initially I thought that pdsolve/numeric could be used because this would make the definition of heatflux distributions easy and it comes with nice plot routines. Hence the question on limitations of pdsolve/numeric.

Then it turned out that pdsolve can provide analytic solutions for some ICs and BCs but not for the one I am interested in. I reformulated my initial problem for easier comparison to existing solutions now with two sets of ICBCs representing cases with fixed temperature and isolation. For both cases with uniform and constant heatflux pdsolve could not provide an answer in my attempts.

Then you reminded me that the heatflux must be zero where the boundary conditions impose constant temperature. In the same way, I conclude, the heat flux must be zero where boundary conditions are set for isolation.  This all reminded me of shape functions for FEM and I tried

BC1 := -k*D[2](u)(r, 0, t) = 1 - r^2/a^2

That did not work for the two sets of ICBCs.

Having said all that, I am still interested in solutions to both cases.

@Rouben Rostamian  

Yes, I would be interested because you adress an aspect I have not thought of (and that will probably not prevent numerical solutions). To avoid confusion by the incorrect BCs I have posted originally (now hopefully corrected), I am interested at

If that is not possible these BCs are of interest as well because I intend to simulate a concentrated heat flux applied at the axis of the rod quite far away from the "rim" at timescales that will to substantially heat the outer wall (I assume). 

 

@janhardo 

That is a very nice overview of axial heating. Reading the green notes under "6. Maple code" I get the impression that you have tried a lot but did not get any other solutions with Maple than the 1d case.
With the code I provided in the answer to nm, Maple did not return the 1d solution for constant and uniform heating. Maybe I still did something wrong but it seems to me that the nonlinear dependency on the radius poses substantial challanges (although some solutions exist as can be seen from nm's collection) 

Edit: @janhardo I have converted your reply to an answer because I consider it as a partial answer worth more than a thumbs up. I did not touch your reply below because I do not know how to append them to the newly created answer. Maybe a moderator can do that.

@janhardo 

Yes, it should be D[2].

I am not sure if BC4  is needed.

I have to update the attachments.

@nm 

I am impressed. What a work! I seems that the problem under discussion is not contained in the collection of examples.

For an easier comparision, I have used in the attached file the nomenclature of your examples. Maple tries a lot but cannot find an analytical solution (also for the simple case of Q=const.).

From a pratical standpoint, "Haberman 7.9.4 a " represents an initially heated rod at constant external temperature, Haberman b an isolated, initially heated rod, Haberman c an at one end isolated rod with constant temperature at the two other surfaces (modeling for example an initially heated rod imersed in water with one endface not under water).

Cases of heating a rotational-symmetric structure at constant initial temperature are unfortunately not contained in this excellent collection. I am wondering whether these represent white spots on the pde landscape and, in this case, can be soilved at all analytically.

Edit: Updated BCs

2d_BVP_Haberman.mw

@dharr 
The distinction between initial and boundary conditions could make sense. I have added them above.

@bashar27 

See in the attached what happens when the above code is pasted.
Download tanh_broken_code.mw

Better use  to upload code

@acer 
Hmmm ... meaning when F does ex -> ex (i.e. does nothing), effectivley the following is executed?

`value/__K`:=ex->op(ex):

The above works as well as the following extension 

`expand/__K`:=ex->ex

However, the same extension with normal did not work.

The extenstion mechanism is probably not part of the kernel and therefore not printable with showstat. Correct?

@acer 

This is the functionality I was looking for. If I understand correctly, your way freezes anything that is not of specfun (Unit:-Units), then applies the essential bit (__K(1)) and then thaws all frozen expressions, because a direct application of specfun(Unit:-Units)

l__1 = Unit('m'), l__2 = 5*Unit('m'), m__1 = Unit('kg'), m__2 = 2*Unit('kg');
subsindets([%], specfunc(Units:-Unit), u -> __K(1)*u);

does not work.

I do understand unQ but I don't understand why the identity operator (x->x) is effective in value/__k

Thank you!

@dharr 
If I add

value(%)

to your code snippet it does not remove the invisible multiplication. What I want to achive is the following: Create input (parameter sets) that prints as described in my original post and then use the input in subsequent calculations where the invisible inert multiplication is removed by the value command.

Technically we could define a name that prints as "1 mm" and later replace it with 1*Unit('mm'). The drawback is that this has to be done for each unit separately.

Here is another way to define an inert number. Replacement requires the use of subs/eval and entering the correct replacement expression, which would not be required if a solution with the value command could be found.

Edit (code replaced)

NULL

inert_num := proc(x::string)
      convert(cat("#mo(",`"`,x,`"`,")"),name);
end proc;

proc (x::string) convert(cat("#mo(", `"`, x, `"`, ")"), name) end proc

(1)

Inert one

inert_one:=inert_num("1");lprint(%)

`#mo("1")`

 

`#mo("1")`

 

NULL

inert_one*Unit(mm)

`#mo("1")`*Units:-Unit(mm)

(2)

subs(inert_one=1,(2))

Units:-Unit(mm)

(3)

Inert zero

inert_zero*Unit(mm)

`#mo("0")`*Units:-Unit(mm)

(4)

eval((4),[inert_zero=0])

0

(5)

NULL

Download Inert_num.mw

Maybe there is a way of defining a new operator an making it print invisilbe and responsive to value, which could be extended with special "simplification" rule.

If it turns out that command extension is required for value, another extendable command would equally be suitable.

Edit (replaced code)

Download Inert_one.mw

@dharr 

I have installed an older version of Acrobat. Maybe this installed an older Adobe printer (and removed a preinstalled Adobe printer)

1 2 3 4 5 6 7 Last Page 1 of 79