File: adsorbed_layer.c

package info (click to toggle)
mccode 3.5.19%2Bds5-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 1,113,256 kB
  • sloc: ansic: 40,697; python: 25,137; yacc: 8,438; sh: 5,405; javascript: 4,596; lex: 1,632; cpp: 742; perl: 296; lisp: 273; makefile: 226; fortran: 132
file content (29 lines) | stat: -rw-r--r-- 663 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
#include <math.h>

double Iq(
    double q,
    double second_moment,
    double adsorbed_amount,
    double density_shell,
    double radius,
    double volfraction,
    double sld_shell,
    double sld_solvent
);

#pragma acc routine seq
double Iq(
    double q,
    double second_moment,
    double adsorbed_amount,
    double density_shell,
    double radius,
    double volfraction,
    double sld_shell,
    double sld_solvent
) {
    double aa = ((sld_shell - sld_solvent) / density_shell * adsorbed_amount) / q;
    double bb = q * second_moment;
    double inten = 6.0e-02 * PI * volfraction * pow(aa, 2) * exp(-pow(bb, 2)) / radius;
    return inten;
}