diff --git a/FDTD/process_efield.cpp b/FDTD/process_efield.cpp index fa27bd9..9c5b6b8 100644 --- a/FDTD/process_efield.cpp +++ b/FDTD/process_efield.cpp @@ -33,6 +33,12 @@ void ProcessEField::InitProcess() OpenFile(m_Name); for (int n=0; n<3; n++) FD_Values[n].assign(m_FD_Samples.size(),0); + + file << "% time-domain E-field probe by openEMS " GIT_VERSION << endl; + file << "% coords: (" << Op->GetDiscLine(0,start[0])*Op->GetGridDelta() << "," + << Op->GetDiscLine(1,start[1])*Op->GetGridDelta() << "," + << Op->GetDiscLine(2,start[2])*Op->GetGridDelta() << ") m -> [" << start[0] << "," << start[1] << "," << start[2] << "]" << endl; + file << "% t/s\tEx/(V/m)\tEy/(V/m)\tEz/(V/m)" << endl; } void ProcessEField::FlushData() diff --git a/FDTD/process_hfield.cpp b/FDTD/process_hfield.cpp index b866455..ee82c89 100644 --- a/FDTD/process_hfield.cpp +++ b/FDTD/process_hfield.cpp @@ -28,6 +28,19 @@ ProcessHField::~ProcessHField() { } +void ProcessHField::InitProcess() +{ + OpenFile(m_Name); + for (int n=0; n<3; n++) + FD_Values[n].assign(m_FD_Samples.size(),0); + + file << "% time-domain H-field probe by openEMS " GIT_VERSION << endl; + file << "% coords: (" << Op->GetDiscLine(0,start[0],true)*Op->GetGridDelta() << "," + << Op->GetDiscLine(1,start[1],true)*Op->GetGridDelta() << "," + << Op->GetDiscLine(2,start[2],true)*Op->GetGridDelta() << ") m -> [" << start[0] << "," << start[1] << "," << start[2] << "]" << endl; + file << "% t/s\tEx/(A/m)\tEy/(A/m)\tEz/(A/m)" << endl; +} + void ProcessHField::DefineStartStopCoord(double* dstart, double* dstop) { if (Op->SnapToMesh(dstart,start,true,m_start_inside)==false) @@ -59,7 +72,7 @@ int ProcessHField::Process() // time-domain processing if (Eng->GetNumberOfTimesteps()%ProcessInterval==0) { - file << setprecision(m_precision) << (double)Eng->GetNumberOfTimesteps()*Op->GetTimestep(); + file << setprecision(m_precision) << ((double)Eng->GetNumberOfTimesteps()+0.5)*Op->GetTimestep(); for (int n=0; n<3; n++) { FDTD_FLOAT field = Eng->GetCurr(n,start) / Op->GetMeshDelta(n,start,true); diff --git a/FDTD/process_hfield.h b/FDTD/process_hfield.h index f1ef063..11b99b2 100644 --- a/FDTD/process_hfield.h +++ b/FDTD/process_hfield.h @@ -33,6 +33,7 @@ public: ProcessHField(Operator* op, Engine* eng); virtual ~ProcessHField(); + virtual void InitProcess(); void DefineStartStopCoord(double* dstart, double* dstop); virtual int Process(); };