Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

COMSOL Script question

  1. Nov 7, 2008 #1

    I am using COMSOL Script and I am trying to figure out something.

    Let's say I am only solving one PDE which solution is 'phi'. And I am doing a parametric study, so I am solving it for different biases 'Va' from 0V to -1V. My geometry is simply a rectangle.

    As part of the PDE, I have a parameter 'equ.f' which I set to be equal to 'Rec'. 'Rec' is defined in 'fem.globalexpr'.

    For Va=0 (initial solution), I set 'Rec' to be 0. But then, for all the following steps, I want 'Rec' to be a function of the solution 'phi' found by COMSOL at Va=0. Is there a way to do that? Basically, I want to be able to use the initial solution in order to define an expression which is to be used in all the following steps..

    I tried to solve for Va=0, then save the FEM structure, and use it to define 'Rec' by doing something like Rec=posteval(fem,'phi','solnum'1), and then solve again for the following steps. But it seems the format is not compatible. I get an error like 'cannot evaluate 'Rec', etc. So it didn't work.. (or maybe I didn't do it right..)

    Any ideas would be GREATLY appreciated! Thanks!
  2. jcsd
  3. Nov 14, 2008 #2


    User Avatar
    Science Advisor
    Gold Member

    May be I'm not getting this all (please educate :smile: ), but have you tried looking at solver manager and what's in there with respect to initial solution, storing a solution, using the current solution as an initial value etc.?
  4. Nov 14, 2008 #3
    Thanks for your answer! I actually looked a little bit into the Solver Manager, and the Help docs on this. And from what I understand, I can use a previous solution as an initial solution for the next step.

    But what I'm trying to do, is to use a previous solution in order to define an equation parameter which will be used in the next step.. So it's a little bit different and, although I need to look more into COMSOL Help, I haven't found how to do that yet..
  5. Nov 14, 2008 #4


    User Avatar
    Science Advisor
    Gold Member

    In principle it sounds something which you might be able to do by introducing a nonlinear dependency (or history dependency might be a term for this case), or an additional "coupling" perhaps (not perhaps in the most traditional sense of a coupling, but occasionally use them [a PDE form for example] to introduce dependencies over time history). There are a bunch of ways of defining different sorts of expressions you can use in your equations (all the expression types, global equations, function definitions, couplings, script m - files etc.) so would think something might be appropriate (if nothing a tuned comsol script can do a whole lot of things to a model like read initial values etc.).
  6. Jun 9, 2011 #5


    User Avatar


    I was wondering if you ever figured out how you could do this. I have the same problem and I have no clue on how to solve it. I am able to save final solution of the first solver as the initial value for the second one but in my second solver I have expressions that are dependent on this initial value and I am not able to make them work.

    Any Ideas??

Know someone interested in this topic? Share this thread via Reddit, Google+, Twitter, or Facebook

Have something to add?