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.
scaling of variables
Posted 2011年10月9日 GMT-4 18:00 Fluid & Heat, Studies & Solvers Version 4.2 7 Replies
Please login with a confirmed email address before reporting spam
What should be chosen for scaling of variables from "manual, initial value based, automatic, none"?
Thanks for the help.
Sirisha.
Please login with a confirmed email address before reporting spam
See COMSOL Multiphysics Reference Guide, Version 4.2, pages 449, 452-453.
Please login with a confirmed email address before reporting spam
in 99.9% of the cases I use the default settings of Comsol, it's only when I add my own physics that I analyse fist once coarsly, then apply a manual scale to get the items down to around 1
In general, for me, >90% of the time COMSOL, all defaults are OK
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
For example, if V is of the order of 1 nanovolt across the model, then I would enter 1e-9.
(However, I just tried a simple model, and set the scales to 1e100 or 1e-100, and this didn't affect the solution at all. Maybe because it is such a small model...)
(I happened to notice that Comsol guesses scales very poorly in some cases, so decided to investigate whether this was the source of the problems with my model.)
Please login with a confirmed email address before reporting spam
What you posted is really helpful. I just have a question, how does this manual scaling method compares with dimensionless method(i.e. I define a characteristic time and length and then make the all variables units to 1 )?
Any reply is appreciated!
Best Regards,
Leo
Please login with a confirmed email address before reporting spam
I typically use the COMSOL default value for a model that I do not expect to solve repeatedly or to help me determine what scaling factor I may want to choose. However, if I solve a model routinely, I want to manually adjust the scaling factor in order to help on convergence rates, and solve the model quicker. I do not know the exact algorithm that COMSOL uses to determine the scaling factors automatically, but it appears to use the maximum value of the variable over the 1st iteration, then adjust for the 2nd iteration. Perhaps I should read the manual and learn more about the automatic method.
I look at scaling as a lot like the choice of values to use when you non-dimensionalize the equation system. I like to use values that I might use as boundary conditions for a starting point. For example, a good scaling for Navier-Stokes equations is the inlet velocity, and exit pressure, and inlet temperature. The idea being to scale the variables to a nominal range where the absolute value is 0-1.
Some variables are tougher to scale than others; particularly if they rely on a length scale. There are sometimes multiple length scales in a problem.
Hope this helps.
Please login with a confirmed email address before reporting spam
Thank you so much for your reply!
I also found an interesting thing when using scaling: when the variable changes its sign over time like from
-10^(-9) to 10^(-9), the scaling value 10^(-9) seems can handle this problem.
I really agree that scaling is important in convergence. In my mind, the default setting of comsol often can not give you a satisfactory convergence...
Best Regards,
Leo
Please login with a confirmed email address before reporting spam
I recently tested an example, its results show that by only change the manual scaling value could change both the divergence and the solution.
Could you please advice?
Many thanks!
Best Regards,
Leo
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.