Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

s_curl(3rheolef) [debian man page]

s_curl(3rheolef)						    rheolef-6.1 						  s_curl(3rheolef)

NAME
s_curl -- curl-like operator for the Stokes stream function computation SYNOPSIS
form(const space M, const space& V, "s_curl"); DESCRIPTION
Assembly the form associated to the s_curl operator on a finite element space V: / | b(xi,u) = | u.s_curl(xi) dx | / Omega The M and V space may be a either P1 or P2 finite element space. The M space is scalar-valued while the V is vector-valued. See also form(2) and space(2). For cartesian coordinate systems, this form coincide with the usual "curl" one (see curl(3)). In the axisymmetric case: / | (d xi d xi ) b(xi,u) = | (---- ur - ---- uz) r dr dz | (d z d r ) / Omega The b form is denoted as "s_curl", for Stokes stream function computation (see s_grad_grad(3)) as it is closely related to the "curl" oper- ator (see curl(3)), but differs by the r and 1/r factors, as: ( d (r xi) d xi ) curl(xi) = ( (1/r) -------- ; - -----) ( d r d z ) while ( d xi d xi ) s_curl(xi) = ( ---- ; - ---- ) ( d r d z ) Notice also that the differentiation is performed on the xi variable here: b(xi,u)=(s_curl(xi),u) while the "curl" form brings the differ- entiation on the u vector-valued variable: (curl(u),xi), i.e. a transpose formulation. ORIENTATION AND SIGN FIX
The (r,theta,z) coordinate system has positive orientation, thus (z,r,theta) and (z,r) are positive also. But (r,z,theta) and (r,z) are negative : the sign of s_curl is then inverted to obtain the same result as if (z,r) was used. EXAMPLE
The following piece of code build the form associated to the P1 approximation: geo g("square"); space M(g, "P1"); space V(g, "P1", "vector"); form a(M, V, "s_curl"); SEE ALSO
form(2), space(2), curl(3), s_grad_grad(3), curl(3) rheolef-6.1 rheolef-6.1 s_curl(3rheolef)

Check Out this Related Man Page

curl_easy_perform(3)						  libcurl Manual					      curl_easy_perform(3)

NAME
curl_easy_perform - perform a blocking file transfer SYNOPSIS
#include <curl/curl.h> CURLcode curl_easy_perform(CURL *easy_handle); DESCRIPTION
Invoke this function after curl_easy_init(3) and all the curl_easy_setopt(3) calls are made, and will perform the transfer as described in the options. It must be called with the same easy_handle as input as the curl_easy_init(3) call returned. curl_easy_perform(3) performs the entire request in a blocking manner and returns when done, or if it failed. For non-blocking behavior, see curl_multi_perform(3). You can do any amount of calls to curl_easy_perform(3) while using the same easy_handle. If you intend to transfer more than one file, you are even encouraged to do so. libcurl will then attempt to re-use the same connection for the following transfers, thus making the opera- tions faster, less CPU intense and using less network resources. Just note that you will have to use curl_easy_setopt(3) between the invokes to set options for the following curl_easy_perform. You must never call this function simultaneously from two places using the same easy_handle. Let the function return first before invoking it another time. If you want parallel transfers, you must use several curl easy_handles. While the easy_handle is added to a multi handle, it cannot be used by curl_easy_perform(3). RETURN VALUE
CURLE_OK (0) means everything was ok, non-zero means an error occurred as <curl/curl.h> defines - see libcurl-errors(3). If the CUR- LOPT_ERRORBUFFER(3) was set with curl_easy_setopt(3) there will be a readable error message in the error buffer when non-zero is returned. EXAMPLE
CURL *curl = curl_easy_init(); if(curl) { CURLcode res; curl_easy_setopt(curl, CURLOPT_URL, "http://example.com"); res = curl_easy_perform(curl); curl_easy_cleanup(curl); } SEE ALSO
curl_easy_init(3), curl_easy_setopt(3), curl_multi_add_handle(3), curl_multi_perform(3), libcurl-errors(3), libcurl 7.54.0 May 02, 2016 curl_easy_perform(3)
Man Page