[Kratos] Critical change in classes: Element.h and Condition.h

Jordi Cotela jcotela en cimne.upc.edu
Jue Mar 13 10:48:02 CET 2014


Dear Josep Maria,
I'd like to know which of the methods that you "propose" assume that 
they will write on a new matrix or add to an existing matrix which may 
already contain other contributions. As far as I understand, the changes 
assume that the element will perform the time integration by itself. 
Please clarify this point because, if this is the case, it is completely 
unacceptable. I expect to be able to use my elements with different time 
integration schemes. The time integrated system matrix or vector is only 
known at strategy level by design, not at element/condition level. Time 
integration is done at scheme level between the two.

About the LocalVelocityContribution issue, I'm open to change if it 
improves the design somehow. I must say I personally don't like to refer 
to it as Damping, as in fluid dynamics it does not have such meaning.

Besides that, I'd like to point out that I strongly disapprove of this 
"shoot first, ask questions later" approach to code development, 
specially when it comes to such core classes as elements and conditions.

Jordi


On 03/13/2014 09:53 AM, Josep Maria wrote:
> Answering to Nelson and Riccardo,
>
>    If you prefer we can joint the calculation and the addition of the 
> RHS and LHS for the mass and damping terms in one method. It intended 
> to be used to perform elemental local calculations for the Mass and 
> Damping matrices and forces and add them to the local system.
>
> Riccardo proposes
>
>> CalculateInertialContributionLHS(...) and
>> CalculateInertialContributionRHS(...)
>>
>> CalculateDampingContribuitionLHS(...) and
>> CalculateDampingContributionRHS(...)
>
>     to be joined in a single method:
>
>   CalculateAndAddInertialContributions( MatrixType& rLeftHandSideMatrix,
> VectorType& rRightHandSideVector,
> coefficient ?
> ProcessInfo& rCurrentProcessInfo )
>
> For me it is ok, about the coefficient, giving an scalar is not enough 
> for general calculations, usually you need at least two scalars.
>
> Any idea to supply n scalars in a consistent form ? They are related 
> to the time integration... and the number can change.
>
> Regards
>
> Josep Maria
>
>
>
> On 13/03/14 02:12, Nelson wrote:
>
> Hi,
> I am totally agree with the name and the change.
> Also, should be added a method also the methods
> "AddMass... " and "AddDamping", becauses sometimes
> some estrucures take the mass from others sources
> but not is weigth self.
>
> Acording to damping, is good to put "AddDamp"
> due to we can damping the structure in other
> way not be the railay damping.
>
> Respect to methods
>>  CalculateInertialContributionLHS(...) and
>> CalculateInertialContributionRHS(...)
>>
>>  CalculateDampingContribuitionLHS(...) and
>> CalculateDampingContributionRHS(...)
>
> I assume it is for rigid solid  ( i not am sure, no have experiences 
> in that)
> but should be really utils for dem applications for example. In any 
> case is a change
> in the base clases, so corresponding changes should be done in 
> derivated classes
> and in my opinion it is not a big deal.
>
> Regards
>
> Nelson
>
> On 13/03/14 08:54, Riccardo Rossi wrote:
>>
>> Dear Josep Maria,
>>         please consider that we shall consider the "KratosCore" as 
>> "stable" which implies that no one should not allow himself to 
>> unilaterally change the foundational classes.
>> I believe it is both unpolite and unwise to make the sort of commit 
>> you made without prior discussion,
>> and for this reason i must reiterate asking you to refrain from such 
>> actions. Please also note that i will apply the same constraint to 
>> myself.
>>
>> Having said this, and regarding the specific issue you rise, i shall 
>> admit that the current interface is not clean and that it could use 
>> some redesign.
>>
>> Apart for the renaming of Mass to Inertia which i share (even though 
>> i am not sure if it justifies a breaking change)
>>
>> i would go for methods of the type
>>
>> CalculateAndAddInertiaXXXXX( destination,  coefficient, ProcessInfo ) 
>> //both to RHS and LHS
>>
>> since with this small modification the matrix/vector is ADDED to the 
>> destination, which allows avoiding one large matrix temporary,
>> as well as implementing optimizations for the case of diagonal matrices.
>> I also wonder if it wouldn't be better to only provide ONE function 
>> for the LHS and RHS at the same time, since this would allow further 
>> savings.
>>
>> Regarding the specific function "CalculateLocalVelocityContribution", 
>> i agree that this shall not be needed (and more than that, that the 
>> method is ugly).
>> Kazem, Jordi could you comment on why it was needed? Would it be 
>> possible to use the methods Josep Maria Proposed instead?
>>
>> Since we are in the discussion, i would also appreciate if others 
>> could comment or make suggestions at this point, since i really would 
>> like to live the interface "definitivelely" closed.
>>
>> ciao for now
>> Riccardo
>>
>> P.S. i forward this to the mailing list since yesterday i answered to 
>> my phone and i wrongly answered to you alone.
>>
>>
>> On Wed, Mar 12, 2014 at 7:47 PM, Josep Maria <cpuigbo en cimne.upc.edu 
>> <mailto:cpuigbo en cimne.upc.edu>> wrote:
>>
>>     Dear Riccardo,
>>
>>        The existing interface has certain deficiencies. This change
>>     treats to replace some methods that only concern to particular
>>     applications.
>>
>>     see methods: CalculateLocalVelocityContribution(...) ,
>>     AddMassMatrix(...), AddInertiaForces(...)
>>
>>     I will not double the existing methods because some of these
>>     methods are moved to the " rubbish " section of the element and
>>     will be eliminated in a prudential period.
>>
>>     On the other hand, in certain elements the success of a dynamic
>>     analysis only is performed with some specific time discretization
>>     algorithms. The element or the condition are the only entities
>>     that know the contributions for the LHS and the RHS that must be
>>     added to the linear system.
>>
>>     I understand that in fluid applications, the requirements for the
>>     elements and conditions are resolved with the particular methods
>>     already implemented. I understand that is annoying for you the
>>     extension of the  base classes of kratos in a direction that is
>>     unuseful for your particular goals.
>>
>>        Anyway, If you don't like, I will delete the methods
>>     introduced and I will stop the development for the dynamic part
>>     of the SolidMechanicsApplication.
>>
>>     Josep Maria
>>
>>
>>
>>
>>     On 03/12/2014 07:03 PM, rougered4 en gmail.com
>>     <mailto:rougered4 en gmail.com> wrote:
>>>     Dear Josep Maria,
>>>
>>>     For the future please restrain yourself from making changes in the foundational classes.
>>>
>>>     Namely i can understand the change to mass matrix and damping matrix but i can not see why the other methods are needed. Can t you use the existing methods? I believe that this shall be already doable with the existing interface...
>>>
>>>     Riccardo
>>>     BlackBerry de movistar, allí donde estés está tu oficin@
>>>
>>>     -----Original Message-----
>>>     From: Josep Maria<cpuigbo en cimne.upc.edu>  <mailto:cpuigbo en cimne.upc.edu>
>>>     Sender:kratos-bounces en listas.cimne.upc.edu  <mailto:kratos-bounces en listas.cimne.upc.edu>
>>>     Date: Wed, 12 Mar 2014 17:32:07
>>>     To:<kratos en listas.cimne.upc.edu>  <mailto:kratos en listas.cimne.upc.edu>
>>>     Subject: [Kratos] Critical change in classes: Element.h and Condition.h
>>>
>>>     _______________________________________________
>>>     Kratos mailing list
>>>     Kratos en listas.cimne.upc.edu  <mailto:Kratos en listas.cimne.upc.edu>
>>>     http://listas.cimne.upc.edu/cgi-bin/mailman/listinfo/kratos
>>>
>>
>>
>>     -- 
>>     *Josep Maria Carbonell i Puigbó*
>>     /Email: _cpuigbo en cimne.upc.edu <mailto:cpuigbo en cimne.upc.edu>_//
>>     //Telèfon: +34 93 405 40 68 <tel:%2B34%2093%20405%2040%2068>/
>>
>>     /Gran Capità s/n-Campus Nord UPC//
>>     //Edifici C-1 1a Planta-Despatx 113B//
>>     //08034-Barcelona-Catalunya//
>>     /_/www.cimne.upc.edu <http://www.cimne.upc.edu>/_
>>
>>
>>     /Abans d'imprimir aquest e-mail, assegura't de que és realment
>>     necessari.
>>     El medi ambient és responsabilitat de tots.
>>     /
>>     /AVÍS IMPORTANT//
>>     //Les dades de caràcter personal contingudes en aquest missatge
>>     es registraran//
>>     //en un fitxer per facilitar la gestió de les comunicacions del
>>     CIMNE.//
>>     //Es poden exercir els drets d'accés, rectificació, cancel·lació
>>     i oposició,//
>>     //per escrit a les nostres oficines del CIMNE://
>>     //Gran Capità s/n, Edifici C1, Campus Nord UPC, 08034 Barcelona,
>>     Espanya//
>>     //
>>     //AVISO IMPORTANTE//
>>     //Los datos de carácter personal contenidos en el mensaje, se
>>     registrarán//
>>     //en un fichero para facilitar la gestión de las comunicaciones
>>     de CIMNE.//
>>     //Se pueden ejercitar los derechos de acceso, rectificación,
>>     cancelación y//
>>     //oposición por escrito, dirigiéndose a nuestras oficinas de CIMNE://
>>     //Gran Capità s/n, Edifici C1, Campus Nord UPC, 08034 Barcelona,
>>     Espanya//
>>     //
>>     //IMPORTANT NOTICE//
>>     //All personal data contained in this mail will be processed
>>     //confidentially//
>>     //and stored in a file property of CIMNE in order to manage
>>     corporate//
>>     //communications. You may exercise the right of access,
>>     rectification,//
>>     //deletion and objection by letter sent to CIMNE://
>>     //Gran Capità s/n, Edifici C1, Campus Nord UPC, 08034 Barcelona,
>>     Espanya/
>>
>>
>>
>>
>>
>> -- 
>>
>> *Riccardo Rossi
>> *
>>
>> PhD, Civil Engineer
>>
>>
>> member of the Kratos Team: www.cimne.com/kratos 
>> <http://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 <http://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 
>> <mailto: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/>
>
> -- 
> *Josep Maria Carbonell i Puigbó*
> /Email: _cpuigbo en cimne.upc.edu_//
> //Telèfon: +34 93 405 40 68/
>
> /Gran Capità s/n-Campus Nord UPC//
> //Edifici C-1 1a Planta-Despatx 113B//
> //08034-Barcelona-Catalunya//
> /_/www.cimne.upc.edu/_
>
>
> /Abans d'imprimir aquest e-mail, assegura't de que és realment necessari.
> El medi ambient és responsabilitat de tots.
> /
> /AVÍS IMPORTANT//
> //Les dades de caràcter personal contingudes en aquest missatge es 
> registraran//
> //en un fitxer per facilitar la gestió de les comunicacions del CIMNE.//
> //Es poden exercir els drets d'accés, rectificació, cancel·lació i 
> oposició,//
> //per escrit a les nostres oficines del CIMNE://
> //Gran Capità s/n, Edifici C1, Campus Nord UPC, 08034 Barcelona, Espanya//
> //
> //AVISO IMPORTANTE//
> //Los datos de carácter personal contenidos en el mensaje, se 
> registrarán//
> //en un fichero para facilitar la gestión de las comunicaciones de 
> CIMNE.//
> //Se pueden ejercitar los derechos de acceso, rectificación, 
> cancelación y//
> //oposición por escrito, dirigiéndose a nuestras oficinas de CIMNE://
> //Gran Capità s/n, Edifici C1, Campus Nord UPC, 08034 Barcelona, Espanya//
> //
> //IMPORTANT NOTICE//
> //All personal data contained in this mail will be processed 
> //confidentially//
> //and stored in a file property of CIMNE in order to manage corporate//
> //communications. You may exercise the right of access, rectification,//
> //deletion and objection by letter sent to CIMNE://
> //Gran Capità s/n, Edifici C1, Campus Nord UPC, 08034 Barcelona, Espanya/
>
>
> _______________________________________________
> Kratos mailing list
> Kratos en listas.cimne.upc.edu
> http://listas.cimne.upc.edu/cgi-bin/mailman/listinfo/kratos

------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: http://listas.cimne.upc.edu/pipermail/kratos/attachments/20140313/43bdc4dc/attachment-0001.htm 


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