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.
Managing multiple cases/variation
Posted Jun 13, 2011, 1:01 p.m. EDT 5 Replies
Please login with a confirmed email address before reporting spam
Hi all,
this is a very generic question, that might even not have a definite answer as it can depend on the specific case and on personal taste. However, as I'm struggling in finding a satisfying solution, I'd like to to hear other users' opinion.
The general question is: how do you handle the need of generating, and comparing, different solutions of the same model, but under different condition (meaning that you can still speak about the same "model")?
I'd love to discuss this at a very generic level if possible, as it is a problem I almost always encounter when modeling in COMSOL, but let's give a real-life example to make the question clearer. I have the model of a bulk cylinder, with a surrounding, non touching, concentric ring. The ring has a given temperature profile (as a function of the angle around the symmetry axis), and radiates towards the inner cylinder and the ambient. The cylinder re-radiates towards the ambient. I'm interested in the temperature pattern and mechanical distortion of the cylinder when heated by the ring.
Now, there are at least two thing in this model that I would like to change and generate a solution for each case:
- different temperature profiles of the ring (as defined above)
- maybe the presence of a "shield" to redirect towards the cylinder the heat radiated by the ring toward the ambient. Let's assume that the shape of the shield is not important (I don't want to test different geometries in this case), but i want to "enable" or "disable" it.
Now, switching among the different cases is easy: for the temperature profile, I can define different functions and then either change the T0 field in the "Temperature" node, or define several Temperature nodes and enable/disable them as needed. For the shield, I can include or exclude it from the heat transfer module.
The real problem is: how do I conveniently generate, store, and compare the solutions relative to this different cases?
My two very basic approaches so far have been:
- multiple files: once you are satisfied with the model, you save each case with a different name. The major drawbacks are that (1) you cannot compare multiple solutions within COMSOL, as they are not in the same file, and (2) if you ever need to modify the model (geometry or physics) or the way you represent the result, you have to go through each file and made the changes
- multiple studies: you create multiple studies, and run each one with the setting corresponding to a different case. Because different studies use different solvers, the solutions will be retained as independent. Major drawback is that you have no way of checking later what were the setting that generated a given solution, so you have to be very careful and keep track of what you are doing (that might be tricky and error prone for complicate models).
Does this make sense? Does anyone have the same problem, and maybe a better solution? Maybe I'm completely overlooking a functionality that COMSOL already has, or I'm indirectly submitting a feature request... :-)
Giacomo
this is a very generic question, that might even not have a definite answer as it can depend on the specific case and on personal taste. However, as I'm struggling in finding a satisfying solution, I'd like to to hear other users' opinion.
The general question is: how do you handle the need of generating, and comparing, different solutions of the same model, but under different condition (meaning that you can still speak about the same "model")?
I'd love to discuss this at a very generic level if possible, as it is a problem I almost always encounter when modeling in COMSOL, but let's give a real-life example to make the question clearer. I have the model of a bulk cylinder, with a surrounding, non touching, concentric ring. The ring has a given temperature profile (as a function of the angle around the symmetry axis), and radiates towards the inner cylinder and the ambient. The cylinder re-radiates towards the ambient. I'm interested in the temperature pattern and mechanical distortion of the cylinder when heated by the ring.
Now, there are at least two thing in this model that I would like to change and generate a solution for each case:
- different temperature profiles of the ring (as defined above)
- maybe the presence of a "shield" to redirect towards the cylinder the heat radiated by the ring toward the ambient. Let's assume that the shape of the shield is not important (I don't want to test different geometries in this case), but i want to "enable" or "disable" it.
Now, switching among the different cases is easy: for the temperature profile, I can define different functions and then either change the T0 field in the "Temperature" node, or define several Temperature nodes and enable/disable them as needed. For the shield, I can include or exclude it from the heat transfer module.
The real problem is: how do I conveniently generate, store, and compare the solutions relative to this different cases?
My two very basic approaches so far have been:
- multiple files: once you are satisfied with the model, you save each case with a different name. The major drawbacks are that (1) you cannot compare multiple solutions within COMSOL, as they are not in the same file, and (2) if you ever need to modify the model (geometry or physics) or the way you represent the result, you have to go through each file and made the changes
- multiple studies: you create multiple studies, and run each one with the setting corresponding to a different case. Because different studies use different solvers, the solutions will be retained as independent. Major drawback is that you have no way of checking later what were the setting that generated a given solution, so you have to be very careful and keep track of what you are doing (that might be tricky and error prone for complicate models).
Does this make sense? Does anyone have the same problem, and maybe a better solution? Maybe I'm completely overlooking a functionality that COMSOL already has, or I'm indirectly submitting a feature request... :-)
Giacomo
5 Replies Last Post Jun 16, 2011, 2:55 p.m. EDT