OpenRadioss 2025.1.11
OpenRadioss project
Loading...
Searching...
No Matches
mumps_io.h
Go to the documentation of this file.
1/*
2 *
3 * This file is part of MUMPS 5.5.1, released
4 * on Tue Jul 12 13:17:24 UTC 2022
5 *
6 *
7 * Copyright 1991-2022 CERFACS, CNRS, ENS Lyon, INP Toulouse, Inria,
8 * Mumps Technologies, University of Bordeaux.
9 *
10 * This version of MUMPS is provided to you free of charge. It is
11 * released under the CeCILL-C license
12 * (see doc/CeCILL-C_V1-en.txt, doc/CeCILL-C_V1-fr.txt, and
13 * https://cecill.info/licences/Licence_CeCILL-C_V1-en.html)
14 *
15 */
16#ifndef MUMPS_IO_H
17#define MUMPS_IO_H
18#include "mumps_common.h"
19#include "mumps_c_types.h"
20/*
21 * Two character arrays that are used by low_level_init_prefix
22 * and low_level_init_tmpdir to store intermediate file names.
23 * They are passed to mumps_io_basic.c inside the routine
24 * mumps_low_level_init_ooc_c.
25 * Note that both low_level_init_prefix and low_level_init_tmpdir
26 * MUST be called before low_level_init_ooc_c.
27 *
28 */
29#define MUMPS_OOC_PREFIX_MAX_LENGTH 63
30#define MUMPS_OOC_TMPDIR_MAX_LENGTH 255
35#define MUMPS_DUMPRHSBINARY_C \
36 F_SYMBOL(dumprhsbinary_c,DUMPRHSBINARY_C)
38 MUMPS_INT *LRHS, float *RHS, MUMPS_INT *K35,
39 char *filename, mumps_ftnlen l1 );
40#define MUMPS_DUMPMATBINARY_C \
41 F_SYMBOL(dumpmatbinary_c,DUMPMATBINARY_C)
43 MUMPS_INT* K35, MUMPS_INT *irn, MUMPS_INT *jcn,
44 void *A, MUMPS_INT *is_A_provided,
45 char *file_name, mumps_ftnlen l1 );
46#define MUMPS_LOW_LEVEL_INIT_PREFIX \
47 F_SYMBOL(low_level_init_prefix,LOW_LEVEL_INIT_PREFIX)
48void MUMPS_CALL
50#define MUMPS_LOW_LEVEL_INIT_TMPDIR \
51 F_SYMBOL(low_level_init_tmpdir,LOW_LEVEL_INIT_TMPDIR)
52void MUMPS_CALL
56#define MUMPS_LOW_LEVEL_INIT_OOC_C \
57 F_SYMBOL(low_level_init_ooc_c,LOW_LEVEL_INIT_OOC_C)
58void MUMPS_CALL
59MUMPS_LOW_LEVEL_INIT_OOC_C(MUMPS_INT *_myid, MUMPS_INT *total_size_io,MUMPS_INT *size_element,
60 MUMPS_INT *async, MUMPS_INT *k211, MUMPS_INT *nb_file_type,
61 MUMPS_INT *flag_tab , MUMPS_INT* ierr);
62#define MUMPS_TEST_REQUEST_C \
63 F_SYMBOL(test_request_c,TEST_REQUEST_C)
64void MUMPS_CALL
66#define MUMPS_WAIT_REQUEST \
67 F_SYMBOL(wait_request,WAIT_REQUEST)
68void MUMPS_CALL
69MUMPS_WAIT_REQUEST(MUMPS_INT *request_id,MUMPS_INT *ierr);
70#define MUMPS_LOW_LEVEL_WRITE_OOC_C \
71 F_SYMBOL(low_level_write_ooc_c,LOW_LEVEL_WRITE_OOC_C)
72void MUMPS_CALL
73MUMPS_LOW_LEVEL_WRITE_OOC_C( const MUMPS_INT * strat_IO,
74 void * address_block,
75 MUMPS_INT * block_size_int1,
76 MUMPS_INT * block_size_int2,
77 MUMPS_INT * inode,
78 MUMPS_INT * request_arg,
79 MUMPS_INT * type,
80 MUMPS_INT * vaddr_int1,
81 MUMPS_INT * vaddr_int2,
82 MUMPS_INT * ierr);
83#define MUMPS_LOW_LEVEL_READ_OOC_C \
84 F_SYMBOL(low_level_read_ooc_c,LOW_LEVEL_READ_OOC_C)
85void MUMPS_CALL
86MUMPS_LOW_LEVEL_READ_OOC_C( const MUMPS_INT * strat_IO,
87 void * address_block,
88 MUMPS_INT * block_size_int1,
89 MUMPS_INT * block_size_int2,
90 MUMPS_INT * inode,
91 MUMPS_INT * request_arg,
92 MUMPS_INT * type,
93 MUMPS_INT * vaddr_int1,
94 MUMPS_INT * vaddr_int2,
95 MUMPS_INT * ierr);
96#define MUMPS_LOW_LEVEL_DIRECT_READ \
97 F_SYMBOL(low_level_direct_read,LOW_LEVEL_DIRECT_READ)
98void MUMPS_CALL
99MUMPS_LOW_LEVEL_DIRECT_READ(void * address_block,
100 MUMPS_INT * block_size_int1,
101 MUMPS_INT * block_size_int2,
102 MUMPS_INT * type,
103 MUMPS_INT * vaddr_int1,
104 MUMPS_INT * vaddr_int2,
105 MUMPS_INT * ierr);
106#define MUMPS_CLEAN_IO_DATA_C \
107 F_SYMBOL(clean_io_data_c,CLEAN_IO_DATA_C)
108void MUMPS_CALL
110#define MUMPS_GET_MAX_NB_REQ_C \
111 F_SYMBOL(get_max_nb_req_c,GET_MAX_NB_REQ_C)
112void MUMPS_CALL
114#define MUMPS_GET_MAX_FILE_SIZE_C \
115 F_SYMBOL(get_max_file_size_c,GET_MAX_FILE_SIZE_C)
116void MUMPS_CALL
117MUMPS_GET_MAX_FILE_SIZE_C(double * max_ooc_file_size);
118#define MUMPS_OOC_GET_NB_FILES_C \
119 F_SYMBOL(ooc_get_nb_files_c,OOC_GET_NB_FILES_C)
120void MUMPS_CALL
121MUMPS_OOC_GET_NB_FILES_C(const MUMPS_INT *type, MUMPS_INT *nb_files);
122#define MUMPS_OOC_GET_FILE_NAME_C \
123 F_SYMBOL(ooc_get_file_name_c,OOC_GET_FILE_NAME_C)
124void MUMPS_CALL
126 char* name, mumps_ftnlen l1);
127#define MUMPS_OOC_SET_FILE_NAME_C \
128 F_SYMBOL(ooc_set_file_name_c,OOC_SET_FILE_NAME_C)
129void MUMPS_CALL
131 char* name, mumps_ftnlen l1);
132#define MUMPS_OOC_ALLOC_POINTERS_C \
133 F_SYMBOL(ooc_alloc_pointers_c,OOC_ALLOC_POINTERS_C)
134void MUMPS_CALL
135MUMPS_OOC_ALLOC_POINTERS_C(MUMPS_INT *nb_file_type, MUMPS_INT *dim, MUMPS_INT *ierr);
136#define MUMPS_OOC_INIT_VARS_C \
137 F_SYMBOL(ooc_init_vars_c,OOC_INIT_VARS_C)
138void MUMPS_CALL
139MUMPS_OOC_INIT_VARS_C(MUMPS_INT *myid_arg, MUMPS_INT *size_element, MUMPS_INT *async,
140 MUMPS_INT *k211, MUMPS_INT *ierr);
141#define MUMPS_OOC_START_LOW_LEVEL \
142 F_SYMBOL(ooc_start_low_level,OOC_START_LOW_LEVEL)
143void MUMPS_CALL
145#define MUMPS_OOC_PRINT_STATS \
146 F_SYMBOL(ooc_print_stats,OOC_PRINT_STATS)
147void MUMPS_CALL
149#define MUMPS_OOC_REMOVE_FILE_C \
150 F_SYMBOL(ooc_remove_file_c,OOC_REMOVE_FILE_C)
151void MUMPS_CALL
152MUMPS_OOC_REMOVE_FILE_C(MUMPS_INT *ierr, char *name, mumps_ftnlen l1);
153#define MUMPS_OOC_END_WRITE_C \
154 F_SYMBOL(ooc_end_write_c,OOC_END_WRITE_C)
155void MUMPS_CALL
157#define MUMPS_OOC_IS_ASYNC_AVAIL \
158 F_SYMBOL(ooc_is_async_avail,OOC_IS_ASYNC_AVAIL)
159void MUMPS_CALL
161#endif /* MUMPS_IO_H */
#define N
#define NRHS
#define max(a, b)
Definition macros.h:21
we set the rigth hand side id RHS
#define mumps_ftnlen
#define MUMPS_INT8
#define MUMPS_INT
#define MUMPS_INLINE
#define MUMPS_CALL
#define MUMPS_GET_MAX_FILE_SIZE_C
Definition mumps_io.h:114
static char MUMPS_OOC_STORE_TMPDIR[MUMPS_OOC_TMPDIR_MAX_LENGTH]
Definition mumps_io.h:33
#define MUMPS_DUMPMATBINARY_C
Definition mumps_io.h:40
#define MUMPS_CLEAN_IO_DATA_C
Definition mumps_io.h:106
#define MUMPS_LOW_LEVEL_DIRECT_READ
Definition mumps_io.h:96
#define MUMPS_LOW_LEVEL_INIT_PREFIX
Definition mumps_io.h:46
#define MUMPS_OOC_END_WRITE_C
Definition mumps_io.h:153
static MUMPS_INT MUMPS_OOC_STORE_TMPDIRLEN
Definition mumps_io.h:34
#define MUMPS_OOC_START_LOW_LEVEL
Definition mumps_io.h:141
#define MUMPS_OOC_TMPDIR_MAX_LENGTH
Definition mumps_io.h:30
#define MUMPS_LOW_LEVEL_INIT_OOC_C
Definition mumps_io.h:56
#define MUMPS_OOC_INIT_VARS_C
Definition mumps_io.h:136
#define MUMPS_OOC_PREFIX_MAX_LENGTH
Definition mumps_io.h:29
#define MUMPS_TEST_REQUEST_C
Definition mumps_io.h:62
#define MUMPS_LOW_LEVEL_INIT_TMPDIR
Definition mumps_io.h:50
#define MUMPS_DUMPRHSBINARY_C
Definition mumps_io.h:35
static char MUMPS_OOC_STORE_PREFIX[MUMPS_OOC_PREFIX_MAX_LENGTH]
Definition mumps_io.h:31
#define MUMPS_OOC_PRINT_STATS
Definition mumps_io.h:145
static MUMPS_INT MUMPS_OOC_STORE_PREFIXLEN
Definition mumps_io.h:32
#define MUMPS_OOC_ALLOC_POINTERS_C
Definition mumps_io.h:132
MUMPS_INLINE MUMPS_INT mumps_convert_2fint_to_longlong(MUMPS_INT *, MUMPS_INT *, long long *)
Definition mumps_io.c:668
#define MUMPS_OOC_REMOVE_FILE_C
Definition mumps_io.h:149
#define MUMPS_LOW_LEVEL_READ_OOC_C
Definition mumps_io.h:83
#define MUMPS_WAIT_REQUEST
Definition mumps_io.h:66
#define MUMPS_OOC_SET_FILE_NAME_C
Definition mumps_io.h:127
#define MUMPS_OOC_GET_FILE_NAME_C
Definition mumps_io.h:122
#define MUMPS_OOC_GET_NB_FILES_C
Definition mumps_io.h:118
#define MUMPS_GET_MAX_NB_REQ_C
Definition mumps_io.h:110
#define MUMPS_LOW_LEVEL_WRITE_OOC_C
Definition mumps_io.h:70
#define MUMPS_OOC_IS_ASYNC_AVAIL
Definition mumps_io.h:157
*fortran !University of Stuttgart All rights reserved Inc All rights reserved ! $COPYRIGHT$ !Additional copyrights may follow ! $HEADER$ !WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING !Do ***not ***copy this file to the directory where your Fortran !fortran application is compiled unless it is absolutely necessary !Most !modern Fortran compilers now support the I command line flag
Definition mpif.h:26