Parent Directory
|
Revision Log
Links to HEAD: | (view) (annotate) |
Sticky Revision: |
Branch commit. Fixed problems with copyFromNumArray Removed version of setTaggedValueFromCPP() which required DataArrayView. Updated tests.
Branch commit. Moved getSliceRegionLoopRange and checkShape into DataTypes.h Some work on methods to set/addTaggedValues without using DataArrayView. To do this I added copyFromNumArray() on DataVector (It buggy at the moment). This build passes the tests but only because copyFromNumArray is not used.
Branch commit Moved getSliceRegion() and getSliceRange() into DataTypes Data.cpp - modified not to rely on operator() from DataArrayView - Used more const& to avoid copies
Branch commit: DataTagged::addTag() = Add a tag with default value. (All uses that I can find apart from test code only require this anyway). DataAbstract now knows its own shape, rank and number of values and have accessors for them. Data Objects also have acessors for these but query their DataAbstracts for the answers. Data::getDataAtOffset() = access to a particular point in the underlying array. (At the moment this call references the DataArrayView, but that will change when I have everything else working). DataTagged::getDataByTag() = same but search by tag. DataTagged::getDefaultValue() = returns default value without obvious reference to DataArrayView C_GeneralTensorProduct_J is my temporary copy of C_GeneralTensorProduct for experimentation. It and a number of other temporary functions live in JoelMods.cpp_ for now.
Branch commit DO NOT PANIC. Moved shapeToString and noValues from DataArrayView to DataTypes{.h,.cpp}
Moved ValueType, ShapeType, RegionType, RegionLoopRangeType and maxRank From DataArrayView.h to DataTypes.h This is a simple rename but did require modifying a lot of files.
Branching to perform experiments on removing DataArrayView
Merge in /branches/windows_from_1456_trunk_1620_merged_in branch. You will find a preserved pre-merge trunk in tags under tags/trunk_at_1625. That will be useful for diffing & checking on my stupidity. Here is a list of the conflicts and their resolution at this point in time. ================================================================================= (LLWS == looks like white space). finley/src/Assemble_addToSystemMatrix.c - resolve to branch - unused var. may be wrong..... finley/src/CPPAdapter/SystemMatrixAdapter.cpp - resolve to branch - LLWS finley/src/CPPAdapter/MeshAdapter.cpp - resolve to branch - LLWS paso/src/PCG.c - resolve to branch - unused var fixes. paso/src/SolverFCT.c - resolve to branch - LLWS paso/src/FGMRES.c - resolve to branch - LLWS paso/src/Common.h - resolve to trunk version. It's omp.h's include... not sure it's needed, but for the sake of saftey..... paso/src/Functions.c - resolve to branch version, indentation/tab removal and return error on bad unimplemented Paso_FunctionCall. paso/src/SolverFCT_solve.c - resolve to branch version, unused vars paso/src/SparseMatrix_MatrixVector.c - resolve to branch version, unused vars. escript/src/Utils.cpp - resloved to branch, needs WinSock2.h escript/src/DataExpanded.cpp - resolved to branch version - LLWS escript/src/DataFactory.cpp - resolve to branch version ================================================================================= This currently passes tests on linux (debian), but is not checked on windows or Altix yet. This checkin is to make a trunk I can check out for windows to do tests on it. Known outstanding problem is in the operator=() method of exceptions causing warning messages on the intel compilers. May the God of doughnuts have mercy on my soul.
pragma ivdep removed. icc produced wrong code.
reordering when reading Netcfd files added.
Merge of branches/windows_from_1431_trunk. Revamp of the exception system. Fix unused vars and signed/unsigned comparisons. defined a macro THROW(ARG) in the system_dep.h's to deal with the expectations of declarations on different architectures. Details in the logs of branches/windows_from_1431_trunk. pre-merge snapshot of the trunk in tags/trunk_at_1452
And get the *(&(*&(* name right
Restore the trunk that existed before the windows changes were committed to the (now moved to branches) old trunk.
Make a temp copy of the trunk before checking in the windows changes
setTaggedValue works now for expanded data.
Minor inconsistency.
DataArray is no longer needed. However, the unit tests still require it.
The MPI branch is hereby closed. All future work should be in trunk. Previously in revision 1295 I merged the latest changes to trunk into trunk-mpi-branch. In this revision I copied all files from trunk-mpi-branch over the corresponding trunk files. I did not use 'svn merge', it was a copy.
Some changes to make things run on windows. There is still a problem with netcdf an long file names on windows but there is the suspicion that this is a bigger problem related to boost (compiler options). In fact runs with large numbers of iteration/time steps tend to create seg faults.
This version passes the tests on windows except for * vtk * netCDF The version needs to be tested on altix and linux
netcdf c++ interface removed
problem with reset of faulty PDE rhs fixed.
netCDF can now be switched off at compilation. Consequently load and dump of data objects is not available then.
full Data object dump and load now available. Tests added.
dump and load of expanded data via netCDF added. some test are still missing.
ops! escript/src/DataExpanded.cpp should not be in there
johns local setting removed.
The set/getRefVal functions of Data objects have been removed (mainly to avoid later problems with MPI). Moreover, a faster access to the reference id of samples has been introduced. I don't think that anybody will profit form this at this stage but it will allow a faster dump of data objects.
escript data objects can now be saved to netCDF files, see http://www.unidata.ucar.edu/software/netcdf/. Currently only constant data are implemented with expanded and tagged data to follow. There are two new functions to dump a data object s=Data(...) s.dump(<filename>) and to recover it s=load(<filename>, domain) Notice that the function space of s is recovered but domain is still need. dump and load will replace archive and extract. The installation needs now the netCDF installed.
Win32 port modifications "or" is not a valid modifier under win intel compiler * Data.cpp - incorrect "or"s * DataExpanded.cpp - incorrect "or"s
setValueOfDataPoint accepts double value as argument now
I have done some clarification on functions that allow to access individual data point values in a Data object. The term "data point number" is always local on a MPI process and referes to the value (data_point_in_sample, sample) as a single identifyer (data_point_in_sample + sample * number_data_points_per_sample). a "global data point number" referes to a tuple of a processour id and local data point number. The function convertToNumArrayFromSampleNo has been removed now and convertToNumArrayFromDPNo renamed to getValueOfDataPoint. There are two new functions: getNumberOfDataPoints setValueOfDataPoint This allows you to do things like: in=Data(..) out=Data(..) for i in xrange(in.getNumberOfDataPoints()) in_loc=in.getValueOfDataPoint(i) out_loc=< some operations on in_loc> out.setValueOfDataPoint(i,out_loc) Also mindp is renamed to minGlobalDataPoint and there is a new function getValueOfGlobalDataPoint. While in MPI the functions getNumberOfDataPoints and getValueOfDataPoint are working locally on each process (so the code above is executed in parallel). the latter allows getting a single value across all processors.
data print shows now the element reference number
Some modifications to the binary operations +,-,*/, pow. The code is a bit simpler now and more efficient has there is no reseising required now. the resizing method has been removed as it is very, very inefficient. Even serial code should be faster now. It is now forbidden to do an inplace update of scalar data object with an object of rank >0 as this is very slow (and does not make much sense).
the new function swap_axes + tests added. (It replaces swap).
new function _swap. Python wrapper + testing is still missing.
Modified the following python methods in escript/py_src/util.py to call faster C++ methods: escript_trace escript_transpose escript_symmetric escript_nonsymmetric
+ Merge of intelc_win32 branch (revision 741:755) with trunk. Tested on iVEC altix (run_tests and py_tests all pass)
More copyright information.
eigenvalues: compiles and passes tests on altix now
faster version of the local eigenvalue calculation
rationalise #includes and forward declarations
restructure escript source tree move src/Data/* -> src remove inc modify #includes and cpppath settings accordingly
fixed a broken constructor - simply didn't work
move all directories from trunk/esys2 into trunk and remove esys2
Merge of development branch back to main trunk on 2005-07-22
Merge of development branch back to main trunk on 2005-07-08
Merge of development branch back to main trunk on 2005-06-09
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
*** empty log message ***
Initial revision
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
ViewVC Help | |
Powered by ViewVC 1.1.26 |