Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Open => Expired Launchpad Janitor expired the question: This question was expired because it remained in the 'Open' state without activity for the last 15 days. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: the last result without -DENABLE_MPI=OFF on OPENSUSE 15.1: 0b00 bb br gg gr rr 0b10 br gg gr 0b01 bb br gr 0b11 br gr so the error link to MPI option is prooved!! -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: complementary information: the two previous yade were made with UBUNTU 19! -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: new information: with the Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz Irecent computer) got the same kind of answer : with -DENABLE_MPI=OFF : bad results without DENABLE_MPI : same "good" results such as mask = 0b01 : bb br gr i don't know how to interpret this facts -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: I have just done a basic test with two different cmake option on my UBUNTU 19 machine : enable-mpi=off or not here the two answer for the #20 mask py program: CASE 1: with MPI: /home/oger/full-yade-local/install_with_MPI/bin/yade-2019-08-30.git-a2f1fbf mask_test.py Welcome to Yade 2019-08-30.git-a2f1fbf Using python version: 3.7.3 (default, Apr 3 2019, 05:39:12) [GCC 8.3.0] TCP python prompt on localhost:9000, auth cookie `cssdyk' XMLRPC info provider on http://localhost:21000 Running script mask_test.py br gg gr [[ ^L clears screen, ^U kills line. F12 controller, F11 3D view (press "h" in 3D view for help), F10 both, F9 generator, F8 plot. ]] CASE 2 WITHOUT MPI: oger@hp-1021:~/programme_perso/yade$ /home/oger/full-yade-local/install/bin/yade-2019-08-30.git-a2f1fbf mask_test.py Welcome to Yade 2019-08-30.git-a2f1fbf Using python version: 3.7.3 (default, Apr 3 2019, 05:39:12) [GCC 8.3.0] TCP python prompt on localhost:9000, auth cookie `eskacd' XMLRPC info provider on http://localhost:21000 Running script mask_test.py bb br gb gg gr rr [[ ^L clears screen, ^U kills line. F12 controller, F11 3D view (press "h" in 3D view for help), F10 both, F9 generator, F8 plot. ]] in all other OPENSUSE machines I have always put -DENABLE_MPI=OFF which can epxlain the problemfor the solution it is another story! -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki posted a new comment: Maybe check what is the linux kernel version in both of these cases? You can check this with command “uname -a” -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki posted a new comment: Only to clarify: * the bug list on i7-2600 is the same as on i7-6700HQ * AND the masks are working on i7-2600 AND not working on i7-6700HQ ? I ask only because I would expect that when the mask is working, the bug list would be different. And I expect that the bug list is different depending on linux kernel configuration, which can have different defaults in each linux distribution. So please check if the buglist is the same in both of these cases: 1. “same old PC with older intel processor (see #35) the openuse 15.1 gave the answer as #28” 2. “BUT the UBUNTU 19 gave the answer #35” If the buglist is the same, then we need to find more differences between suse 15.1 and ubuntu 19 on i7-2600 processor. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: here the bug for the new intel AND also the old one: same list!! bugs: cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs full old intel cpuinfo: processor : 7 vendor_id : GenuineIntel cpu family : 6 model : 42 model name : Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz stepping: 7 microcode : 0x2f cpu MHz : 1725.371 cache size : 8192 KB physical id : 0 siblings: 8 core id : 3 cpu cores : 4 apicid : 7 initial apicid : 7 fpu : yes fpu_exception : yes cpuid level : 13 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm epb pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid xsaveopt dtherm ida arat pln pts md_clear flush_l1d bugs: cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs bogomips: 6784.67 clflush size: 64 cache_alignment : 64 address sizes : 36 bits physical, 48 bits virtual power management: processor : 7 vendor_id : GenuineIntel cpu family : 6 model : 94 model name : Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz stepping: 3 microcode : 0xcc cpu MHz : 800.039 cache size : 6144 KB physical id : 0 siblings: 8 core id : 3 cpu cores : 4 apicid : 7 initial apicid : 7 fpu : yes fpu_exception : yes cpuid level : 22 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d bugs: cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds swapgs bogomips: 5184.00 clflush size: 64 cache_alignment : 64 address sizes : 39 bits physical, 48 bits virtual power management: full new intel cpuinfo: -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki posted a new comment: in #34 you have pasted CPUINFO. There is line „bugs: ” but this line is missing in #36. And I don’t know if there are no processor bugs, or if you simply did not paste this line. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: Here the cmake comannd which is really the simplest one : cmake DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_PREFIX=../install -DPYTHON_VERSION=3 -DDISABLE_SAVE_TEMPS=1 -DENABLE_MPI=OFF ../trunk and I have tried to compile and run yade on several machines, but the "simplest" comparison test is the following : on the same laptop with new Intel processor (see #35) both Opensuse 15.1 and Ubuntu 19 generates the same bitmask error (see#28) on th same old PC with older intel processor (see #35) the openuse 15.1 gave the answer as #28 BUT the UBUNTU 19 gave the answer #35 Sorry but I am unable to answer to the #39 request as i don't know how and where to look for... -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki posted a new comment: I just had another idea: maybe it depends on the linux kernel version. There were several vulnerabilities discovered in Intel processors. One of the called „rowhammer” was a vulnerability where by toggling certain bits you could affect other bits in RAM. Interaction mask works by checking individual bits. Maybe a side effect of fixing this vulnerability is that the old-good bitmask stops working. If this is true, then there shouldn’t be a problem on AMD processor, or on an older kernel version. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Bruno Chareyre posted a new comment: >so results only controled from bit in position 0 at right side little endian vs. big endian?... The most suprizing in all this is that Luc can reproduce the problem on so many (though not all) computers. While nobody else can. Also, Luc, please post your compilation procedure (cmake) just to be sure. Bruno -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: Strange behaviour : 2 UBUNTU 19 environments on two differents machines: the same compiler option and the same yade-2019-08-26 result --on an old machine (cpu family : 6 model : 42 model name : Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz stepping: 7 microcode : 0x2f cpu MHz : 1725.371 flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx lahf_lm epb pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid xsaveopt dtherm ida arat pln pts md_clear flush_l1d) the mask seems too work --- on the new machine (cpu family : 6 model : 94 model name : Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz stepping: 3 microcode : 0xcc cpu MHz : 800.039) the flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid ept_ad fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d) the result are similar to the bad previous series : full or no interactions?? this confirm the processor coompilation problem as suggested by Janek -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Answered => Open Luc OGER is still having a problem: Hi, i have compiled yade-2019-08-25.git-0f74746 and run again the test #20... and this time the results is quite different!: mask=0b00 : bb br gg gr rr mask=0b01 : bb br gr mask=0b10 : br gg gr mask=0b11 : br gr I will check my program now! -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER posted a new comment: I have tried with two very different machines: laptop : hp envy and server Dell R960 BUT I got the same answer??? here the CPUINFO: server Dell : processor : 127 vendor_id : GenuineIntel cpu family : 6 model : 79 model name : Intel(R) Xeon(R) CPU E7-4850 v4 @ 2.10GHz stepping: 1 microcode : 0xb2e cpu MHz : 2094.877 cache size : 40960 KB physical id : 3 siblings: 32 core id : 15 cpu cores : 16 apicid : 127 initial apicid : 127 fpu : yes fpu_exception : yes cpuid level : 20 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid dca sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb cat_l3 cdp_l3 invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm cqm rdt_a rdseed adx smap intel_pt xsaveopt cqm_llc cqm_occup_llc cqm_mbm_total cqm_mbm_local dtherm ida arat pln pts flush_l1d bugs: cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf bogomips: 4191.91 clflush size: 64 cache_alignment : 64 address sizes : 46 bits physical, 48 bits virtual Laptop HP-ENVY: processor : 7 vendor_id : GenuineIntel cpu family : 6 model : 94 model name : Intel(R) Core(TM) i7-6700HQ CPU @ 2.60GHz stepping: 3 microcode : 0xcc cpu MHz : 2600.000 cache size : 6144 KB physical id : 0 siblings: 8 core id : 3 cpu cores : 4 apicid : 7 initial apicid : 7 fpu : yes fpu_exception : yes cpuid level : 22 wp : yes flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc art arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 sdbg fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm 3dnowprefetch cpuid_fault epb invpcid_single pti ssbd ibrs ibpb stibp tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 hle avx2 smep bmi2 erms invpcid rtm mpx rdseed adx smap clflushopt intel_pt xsaveopt xsavec xgetbv1 xsaves dtherm ida arat pln pts hwp hwp_notify hwp_act_window hwp_epp md_clear flush_l1d bugs: cpu_meltdown spectre_v1 spectre_v2 spec_store_bypass l1tf mds bogomips: 5184.00 clflush size: 64 cache_alignment : 64 address sizes : 39 bits physical, 48 bits virtual -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki requested more information: This is more and more strange. Because now I start to suspect the hardware. What is the processor model in your computer? You can use `cat /proc/cpuinfo` to find out. Can you try to reproduce this problem on a computer with a different kind of processor? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER posted a new comment: it is only a "basic" one : cmake -DCMAKE_VERBOSE_MAKEFILE=ON -DCMAKE_INSTALL_PREFIX=../install -DPYTHON_VERSION=3 -DDISABLE_SAVE_TEMPS=1 -DENABLE_MPI=OFF ../trunk and to extend some tests : here the results with 2 or 3 bit long for the mask!! if mb,mg,mr = 0b10, 0b01, 0b11 0b00 : bb br gb gg gr rr 0b10 : bb br gb gg gr rr 0b01 : 0b11 : if mb,mg,mr = 0b100, 0b010, 0b110 0b000 : bb br gb gg gr rr 0b010 : bb br gb gg gr rr 0b100 : bb br gb gg gr rr 0b110 : bb br gb gg gr rr 0b001 : 0b011 : 0b101 : 0b111 : if mb,mg,mr = 0b101, 0b011, 0b111 0b000 : bb br gb gg gr rr 0b010 : bb br gb gg gr rr 0b100 : bb br gb gg gr rr 0b110 : bb br gb gg gr rr 0b001 : 0b011 : 0b101 : 0b111 : so results only controled from bit in position 0 at right side -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki posted a new comment: Also, Jan, perhaps it would be useful for us to turn your example into a `yade --check` script? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki requested more information: So we know it is not the linux distribution. Because Luc has the same problem also on ubuntu 19. So it just occurred to me that maybe it is some of the compiler flags used in compilation, because I assume that Luc used the same flags on suse and ubuntu. Luc, please tell us what cmake invocation exactly did you use on ubuntu? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Open => Answered Jan Stránský proposed the following answer: Thanks for testing and output. The results corresponds to your description of either all or none interactions. Now we (at least I) can be sure that the problem is on the side of the program and not the interpretation of the results. This is really vry strange and I see no reason for that (and therefore no solution)... e.g. the "gb" interaction should not be there at all (independently on avoidSelfInteractionMask) because the masks are 0b01 and 0b10, respectively.. cheers Jan -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: I have run #20 and the answer is strange : Mask=0b00 : bb br gb gg gr rr Mask=0b10 : bb br gb gg gr rr Mask = 0b01 or 0b11 = no line ouput ?? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Needs information => Open Luc OGER gave more information on the question: Same as reply in#9 every sphere passed through or every sphere interact with all the others OK I will try tu write as #19 20 -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Open => Needs information Jan Stránský requested more information: > I got exactly the same behavior same as what? > Jan'remark about the luck? my remark was only about the order of commands. It works with avoidSelfInteractionMask attribute, but would not work e.g. for allowBiggerThanPeriod attribute Really please please post here (or test yourself and tell if the result is different or not) the output of the code in #19 and #20 cheers Jan -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Needs information => Open Luc OGER gave more information on the question: I have installed UBUNTU 19 on one USB HDD and compiled the last yade:, yade-2019-08-11 Then I have run my py code... And I got exactly the same behavior !!! So I agree with Jan'remark about the luck? I will modify the collidermask use and position in the ode -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Open => Needs information Jan Stránský requested more information: Hi Luc, my code is just to test the interactions and print it in an understandamble, unambiguous, reproducible.. way. the 10 lines just extracts and prints this info from real interactions. to be sure the problem is on the OS side, please provide the output for 0b00, 0b01, 0b10, 0b11 avoidSelfInteractionMask values thanks Jan -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Answered => Open Luc OGER is still having a problem: I am using only the basic cmake option plus MPI=OFF only I have tried with several vesion or Yade but alwaays with OpenSuse 15.1 after my vacations i will install a linux UBUNTU to test and so avoid this kind of problem -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Open => Answered Bruno Chareyre proposed the following answer: This thread is definitely about Luc getting a completely different behaviour on a particular OS. And it suggests that bitwise operators are completely broken on that OS. I feel helpless. Still Luc, if you could check correctness on any other OS it would help making sure we are speaking of the same thing. Are you using really special compile options? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Answered => Open Luc OGER is still having a problem: aSIMask=0b00 full interaction aSIMask=0b01 full no interaction aSIMask=0b10 full interaction aSIMask=0b11 full no interaction full no interaction = means all the spheres on top of the bottom fixed one are not interacting with this bottom one and are falling down outside the system full interaction = means all the spheres are bouncing with all the ones like the standard 2spheres bouncing case. I have no special interaction depending on the avoidSelfInteractionMask choice PS I don't catch the meaning and the issue of the 10 lines after O.step()??? I have no problem of position or duplicated according to the initial display of the full sphere setup. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Bruno Chareyre proposed the following answer: I tried again with yadedaily (2018.02b-290bf6a54e~xenial), the results are correct again. @Luc, can't you try on a different computer to be sure we are on the same page? I can't imagine that compiler options change the behavior of bitwise operators... @Jan, > "by luck" because avoidSelfInteractionMask is defined as static Interesting... I wonder why it was defined static at all (probably off-topic though). Jan's script made me realize my mistake, correct list in #12 was: - if you set avoidSelf=1 you kill the 1-1 and 3-3 interactions. - if you set avoidSelf=2 you kill the 2-2 and 3-3 interactions. - if you set avoidSelf=3 you kill 1-1, 2-2, and 3-3; only 3-1 and 3-2 are left. Below is a modified script which will not break python interpreter (and is Python3 friendly). Note the explicit call to collider and interactions.all() to get virtual interactions. ### # mask values, "colors" mb,mg,mr = 0b10, 0b01, 0b11 # mask to string dict m2c = {mb:"b", mg:"g", mr:"r"} # testing spheres, 2 of each color sb1 = sphere((0,0,0),1,mask=mb) sb2 = sphere((0,0.1,0),1,mask=mb) sg1 = sphere((0.1,0,0),1,mask=mg) sg2 = sphere((0,0,0.1),1,mask=mg) sr1 = sphere((-0.1,0,0),1,mask=mr) sr2 = sphere((0,-0.1,0),1,mask=mr) O.bodies.append((sb1,sb2,sg1,sg2,sr1,sr2)) # collider.avoidSelfInteractionMask = 0b00 collider.boundDispatcher.__call__() collider.__call__() idss = [(i.id1,i.id2) for i in O.interactions.all()] # id couples for each interaction bss = [[O.bodies[i] for i in ids] for ids in idss] # body couple of each interaction mss = [[b.mask for b in bs] for bs in bss] # mask couple of each interaction mss = [tuple(sorted(ms)) for ms in mss] # make the mask couple of type tuple (needs by set below). Also sort it for proper deletion of duplicates mss = set(mss) # make the entries unique (i.e. deleting duplicates) css = ["".join(m2c[m] for m in ms) for ms in mss] # convert mask couples to strings css.sort() # sort the result css = " ".join(css) # make it one string print(css) # print interacting color couples ### -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Open => Answered Jan Stránský proposed the following answer: Hi guys, sorry for coming late to the discussion. what is "full interaction", "full no interaction" and "ful or zero interactions"? also, next time please try to make your script minimal and easily understandable. E.g. here 1st, 5th, top, bottom... is ambiguous according to view orientation.. For example: ### # mask values, "colors" mb,mg,mr = 0b10, 0b01, 0b11 # mask to string dict m2c = {mb:"b", mg:"g", mr:"r"} # testing spheres, 2 of each color sb1 = sphere((0,0,0),1,mask=mb) sb2 = sphere((0,0,0),1,mask=mb) sg1 = sphere((0,0,0),1,mask=mg) sg2 = sphere((0,0,0),1,mask=mg) sr1 = sphere((0,0,0),1,mask=mr) sr2 = sphere((0,0,0),1,mask=mr) O.bodies.append((sb1,sb2,sg1,sg2,sr1,sr2)) # collider.avoidSelfInteractionMask = 0b00 O.step() # idss = [(i.id1,i.id2) for i in O.interactions] # id couples for each interaction bss = [[O.bodies[i] for i in ids] for ids in idss] # body couple of each interaction mss = [[b.mask for b in bs] for bs in bss] # mask couple of each interaction mss = [tuple(sorted(ms)) for ms in mss] # make the mask couple of type tuple (needs by set below). Also sort it for proper deletion of duplicates mss = set(mss) # make the entries unique (i.e. deleting duplicates) css = ["".join(m2c[m] for m in ms) for ms in mss] # convert mask couples to strings css.sort() # sort the result css = " ".join(css) # make it one string print css # print interacting color couples ### Please, provide your output for different avoidSelfInteractionMask values such that we can test if your installation does wrong bit operations or there is some misunderstanding. For my case: 0b00: bb br gg gr rr 0b01: bb br gr 0b10: br gg gr 0b11: br gr cheers Jan PS: a note In your code, you first modify 'collider' and then in O.engines creates a new collider. Setting avoidSelfInteractionMask works only "by luck" because avoidSelfInteractionMask is defined as static (for other values it could cause problems). A cleaner way would be: ## O.engines = [ ... InsertionSortCollider(...,label="collider") ... ] collider.avoidSelfInteractionMask = ... ## -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: I have just tried with yade-2019-08-08.git-775ae74 and I got the same problem!! I guess that some compiler options are not going well in some bit test? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Answered => Open Luc OGER is still having a problem: It is a july version Like 12-07 -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Open => Answered Bruno Chareyre proposed the following answer: I meant to type collider.avoidSelfInteractionMask=X after reloading the scene, not before. But I guess that's what you do already. You did not mention your yade version. Is it old? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Luc OGER gave more information on the question: Dear Bruno, As I don't know what is this function "avoidSelf_after_reloading" I have not played with it. how i can check its value or its rule? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Bruno Chareyre posted a new comment: I'm using Yade 2019-08-07.git-c9e148a here, but the "avoidSelfInteractionMask" code did not change in the last years. Not sure which is 1st and which is 5th column, but with avoidSelf=1 I get spheres stuck on both of them (2 superimposed red spheres on one, green+red+blue on the other one). It's really strange if you get something else. I can't see any explanation. You change avoidSelf _after_ reloading, right? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Answered => Open Luc OGER is still having a problem: When I run it on my computer this is not what I get : in the 5th column with avoidSelf=1 all the three balls on top of the blue fixed one passed through this one and it is identical for the 5 colums series of events : every thing passed through... this is what I don't catch especially if it is working on your version of Yade -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Open => Answered Bruno Chareyre proposed the following answer: As far as I understand you have mask= 2, 1, and 3. At this point the possible interactions are 1-1, 2-2, 3-1, 3-2, 3-3. The impossible ones are 1-2, they will never exist. Agreed? Then: - if you set avoidSelf=1 you kill the 1-1 interactions. - if you set avoidSelf=2 you kill the 2-2 interactions. - if you set avoidSelf=3 you kill 1-1, 2-2, and 3-3; only 3-1 and 3-2 are left. This is the expected behavior and it is what you script gives (a good one! what about adding it to examples? it's funny to see the bounding boxes shrinking as velocity decreases). I don't confirm your report in terms of full/full-no. Bruno -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki posted a new comment: It is this one btw, that needs simplification: https://yade- dev.gitlab.io/-/trunk/-/jobs/268573829/artifacts/install/share/doc/yade- ci/html/yade.wrapper.html#yade.wrapper.Collider.avoidSelfInteractionMask -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki posted a new comment: I don't understand. Do you want blue to interact with other blue or not? Maybe you need to change the color (actually the bitmask) of these at the bottom? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Answered => Open Luc OGER is still having a problem: sorry for the creation of this long discussion but i am still not happy with the results of this Collider.avoidSelfInteractionMask functionnality: according to the comment by Jérome (06-08-2019) if the Collider.avoidSelfInteractionMask=0b01 the blue would interact with themselves but when I modified the line with the collider to 0b01 and run my example, in the 5th column the blue one on the column is not interacting with the fixed blue one at the bottom it was part of the analysis and the bottom of the initial post witht th four possible choices for the collider and the full no or yes interaction for all of them??? = not really linked to the bit mask position back here: and the result for collider.avoidSelfInteractionMask 0b00 full interaction 0b01 full no interaction 0b10 full interaction 0b11 full no interaction -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Bruno Chareyre proposed the following answer: Well, questions on bitmasks happen indeed, questions on avoidSelfInteractionMask are not really frequent AFAIK. This is my suggestion (a shorter rephrasing of the original doc): "This mask is used to avoid the interactions inside a group of particles. If two particles have the exact same mask and that mask is compatible with Collider.avoidSelfInteractionMask then the particles do not collide." Expanding this if needed could be easier than trying to summarize that long answer by Jérôme. Feel free to add anything missing. Bruno p.s. If general considerations are needed they may fit in user manual or in the docstring of groupMask, probably. :ref:`interaction-flow` is more or less already here (with no mention of bitmasks): https://yade-dem.org/doc/formulation.html#creating-interaction-between-particles -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki posted a new comment: I started this MR, because I had a feeling that this question is asked more often than necessary. I am not sure though if this is the right place for these detailed explanations. Maybe move it to a section in manual which discusses these masks? That wuold be restructuredtext command: :ref:`interaction-flow` I have just added a link to https://en.cppreference.com/w/c/language/operator_arithmetic#Bitwise_logic in case if someone is not familiar with that :) (I notice that gitlab is sluggish now, and the new push is not visible in the www interface yet) If you want to remove some words, please go ahead. I did not fully understood which last words you want to remove. The general goal is of course to reduce number of questions regarding this topic. My commits there are by no means final. I hope that you will improve this ;) -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Bruno Chareyre posted a new comment: Also, for consistency, let's keep masks as integers in the doc. -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Bruno Chareyre posted a new comment: Is there really anything missing in the original doc? I would actually remove the last words of it : "This mask is used to avoid the interactions inside a group of particles. To do so, the particles must have the exact same mask and that mask should have one bit in common with this Collider.avoidSelfInteractionMask" The current text in [1] is excessively long. [1] https://gitlab.com/yade-dev/trunk/merge_requests/223 -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Janek Kozicki proposed the following answer: Thank you Jerome for your great explanations. Maybe you and Luc Oger can think of a better description into the documentation about this? You can write as much as you want. Only make sure that it is clearly explained. I have just prepared a "placeholder" merge request for you [1], where I have just copied a part of your explanation. [1] https://gitlab.com/yade-dev/trunk/merge_requests/223 -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Jérôme Duriez proposed the following answer: It again turns out that both #1 and #2 are somewhat incorrect... (thank you Jan Stransky !) I overlooked the fact that interaction possibility depends on mask compatibility in the first place, before any avoidSelfInteractionMask consideration.. So, in an example with 3 mask values assigned to particles (0b10 = "blue", or 0b01 = "green", or 0b11 = "red"), and a with collider.avoidSelfInteractionMask = 0b01: green particles would not interact with blue particles because they are not mask-compatible (do not share any "1" bit in common) green particles would not interact with other green particles because of avoidSelfInteractionMask, red particles would not interact with themselves either, for the same reason blue particles would interact with themselves, on the contrary For the complete list of possibilities, see https://gitlab.com/yade-dev/trunk/blob/master/pkg/common/Collider.cpp#L15. It can anyway not be more confusing than my comments here... -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Jérôme Duriez proposed the following answer: It turns out my example in #1 is incorrect because of a somewhat special treatment of 0b00 in binary comparisons (see also [*]).. Let me rephrase again: for 3 mask values assigned to particles (0b10 = "blue", or 0b01 = "green", or 0b11 = "red"), and a with collider.avoidSelfInteractionMask = 0b01: green particles would not interact with other green particles, red particles would not interact with other red particles, and all other interactions would be possible. [*]https://gitlab.com/yade-dev/trunk/issues/106#note_199825825 -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
Re: [Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
Question #682290 on Yade changed: https://answers.launchpad.net/yade/+question/682290 Status: Open => Answered Jérôme Duriez proposed the following answer: Hi, As far as I'm concerned I did not completely get your objectives/question, sorry.. Just to rephrase the doc, and in your example of 3 mask values assigned to particles (0b10 = "blue", or 0b01 = "green", or 0b11 = "red"), and a with collider.avoidSelfInteractionMask = 0b00: blue particles would not interact with other blue particles, green particles would not interact with green particles, and all other interactions would be possible. (Assuming collider is defined e.g. as the label of the collider instance in your O.engines, which does not seem to be the case in the Python lines you showed us here) -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp
[Yade-users] [Question #682290]: the correct use of collider.avoidSelfInteractionMask ?
New question #682290 on Yade: https://answers.launchpad.net/yade/+question/682290 Hello, I am trying to setup properly the possible interaction between different group of sphere: some can interact with other, some cannot interact with themselves here the basic code # basic simulation showing sphere falling ball gravity, # bouncing against another sphere representing the support # DATA COMPONENTS # add 2 particles to the simulation # they the default material (utils.defaultMat) mask1=0b10 mask2=0b01 mask3=0b11 O.bodies.append([ # fixed: particle's positionin space will not change (support) sphere(center=(0,0,0),radius=.5,fixed=True,mask=mask1,color=(0,0,1)), #fond immobile sphere(center=(0,0,2),radius=.5,fixed=False,mask=mask2,color=(0,1,0)), # these particles are free, subject to dynamics sphere(center=(0,0,4),radius=.5,fixed=False,mask=mask3,color=(1,0,0)), sphere(center=(0,0,6),radius=.5,fixed=False,mask=mask3,color=(1,0,0)), # fixed: particle's positionin space will not change (support) sphere(center=(3,0,0),radius=.5,fixed=True,mask=mask1,color=(0,0,1)), #fond immobile sphere(center=(3,0,2),radius=.5,fixed=False,mask=mask3,color=(1,0,0)), # these particles are free, subject to dynamics sphere(center=(3,0,4),radius=.5,fixed=False,mask=mask2,color=(0,1,0)), sphere(center=(3,0,6),radius=.5,fixed=False,mask=mask2,color=(0,1,0)), # fixed: particle's positionin space will not change (support) sphere(center=(6,0,0),radius=.5,fixed=True,mask=mask3,color=(1,0,0)), #fond immobile sphere(center=(6,0,2),radius=.5,fixed=False,mask=mask1,color=(0,0,1)), # these particles are free, subject to dynamics sphere(center=(6,0,4),radius=.5,fixed=False,mask=mask3,color=(1,0,0)), sphere(center=(6,0,6),radius=.5,fixed=False,mask=mask2,color=(0,1,0)), # fixed: particle's positionin space will not change (support) sphere(center=(9,0,0),radius=.5,fixed=True,mask=mask2,color=(0,1,0)), #fond immobile sphere(center=(9,0,2),radius=.5,fixed=False,mask=mask1,color=(0,0,1)), # these particles are free, subject to dynamics sphere(center=(9,0,4),radius=.5,fixed=False,mask=mask3,color=(1,0,0)), sphere(center=(9,0,6),radius=.5,fixed=False,mask=mask2,color=(0,1,0)), # fixed: particle's positionin space will not change (support) sphere(center=(12,0,0),radius=.5,fixed=True,mask=mask1,color=(0,0,1)), #fond immobile sphere(center=(12,0,2),radius=.5,fixed=False,mask=mask1,color=(0,0,1)), # these particles are free, subject to dynamics sphere(center=(12,0,4),radius=.5,fixed=False,mask=mask3,color=(1,0,0)), sphere(center=(12,0,6),radius=.5,fixed=False,mask=mask2,color=(0,1,0)), ]) # FUNCTIONAL COMPONENTS collider.avoidSelfInteractionMask = 0b00 # simulation loop -- see presentation for the explanation O.engines=[ ForceResetter(), InsertionSortCollider([Bo1_Sphere_Aabb()]), InteractionLoop( [Ig2_Sphere_Sphere_ScGeom()],# collision geometry [Ip2_FrictMat_FrictMat_FrictPhys()], # collision "physics" [Law2_ScGeom_FrictPhys_CundallStrack()] # contact law -- apply forces ), # Apply gravity force to particles. damping: numerical dissipation of energy. NewtonIntegrator(gravity=(0,0,-9.81),damping=0.1) ] # set timestep to a fraction of the critical timestep # the fraction is very small, so that the simulation is not too fast # and the motion can be observed O.dt=.5e-4*PWaveTimeStep() # save the simulation, so that it can be reloaded later, for experimentation O.saveTmp() so the three masks are : mask1=0b10 blue mask2=0b01 green mask3=0b11 red and the result for collider.avoidSelfInteractionMask 0b00full interaction 0b01full no interaction 0b10full interaction 0b11full no interaction according to the definiton of the mask "This mask is used to avoid the interactions inside a group of particles. To do so, the particles must have the exact same mask and that mask should have one bit in common with this avoidSelfInteractionMask as for their binary representations" this should not be ful or zero interactions??? where I made a mistake? -- You received this question notification because your team yade-users is an answer contact for Yade. ___ Mailing list: https://launchpad.net/~yade-users Post to : yade-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~yade-users More help : https://help.launchpad.net/ListHelp