field/simplecubicfield

Search:
Group by:

Types

SimpleCubicField[T] = object

Field on simple cubic Bravais lattice

<in need of documentation>

Procs

proc `*`[T](fx`gensym6, fy`gensym6: SimpleCubicField[T]): SimpleCubicField[T] {.
    inline.}
proc `*`[T](fx`gensym6: SimpleCubicField[T]; y`gensym6: T): SimpleCubicField[T] {.
    inline.}
proc `*`[T](x`gensym6: T; fy`gensym6: SimpleCubicField[T]): SimpleCubicField[T] {.
    inline.}
proc `*=`[T](fx`gensym6: var SimpleCubicField[T];
             fy`gensym6: SimpleCubicField[T]) {.inline.}
proc `*=`[T](fx`gensym6: var SimpleCubicField[T]; y`gensym6: T) {.inline.}
proc `+`[T](fx`gensym4, fy`gensym4: SimpleCubicField[T]): SimpleCubicField[T] {.
    inline.}
proc `+`[T](fx`gensym4: SimpleCubicField[T]; y`gensym4: T): SimpleCubicField[T] {.
    inline.}
proc `+`[T](x`gensym4: T; fy`gensym4: SimpleCubicField[T]): SimpleCubicField[T] {.
    inline.}
proc `+=`[T](fx`gensym4: var SimpleCubicField[T];
             fy`gensym4: SimpleCubicField[T]) {.inline.}
proc `+=`[T](fx`gensym4: var SimpleCubicField[T]; y`gensym4: T) {.inline.}
proc `-`[T](fx`gensym5, fy`gensym5: SimpleCubicField[T]): SimpleCubicField[T] {.
    inline.}
proc `-`[T](fx`gensym5: SimpleCubicField[T]; y`gensym5: T): SimpleCubicField[T] {.
    inline.}
proc `-`[T](x`gensym5: T; fy`gensym5: SimpleCubicField[T]): SimpleCubicField[T] {.
    inline.}
proc `-=`[T](fx`gensym5: var SimpleCubicField[T];
             fy`gensym5: SimpleCubicField[T]) {.inline.}
proc `-=`[T](fx`gensym5: var SimpleCubicField[T]; y`gensym5: T) {.inline.}
proc `/`[T](fx`gensym7, fy`gensym7: SimpleCubicField[T]): SimpleCubicField[T] {.
    inline.}
proc `/`[T](fx`gensym7: SimpleCubicField[T]; y`gensym7: T): SimpleCubicField[T] {.
    inline.}
proc `/`[T](x`gensym7: T; fy`gensym7: SimpleCubicField[T]): SimpleCubicField[T] {.
    inline.}
proc `/=`[T](fx`gensym7: var SimpleCubicField[T];
             fy`gensym7: SimpleCubicField[T]) {.inline.}
proc `/=`[T](fx`gensym7: var SimpleCubicField[T]; y`gensym7: T) {.inline.}
proc `:=`[T](f: var SimpleCubicField[T]; value: T) {.inline.}

Set all field values to given scalar value

<in need of documentation>

proc `=copy`[T](fx: var SimpleCubicField[T]; fy: SimpleCubicField[T]) {.inline.}

Copy all field values from another field

<in need of documentation>

proc `[]`[T](f: SimpleCubicField[T]; n: SomeInteger): SIMXVec[T] {.inline.}

Access field value at given local site

This is for testing; it is most certainly not optimal or efficient <in need of documentation>

proc `[]=`[T](f: var SimpleCubicField[T]; n: SomeInteger; value: SIMXVec[T]) {.
    inline.}

Set field value at given local site

This is for testing; it is most certainly not optimal or efficient <in need of documentation>

proc conformable[T](fx, fy: SimpleCubicField[T])

Check if two fields are conformable (i.e., defined on the same lattice)

<in need of documentation>

proc lattice[T](f: SimpleCubicField[T]): SimpleCubicLattice

Return lattice associated with field

<in need of documentation>

proc newField(lattice: SimpleCubicLattice; T: typedesc): SimpleCubicField[T]

Create new field on simple cubic Bravais lattice

<in need of documentation>

Templates

template defineBinaryOperations(op: untyped; ope: untyped)
template sites[T](f: SimpleCubicField[T]; n: untyped; work: untyped): untyped

Iterate over all local sites of field

<in need of documentation>