Re: [GSOC2020][Boost.uBLAS] uBLAS DataFrame feature

Riccardo Rossi via ublas <[email protected]> Fri, 20 Mar 2020 15:24:41 +0100
Newsgroups gmane.comp.lib.boost.ublas
Message-ID <CAOVdALwsbjMUE50BE463hs8W3vdnB7KDeaQQMp1qH9xQ6oxoXQ@mail.gmail.com>
--===============2636322322108311846==
Content-Type: multipart/alternative; boundary="00000000000075fd2705a14a0c7a"

--00000000000075fd2705a14a0c7a
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Dear All,

i am just a user, however i want to point out that there is some
standardization effort aiming at c++23 (or 26).

If you eventually go for a redesign (and IMHO ublas has a need of it), i
really think it would make sense to take a look at

http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2020/p1385r5.pdf

sorry for the noise

bests
Riccardo




On Fri, Mar 20, 2020 at 3:08 PM Aniket Chowdhury via ublas <
[email protected]> wrote:

> Oh okay. GCC 10 is supposed to have the support for Ranges. The beta
> version supports Ranges and os going to get released in April. But, I gue=
ss
> we can avoid that if they don't. Thanks.
>
> On Fri, 20 Mar 2020, 19:35 Cem Bassoy via ublas, <[email protected]>
> wrote:
>
>> Hello Aniket,
>>
>> I cannot tell you which direction is the best for you. However, I
>> recommend a topic that you are really interested in and that you want to
>> continue even after GSOC.
>>
>> Clang and GCC still do not officially support Ranges - so I would leave
>> that out (https://en.cppreference.com/w/cpp/compiler_support).
>> Right now we should postpone the discussion of concepts for the tensor
>> type.
>>
>> Best,
>> CB
>>
>> Am Fr., 20. M=C3=A4rz 2020 um 13:54 Uhr schrieb Aniket Chowdhury via ubl=
as <
>> [email protected]>:
>>
>>> Hey Cem.
>>> I went through the draft proposal and had some questions.
>>>
>>> Which direction do you think I should pursue? I am more inclined toward=
s
>>> refactoring the enitre data_frame because if I believe correctly uBlas =
is
>>> moving towards C++20. Should I stick with ETs or can I use Ranges and
>>> Concepts?
>>>
>>> I was thinking to stick to standard C++20 Ranges only instead of Eric
>>> Neibler's One Ranges v3 library considering std to be more relevant.
>>>
>>>
>>>
>>> On Wed, 18 Mar 2020, 23:49 Aniket Chowdhury, <
>>> [email protected]> wrote:
>>>
>>>> Hey Cem.
>>>> Thanks for replying. Will do the needful and get back to you.
>>>> I understand that the proposal could do with a few more code examples.
>>>> Thanks.
>>>>
>>>> On Wed, Mar 18, 2020 at 8:15 PM Cem Bassoy via ublas <
>>>> [email protected]> wrote:
>>>>
>>>>> Hi Aniket,
>>>>>
>>>>> thanks for considering Boost/uBLAS. Your potential mentor is David. I=
f
>>>>> he does not respond, just follow the instructions on the GSoC page an=
d
>>>>> upload your proposal.
>>>>>
>>>>> Please note that we appreciate concrete (with code samples), realisti=
c
>>>>> (regarding time) and referring (to previous or pull requests) proposa=
ls.
>>>>> Concrete examples inside the proposal will help us to understand inte=
ntion
>>>>> and it will demonstrate your experience and expertise.
>>>>>
>>>> I am pretty cobfident with the timeline that I have provided with.
>>> Again, regarding code examples should I add them for both C++20 and/or =
ET?
>>>
>>>>
>>>>> Additionally, I advise to read
>>>>>
>>>>>    - previous gsoc discussions on this or on the general boost
>>>>>    mailing list
>>>>>    - former gsoc student projects and proposals
>>>>>
>>>>> to have a good feeling of the requirements.
>>>>>
>>>>> Best,
>>>>> Cem
>>>>>
>>>>>
>>>>>
>>>>> Am Mo., 16. M=C3=A4rz 2020 um 23:15 Uhr schrieb Aniket Chowdhury via =
ublas <
>>>>> [email protected]>:
>>>>>
>>>>>> Hi,
>>>>>> My name is Aniket Chowdhury
>>>>>> <https://github.com/aniket-chowdhury?tab=3Drepositories> and I am
>>>>>> second-year undergraduate student.
>>>>>>
>>>>>> I wish to implement the DataFrame library for Boost. I have made the
>>>>>> project proposal and am attaching the same.
>>>>>> As, this project is an expansion of the previous project
>>>>>> <https://github.com/BoostGSoC19/data_frame> there are a few
>>>>>> directions that I would like to work in whichever adds more to the p=
roject.
>>>>>>
>>>>>> 1. We could be to keep the existing code base as it is and implement
>>>>>> new features on top of it.
>>>>>> 2. We could try to restructure the code into *Modules*(C++20
>>>>>> feature) and then implement the features.
>>>>>> 3. Or, we could restructure the code without ET but rather using *C+=
+20
>>>>>> One Ranges*. This makes more sense to me as I believe that uBlas is
>>>>>> being ported to C++20.
>>>>>>
>>>>>> The DataFrame would include the following features:
>>>>>> 1. All the features already present(union, combine, join).
>>>>>> 2. Read/write from *DataFrame using JSON*(boost::property_tree to
>>>>>> DataFrame)
>>>>>> 3. Operator support for addition, subtraction, multiplication,
>>>>>> division, modulo and power, etc as well as support for comparison
>>>>>> operators.
>>>>>> 4. Functions to perform apply, apply_element_wise, aggregate,
>>>>>> transform and expand on a given DataFrame.
>>>>>> 5. Data analysis tools for standard deviation, variance, mean, etc.
>>>>>> 6. Re-indexing methods like replace, duplicate, filter, etc.
>>>>>> 7. Reshaping methods for sorting, append, pivot, etc.
>>>>>>
>>>>> Also, could you tell me if I am on the right track regarding the free
>>> form functions that Boost is looking for?
>>>
>>>>
>>>>>> *Full Details* of the same can be found in the *Project Proposal*.
>>>>>>
>>>>>> I have been in contact with David Bellot for the past week regarding
>>>>>> GSoC. I have completed the first draft of the competency check and s=
ent the
>>>>>> same to him. I would love to work  I am requesting him to be assigne=
d as a
>>>>>> mentor for the same.
>>>>>> *PFA: *The Project Proposal
>>>>>> <https://docs.google.com/document/d/1wyegbUEbpOopaQSWtFd0a_ch4QeIERK=
XGVX6GJSSdBo/edit?usp=3Dsharing>(linked
>>>>>> in case the attachment fails)
>>>>>>
>>>>> Here was the old proposal.
>>>
>>>>
>>>>>> This is an official application for the GSoC' 20. I am open to any
>>>>>> and all suggestions.
>>>>>>
>>>>>> Aniket Chowdhury
>>>>>> _______________________________________________
>>>>>> ublas mailing list
>>>>>> [email protected]
>>>>>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>>>>>> Sent to: [email protected]
>>>>>>
>>>>> _______________________________________________
>>>>> ublas mailing list
>>>>> [email protected]
>>>>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>>>>> Sent to: [email protected]
>>>>>
>>>> _______________________________________________
>>> ublas mailing list
>>> [email protected]
>>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>>> Sent to: [email protected]
>>>
>> _______________________________________________
>> ublas mailing list
>> [email protected]
>> https://lists.boost.org/mailman/listinfo.cgi/ublas
>> Sent to: [email protected]
>>
> _______________________________________________
> ublas mailing list
> [email protected]
> https://lists.boost.org/mailman/listinfo.cgi/ublas
> Sent to: [email protected]
>


--=20


*Riccardo Rossi*

PhD, Civil Engineer


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

Associate Professor at Universitat Polit=C3=A8cnica de Catalunya, Barcelona=
Tech
(UPC)

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


C/ Gran Capit=C3=A0, s/n, Campus Nord UPC, Building C1, First Floor

08034 =E2=80=93 Barcelona =E2=80=93 Spain =E2=80=93 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=C3=B3n tractades amb l=
a
finalitat de mantenir el contacte professional entre CIMNE i voste. Podra
exercir els drets d'acc=C3=A9s, rectificaci=C3=B3, cancel=C2=B7laci=C3=B3 i=
 oposici=C3=B3,
dirigint-se a [email protected]. La utilitzaci=C3=B3 de la seva adre=C3=
=A7a 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=C3=B3 i el Comer=C3=
=A7
Electronic.

 Imprimiu aquest missatge, nom=C3=A9s si =C3=A9s estrictament necessari.
<http://www.cimne.com/>

--00000000000075fd2705a14a0c7a
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr"><div>Dear All,</div><div><br></div><div>i am just a user, =
however i want to point out that there is some standardization effort aimin=
g at c++23 (or 26).</div><div><br></div><div>If you eventually go for a red=
esign (and IMHO ublas has a need of it), i really think it would make sense=
 to take a look at <br></div><div><br></div><div><a href=3D"http://www.open=
-std.org/jtc1/sc22/wg21/docs/papers/2020/p1385r5.pdf">http://www.open-std.o=
rg/jtc1/sc22/wg21/docs/papers/2020/p1385r5.pdf</a></div><div><br></div><div=
>sorry for the noise <br></div><div><br></div><div>bests</div><div>Riccardo=
<br></div><div><br></div><div><br></div><div><br></div></div><br><div class=
=3D"gmail_quote"><div dir=3D"ltr" class=3D"gmail_attr">On Fri, Mar 20, 2020=
 at 3:08 PM Aniket Chowdhury via ublas &lt;<a href=3D"mailto:[email protected]=
ost.org">[email protected]</a>&gt; wrote:<br></div><blockquote class=3D=
"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(2=
04,204,204);padding-left:1ex"><div dir=3D"auto">Oh okay. GCC 10 is supposed=
 to have the support for Ranges. The beta version supports Ranges and os go=
ing to get released in April. But, I guess we can avoid that if they don&#3=
9;t. Thanks.=C2=A0</div><br><div class=3D"gmail_quote"><div dir=3D"ltr" cla=
ss=3D"gmail_attr">On Fri, 20 Mar 2020, 19:35 Cem Bassoy via ublas, &lt;<a h=
ref=3D"mailto:[email protected]" target=3D"_blank">[email protected]=
g</a>&gt; wrote:<br></div><blockquote class=3D"gmail_quote" style=3D"margin=
:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"=
><div dir=3D"ltr"><div>Hello Aniket,</div><div><br></div><div>I cannot tell=
 you which direction is the best for you. However, I recommend a topic that=
 you are really interested in and that you want to continue even after GSOC=
. <br></div><div><br></div><div>Clang and GCC still do not officially suppo=
rt Ranges - so I would leave that out (<a href=3D"https://en.cppreference.c=
om/w/cpp/compiler_support" rel=3D"noreferrer" target=3D"_blank">https://en.=
cppreference.com/w/cpp/compiler_support</a>).<br></div><div>Right now we sh=
ould postpone the discussion of concepts for the tensor type.<br></div><div=
><br></div><div>Best,</div><div>CB<br></div><br><div class=3D"gmail_quote">=
<div dir=3D"ltr" class=3D"gmail_attr">Am Fr., 20. M=C3=A4rz 2020 um 13:54=
=C2=A0Uhr schrieb Aniket Chowdhury via ublas &lt;<a href=3D"mailto:ublas@li=
sts.boost.org" rel=3D"noreferrer" target=3D"_blank">[email protected]</=
a>&gt;:<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px =
0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=
=3D"auto">Hey Cem.=C2=A0<div dir=3D"auto">I went through the draft proposal=
 and had some questions.<div dir=3D"auto"><br></div><div dir=3D"auto">Which=
 direction do you think I should pursue? I am more inclined towards refacto=
ring the enitre data_frame because if I believe correctly uBlas is moving t=
owards C++20. Should I stick with ETs or can I use Ranges and Concepts?=C2=
=A0</div><div dir=3D"auto"><br></div><div dir=3D"auto">I was thinking to st=
ick to standard C++20 Ranges only instead of Eric Neibler&#39;s One Ranges =
v3 library considering std to be more relevant.=C2=A0</div><div dir=3D"auto=
"><br></div></div><br><br><div class=3D"gmail_quote" dir=3D"auto"><div dir=
=3D"ltr" class=3D"gmail_attr">On Wed, 18 Mar 2020, 23:49 Aniket Chowdhury, =
&lt;<a href=3D"mailto:[email protected]" rel=3D"noreferrer" targ=
et=3D"_blank">[email protected]</a>&gt; wrote:<br></div><blockqu=
ote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px=
 solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr">Hey Cem.<div>Tha=
nks for replying. Will do the needful and get back to you.=C2=A0</div><div>=
I understand that the proposal could do with a few more code examples.=C2=
=A0</div><div>Thanks.</div></div><br><div class=3D"gmail_quote"><div dir=3D=
"ltr" class=3D"gmail_attr">On Wed, Mar 18, 2020 at 8:15 PM Cem Bassoy via u=
blas &lt;<a href=3D"mailto:[email protected]" rel=3D"noreferrer norefer=
rer" target=3D"_blank">[email protected]</a>&gt; wrote:<br></div><block=
quote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1=
px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div>Hi Aniket=
,</div><div><br></div><div>thanks for considering Boost/uBLAS. Your potenti=
al mentor is David. If he does not respond, just follow the instructions on=
 the GSoC page and upload your proposal.</div><div><br></div><div>Please no=
te that we appreciate concrete (with code samples), realistic (regarding ti=
me) and referring (to previous or pull requests) proposals. Concrete exampl=
es inside the proposal will help us to understand intention and it will dem=
onstrate your experience and expertise. <br></div></div></blockquote></div>=
</blockquote></div><div dir=3D"auto">I am pretty cobfident with the timelin=
e that I have provided with. Again, regarding code examples should I add th=
em for both C++20 and/or ET?</div><div class=3D"gmail_quote" dir=3D"auto"><=
blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-l=
eft:1px solid rgb(204,204,204);padding-left:1ex"><div class=3D"gmail_quote"=
><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border=
-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div></=
div><div><br></div><div>Additionally, I advise to read </div><div><ul><li>p=
revious gsoc discussions on this or on the general boost mailing list</li><=
li>former gsoc student projects and proposals</li></ul><div>to have a good =
feeling of the requirements.<br></div></div><div><br></div><div>Best,</div>=
<div>Cem<br></div><div><br></div><div><br></div></div><br><div class=3D"gma=
il_quote"><div dir=3D"ltr" class=3D"gmail_attr">Am Mo., 16. M=C3=A4rz 2020 =
um 23:15=C2=A0Uhr schrieb Aniket Chowdhury via ublas &lt;<a href=3D"mailto:=
[email protected]" rel=3D"noreferrer noreferrer" target=3D"_blank">ubla=
[email protected]</a>&gt;:<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding=
-left:1ex"><div dir=3D"ltr">Hi,=C2=A0<div>My name is=C2=A0<a href=3D"https:=
//github.com/aniket-chowdhury?tab=3Drepositories" rel=3D"noreferrer norefer=
rer" target=3D"_blank">Aniket Chowdhury</a>=C2=A0and I am second-year under=
graduate student.</div><div><br></div><div>I wish to implement the DataFram=
e library for Boost. I have made the project proposal and am attaching the =
same.</div><div><div><div><div></div></div></div><div></div></div><div>As, =
this project is an expansion of the=C2=A0<a href=3D"https://github.com/Boos=
tGSoC19/data_frame" rel=3D"noreferrer noreferrer" target=3D"_blank">previou=
s project</a>=C2=A0there are a few directions that I would like to work in =
whichever adds more to the project.</div><div><br></div><div>1. We could be=
 to keep the existing code base as it is and implement new features on top =
of it.</div><div>2. We could try to restructure the code into=C2=A0<b>Modul=
es</b>(C++20 feature) and then implement the features.</div><div>3. Or, we =
could restructure the code without=C2=A0ET but rather using=C2=A0<b>C++20 O=
ne Ranges</b>. This makes more sense to me as I believe that uBlas is being=
 ported to C++20.</div><div><br></div><div>The DataFrame would include the =
following features:</div><div>1. All the features already present(union, co=
mbine, join).</div><div>2. Read/write from=C2=A0<b>DataFrame using JSON</b>=
(<span style=3D"background-color:transparent;color:rgb(36,39,41);font-famil=
y:&quot;Courier New&quot;;white-space:pre-wrap">boost::property_tree to Dat=
aFrame</span>)</div><div>3. Operator support for=C2=A0<span style=3D"backgr=
ound-color:transparent;color:rgb(0,0,0);font-family:&quot;Proxima Nova&quot=
;,sans-serif;font-weight:700;white-space:pre-wrap">addition, subtraction, m=
ultiplication, division, modulo and power, etc </span><span style=3D"backgr=
ound-color:transparent;color:rgb(0,0,0);font-family:&quot;Proxima Nova&quot=
;,sans-serif;white-space:pre-wrap">as well as support for comparison operat=
ors.</span></div><div>4. Functions to perform<span style=3D"background-colo=
r:transparent;font-variant-numeric:normal;font-variant-east-asian:normal;fo=
nt-family:&quot;Proxima Nova&quot;,sans-serif;color:rgb(0,0,0);vertical-ali=
gn:baseline;white-space:pre-wrap"> </span><span style=3D"background-color:t=
ransparent;font-variant-numeric:normal;font-variant-east-asian:normal;font-=
family:&quot;Proxima Nova&quot;,sans-serif;color:rgb(0,0,0);font-weight:700=
;vertical-align:baseline;white-space:pre-wrap">apply, apply_element_wise, a=
ggregate, transform and expand</span><span style=3D"background-color:transp=
arent;font-variant-numeric:normal;font-variant-east-asian:normal;font-famil=
y:&quot;Proxima Nova&quot;,sans-serif;color:rgb(0,0,0);vertical-align:basel=
ine;white-space:pre-wrap"> on a given DataFrame.</span><br></div>5. Data an=
alysis tools for=C2=A0<span id=3D"gmail-m_9168170079493276128m_-83013857996=
75461752m_-7376762986148225264gmail-m_-1255839329218212103m_-71497608123917=
61650gmail-m_-8094012315361310134gmail-m_1372898159282983835gmail-m_2539347=
862788583833gmail-m_-63067745495130108gmail-docs-internal-guid-7ab2eedf-7ff=
f-5324-29fc-108f6de832ec"><span style=3D"font-family:&quot;Proxima Nova&quo=
t;,sans-serif;color:rgb(0,0,0);background-color:transparent;font-weight:700=
;font-variant-numeric:normal;font-variant-east-asian:normal;vertical-align:=
baseline;white-space:pre-wrap">standard deviation, variance, mean, etc.</sp=
an></span><div>6. Re-indexing methods like=C2=A0<span id=3D"gmail-m_9168170=
079493276128m_-8301385799675461752m_-7376762986148225264gmail-m_-1255839329=
218212103m_-7149760812391761650gmail-m_-8094012315361310134gmail-m_13728981=
59282983835gmail-m_2539347862788583833gmail-m_-63067745495130108gmail-docs-=
internal-guid-97de9fde-7fff-ff47-7f83-0a08903e6481"><span style=3D"font-fam=
ily:&quot;Proxima Nova&quot;,sans-serif;color:rgb(0,0,0);background-color:t=
ransparent;font-weight:700;font-variant-numeric:normal;font-variant-east-as=
ian:normal;vertical-align:baseline;white-space:pre-wrap">replace, duplicate=
, filter, etc.</span></span></div><div>7. Reshaping methods for=C2=A0<span =
id=3D"gmail-m_9168170079493276128m_-8301385799675461752m_-73767629861482252=
64gmail-m_-1255839329218212103m_-7149760812391761650gmail-m_-80940123153613=
10134gmail-m_1372898159282983835gmail-m_2539347862788583833gmail-m_-6306774=
5495130108gmail-docs-internal-guid-ed39d162-7fff-e164-cd1e-4f0db510492b"><s=
pan style=3D"font-family:&quot;Proxima Nova&quot;,sans-serif;color:rgb(0,0,=
0);background-color:transparent;font-weight:700;font-variant-numeric:normal=
;font-variant-east-asian:normal;vertical-align:baseline;white-space:pre-wra=
p">sorting, append, pivot, etc.</span></span></div></div></blockquote></div=
></blockquote></div></blockquote></div><div dir=3D"auto"><span style=3D"fon=
t-family:sans-serif">Also, could you tell me if I am on the right track reg=
arding the free form functions that Boost is looking for?</span><br></div><=
div class=3D"gmail_quote" dir=3D"auto"><blockquote class=3D"gmail_quote" st=
yle=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padd=
ing-left:1ex"><div class=3D"gmail_quote"><blockquote class=3D"gmail_quote" =
style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);pa=
dding-left:1ex"><div class=3D"gmail_quote"><blockquote class=3D"gmail_quote=
" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);=
padding-left:1ex"><div dir=3D"ltr"><div><span style=3D"font-family:&quot;Pr=
oxima Nova&quot;,sans-serif;color:rgb(0,0,0);background-color:transparent;f=
ont-weight:700;font-variant-numeric:normal;font-variant-east-asian:normal;v=
ertical-align:baseline;white-space:pre-wrap"></span></div><div><font face=
=3D"Proxima Nova, sans-serif" color=3D"#000000"><span style=3D"white-space:=
pre-wrap"><br></span></font></div><div><font face=3D"Proxima Nova, sans-ser=
if" color=3D"#000000"><span style=3D"white-space:pre-wrap"><b>Full Details<=
/b> of the same can be found in the <b>Project Proposal</b>.<b><br></b></sp=
an></font><div><div><br></div><div>I have been in contact with David Bellot=
 for the past week regarding GSoC. I have completed the first draft of the =
competency check and sent the same to him. I would love to work=C2=A0 I am =
requesting him to be assigned as a mentor for the same.</div></div></div><d=
iv><div><b>PFA:=C2=A0</b><a href=3D"https://docs.google.com/document/d/1wye=
gbUEbpOopaQSWtFd0a_ch4QeIERKXGVX6GJSSdBo/edit?usp=3Dsharing" style=3D"font-=
weight:bold" rel=3D"noreferrer noreferrer" target=3D"_blank">The Project Pr=
oposal</a>(linked in case the attachment fails)<br></div></div></div></bloc=
kquote></div></blockquote></div></blockquote></div><div dir=3D"auto">Here w=
as the old proposal.=C2=A0</div><div class=3D"gmail_quote" dir=3D"auto"><bl=
ockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-lef=
t:1px solid rgb(204,204,204);padding-left:1ex"><div class=3D"gmail_quote"><=
blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-l=
eft:1px solid rgb(204,204,204);padding-left:1ex"><div class=3D"gmail_quote"=
><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border=
-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><div><d=
iv></div><div><br></div><div>This is an official application for the GSoC&#=
39; 20. I am open to any and all suggestions.=C2=A0</div><font color=3D"#88=
8888"><div><br></div></font></div><font color=3D"#888888"><div>Aniket Chowd=
hury</div></font></div>
_______________________________________________<br>
ublas mailing list<br>
<a href=3D"mailto:[email protected]" rel=3D"noreferrer noreferrer" targ=
et=3D"_blank">[email protected]</a><br>
<a href=3D"https://lists.boost.org/mailman/listinfo.cgi/ublas" rel=3D"noref=
errer noreferrer noreferrer" target=3D"_blank">https://lists.boost.org/mail=
man/listinfo.cgi/ublas</a><br>
Sent to: <a href=3D"mailto:[email protected]" rel=3D"noreferrer noreferr=
er" target=3D"_blank">[email protected]</a><br>
</blockquote></div>
_______________________________________________<br>
ublas mailing list<br>
<a href=3D"mailto:[email protected]" rel=3D"noreferrer noreferrer" targ=
et=3D"_blank">[email protected]</a><br>
<a href=3D"https://lists.boost.org/mailman/listinfo.cgi/ublas" rel=3D"noref=
errer noreferrer noreferrer" target=3D"_blank">https://lists.boost.org/mail=
man/listinfo.cgi/ublas</a><br>
Sent to: <a href=3D"mailto:[email protected]" rel=3D"noreferrer =
noreferrer" target=3D"_blank">[email protected]</a><br>
</blockquote></div>
</blockquote></div></div>
_______________________________________________<br>
ublas mailing list<br>
<a href=3D"mailto:[email protected]" rel=3D"noreferrer" target=3D"_blan=
k">[email protected]</a><br>
<a href=3D"https://lists.boost.org/mailman/listinfo.cgi/ublas" rel=3D"noref=
errer noreferrer" target=3D"_blank">https://lists.boost.org/mailman/listinf=
o.cgi/ublas</a><br>
Sent to: <a href=3D"mailto:[email protected]" rel=3D"noreferrer" target=
=3D"_blank">[email protected]</a><br>
</blockquote></div></div>
_______________________________________________<br>
ublas mailing list<br>
<a href=3D"mailto:[email protected]" rel=3D"noreferrer" target=3D"_blan=
k">[email protected]</a><br>
<a href=3D"https://lists.boost.org/mailman/listinfo.cgi/ublas" rel=3D"noref=
errer noreferrer" target=3D"_blank">https://lists.boost.org/mailman/listinf=
o.cgi/ublas</a><br>
Sent to: <a href=3D"mailto:[email protected]" rel=3D"noreferrer"=
 target=3D"_blank">[email protected]</a><br>
</blockquote></div>
_______________________________________________<br>
ublas mailing list<br>
<a href=3D"mailto:[email protected]" target=3D"_blank">[email protected]=
t.org</a><br>
<a href=3D"https://lists.boost.org/mailman/listinfo.cgi/ublas" rel=3D"noref=
errer" target=3D"_blank">https://lists.boost.org/mailman/listinfo.cgi/ublas=
</a><br>
Sent to: <a href=3D"mailto:[email protected]" target=3D"_blank">rrossi@c=
imne.upc.edu</a><br>
</blockquote></div><br clear=3D"all"><br>-- <br><div dir=3D"ltr" class=3D"g=
mail_signature"><div dir=3D"ltr"><div><div dir=3D"ltr"><div><div dir=3D"ltr=
"><div><div dir=3D"ltr"><div><div dir=3D"ltr"><p></p><div><div dir=3D"ltr">=
<p style=3D"padding:0px;margin:0px;font-family:Arial,Helvetica,sans-serif;c=
olor:rgb(0,73,150);line-height:18px"><b>Riccardo Rossi<br></b></p><p style=
=3D"padding:0px;margin:0px;font-family:Arial,Helvetica,sans-serif;color:rgb=
(120,120,120);font-size:12px;line-height:18px">

PhD, Civil Engineer</p><p style=3D"padding:0px;margin:0px;font-family:Arial=
,Helvetica,sans-serif;color:rgb(120,120,120);font-size:12px;line-height:18p=
x"><br></p><p style=3D"padding:0px;margin:0px;font-family:Arial,Helvetica,s=
ans-serif;color:rgb(120,120,120);font-size:12px;line-height:18px">member of=
 the Kratos Team: <a href=3D"http://www.cimne.com/kratos" target=3D"_blank"=
>www.cimne.com/kratos</a><br></p><p style=3D"padding:0px;margin:0px"><span =
style=3D"color:rgb(120,120,120);font-family:Arial,Helvetica,sans-serif;font=
-size:12px;line-height:18px">Associate Professor at Universitat Polit=C3=A8=
cnica de Catalunya, BarcelonaTech (UPC)</span><br>

</p><p style=3D"padding:0px;margin:0px;font-family:Arial,Helvetica,sans-ser=
if;color:rgb(120,120,120);font-size:12px;line-height:18px">Full Research Pr=
ofessor at International Center for Numerical Methods in Engineering (CIMNE=
)</p><p style=3D"padding:0px;margin:0px;font-family:Arial,Helvetica,sans-se=
rif;color:rgb(120,120,120);font-size:12px;line-height:18px">

<br></p><p style=3D"padding:0px;margin:0px;font-family:Arial,Helvetica,sans=
-serif;color:rgb(120,120,120);font-size:12px;line-height:18px">C/ Gran Capi=
t=C3=A0, s/n, Campus Nord UPC, Building C1, First Floor</p><p style=3D"padd=
ing:0px;margin:0px;font-family:Arial,Helvetica,sans-serif;color:rgb(120,120=
,120);font-size:12px;line-height:18px">

08034 =E2=80=93 Barcelona =E2=80=93 Spain =E2=80=93 <a href=3D"http://www.c=
imne.com" target=3D"_blank">www.cimne.com</a>=C2=A0 -=C2=A0</p><p style=3D"=
padding:0px;margin:0px;font-family:Arial,Helvetica,sans-serif;color:rgb(120=
,120,120);font-size:12px;line-height:18px">

<span>T</span>.<a value=3D"+34934010794">(+34) 93 401 56 96</a> skype: <b>r=
ougered4</b><br></p><p style=3D"padding:0px;margin:0px;font-family:Arial,He=
lvetica,sans-serif;color:rgb(120,120,120);font-size:12px;line-height:18px">=
=C2=A0</p><p style=3D"padding:0px;margin:0px;font-family:Arial,Helvetica,sa=
ns-serif;color:rgb(120,120,120);font-size:12px;line-height:11px">

<a href=3D"http://www.cimne.com/" target=3D"_blank"><img src=3D"https://web=
.cimne.upc.edu/groups/publicacions/signatura/logo_cimne_negre.png" width=3D=
"80" height=3D"17" border=3D"0"></a></p><p style=3D"font-size:medium;font-f=
amily:&quot;Times New Roman&quot;">

<a href=3D"https://www.facebook.com/cimne" target=3D"_blank"><img src=3D"ht=
tps://web.cimne.upc.edu/groups/publicacions/signatura/facebook-logo.png" wi=
dth=3D"24" height=3D"24" border=3D"0"></a><a href=3D"http://blog.cimne.com/=
" target=3D"_blank"><img src=3D"https://web.cimne.upc.edu/groups/publicacio=
ns/signatura/wordpress.png" width=3D"24" height=3D"24" border=3D"0"></a><a =
href=3D"http://vimeo.com/cimne" target=3D"_blank"><img src=3D"https://web.c=
imne.upc.edu/groups/publicacions/signatura/vimeo.png" width=3D"24" height=
=3D"24" border=3D"0"></a><a href=3D"http://www.youtube.com/user/CIMNEvideos=
" target=3D"_blank"><img src=3D"https://web.cimne.upc.edu/groups/publicacio=
ns/signatura/you-tube1.png" width=3D"24" height=3D"24" border=3D"0"></a><a =
href=3D"http://www.linkedin.com/company/cimne" target=3D"_blank"><img src=
=3D"https://web.cimne.upc.edu/groups/publicacions/signatura/linkedin-logo.p=
ng" width=3D"24" height=3D"24" border=3D"0"></a><a href=3D"https://twitter.=
com/cimne" target=3D"_blank"><img src=3D"https://web.cimne.upc.edu/groups/p=
ublicacions/signatura/twitter.png" width=3D"24" height=3D"24" border=3D"0">=
</a></p>

<p style=3D"padding:0px;margin:0px;font-family:Arial,Helvetica,sans-serif;c=
olor:rgb(155,155,155);font-size:10px;line-height:14px">Les
 dades personals contingudes en aquest missatge s=C3=B3n tractades amb la=
=20
finalitat de mantenir el contacte professional entre CIMNE i voste. Podra e=
xercir els drets d&#39;acc=C3=A9s, rectificaci=C3=B3, cancel=C2=B7laci=C3=
=B3 i oposici=C3=B3, dirigint-se a <a href=3D"mailto:[email protected]" t=
arget=3D"_blank">[email protected]</a>. La utilitzaci=C3=B3 de la seva ad=
re=C3=A7a 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=C3=B3 i el Comer=C3=A7 Electroni=
c.</p>

<p style=3D"padding:0px;margin:0px;font-family:Arial,Helvetica,sans-serif;c=
olor:rgb(4,155,2);font-size:10px;line-height:18px"><img src=3D"https://web.=
cimne.upc.edu/groups/publicacions/signatura/image002.png" width=3D"20" heig=
ht=3D"17">=C2=A0Imprimiu aquest missatge, nom=C3=A9s si =C3=A9s estrictamen=
t necessari.</p>

</div></div><span lang=3D"ES"><a href=3D"http://www.cimne.com/" target=3D"_=
blank"><span style=3D"font-size:10pt;font-family:Arial,sans-serif"></span><=
/a></span></div></div></div></div></div></div></div></div></div></div>

--00000000000075fd2705a14a0c7a--

--===============2636322322108311846==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline