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
10 févr. 2011, 01:17 UTC−5
Hi
Check carefully your log, and the time stepping you have defined, then check the time steppintg type: Automatic = default is for assymptotical type bahaviour, if you have a periodic pulse train you should switch to intermediate or strickt and enshure that you have 2-3 steps during each rise /fall time periode to be sure the solver sees the steps, otherwise it wil "jump over" your short pulses. You can enforece larger steps once the pulse is passed to avoid waiting ages.
In 4.1 you can also define sets as parameters with the {} definitions, this helps setting up complex pulse ranges
--
Good luck
Ivar
Hi
Check carefully your log, and the time stepping you have defined, then check the time steppintg type: Automatic = default is for assymptotical type bahaviour, if you have a periodic pulse train you should switch to intermediate or strickt and enshure that you have 2-3 steps during each rise /fall time periode to be sure the solver sees the steps, otherwise it wil "jump over" your short pulses. You can enforece larger steps once the pulse is passed to avoid waiting ages.
In 4.1 you can also define sets as parameters with the {} definitions, this helps setting up complex pulse ranges
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
Posted:
1 decade ago
11 févr. 2011, 04:57 UTC−5
Hi Ivar,
Thanks you for your prompt and helpful response.
I have set my solver to strict and it now seems to be calculating correctly
I am intrigued about what you said regarding having 2-3 time steps per pulse and then having large time steps between pulses.
I have only been able to set one uniform time step for the solver, how do I go about setting one which varies with time?
Thanks.
Hi Ivar,
Thanks you for your prompt and helpful response.
I have set my solver to strict and it now seems to be calculating correctly
I am intrigued about what you said regarding having 2-3 time steps per pulse and then having large time steps between pulses.
I have only been able to set one uniform time step for the solver, how do I go about setting one which varies with time?
Thanks.
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
11 févr. 2011, 07:05 UTC−5
Hi
the time set is just a column of time values, you can define them as several range(,,) operators (provided they respect a strict increasing or decreasing sequence) or just as a list of time values. You can also add functions either via the "range sub-GUI" or directly as 10^range(,,) ...
you can also have several parameters, and then make double lists etc.
The same in V4 (not 3.5 ;( Paramter might be defined as:
mylist = { 0 1 2 3 4 5.5 6.6 7.7 } etc and then you can use this (with the {})
--
Good luck
Ivar
Hi
the time set is just a column of time values, you can define them as several range(,,) operators (provided they respect a strict increasing or decreasing sequence) or just as a list of time values. You can also add functions either via the "range sub-GUI" or directly as 10^range(,,) ...
you can also have several parameters, and then make double lists etc.
The same in V4 (not 3.5 ;( Paramter might be defined as:
mylist = { 0 1 2 3 4 5.5 6.6 7.7 } etc and then you can use this (with the {})
--
Good luck
Ivar
Please login with a confirmed email address before reporting spam
Posted:
1 decade ago
21 févr. 2011, 05:49 UTC−5
Hi Ivar,
That's very helpful thank you.
Is there a way to combine the range function with the modulo function so that I can define my region of dense time stepping and my region of coarse time stepping and then use the modulo function to get it to repeat periodically?
I've tried things like:
mod({(range(0,2e-9,25e-9),range(25e-9,1e-5,2.5e-5)),0})
&
mod({range(0,2e-9,25e-9),0}), mod({range(25e-9,1e-5,2.5e-5),0})
but COMSOL gives erros when I try and solve.
Otherwise it seems if I want to solve for 1 ms I will have to enter 80 different range vectors manually.
Hi Ivar,
That's very helpful thank you.
Is there a way to combine the range function with the modulo function so that I can define my region of dense time stepping and my region of coarse time stepping and then use the modulo function to get it to repeat periodically?
I've tried things like:
mod({(range(0,2e-9,25e-9),range(25e-9,1e-5,2.5e-5)),0})
&
mod({range(0,2e-9,25e-9),0}), mod({range(25e-9,1e-5,2.5e-5),0})
but COMSOL gives erros when I try and solve.
Otherwise it seems if I want to solve for 1 ms I will have to enter 80 different range vectors manually.
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 févr. 2011, 06:02 UTC−5
Hi
I haven't tried that one, not sure it works.
But I believe you can test in as a "parameter", because parameters with a { } bracket accept lists ( !! in V4 only )
I agree from an eigenfrequency list it would be nice to be able to quickly generate a good frequency scan range (automatically). Something to suggest to COMSOL I believe
--
Good luck
Ivar
Hi
I haven't tried that one, not sure it works.
But I believe you can test in as a "parameter", because parameters with a { } bracket accept lists ( !! in V4 only )
I agree from an eigenfrequency list it would be nice to be able to quickly generate a good frequency scan range (automatically). Something to suggest to COMSOL I believe
--
Good luck
Ivar