Christoph Kords
1c2c9b8436
ip neighborhood was screwed up for spectral solver as of rev 2332 due to new "mesh_spectral_ipNeighborhood": used to have fastest index in z direction although it should be in x direction!
...
also removed output of node twins in "mesh_tell_statistics" when using spectral solver, since not allocated
2013-05-07 17:50:58 +00:00
Christoph Kords
fb5f94812f
corrected format strings in mesh_read_meshfile and mesh_write_meshfile
2013-05-07 13:27:51 +00:00
Christoph Kords
c7f987a3c1
"unitlength" parameter, which determines the physical size of the mesh, now available as a global mesh variable "mesh_unitlength" and written to the .mesh file during init.
...
Hence, it is available to the marc_deformedGeometry.py script via "mesh_init_postprocessing()" and "mesh_get_unitlength()", so no need for setting the scaling of the displacement vectors explicitly through an option; now displacements and nodal positions are always consistent
2013-05-07 13:06:29 +00:00
Martin Diehl
2a5dfbbfa0
removed #define Marc and substituted #ifdef Marc by #ifdef Marc4DAMASK which is defined by either the submit scripts or DAMASK_marcXXXX.f90
2013-04-30 09:49:30 +00:00
Christoph Kords
cc72c0b17b
added two new scripts:
...
"marc_extractData" is a simple variant of the "postResult" script that extracts all data from a macro *.t16 file (quadratic elements not yet supported) and writes it into an asciitable
"addDataToGeometry" searches for corresponding *.txt and *.vtk file in a given directory and adds the data from the *.txt file as SCALARS to the *.vtk file
first script needed an additional function in mesh that returns the corresponding node of a given ip in a specific element
2013-04-28 20:56:17 +00:00
Martin Diehl
f18c6c5903
fixed bug causing no fluctuation in case of using with 3Dvisualize
2013-04-25 14:43:20 +00:00
Christoph Kords
650b7ef4ac
added python script that produces vtk files with the (node based and ip based) deformed mesh from marc output file
2013-04-23 18:30:56 +00:00
Philip Eisenlohr
49ef6d7193
spectral_build_neighborhood now "hidden" in spectral compile part. (should not interfere with Marc/Abaqus compile anymore)
2013-04-22 09:01:58 +00:00
Christoph Kords
ca99274a5d
fluxes now always periodic for spectral solver, no need to explicitly state this in the geom file by use of "periodic" keyword
2013-04-22 08:32:51 +00:00
Christoph Kords
60fa91be9a
calculation of cellnode positions now available in python via damask.core
...
first call damask.core.mesh.mesh_init_postprocessing(meshfilename) to initialize all necessary mesh variables
then damask.core.mesh.mesh_build_cellnodes(nodes) calculates the cellnode positions for a given list of node positions
the meshfile that is needed for the init is created automatically by mesh_init in DAMASK
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For marc simulations, run
./code/setup/setup_code.sh
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2013-04-21 18:48:59 +00:00
Philip Eisenlohr
e8f238a413
added specialized ipNeighborhood calculation for spectral solver case
2013-04-19 16:04:20 +00:00
Christoph Kords
12760026a4
last version still did not compile: IO_write_jobFile was not used by mesh_init
2013-04-19 13:02:37 +00:00
Christoph Kords
55bc741d1d
last version did not compile: fixed small typo in mesh_init
2013-04-19 12:59:45 +00:00
Martin Diehl
4bc5e6717b
fixed small bug when calculating mesh_Ncells
2013-04-19 12:41:06 +00:00
Christoph Kords
103c770ee6
fixed bug in cell generation: "FE_Ncellnodes" was not correct for elem type 17 and 136
...
too much memory allocated for mesh_cell
2013-04-18 17:56:14 +00:00
Martin Diehl
6b46a9c338
introduced output of initial geometry (vtk file) to mesh
2013-04-18 16:40:49 +00:00
Martin Diehl
8b2d9d8155
further improvements on implementing the plain mode
2013-04-16 17:07:27 +00:00
Christoph Kords
2a6ac44496
Major restructuring of mesh.f90 due to introduction of "cells". A cell is the volume (area in 2D elements) that surrounds an ip. It is described by up to 8 cell nodes and is used to calculate ip volume, area, and face normals. It can also be used to generate a mesh for e.g. paraview that contains ip output as cell centered data.
...
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For marc simulations, run
./code/setup/setup_code.sh
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
2013-04-15 08:13:20 +00:00
Christoph Kords
eaccf88e12
fixed bug that was introduced in the element type mapping in version 2305
2013-04-10 13:22:02 +00:00
Martin Diehl
ddcc795461
allowed arbitrary grid (formerly know as resolution), i.e. any integer>1 in each dimension is possible.
...
removed square root correction for divergence (doesn't make sense)
fixed FFT debug of spectral solver
2013-04-10 10:19:16 +00:00
Christoph Kords
4338cd13bc
- added element type 54 for macro (2d 8node 4ip reduced integration)
...
- automatically raising error for unknown element type inside mapping function
2013-04-10 09:38:40 +00:00
Christoph Kords
338e338c9a
- fixed bug in volume calculation of 2d elements
...
- subroutine "mesh_build_ipVolumes" uses openmp parallelization
2013-04-10 08:24:53 +00:00
Christoph Kords
d80d416c32
2d elements now have a volume corresponding to a thickness of 1; used to have zero volume
...
now also 2d elements can be used with nonlocal model
2013-04-09 18:07:30 +00:00
Martin Diehl
7b5a202e8c
enabled alternative (and soon standard) keywords grid (resolution) and size (dimension).
...
removed errors for odd resolution
2013-04-08 14:22:32 +00:00
Martin Diehl
39a70e8a19
fixed bug in coordinate calculation when no average F was given (scaled wrong by ncp_elems**2)
...
other changes: just polishing + some more comments
2013-03-27 12:28:55 +00:00
Christoph Kords
b6aecdac17
corrected debugging output of node twins
2013-03-27 10:25:37 +00:00
Franz Roters
02f092492e
updated copyright header
2013-03-22 17:35:05 +00:00
Philip Eisenlohr
5b96c1d62a
scaling of deformation gradient fluctuations now possible in x,y,z independently (give array).
2013-03-22 15:09:55 +00:00
Martin Diehl
59da88460e
preparation for introduction of plain mode and restructuring of calc modes for CPFEM_general
2013-02-27 20:41:14 +00:00
Pratheek Shanthraj
07ff1f7c93
reporting current time for most module inits
2013-02-25 16:34:59 +00:00
Martin Diehl
f0b4281400
removed unused variables, added pure statements, and declared external functions as external (using gfortrans debug option)
2013-02-11 10:43:45 +00:00
Martin Diehl
a89efaa4a6
added missing bracket and substituted one more forall by do loop
2013-02-09 08:23:47 +00:00
Martin Diehl
e644c6dbc5
improved reading in of values, now only warnings in case of problematic entries in material.config
...
divergence calculation sqrt scaling optionally introduced for basic scheme spectral solver
2013-02-08 15:55:53 +00:00
Franz Roters
eacf6f1196
now also fixed the abaqus part
2013-02-07 10:45:10 +00:00
Franz Roters
a036f1eb3a
as some IO functions are no longer pure I changed some forall statements to ordinary do loops
2013-02-07 08:52:47 +00:00
Philip Eisenlohr
79e7deca55
introduced dedicated calculation of interface normals in IP neighborhood. (2D elements did not work so far..!)
...
fixed definitions of some (2D) interface planes to have all normals pointing outward.
removed "int, private :: i" defined for spectral compilation.
2013-02-05 13:27:37 +00:00
Martin Diehl
c2495d0d4a
changed misplaced private to public statement and renamed qsort to math_qsort
2013-02-01 07:26:21 +00:00
Martin Diehl
e74b5da19a
changed all remaining routines to fortran-fast arrays (geometry reconstruction etc.)
...
changed all remaining routines in f2py to more clever determination of array size (requires f2py >= 2.0)
enabled 3D visualize to work with odd resolution by switching to linear reconstruction
PLEASE NOTE: Redefinition of routines for f2py might cause trouble -> DELETE DAMASK_ROOT/lib/damask/core.so in this case
further changes: added pure statement where possible, polished, unified use of "Q" for "Quaternion" and reordered math to have similar routines together
2013-01-31 16:28:08 +00:00
Martin Diehl
6ce78cf806
gfortran now detects "call flush" statements, removed the last of them in mesh.f90
2013-01-23 21:50:01 +00:00
Martin Diehl
c6a79d2b3d
divergence_correction for basic solver variants has now 3 possibilities:
...
0: uncorrected, slope per sidelength (physical dimension) e = res/dim
1: corrected by sidelength, slope per unitlength e = res/1
2: corrected such that distance between FPs e = 1
alway regarding the medium length of x,y,z direction
2013-01-16 10:40:53 +00:00
Martin Diehl
19d86ca06a
removed unnecsessary omp statements, removed one transpose in constitutitve
2013-01-08 11:09:20 +00:00
Martin Diehl
b1f28ba5e7
made restart working for all solvers and added corresponding test
...
corrected error handling for FFT based function in case of odd numbers etc.
2012-12-14 17:30:22 +00:00
Franz Roters
d4a59541ad
removed write statements which were introduced for "debuging"
2012-11-19 15:12:11 +00:00
Philip Eisenlohr
d9a98417ca
switched element library to geomType based.
...
saves to copy same geometry description for different elements that are essentially similar regarding the IP number but differ in total node count.
introduced quadratic tetrahedron (Marc element 127 -- element 157 might also work, but did not perform well in fully elastic calc so far)
2012-11-15 22:45:20 +00:00
Martin Diehl
7e683ca7c3
removed coordinates from call to CPFEM_general and introduced direct storage of coordinates to mesh_ipCoordinates
2012-11-14 14:38:10 +00:00
Christoph Kords
3c53f3ec9a
last version contains buggy mesh.f90; corrected typo in initialization
2012-11-09 07:52:44 +00:00
Christoph Kords
366ac28694
parallelized mesh_build_subNodeCoords and mesh_build_ipCoordinates
2012-11-09 07:47:14 +00:00
Martin Diehl
5214b93342
fixed bug when reading in geometry for spectral solver
2012-11-06 17:16:01 +00:00
Christoph Kords
5b6baa7c0d
introduced distinction between ip coordinates and cell center coordinates; the former can be globally calculated by subroutine mesh_build_ipCoordinates, the latter locally by the function mesh_cellCenterCoordinates; renamed mesh_ipCenterOfGravity to mesh_ipCordinates
2012-11-06 14:37:13 +00:00
Christoph Kords
93cc466749
third entry in mesh_ipNeighborhood stores the neighbor_index that points from each neighbor back to the central ip; needed in nonlocal model
2012-10-24 14:03:02 +00:00