work_log.txt 20.6 KB

12th June           CJS   Fix error in the transfer impedance model where a domain could not be the victim domain of more than one transfer
                          impedance model

25th April          CJS   Tidy up the error handling so that all errors are dealt with in the correct way and an appropriate
                          error message is passed back to the controlling process via the run_status file.

21st April          CJS   Allow a switch to calculate the analytic solution based on the diagonalisation of ZY and solution based
                          on modal voltages rather than currents (which is the default). The flag is use_analytic_I (default)
                          or use_analytic_V (new voltage based solution)

20th April          CJS   Complete improvements to cable intersection algorithm so that it works with all cable types and 
                          takes account of cables in overshields

26th March          CJS   Fix error in transfer impedance model when it is applied to a purely resistive transfer impedance. 
                          In this case the order of the resulting filter was -1 as the d.c. resistance is subtracted from 
                          the transfer impedance.

8th March           CJS   Complete the termination circuit changes and allow the voltage between specified conductors to be output
                          as well as the voltage relative to the reference conductor

7th March           CJS   Remove the ground plane specification point and angles as we now assume the ground plane is on the x axis.
                          Change the termination circuit to add a new node so we can properly put common mode and differential mode
                          sources in the terminations. 

3rd March           CJS   Add conductor information to subcircuit files to aid node identification

28th February       CJS   Make the validation test circuit model optional

24th February       CJS   Inlcude a flag to make the transfer resistance distributed in the Zt models not lumped.

24th February       CJS   Allow the input name to include a path i.e. the _spec file does not need to be local.

8th February        CJS   Commit v2 branch with improved documentation and revisions to Laplace.F90
                          
5th February        CJS   Revise laplace.F90 as the process of conversion from the gmsh format to the NLR Laplace format is not very 
                          obvious or efficient.

11th January        CJS   Continue to improve the software documentation.

10th January        CJS   Start to go through the software source code to improve documentation and get the software
                          up to a reasoonable standard.
                          Re-run the TEST_CASES and update the reference results due to the small changes resulting from
                          the YZ product perturbation implemented on 9th January.

9th January         CJS   Fix bug in Laplace which assumes all boundaries are composed of 4 line segments. Fails for Dshape.
                          Add a small perturbation to the diagonal elements of the YZ product before calculating the eigenvalues
                          and eigenvectors to avoid the issue with finding independent eigenvectors for degenerate cases.
                          Fix plotting for spacewire cross section.

15th December       CJS   Allow for frequency dependent dielectrics in the cable_model_builder process with the Laplace solver

12th/13th December  CJS   consolidate PUL_Laplace for ground_plane overshield and open_boundary configurations.

8th/9th December    CJS   Strip out un-needed cable types leaving only one cable type for each class of cable (e.g.coax). Translate
                          all cable_spec files in the TEST_CASES directory into the new formats and update the reference results where
                          required. Note the transfer impedance model where transfer impedance = surface impedance has been removed.

7th December        CJS   Add png and svg output for bundle cross sections.
                          Start to work towards the release version (2.0) - put in the SACAMOS header, strip out
                          the cable types which are not going to be used.

6th December        CJS   In the incident field excitation model, replace transmission lines with a very smalll delay  
                          by a very small resistance. This was found for cases when Tz is close to zero.

16th November       CJS   Complete Dconnector model and include test case(s) Upload to v 1.9.8

14th/15th November  CJS   Test whether the model works with node zero in the terminations at both ends of a transmission line model
                        both with and without loss. Also look into whether a single shield can have transfer impedance models working in 
                        both directions at the same time. 

11th November     CJS   Start to implement a Dconnector model

8th November      CJS   Fix error in PUL_LC* in which the Yfilter matrix for frequency dependent dielectric problems has an error.
                        The frequency dependent process with filter fitting didn't use the correct frequency in the calculation of G
                        This changes the result in test case TWO_WIRE_FD_DIELECTRIC_LAPLACE.

2rd November      CJS   Fix bug with flex cable: incident field excitation error- the external conductor positions were wrong as they
                        got the offset from the cable centre and the rotation OK but not the cable offset. Update to V1.9.7

2nd November      CJS   Include inhomogeneous dielectric in ZT_FD_shielded_twisted_pair ZT_FD_shielded_twisted_pair2 ZT_FD_spacewire 
                        ZT_FD_spacewire2 rather than the original calculation which assumed a homogeneous dielectric within the shield.
                        This model does not allow frequency dependent dielectrics at the moment.
                        Also checked the twisted pair model common mode and differential mode coupling to a bundle of 3 single wires in free space.
                        Update to V1.9.6

1st November      CJS   Allow the user to change the twisted pair equivalent radius from the cable_spec and bundle_spec files


28th October      CJS   Implement checks for the cable parameters to ensure that the cables defined are consistent and physically reasonable.
                        Include a check to ensure that a transfer impedance model has been specified for a shield if it is required in the spice model.
                        Update to v1.9.5.

27th October      CJS   Implement a process to ensure that the propagation correction is derived consistently and for the correct mode. 
                        This is required when the modes are degenerate in the reference lossless homogeneous system where the mode order can
                        be different to those found by the more general eigensolver when losses are introduced. The modes are identified
                        by calculating the overlap between the reference (lossless) configuration modes and the locally calculated modes.

26th October      CJS   Implement a test case for GUI demonstration i.e. a test case which requires several cable types, Laplace solver at the
                        cable model building stage and at the bundle building stage. Also includes transfer impedance models.
                        Fix 0/0 error for analytic inductance calculation when overshields have a conductor at the centre. 

24th/25th October CJS   Starting to document the software structure to ensure that software maintainance will be relatively straightforward.
                        The documentation also informs where the software structure can be simplified i.e. to remove repeated processes. 

21st October      CJS   Look into implementing the exact analytic solution for the surface impedance of a cylindrical shell due to
                        Schelkunoff. This turns out to be difficult numerically - the modified bessel functions get very large and 
                        end up requiring differences of large numbers.
                        Implement a process for shielded cable models whereby if a shield thickness is set to zero, the 'equivalent
                        thickness' is calculated (internally) which gives the same d.c. resistance as the transfer impedance specified.
                        At least this makes models self consistent without any external calculation. The model still uses the thin shell
                        approximation which ignores the curvature of the shield.

20th October      CJS   Rigorously derive the solution for incident field excitation of shielded cables and relate this to the
                        domain decomposition model. Explicitly set current source terms for shielded cables to zero (though may not
                        be strictly necessary as they are zero anyway provided that the conductors are centred on the shield)

19th October      CJS   Respond to NLR queries regarding transfer impedance/ surface impedance models and their consistency.

18th October      CJS   Fix error in domain decompositon matrix for a double shielded coax and single wire over ground.
                        Update to V1.9.4 to include these fixes.

12th-14th October CJS   Responding to problems found in NLR validation testing relating to transfer impedance test cases
                        Found sign error in transfer impedance model plus error in analytic solution relating to
                        transfer impedance terms in the Z matrix. Update to Version 1.9.3 to include these fixes.

10th October      CJS   Tidy up revisions to PUL calculation processes to get it working on all test cases. 
                        Add a timestep limit in LTspice due to transient failures reported by Adriaan.
                        Implement a loss model for rectangular conductors.
                        Proper fix for the long-line issue in some spice versions.

7th October       CJS   Implement 'special cases' in Xie's model, also flex cable model with overshield and with ground plane.
                        Update to version 1.9.2.

6th October       CJS   Implement dielectric in the flex cable model. As a part of this, tidy up the external 
                        conductor model in the cable structure. Flex cable model now fully working.

5th October       CJS   Upload Xie model and flex cable model to repository. Version 1.9.1.

27th September    CJS   Continue implementation of Xie's model for incident field excitation of shielded cables

26th September    CJS   flex cables

23rd September    CJS   Recatangular conductors

21-22 September   CJS   Laplace solver with frequeny dependent dielectrics

19th September    CJS   Frequency dependent dielectric model in shielded twisted pairs, twinax and spacewire models. 

15-16 September   CJS   Implement frequency dependent dielectrics in the Laplace solver

14th September    CJS   Document transfer impedance model in the theory guide.

12th-13th September CJS Document the incident field excitation solution and the spice model derivation. 

9th September     CJS   Fix of twisted pair domain decomposition matrix error in bundle_domain_creation.F90. 
                        Update repository with the revised shield model and test cases V1.8.1

8th September     CJS   First fix of twisted pair loss issue. Update repository with the revised shield model and test cases V1.8.1

7th September     CJS   Investigate error with the allocation of conductor losses for twisted pairs. In the analytic solution
                        the domain based common mode/ differential mode decomposition was in error as the common mode
                        sees the two conductors in parallel. The losses in twisted pair and shielded twisted pair cables needs
                        proper investigation

6th September     CJS   Document new cable file formats with separate transfer impedance and shield
                        conductor impedance models.

22nd August       CJS   Start to implement the revised shield model with separate transfer impedance and shield
                        conductor impedance models.

17th-19th Auguist CJS   Fix bug in gmsh geometry input file for wires over ground. Fix bug related to incident 
                        field excitation: Calculation of incident field components.

26th July 2016 CJS      Change the circuit files for LTspice and Pspice validation test circuits so as to eliminate
                        the need for editing these files before running. Also replace any zero resistance values
                        in the validation circuit file with a small resistance value set in constants.F90.  

20th July 2016 CJS      Implement frequency dependent models (with transfer impedance if required) for twisted pair, 
                        twinax, shielded twisted pair and spacewire. Also allow the calculation of L,C matrices
                        using the Laplace solver for Twinax, shielded twisted pair and spacewire within the
                        cable model building process. Include these new cable types in the documentation. 

15th July 2016 CJS      Implement the solution for incident field excitation with sheielded conductors.
                        Added the test case COAX_OVER_GROUND_PLANE_INCIDENT_FIELD_EXCITATION
                        Also ensure that the outer boundary for Laplace is centred at the origin.

13th-14th July 2016 CJS Allow the Laplace solver to include dielectric regions: frequency INDEPENDENT dielectrics for
                        now and only called in the external domain at the moment.

12th July 2016 CJS      Make the alterations required for windows running. The only changes are the use of \ not / in 
                        file paths and the use of the wxt terminal in gnuplot files. The windows version is compiled using
                        make OS=WINDOWS.
                        
4th July 2016 CJS       Start to think about implementing the NLR Laplace solver into the software...
                        Update the documentation with new class file and preamblle for theoory manual from NLR.

30th June 2016 CJS      For frequency dependent models, return the lowest mean square error model, not just the highest
                        order model calculated.

28th/29th June 2016 CJS Add a ground plane to the incident field excitation model. Allow the ground plane to be placed
                        at an arbitrary angle. update to V1.6.2.

23rd June 2016 CJS      Some basic tests investigating the implementation of the propagation correction and transfer impedance
                        models using circuit elements rather than s-domain transfer functions. Testing FD_COAX with models
                        up to 2nd order. 

21st June 2016 CJS      Work on writing circuit files for LTspice and Pspice. Some experimentation needed to get a format that
                        LTspice would work with without producing inaccurate results. Keeping the frequency normalisation explicit
                        appears to be important i.e. use type 3 output in SUBROUTINE write_Pspice_filter_model.

20th June 2016 CJS      Implement a rigorous and robust modal decomposition method which should work for lossless inhomogeneous
                        transmission lines. This is used to derive the modal decomposition, mode velocity and mode impedance
                        for the method of characteristics propagation algorithm in the Spice model. All the test cases now give
                        acceptable results.

17th June 2016 CJS      Incident field excitation working

13th June 2016 CJS      Starting to implement the incident field excitation model. New branch: stage_6

9th June 2016 CJS       Investigating eigenvector problem and s-domain transfer function failue in transient ngspice simulations

26th May 2016 CJS       Transfer impedance model is working for both multi-mode source and victim domains. 

23rd May 2016 CJS       Implement the special case which occurrs when the source and victim mode propagation delays are the same
                        This requires special treatment as the 'normal' transfer impedance model includes a 1/(Ts-Tv) term.

18th May 2016 CJS       Transfer impedance model working for test cases with single mode propagation in source and victim domains

11th May 2016 CJS       Ran 50 conductor test case with frequency dependent model. This ran OK but the results were poor due to
                        problems with deriving the propagation correction. This was due to a failure to consistently identify 
                        a particular mode when deriving the correction function. 

10th May 2016 CJS       Branch stage_5: Start to include transfer impedance into the software

9th May 2016 CJS        Upload version 1.4.1 to repository i.e. frequency dependent model and updated documentation

5th May 2016 CJS        Develop simple test cases for twinax, twisted pair, shielded twisted pair and spacewire. Found a problem with the 
                        eigenvalue/ eigenvector solver for spacewire...
                        
29th April 2016 CJS     Have a working frequency dependent model with FD_coax and FD_cylindrical cable models. Tested for single mode propagation
                        only so far.

20th April 2016 CJS     Start to implement the frequency dependent model in branch stage_4

20th April 2016 CJS     Revised bundle building process is now working with overshields etc. Still needs to be tested fully though.
                        Update repository to version 1.3.1

13th April 2016 CJS     Re-configure the bundle building process to include over-shields and multiple levels of shielding
                        At this stage there are minor changes to the bundle_spec file format.

12th April 2016 CJS     Continue the new cable type implementation

11th April 2016 CJS     Document the new cable types in the user guide

7th April 2016   CJS    Implement cable models for coax, twinax, twisted pair, shielded twisted pair and overshield.

1st April 2016   CJS    Update repository in response to NLR observation that MOD directory was not in the repository.

29th-30th March 2016  CJS    Stage 3 software is now working for all coax test cases. Include NLR test cases in the TEST_CASE set
                        Merge stage_3 branch and update the git repository with version 1.3.0.
                        Fix bug with mutual inductance calculation for wires over ground plane.

24th March 2016  CJS    Stage 3 software is working for COAX and COAX_OVER_GROUND_PLANE test cases but fails for TWIN_COAX test case

21st March 2016  CJS	Stage 3 branch. Start to implement the domain decomposition model so as to allow shielded cables to
                        be included in the simulations. 

15th March 2016  CJS	Update documentation with NLR's new class file and update the directory structure

14th March 2016  CJS    Investigate the late time failure of ngspice for transient simulations (see known_problems.txt)

22nd Feb 2016   CJS     Merge the stage 2 branch and update repository to V1.2

9th Feb 2016    CJS     Start to include the latex documentation - not working for CJS without considerable simplification
                        at the moment
                 
5th Feb 2016    CJS     Stage 2 branch: Add the multi-conductor THREE_WIRE_RIBBON_CABLE and TWO_WIRES_OVER_GROUND_PLANE_MOD test cases
                
2nd Feb 2016    CJS     Branch code to start work on stage 2 developments for multi-conductor propgation model

29th Jan 2016   CJS     Make code compile with -stdf2008, also try to make MOD portable. Update code repository to v 1.1.1

26th Jan 2016   CJS     Sort out compilation problems at NLR (using gfortran 4.4.7). The problems
                        were mainly due to eispack being non-standard modern fortran.

Jan 2016        CJS/SG  Set up the initial project on git with the capability required for stage 1 of development (version 1.1)

Jan 2016        SG      Test the portability of the project between Linux, Windows and OSX

Jan 2016        CJS     Implement a trial version of 'MOD' and interaction of the software with it...



Jan 14 2016	CJS	Implement the automatic testing system for the TEST_CASES (script: generate_spice_cable_model)

Jan11-13 2016	CJS	Update the code to use Fortran90 modules

Jan 2016	CJS	Update the make system and the compilation to use Fortran90 modules

Jan 2016	CJS	Include test cases for two conductor systems in free space

Dec 2016	CJS	Implement system for creating spice models for two conductor systems in free space
			including a ground plane using an approximate L, C matrix calculation

Dec 2016	CJS	Initial construction of the project based on existing 
			work in GGI_TLM, phase 1 test case work and eispack.

Started December 2015