espressomd-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ESPResSo-devel] lbboundary and slitpore constraint


From: Owen Hickey
Subject: Re: [ESPResSo-devel] lbboundary and slitpore constraint
Date: Thu, 12 Feb 2015 16:28:58 +0100

Hey all,
I would just like to mention that I reworked the way that constraints
work in ESPResSo such that they are classes. In the new version, which
I hope will get pulled into the master at some point soon, you only
need to define a new derived class of Shape which implements the
function calculate_dist. You also need to write a parsing function for
Tcl and some other functions, but overall the process of adding a new
constraint should be significantly easier. The git hash for that
version is a495452bba465280c77a81c11efb845a6cab2fa0.

Owen

On Thu, Feb 12, 2015 at 3:56 PM, Axel Arnold
<address@hidden> wrote:
>
> Am 12.02.2015 um 13:27 schrieb Harmanjit Singh <address@hidden>:
>
> Please tell me how to implement the distance function in C.  or point me to
> a source where i can learn that.
>
>
> If you want the slitpore geometry that is provided with Espresso, then you
> don’t need to implement it again. Otherwise, just use the current slitpore
> code as basis, you can easily find that by looking for occurrences of
> CONSTRAINT_SLITPORE.
>
> In the LB code, you just need to do the same thing as for the other
> constraints. Again, check e.g. for
> LB_BOUNDARY_WAL, which is the plain wall code. You should get the structure
> behind the code, just do the same for the slit. The files you need to look
> at are src/core/lb-boundaries.cpp and src/tcl/lb-boundaries_tcl.cpp, plus
> the respective headers to define a new constant for your constraint.
>
> If you want to contribute your changes, register with github.com, fork our
> repo espressomd/espresso and commit your changes to your copy. Then you can
> send us a pull request, which we will review.
>
> Best,
> Axel
>
>
> On Thu, Feb 12, 2015 at 3:40 PM, Georg Rempfer <address@hidden>
> wrote:
>>
>> What do you mean by slit pore? If you mean parallel plates, my previous
>> answer still holds:
>>
>> >> Is there a way to use lb fluid in slitpore? While I tried this the
>> >> simuation gave error that lbboundary does not accept the slitpore 
>> >> parameter.
>> >Yes. Read the User's Guide about lbboundary wall
>>
>> My suggestion to implement your boundary geometry in the C code was meant
>> for more complicated geometries.
>>
>> >> Is there a way to simulate lb fluid in only specific custom defined
>> >> boundaries? Like a U-tube.
>> >Yes. You might be able to construct your channel from several cylinder
>> > boundaries. If not you would have to implement a distance function for your
>> > boundary shape in the C code.
>>
>>
>> On Thu, Feb 12, 2015 at 7:33 AM, Harmanjit Singh <address@hidden>
>> wrote:
>>>
>>> Dear all,
>>> I have been using Espresso for a month now, I need it to see slitpore as
>>> LB BOundary, which is already not accepted as a valid LB boundary. So on
>>> suggestion of Georg Rempfer, I tried changing the source codes of the files,
>>> i went through the file_1013.pdf by Alex Arnold and then changed the LB
>>> boundaries.cpp and Lb boundaries.hpp and there Tcl counterparts. I am not
>>> professional coder, but after few tries I got the program to make and make
>>> install. It gives no errors now when I passed the slitpore as parameter to
>>> the lbboundary command. however I am not really sure it worked because the
>>> velocity is always zero when viewed via lbnode.
>>> Is there something that I am missing or something more that needs to be
>>> done?
>>> Thank You and Regards
>>> Harmanjit
>>> PS. Please let me know how and where to upload those changed files.
>>
>>
>
>
> ------------------------------------------------
> JP Dr. Axel Arnold
> ICP, Universität Stuttgart
> Allmandring 3
> 70569 Stuttgart, Germany
> Email: address@hidden
> Phone: +49 711 685 67609
>



reply via email to

[Prev in Thread] Current Thread [Next in Thread]