ExodusII
6.05
|
#include <stddef.h>
#include <stdio.h>
#include "exodusII.h"
#include "exodusII_int.h"
#include "netcdf.h"
Functions | |
int | ex_put_coord (int exoid, const void *x_coor, const void *y_coor, const void *z_coor) |
int ex_put_coord | ( | int | exoid, |
const void * | x_coor, | ||
const void * | y_coor, | ||
const void * | z_coor | ||
) |
The function ex_put_coord() writes the nodal coordinates of the nodes in the model. The function ex_put_init() must be invoked before this call is made.
Because the coordinates are floating point values, the application code must declare the arrays passed to be the appropriate type (float or double) to match the compute word size passed in ex_create() or ex_open().
[in] | exoid | exodus file ID returned from a previous call to ex_create() or ex_open(). |
[in] | x_coor | The X-coordinates of the nodes. If this is NULL , the X-coordinates will not be written. |
[in] | y_coor | The Y-coordinates of the nodes. These are stored only if num_dim > 1; otherwise, pass in NULL . If this is NULL , the Y-coordinates will not be written. |
[in] | z_coor | The Z-coordinates of the nodes. These are stored only if num_dim > 2; otherwise, pass in NULL . If this is NULL , the Z-coordinates will not be written. |
The following will write the nodal coordinates to an open exodus file :
int error, exoid; // \comment{if file opened with compute word size of sizeof(float)} float x[8], y[8], z[8]; // \comment{write nodal coordinates values to database} x[0] = 0.0; y[0] = 0.0; z[0] = 0.0; x[1] = 0.0; y[1] = 0.0; z[1] = 1.0; x[2] = 1.0; y[2] = 0.0; z[2] = 1.0; x[3] = 1.0; y[3] = 0.0; z[3] = 0.0; x[4] = 0.0; y[4] = 1.0; z[4] = 0.0; x[5] = 0.0; y[5] = 1.0; z[5] = 1.0; x[6] = 1.0; y[6] = 1.0; z[6] = 1.0; x[7] = 1.0; y[7] = 1.0; z[7] = 0.0; error = ex_put_coord(exoid, x, y, z); // \comment{Do the same as the previous call in three separate calls} error = ex_put_coord(exoid, x, NULL, NULL); error = ex_put_coord(exoid, NULL, y, NULL); error = ex_put_coord(exoid, NULL, NULL, z);