Discussion:
[deprecated list] Triaxial statetransition and code submission
Luc Sibille
2009-02-10 13:36:12 UTC
Permalink
Hi,

I will be a little bit boring...

Question about submission of code to svn:

I modified 2 or 3 lines in TriaxialCompressionEngine in order to update
the friction angle from compactionFrictionDeg to FrictionDeg when the
state transition is performed manually (by editing the .xml file) from
Iso_compaction to Triax_loading. (but I am not sure to respect the idea
of the person who written this part of the code)

In addition, during the state transition, I would like to update the
tangent of friction angle for all interaction and not only "real"
interaction
(from a discussion between Jerome and Bruno I understood that the
transition (isReal = 0 and isNew = 0) => (isReal = 1 and isNew = 0) will
not happen, but I would prefer to have several "protections" than only one).

My question: I may want to submit code modifications in opposition with
previous developments. Thus, what is the philosophy? submit directly
these modifications to svn, or via a yade developer who will filter the
modifications?

Best,

Luc
--
Luc Sibille

Université de Nantes - Laboratoire GeM UMR CNRS

IUT de Saint Nazaire
58, rue Michel-Ange - BP 420
44606 Saint-Nazaire Cedex, France

Tel: +33 (0)2 40 17 81 78

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Janek Kozicki
2009-02-10 15:34:15 UTC
Permalink
Luc Sibille said: (by the date of Tue, 10 Feb 2009 14:36:12 +0100)
please create an account for you on http://developer.berlios.de/
and send me your login that you used. I'll add you to the project and
you will have write access to SVN.

have a look at: http://yade.wikia.com/wiki/Quick_subversion_tutorial

and http://yade.wikia.com/wiki/Launchpad_Migration#SVN_committers

that's it!
--
Janek Kozicki

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Janek Kozicki
2009-02-13 14:05:54 UTC
Permalink
Luc Sibille said: (by the date of Fri, 13 Feb 2009 09:25:02 +0100)
Hi Janek,
Here is my login on Berlios: lucsibille.
Could you please add me to Yade project?
done! Welcome on board!
--
Janek Kozicki |

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Luc Sibille
2009-03-06 10:44:49 UTC
Permalink
Hi,

I understand that to commit code to repository, I need to have a
read/write access from subversion.

To download a subversion with read/write access I have to use ssh
protocol, for instance:

svn checkout svn+ssh://svn.berlios.de/svnroot/repos/yade/trunk

From my university, access outside the university with ssh is totally
locked.
Hence my questions are:

1/ Do I really need to perform a checkout with svn and read/write access
for then be able to submit code?

2/ If the answer is yes for question 1/, is there a way to perform a
checkout with read/write access without using ssh?

Thanks for your help

Luc
--
Luc Sibille

Université de Nantes - Laboratoire GeM UMR CNRS

IUT de Saint Nazaire
58, rue Michel-Ange - BP 420
44606 Saint-Nazaire Cedex, France

Tel: +33 (0)2 40 17 81 78

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Janek Kozicki
2009-03-06 13:34:00 UTC
Permalink
Luc Sibille said: (by the date of Fri, 06 Mar 2009 11:44:49 +0100)
Post by Luc Sibille
I understand that to commit code to repository, I need to have a
read/write access from subversion.
To download a subversion with read/write access I have to use ssh
svn checkout svn+ssh://svn.berlios.de/svnroot/repos/yade/trunk
From my university, access outside the university with ssh is totally
locked.
1/ Do I really need to perform a checkout with svn and read/write access
for then be able to submit code?
2/ If the answer is yes for question 1/, is there a way to perform a
checkout with read/write access without using ssh?
I guess that you have your network misconfigured, and that
you are using proxy for http. I've seen similar problems in 3s,
before.

Please ask your network administrator to verify that
your /etc/network/interfaces (and /etc/resolv.conf) files are
correct.

ssh access should not be locked, really - it is possible but extremely
unlikely, especially at the university. You need to ask admin about that.
--
Janek Kozicki |

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Luc Sibille
2009-03-06 13:47:43 UTC
Permalink
Hi Janek,

Thank you Janek for your help.

Yes I am behind a proxy, but I don't think it is a problem of
configuration network (my network works well for svn, synaptic,
thunderbird, matlab licence manager, and so on).

I have already asked my administration about that, and it is clear ssh
is not authorized.

Luc
Post by Janek Kozicki
Luc Sibille said: (by the date of Fri, 06 Mar 2009 11:44:49 +0100)
Post by Luc Sibille
I understand that to commit code to repository, I need to have a
read/write access from subversion.
To download a subversion with read/write access I have to use ssh
svn checkout svn+ssh://svn.berlios.de/svnroot/repos/yade/trunk
From my university, access outside the university with ssh is totally
locked.
1/ Do I really need to perform a checkout with svn and read/write access
for then be able to submit code?
2/ If the answer is yes for question 1/, is there a way to perform a
checkout with read/write access without using ssh?
I guess that you have your network misconfigured, and that
you are using proxy for http. I've seen similar problems in 3s,
before.
Please ask your network administrator to verify that
your /etc/network/interfaces (and /etc/resolv.conf) files are
correct.
ssh access should not be locked, really - it is possible but extremely
unlikely, especially at the university. You need to ask admin about that.
--
Luc Sibille

Université de Nantes - Laboratoire GeM UMR CNRS

IUT de Saint Nazaire
58, rue Michel-Ange - BP 420
44606 Saint-Nazaire Cedex, France

Tel: +33 (0)2 40 17 81 78

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Janek Kozicki
2009-03-06 16:48:24 UTC
Permalink
Luc Sibille said: (by the date of Fri, 06 Mar 2009 14:47:43 +0100)
Post by Luc Sibille
I have already asked my administration about that, and it is clear ssh
is not authorized.
I see, please try this:

svn checkout http+svn://svn.berlios.de:80/svnroot/repos/yade/trunk

Let me know if it works, and if you can commit with this checkout.
And if yes - then please add this to wiki webpage (just click "edit"
to edit the webpage).
--
Janek Kozicki |

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Luc Sibille
2009-04-01 10:04:53 UTC
Permalink
Hi Janek,

Sorry it doesn't work, here is the result (in french sorry):

***@pc-calc-ls:~$ svn checkout
http+svn://svn.berlios.de:80/svnroot/repos/yade/trunk
/home/luc/Sim_DEM/YADE_svn/5mars09/trunk
svn: Le serveur a envoye une valeur inattendue (400 Bad Request) en
reponse a larequete OPTIONS pour
'http+svn://svn.berlios.de:80/svnroot/repos/yade/trunk'

Do you think that we can commit code directly trought berlios web site,
it would a solution to avoid ssh?

Best

Luc
Post by Janek Kozicki
Luc Sibille said: (by the date of Fri, 06 Mar 2009 14:47:43 +0100)
Post by Luc Sibille
I have already asked my administration about that, and it is clear ssh
is not authorized.
svn checkout http+svn://svn.berlios.de:80/svnroot/repos/yade/trunk
Let me know if it works, and if you can commit with this checkout.
And if yes - then please add this to wiki webpage (just click "edit"
to edit the webpage).
--
Luc Sibille

Université de Nantes - Laboratoire GeM UMR CNRS

IUT de Saint Nazaire
58, rue Michel-Ange - BP 420
44606 Saint-Nazaire Cedex, France

Tel: +33 (0)2 40 17 81 78

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Luc Sibille
2009-04-01 11:36:32 UTC
Permalink
Hi Janek,

It seems, I can checkout svn version with read/write access with the
following command:

svn checkout https://developername-***@public.gmane.org/svnroot/repos/yade/trunk

I will keep you updated if I can commit (I have not tried yet) like this.

Best,

Luc
Post by Janek Kozicki
Luc Sibille said: (by the date of Fri, 06 Mar 2009 14:47:43 +0100)
Post by Luc Sibille
I have already asked my administration about that, and it is clear ssh
is not authorized.
svn checkout http+svn://svn.berlios.de:80/svnroot/repos/yade/trunk
Let me know if it works, and if you can commit with this checkout.
And if yes - then please add this to wiki webpage (just click "edit"
to edit the webpage).
--
Luc Sibille

Université de Nantes - Laboratoire GeM UMR CNRS

IUT de Saint Nazaire
58, rue Michel-Ange - BP 420
44606 Saint-Nazaire Cedex, France

Tel: +33 (0)2 40 17 81 78

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Luc Sibille
2009-04-03 15:54:51 UTC
Permalink
Hi Janek, Hi everybody

I confirm that we can checkout svn version with read/write access with
the following command:

svn co https://developername-***@public.gmane.org/svnroot/repos/yade/trunk

and then commit code.

I will update the wiki webpage.

Thanks for your help,

Luc
Hi Janek,
It seems, I can checkout svn version with read/write access with the
I will keep you updated if I can commit (I have not tried yet) like this.
Best,
Luc
Post by Janek Kozicki
Luc Sibille said: (by the date of Fri, 06 Mar 2009 14:47:43 +0100)
Post by Luc Sibille
I have already asked my administration about that, and it is clear
ssh is not authorized.
svn checkout http+svn://svn.berlios.de:80/svnroot/repos/yade/trunk
Let me know if it works, and if you can commit with this checkout.
And if yes - then please add this to wiki webpage (just click "edit"
to edit the webpage).
--
Luc Sibille

Université de Nantes - Laboratoire GeM UMR CNRS

IUT de Saint Nazaire
58, rue Michel-Ange - BP 420
44606 Saint-Nazaire Cedex, France

Tel: +33 (0)2 40 17 81 78

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Bruno Chareyre
2009-04-03 17:10:24 UTC
Permalink
Good news! :)

Bruno
Post by Luc Sibille
Hi Janek, Hi everybody
I confirm that we can checkout svn version with read/write access
and then commit code.
I will update the wiki webpage.
Thanks for your help,
Luc
Hi Janek,
It seems, I can checkout svn version with read/write access with the
svn checkout
I will keep you updated if I can commit (I have not tried yet) like this.
Best,
Luc
Post by Janek Kozicki
Luc Sibille said: (by the date of Fri, 06 Mar 2009 14:47:43 +0100)
Post by Luc Sibille
I have already asked my administration about that, and it is clear
ssh is not authorized.
svn checkout http+svn://svn.berlios.de:80/svnroot/repos/yade/trunk
Let me know if it works, and if you can commit with this checkout.
And if yes - then please add this to wiki webpage (just click "edit"
to edit the webpage).
--
_______________
Chareyre Bruno
Maitre de conference

Grenoble INP
Laboratoire 3SR - bureau E145
BP 53 - 38041, Grenoble cedex 9 - France
Tél : 33 4 56 52 86 21
Fax : 33 4 76 82 70 43
________________


_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Bruno Chareyre
2009-02-10 16:54:39 UTC
Permalink
Post by Luc Sibille
I modified 2 or 3 lines in TriaxialCompressionEngine in order to
update the friction angle from compactionFrictionDeg to FrictionDeg
when the state transition is performed manually (by editing the .xml
file) from Iso_compaction to Triax_loading. (but I am not sure to
respect the idea of the person who written this part of the code)
It makes sense. I will review your changes when you will have them
committed.
Post by Luc Sibille
In addition, during the state transition, I would like to update the
tangent of friction angle for all interaction and not only "real"
interaction
Why?!
By design, interactions which are not "real" have really no reason to be
considered. See them as if they don't even exist. They will be seen as
"new" interactions if, by any chance, they become real again. So, they
will be re-initialized anyway, and your updated values will be
overwritten before they can be actually used.
Did you try it already? I suspect it would lead to some i->friction = x
with i the null pointer, then Yade crash.
Post by Luc Sibille
(from a discussion between Jerome and Bruno I understood that the
transition (isReal = 0 and isNew = 0) => (isReal = 1 and isNew = 0)
will not happen, but I would prefer to have several "protections" than
only one).
Sticking with the current design rule is the best way to avoid problems
if you ask me. If this transition from (0,0) to (1,0) could occure, it
would be a major bug, and a correct value of friction would not help a
lot (think about the tangential displacement, which would be totally
wrong : current_position - position_when_the_contact_was_lost).
Post by Luc Sibille
My question: I may want to submit code modifications in opposition
with previous developments. Thus, what is the philosophy? submit
directly these modifications to svn, or via a yade developer who will
filter the modifications?
Personnaly, I'd prefer people to at least point it out when they modify
some code that I'm developping/using (Triaxial and related classes).
Exactly like you just did. The commit itself can (should) be done by the
one who modified the code (you).

To summarize :
1/ For changing friction after manual editing - or any other change
consistent with current philosophy : let you commit your change.
2/ For accessing unreal values, it is really not consistent with the
current contact logic. If you really want this behaviour, or anything
else in opposition with previous logic, it is better to create your own
separate class.

An important point when you modify an existing class : your changes must
keep the default behaviour unchanged (might sound obvious).
One usual way for this is :

class C {

+ bool newFeatureActivation;
}

in the constructor : newFeatureActivation = false, and then define the
modified behaviour in a if (newFeatureActivation) { ... }.

This precaution is not needed for your friction update though, as it is
already doing nothing by default.

Bruno
--
_______________
Chareyre Bruno
Maitre de conference

Grenoble INP
Laboratoire 3SR - bureau E145
BP 53 - 38041, Grenoble cedex 9 - France
Tél : 33 4 56 52 86 21
Fax : 33 4 76 82 70 43
________________


_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Luc Sibille
2009-02-11 08:17:49 UTC
Permalink
Post by Bruno Chareyre
Post by Luc Sibille
I modified 2 or 3 lines in TriaxialCompressionEngine in order to
update the friction angle from compactionFrictionDeg to FrictionDeg
when the state transition is performed manually (by editing the .xml
file) from Iso_compaction to Triax_loading. (but I am not sure to
respect the idea of the person who written this part of the code)
It makes sense. I will review your changes when you will have them
committed.
Post by Luc Sibille
In addition, during the state transition, I would like to update the
tangent of friction angle for all interaction and not only "real"
interaction
Why?!
By design, interactions which are not "real" have really no reason to be
considered. See them as if they don't even exist. They will be seen as
"new" interactions if, by any chance, they become real again. So, they
will be re-initialized anyway, and your updated values will be
overwritten before they can be actually used.
Did you try it already? I suspect it would lead to some i->friction = x
with i the null pointer, then Yade crash.
Ok your are right, I forgotten this point: for some of these non real
interactions "variable" friction does not exist. Well, I am just
perturbated to see sometimes in xml files wrong friction values even if
they correspond to non real interaction. But, ok, that is not a problem.
Post by Bruno Chareyre
Post by Luc Sibille
(from a discussion between Jerome and Bruno I understood that the
transition (isReal = 0 and isNew = 0) => (isReal = 1 and isNew = 0)
will not happen, but I would prefer to have several "protections" than
only one).
Sticking with the current design rule is the best way to avoid problems
if you ask me. If this transition from (0,0) to (1,0) could occure, it
would be a major bug, and a correct value of friction would not help a
lot (think about the tangential displacement, which would be totally
wrong : current_position - position_when_the_contact_was_lost).
Post by Luc Sibille
My question: I may want to submit code modifications in opposition
with previous developments. Thus, what is the philosophy? submit
directly these modifications to svn, or via a yade developer who will
filter the modifications?
Personnaly, I'd prefer people to at least point it out when they modify
some code that I'm developping/using (Triaxial and related classes).
Exactly like you just did. The commit itself can (should) be done by the
one who modified the code (you).
Ok, I understand, I would like too if I were you!

Thanks
Post by Bruno Chareyre
1/ For changing friction after manual editing - or any other change
consistent with current philosophy : let you commit your change.
2/ For accessing unreal values, it is really not consistent with the
current contact logic. If you really want this behaviour, or anything
else in opposition with previous logic, it is better to create your own
separate class.
An important point when you modify an existing class : your changes must
keep the default behaviour unchanged (might sound obvious).
class C {
+ bool newFeatureActivation;
}
in the constructor : newFeatureActivation = false, and then define the
modified behaviour in a if (newFeatureActivation) { ... }.
This precaution is not needed for your friction update though, as it is
already doing nothing by default.
Bruno
--
Luc Sibille

Université de Nantes - Laboratoire GeM UMR CNRS

IUT de Saint Nazaire
58, rue Michel-Ange - BP 420
44606 Saint-Nazaire Cedex, France

Tel: +33 (0)2 40 17 81 78

_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp
Václav Šmilauer
2009-04-03 17:24:26 UTC
Permalink
Post by Luc Sibille
In addition, during the state transition, I would like to update the
tangent of friction angle for all interaction and not only "real"
interaction
(from a discussion between Jerome and Bruno I understood that the
transition (isReal = 0 and isNew = 0) => (isReal = 1 and isNew = 0)
will not happen, but I would prefer to have several "protections" than
only one).
Interaction where isReal==false has no associated interactionGeometry
and interactionPhysics. You could try modify those, but yade will segfault.

If you want to change friction angle for all future interactions, you
have to adjust frictionAngle that is stored in physicalParameters of
individual bodies and that is used to compute frictionAngle of
interaction by InteractionPhysicsMetaEngine.

V.


_______________________________________________
Mailing list: https://launchpad.net/~yade-users
Post to : yade-users-oU9gvf+***@public.gmane.org
Unsubscribe : https://launchpad.net/~yade-users
More help : https://help.launchpad.net/ListHelp

Loading...