[Kratos] proposal of change in the solving_strategy

Riccardo Rossi rrossi en cimne.upc.edu
Mie Oct 7 09:05:30 CEST 2015


Dear All,

  i believe there is a weakness in the current design of the solving
strategies, and i would like to propose a small improvement to the current
interface:

the point is that as of today the strategy has essentially the following
methods:

Initialize (to be called once)
InitializeSolutionStep
Predict
FinalizeSolutionStep

and

Solve --> which combines everything in one single call.

the problem is that is someone calls solve the InitializeSolutionStep and
FinalizeSolutionStep are inevitably called, which is a problem if for
example one
would like to do repeated solves within a single time step.

the typical scenario is that of a FSI simulation, but the same problem is
also found for example in the RVE solver.

My proposal would be to add a new function

"SolveSolutionStep"

which ONLY does the solution but WITHOUT CALLING InitializeSolutionStep,
Predict, FinalizeSolutionStep

The point of doing this is that the "solve" call would be:

Solve()
    InitializeSolutionStep
    Predict
    SolveSolutionStep
    FinalizeSolutionStep

but one would be able to call the very same thing from the python (or from
a higher level strategy)

so that for example a FSI loop would become

    structural_solver.InitializeSolutionStep()
    fluid_solver.InitializeSolutionStep()

    structural_solver.Predict()

    while(not converged)
        structural_solver.SolveSolutionStep()

        apply_velocities_to_fluid()

        fluid_solver.SolveSolutionStep()

        apply_forces_to_structure()

        check_convergence()

    structural_solver.FinalizeSolutionStep()
    fluid_solver.FinalizeSolutionStep()



Of course if someone uses the current Solve() nothing changes and current
behaviour is unmodified...

any voice against such change? if not i'll go ahead...

ciao
Riccardo




-- 


*Riccardo Rossi*

PhD, Civil Engineer


member of the Kratos Team: www.cimne.com/kratos

lecturer at Universitat Politècnica de Catalunya, BarcelonaTech (UPC)

Research fellow at International Center for Numerical Methods in
Engineering (CIMNE)


C/ Gran Capità, s/n, Campus Nord UPC, Ed. C1, Despatx C9

08034 – Barcelona – Spain – www.cimne.com  -

T.(+34) 93 401 56 96 skype: *rougered4*



<http://www.cimne.com/>

<https://www.facebook.com/cimne> <http://blog.cimne.com/>
<http://vimeo.com/cimne> <http://www.youtube.com/user/CIMNEvideos>
<http://www.linkedin.com/company/cimne> <https://twitter.com/cimne>

Les dades personals contingudes en aquest missatge són tractades amb la
finalitat de mantenir el contacte professional entre CIMNE i voste. Podra
exercir els drets d'accés, rectificació, cancel·lació i oposició,
dirigint-se a cimne en cimne.upc.edu. La utilització de la seva adreça de
correu electronic per part de CIMNE queda subjecte a les disposicions de la
Llei 34/2002, de Serveis de la Societat de la Informació i el Comerç
Electronic.

 Imprimiu aquest missatge, només si és estrictament necessari.
<http://www.cimne.com/>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listas.cimne.upc.edu/pipermail/kratos/attachments/20151007/42f4df87/attachment-0001.htm 


Más información sobre la lista de distribución Kratos