Note: This discussion is about an older version of the COMSOL Multiphysics® software. The information provided may be out of date.

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.

Large Parameter in Non-Linear Model

Please login with a confirmed email address before reporting spam

Hi All,
I am trying to solve a stationary problem in Electrokinetics. I have a large parameter in my problem and the solver has been unable to solve for it.
I tried solving the problem with parametric sweep by setting the parameter to zero and gradually increasing its value.
I used a sweep of 400 steps from zero to 10% of the max value and Comsol stops solving when it reaches approximately 5% of the max value (i.e. halfway through).
Should I make the steps smaller? Any other suggestions? I also tried using a time-dependent solver, but that didn't help. In Direct should I change Mumps into Paradiso or Spooles?

Now lets say I was successful in such a sweep. Now I have another parameter I would like to scan but only with the max value of the first parameter. Can I save only the final sweep result? How do I use it as a new initial condition?

Now on another matter. I have another model that I am sweeping two separate ranges (lets say from [0,50], and [-50,0]). From what I know (I am still new at this). I need to sweep one (sweep a). Get my desired results and then sweep the other (sweep b) which overruns the results of sweep a. This is not very efficient, because if I want to see my previous results, I will need to solve again for sweep a.
How can I store the solution for sweep a and sweep b separately in the same file?
How do I control in to what data set/ solution the solution will be written into.

Thanks

3 Replies Last Post 21.12.2011, 06:31 GMT-5
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: 1 decade ago 21.12.2011, 04:44 GMT-5
Hi

I would suspect a numerical under/over flow reasons if you have a "large" variable. Perhaps you need to do manual scaling of the dependent variables, or you need to give a better initial value guess. If you manage to get some results, then why not use these as starting point for the modelling step.

Then there is one thing to know. You have two parametric sweep functionalities, the explicit one that does an external full loop around geoemtry and mesh, and the implicit (solver continuation one) that does not loop around geoemtry and mesh.
These two sweep methods also treats the initial conditions differently. The external loop restarts from default "initial conditions" each time, while the continuation sweep uses by default the previous step as starting point for the next initial conditions (this can be overwritten manually by editing the solver "Dependent variables nodes"

--
Good luck
Ivar
Hi I would suspect a numerical under/over flow reasons if you have a "large" variable. Perhaps you need to do manual scaling of the dependent variables, or you need to give a better initial value guess. If you manage to get some results, then why not use these as starting point for the modelling step. Then there is one thing to know. You have two parametric sweep functionalities, the explicit one that does an external full loop around geoemtry and mesh, and the implicit (solver continuation one) that does not loop around geoemtry and mesh. These two sweep methods also treats the initial conditions differently. The external loop restarts from default "initial conditions" each time, while the continuation sweep uses by default the previous step as starting point for the next initial conditions (this can be overwritten manually by editing the solver "Dependent variables nodes" -- Good luck Ivar

Please login with a confirmed email address before reporting spam

Posted: 1 decade ago 21.12.2011, 05:22 GMT-5
Hi Ivar,
Thanks for your reply!
The large parameter I have is a result of scaling the equations to a non-dimensional form. If only I could do another rescaling.
Is there a manual on how to use previous results as initial conditions? I have been trying to do so, but I haven't been successful. Usually I overrun my previous solutions and I have a complete mess.
I assumed that if I solve the problem for a small parameter, and gradually increase it, then the initial guess is the previous solution? Is this not how the parametric sweep works?

I am sorry, but i am not sure that I understand the difference between these two different options? What do you mean by explicit and implicit? Is there a link to some manual that explains when I should use this one or that one?
Thanks again!
Yoav
Hi Ivar, Thanks for your reply! The large parameter I have is a result of scaling the equations to a non-dimensional form. If only I could do another rescaling. Is there a manual on how to use previous results as initial conditions? I have been trying to do so, but I haven't been successful. Usually I overrun my previous solutions and I have a complete mess. I assumed that if I solve the problem for a small parameter, and gradually increase it, then the initial guess is the previous solution? Is this not how the parametric sweep works? I am sorry, but i am not sure that I understand the difference between these two different options? What do you mean by explicit and implicit? Is there a link to some manual that explains when I should use this one or that one? Thanks again! Yoav

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: 1 decade ago 21.12.2011, 06:31 GMT-5
Hi

there re two "parametric sweeps" the one I call explicit "Study - Parametric Sweep" which adds a specific "Parametric Sweep" node BEFORE your "Solver" node. And the internal "Stationary - Extension - Continuation" tab (not node)

to tweak the solver initial condition settings, select the "Study - ...- Solver Configuration - Dependent Variable" node

A good built in example of solver coupling is the " Solid buckling load," that performs a stationary solver case then an eigenfrequency from the loaded stationary case (there are also other in the model library ;)

--
Good luck
Ivar
Hi there re two "parametric sweeps" the one I call explicit "Study - Parametric Sweep" which adds a specific "Parametric Sweep" node BEFORE your "Solver" node. And the internal "Stationary - Extension - Continuation" tab (not node) to tweak the solver initial condition settings, select the "Study - ...- Solver Configuration - Dependent Variable" node A good built in example of solver coupling is the " Solid buckling load," that performs a stationary solver case then an eigenfrequency from the loaded stationary case (there are also other in the model library ;) -- Good luck Ivar

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.