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.

Maximum value at each point

Eyal Spier COMSOL Employee

Please login with a confirmed email address before reporting spam

Hi there,
I'm fairly new to Comsol so please excuse me if the question is trivial:
I have modelled the temperature profile in 3D for a slab that is heated intermittently from either side. What I now require is the maximum value at each point - as the system goes through non-reversible changes at particular temperatures, I would like to generate a chart (pie or bar) showing the following:
-Percentage which never reaches 45 °C (raw)
-Percentage which reaches between 45 and 50 °C (rare)
- Percentage which reaches between 50 and 55°C (medium)
- Percentage which reaches between 55 and 60 °C (medium-well)
- Percentage which reaches between 60 and 65 °C (well)
- Percentage which reaches above 65 °C (dead)
Is there a simple way for generating this data? Essentially I just require those 6 numbers!
Thank you very much in advance!

8 Replies Last Post 22 déc. 2015, 01:04 UTC−5
Sven Friedel COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 19 août 2013, 05:31 UTC−4
Dear Eyal,

the attached model illustrates on a 1D model how what you want can be achieved.
The envelope of the temperature (maximum in time), can be obtained by integrating an additional domain ODE.

The integration of parts of the envelope that are located in a certain interval can be achieved by integration in derived values.

Given the special circumstances I leave the details up to you. We can talk about it tomorrow.

Best regards,

Sven
Dear Eyal, the attached model illustrates on a 1D model how what you want can be achieved. The envelope of the temperature (maximum in time), can be obtained by integrating an additional domain ODE. The integration of parts of the envelope that are located in a certain interval can be achieved by integration in derived values. Given the special circumstances I leave the details up to you. We can talk about it tomorrow. Best regards, Sven


Gunnar Andersson COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 2 sept. 2013, 07:41 UTC−4
You can use a 1D histogram plot for this. E.g.,

1. Add a 1D Plot Group.
2. Set Time selection to Last.
3. Add a Histogram plot.
4. Set Entry method to Limits.
5. Set Limits to 0 45 50 55 60 65 100.
6. Set Normalization to Integral.
You can use a 1D histogram plot for this. E.g., 1. Add a 1D Plot Group. 2. Set Time selection to Last. 3. Add a Histogram plot. 4. Set Entry method to Limits. 5. Set Limits to 0 45 50 55 60 65 100. 6. Set Normalization to Integral.

Eyal Spier COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 3 sept. 2013, 02:31 UTC−4
Dear Gunnar,
Many thanks - I applied Sven's method and it seemed to do the trick! Thanks again for taking the time,
Eyal
Dear Gunnar, Many thanks - I applied Sven's method and it seemed to do the trick! Thanks again for taking the time, Eyal

Please login with a confirmed email address before reporting spam

Posted: 9 years ago 20 déc. 2015, 19:46 UTC−5
Hi Sven,

I tried to evaluate the largest value in solid mechanics, and the variable of interest is solid.mises. I used the same way as indicated in your model, but neither 'solid.misest' nor 'd(solid.mises)/dt' works. Do you have any suggestions? Mine is the 2D case.

Thanks a lot.

REgards,
Albert
Hi Sven, I tried to evaluate the largest value in solid mechanics, and the variable of interest is solid.mises. I used the same way as indicated in your model, but neither 'solid.misest' nor 'd(solid.mises)/dt' works. Do you have any suggestions? Mine is the 2D case. Thanks a lot. REgards, Albert

Ivar KJELBERG COMSOL Multiphysics(r) fan, retired, former "Senior Expert" at CSEM SA (CH)

Please login with a confirmed email address before reporting spam

Posted: 9 years ago 21 déc. 2015, 01:55 UTC−5
Hi

none of you two variable names, formulas do work in COMSOL, the dependent variables (in solid u,v,w) not solid.mises has a derived value defined. You could try the derivative operator d(solid.mises,t) but check in the doc why you should rather use "TIME" the mesh time, instead of "t" solver time.

--
Good luck
Ivar
Hi none of you two variable names, formulas do work in COMSOL, the dependent variables (in solid u,v,w) not solid.mises has a derived value defined. You could try the derivative operator d(solid.mises,t) but check in the doc why you should rather use "TIME" the mesh time, instead of "t" solver time. -- Good luck Ivar


Sven Friedel COMSOL Employee

Please login with a confirmed email address before reporting spam

Posted: 9 years ago 21 déc. 2015, 03:33 UTC−5
Hi Albert,

Meanwhile we have introduced new ways of tracking maxima that would not require derivatives.
ch.comsol.com/blogs/tracking-material-damage-with-the-previous-solution-operator/

If you would like to implement the "old school" way for variables that have no built-in time derivatives or for which d(expression,t) would not work, the solution would be to define an additional domain ODE solving

u = expression

and then use ut or d(u,t). However, the approach with the previous operator should now be preferred.

Best regards,
Sven
Hi Albert, Meanwhile we have introduced new ways of tracking maxima that would not require derivatives. https://ch.comsol.com/blogs/tracking-material-damage-with-the-previous-solution-operator/ If you would like to implement the "old school" way for variables that have no built-in time derivatives or for which d(expression,t) would not work, the solution would be to define an additional domain ODE solving u = expression and then use ut or d(u,t). However, the approach with the previous operator should now be preferred. Best regards, Sven

Please login with a confirmed email address before reporting spam

Posted: 9 years ago 22 déc. 2015, 01:03 UTC−5
Hi Sven,

Thank you for the suggestion. I tried to use this method today by using:
u3-nojac(if(solid.mises>u3,solid.mises,u3)) where u3 is the dependent variable in ODE. I also set the damping coefficient to 0 as indicated in the blog. But what I got was not the maximum value of solid.mises during the time-dependent study.

When I randomly chose a point to evaluate solid.mises, it showed a realistic curve (shown in attached figure). However, when I evaluated u3 for the same point, it showed a monotone increasing trend (shown in the other figure attached), which is not correct. Do you know why did this happen?

Thanks a lot for the help.

Regards,
Albert
Hi Sven, Thank you for the suggestion. I tried to use this method today by using: u3-nojac(if(solid.mises>u3,solid.mises,u3)) where u3 is the dependent variable in ODE. I also set the damping coefficient to 0 as indicated in the blog. But what I got was not the maximum value of solid.mises during the time-dependent study. When I randomly chose a point to evaluate solid.mises, it showed a realistic curve (shown in attached figure). However, when I evaluated u3 for the same point, it showed a monotone increasing trend (shown in the other figure attached), which is not correct. Do you know why did this happen? Thanks a lot for the help. Regards, Albert


Please login with a confirmed email address before reporting spam

Posted: 9 years ago 22 déc. 2015, 01:04 UTC−5
Hi Ivar,

Thanks for the suggestion. Indeed, I need to use "TIME" instead of "t".

Regards,
Albert
Hi Ivar, Thanks for the suggestion. Indeed, I need to use "TIME" instead of "t". Regards, Albert

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.